NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #1803 most downloaded on PyPI
The dynamic configurator for your Python Project
Last release 2 months ago
05 Aug 2026
Ships fairly regularly
a new release about every 3 months
Nearly every release is documented
notes for 57 of the last 60 stable releases
4 versions withdrawn
withdrawn after publishing
11 years old
100 releases · first in 2015
Skip non-str keys when resolving key casing ( #1446 ). By @shuvamk .
Skip non-str keys when resolving key casing (#1446). By @shuvamk.
Get/get_fresh with dotted keys stop working after first call (#1423). By @pctablet505.
Fix get_history ignoring its history_limit argument (#1424). By @chuenchen309.
Fix regression on override precedence with proper dynaconf-token cleanup (#1438). By @pedro-psb.
Add deepcopy to DataDict to match DataList (#1440). By @digitronik.
One column per quarter.
Fixed error when passing a list values for env on dynaconf init ( #1278 ) ( #1421 ). By @apoorvdarshan .
Fixed error when passing a list values for env on dynaconf init (#1278) (#1421). By @apoorvdarshan.
Clean up nested dynaconf_merge tokens when parent key is new (#1435). By @Sanjays2402.
Keep sibling keys that share a dotted path leaf name (#1434). By @Sanjays2402.
Convert container subclasses (#1436). By @deepakganesh78.
Django early validation integration code bug (#1432). By @pedro-psb.
Fixed regression on lazy evaluation when using dynaboxify=False ( #1429 ). By @pedro-psb .
Fix netlify deploy command on publish workflow (#1420). By @pedro-psb.
Consolidate docs-publishing workflow for rolling-release (#1417). By @pedro-psb.
Simplify docs-only skip and include backport branches on main CI (#1415). By @pedro-psb.
Don't treat a string sharing a converter prefix as a cast ( #1412 ). By @sarathfrancis90 .
Don't treat a string sharing a converter prefix as a cast (#1412). By @sarathfrancis90.
Fixed 'dynaconf validate' edge cases with validation_file.toml (#1411). By @pedro-psb.
Avoid RecursionError in from_env with validate_on_update (#1409). By @Redbot.
Avoid crash merging a dynaconf_merge list into a missing key (#1410). By @sarathfrancis90.
Fix check-release command from release utility. By @pedro-psb.
Improve changelog generation output. By @pedro-psb.
Remove call to deprecated functions on public APIs ( #1404 ). By Pedro Brochado .
Fix index merge padding scalar lists with empty lists instead of None ( #1380 ). By Sarath Francis .
-k must exit code 1 when key do not exist (#1293). By Bruno Rocha.@insert with -1. By Bruno Rocha.--json is used in CLI list, does not print django app detected. By Bruno Rocha.@read_file converter (#1291). By Bruno Rocha.python -m dynaconf (#1290). By Bruno Rocha.inspect -m debug (#1251) (#1254). By Bruno Rocha.@insert token to trigger list.insert. By Bruno Rocha.--json will print valid JSON to stdout (#1106). By Bruno Rocha.@insert, Multiple envvar_prefixes and composed current envs. By Bruno Rocha.@insert. By Bruno Rocha.Fix @jinja and @format templating vulnerabilities. *By @pedro-psb *.
@jinja and @format templating vulnerabilities. *By @pedro-psb *.@get converter. *By @rochacbruno *Full Changelog: 3.2.12...3.2.13
Incremental improvment to access performance by @pedro-psb in #1304
find_the_correct_casing function by @pedro-psb in #1326Full Changelog: 3.2.11...3.2.12
Shortlog of commits since last release:
Release version 3.2.11
Shortlog of commits since last release:
Bruno Rocha (9): @rochacbruno
python -m dynaconf (#1290)-k must exit code 1 when key do not exist (#1293)Fabricio Aguiar (1): @fao89
Pedro Brochado (1): @pedro-psb
Milestone https://github.com/dynaconf/dynaconf/milestone/31?closed=1
Full Changelog: 3.2.10...3.2.11
Hotfix hook collector to avoid eager evaluation. ( #1255 ). By Bruno Rocha .
debug-info (#1251). By Bruno Rocha.Full Changelog: 3.2.7...3.2.10
Nothing published for this version
Nothing published for this version
Async Release for Integration with Ansible Automation Platform
Async Release for Integration with Ansible Automation Platform
None.internal attribute to filter out internal variables.json.dumps defaults to repr for types that cannot be serialized.set method@insert token to call list.insertload_file method--json to dynaconf list CLIFull Changelog: https://github.com/dynaconf/dynaconf/compare/3.2.6...3.2.7
Don't instantiate a Settings object for every hook call.
SCENARIO:
With a function as _registered_hooks every time a key is accessed on settings
the function is invoked passing a settings object as first argument.
BEFORE:
The settings passed to the hook was instantiated for every call.
AFTER:
The settings is now a TempSettingsHolder that has no effect on passing
and is instantiated only if accessed.
Saved execution time from 0m49 to 0m3 on a Django openapi spec view.
Full Changelog: https://github.com/dynaconf/dynaconf/compare/3.2.5...3.2.6
_bypass_evaluation showing in end-user settings (#1071). *By Pedro Brochado*.
_bypass_evaluation showing in end-user settings (#1071). By Pedro Brochado.@get converter to alias existing keys (#1040). By Bruno Rocha.env in Validation at validation.md (#1051). By Mostafa Alayesh.non-str key raising type error #1005 by @pedro-psb in https://github.com/dynaconf/dynaconf/pull/1008
This Github release was re-published to fix the latest release tag which was pointing to the wrong commit.
Full Changelog: https://github.com/dynaconf/dynaconf/compare/3.2.3...3.2.4
fix: pep8 errors by @anderson-sousa in https://github.com/dynaconf/dynaconf/pull/995
Full Changelog: https://github.com/dynaconf/dynaconf/compare/3.2.2...3.2.3
Hooking: Add support for changing the wrapped class by @rochacbruno in https://github.com/dynaconf/dynaconf/pull/975
Full Changelog: https://github.com/dynaconf/dynaconf/compare/3.2.1...3.2.2
CI - Test docker-compose pyyaml issue by @pedro-psb in https://github.com/dynaconf/dynaconf/pull/964
Full Changelog: https://github.com/dynaconf/dynaconf/compare/3.2.0...3.2.1
Fix
- Unexpected _bypass_evaluation in BoxList (#966) [Pedro Pessoa]
* fix _bypass_evaluation showing in BoxList
Other
Release version 3.2.1. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (5):
Ignore docs build without a tag
Cancel any running CI job when a Push is made to an existing PR or branch (#952)
Fix #959 cli get will exit code 1 in case of KeyError. (#960)
add tech preview note to inspect docs (#961)
Build docs
Hugo Prudente (1):
Doc advanced usage for cli overrides dynaconf settings fix #967 (#970)
Marian Ganisin (1):
Feat: Support for multidoc yaml files (#825)
Pedro Pessoa (11):
Docs - Update envvar.md custom token e.g. to use add_converter (#941)
Feature - Inspect and CLI (#939)
Fix - Template substitution with variable update (#944)
Assert #658 works (#945)
fix infinite recursions in special case of django app #867 (#947)
Fix - Django functions with `add_converter` (#951)
Fix hooks not re-running on reload #850 (#953)
update vault and redis warning recommendations. fix #950 (#954)
Fix - Enable merge equal False (#957)
CI - Test docker-compose pyyaml issue (#964)
Fix: unexpected _bypass_evaluation in BoxList (#966)
pedro-psb (1):
Release version 3.2.0
Doc advanced usage for cli overrides dynaconf settings fix #967 (#970) [Hugo Prudente]
Feat: Support for multidoc yaml files (#825) [Bruno Rocha, Marian Ganisin, Pedro Pessoa]
This adds safe_load_all to possible yaml loaders and enables
processing multidoc yaml files.
This can be handy in case more configs are need but it's difficult or impossible to pass multiple files.
fixes #824
CI - Test docker-compose pyyaml issue (#964) [Pedro Pessoa]
test ciinstall
try bumping pyyaml before docker-compose
try using latest docker-compose binary
add note about docker-compose on contributing.md
Build docs. [Bruno Rocha]
Release version 3.2.0. [pedro-psb]
Shortlog of commits since last release:
Bruno Rocha (4):
Ignore docs build without a tag
Cancel any running CI job when a Push is made to an existing PR or branch (#952)
Fix #959 cli get will exit code 1 in case of KeyError. (#960)
add tech preview note to inspect docs (#961)
Pedro Pessoa (9):
Docs - Update envvar.md custom token e.g. to use add_converter (#941)
Feature - Inspect and CLI (#939)
Fix - Template substitution with variable update (#944)
Assert #658 works (#945)
fix infinite recursions in special case of django app #867 (#947)
Fix - Django functions with `add_converter` (#951)
Fix hooks not re-running on reload #850 (#953)
update vault and redis warning recommendations. fix #950 (#954)
Fix - Enable merge equal False (#957)
Add tech preview note to inspect docs (#961) [Bruno Rocha]
Fix #959 cli get will exit code 1 in case of KeyError. (#960) [Bruno Rocha]
Fix - Enable merge equal False (#957) [Pedro Pessoa]
Update vault and redis warning recommendations. fix #950 (#954) [Pedro Pessoa]
Fix hooks not re-running on reload #850 (#953) [Pedro Pessoa]
settings._loaded_hooksCancel any running CI job when a Push is made to an existing PR or branch (#952) [Bruno Rocha]
Fix - Django functions with add_converter (#951) [Pedro Pessoa]
Ignore docs build without a tag. [Bruno Rocha]
Fix infinite recursions in special case of django app #867 (#947) [Pedro Pessoa]
Assert #658 works (#945) [Pedro Pessoa]
assert #658 works
fix linting
Fix - Template substitution with variable update (#944) [Pedro Pessoa]
fix inspect exception names (flake8)
remove accidental file
update to the new official publisher of the vault image (hashicorp)
fix test_vault.sh image name (update to hashicorp/vault)
fix main workflow and test_vault_userpass.sh references to vault image
Feature - Inspect and CLI (#939) [Pedro Pessoa]
Docs - Update envvar.md custom token e.g. to use add_converter (#941) [Pedro Pessoa]
update envvar.md custom token e.g. to use add_converter
fix Windows test compatibility
fix test on windows (attempt n2)
fix windows test (last attempt)
lastly last attempt to fix windows test
skip windows test on the test sample
Update validation.md to fix typo (#937) [Gwyn Evans]
The doc has ValidationError being in dynaconf.validators not dynaconf.validator
Fix - Order of variables break parsing (#869) (#933) [Bruno Rocha, Pedro Pessoa]
fix order of variables break parsing (#869)
fix linting
Docs - Fix error in example about casting (#930) (#935) [Pedro Pessoa]
gitignore .tool-versions (asdf)
fix wrong example in docs
Replace pkg_resources with importlib.metadata (#934) [Pedro Pessoa, Thijs Miedema]
fix: remove pkg_resources in favour of importlib.metadata. fixes 851.
fix formatting
Add support for Vault username/password access (#928) [Hans Harhoff Andersen, Hans Harhoff Andersen, Pedro Pessoa]
add userpass test
handle userpass handle if user/token does not have list permission
fix bug in implementation and fix test
add newlines
add new integration test for vault
remove breakpoint
Pinning ipython version for python 3.8 compatibility.
Fix AttributeError with integer keys (yaml) #919 (#920) [Pedro Pessoa]
convert int keys to str. fix #919
remove link pytest-dynaconf (broken)
Docs - load_file relative path resolution and root_path fallbacks
#909 (#921) [Pedro Pessoa]
doc: add clarification on root_path, load_file and related
add complementary info at docstrings
Update FUNDING.yml. [Bruno Rocha]
Feature - Allow system environment fallback in get() #742 (#916)
[Pedro Pessoa]
add sysenv_fallback for settings.get() (global and local options) #742
add docs entry for sysenv_fallback config option
fix formmating
remove linux-specific test for sysenv_fallback
Remove codecov (#918) [Bruno Rocha]
Fix - Add support for lowercase envvar_prefix in DynaconfFlask (Fix
#848) (#915) [Pedro Pessoa]
add support for lowercase envvar_prefix in Flask. fix #848
add support for lowercase options setting in FlaskDynaconf init
Docs: add clarification on DEFAULT_ENV_FOR_DYNACONF config (#912) [Pedro Pessoa]
Fix - Array entries duplicated when using Validator with default for computed value (#910) [Pedro Pessoa]
Docs - Add Extensions header to index and pytest-dynaconf
reference (#907) [Bruno Rocha, Pedro Pessoa]
add "extensions" section to index. #699
grammarly-assisted typos and style fixes
Feature - Validate on call to update, set or load_file (#900) [Bruno Rocha rochacbruno@users.noreply.github.com --------- Co- authored-by: Bruno Rocha rochacbruno@users.noreply.github.com, Pedro Pessoa]
support for:
eg: settings = Dynaconf(validate_on_update=True) settings.validators.register( add validators ) settings.load(data) # will validate settings.load(data, validate=False) # won't validate
eg: settings.load_file(file, validate=True) # will validate
Replace bare tries with suppress and increase codecov (#901)
docs: include validate on update feature
validate="all".add FOR_DYNACONF suffix for validate_on_update envvar
Docs - Add faq and fix includes info (#899) [Bruno Rocha, Pedro
Pessoa]
fix include/preload docs and allow str|list. fix #898
add faq about #792 and #712
Provides new add_converter function for #858 (#904) [Will Gordon]
Add tests for reverse_lazy for #858
Add converter helper function
Refactor adding custom converters
Replace bare tries with suppress and increase codecov (#901) [Bruno Rocha]
Fix incorrect reverse_lazy workaround in docs to be correct (#897) [Will Gordon]
Fix anchor link in FAQ doc (#895) [Will Gordon]
Fix / CLI command validate not working properly (#892) [Bruno Rocha, Pedro Pessoa]
This expression is always True (considering that the value of 'self.cast' is not directly modified by some other module)
remove @type support and add tomlllib error handling
add proper type conversion and is_type_of error handling
adds for pre-commit and coverage
Update cli.py: remove unnecessary import
Update Makefile: revert accidental change
Docs - Add question to faq and clarify settings loading (#894) [Pedro Pessoa]
add faq about overriding settings. fix #859
clarify loading settings and preload-includes. fix #812
grammarly-assisted typos and small corrections
Docs - Django functions in settings file and misc (#891) [Bruno Rocha, Pedro Pessoa]
add note on envvars uppercase prefix. fix #860
grammarly-assisted typos on django.md
add mkdocs plugin to requirements-dev
Docs/clarify merging defaults (#890) [Pedro Pessoa]
add better overview of merging. fix #863
grammarly-assisted type checking
Add faq questions and small typos (#889) [Pedro Pessoa]
Docs - Change design of Available Options (#887) [Bruno Rocha, Pedro Pessoa]
some small modifications are out of scope of this design change and will be pointed in the PR
Update doc-ignore.yml. [Bruno Rocha]
Update doc-ignore.yml. [Bruno Rocha]
I guess name must be the same as the required on main
Add workflow to run when only docs change. fix #886 (#888) [Pedro Pessoa]
CI - Prevent running when just doc changes are made (#885) [Pedro Pessoa]
add path-filter to main ci. fix rfc #883
fix indentation (3 to 2 spaces)
Docs/add faq page (#882) [Pedro Pessoa]
add faq page to docs
add faq page to docs. fix #880
Fix #876 - avoid failure on deleted cwd (#877) [Bruno Rocha]
Fix #876 no error if cwd is deleted and file is abs
Attempt to fix tests on mac and windows
Fix macos error
Add merge argumento to loader.write to fix #839 (#875) [Bruno Rocha,
Bruno Rocha rochacbruno@users.noreply.github.com --------- Co-
authored-by: Marcelo Lino marcelo.dlino@luizalabs.com, Marcelo Lino]
Add merge argument to loaders.write to reflect the documentation
Pass merge argument from loaders.write to loader.write reflect the expected behavior described in the documentation
Change argument order
Release version 3.1.12. [Bruno Rocha]
Shortlog of commits since last release:
André "decko" de Brito (2):
Removes Codacy Coverage Reporter (#871)
Add a namespace property for VAULT_FOR_DYNACONF dict (#870)
Bruno Rocha (8):
Release version 3.1.11
bump dev version to 3.1.12
Ensure `dynaconf get` returns a valid json string. (#813)
[bugfix] Fix access of keys with spaces (#815)
hotfix func tests (#816)
Add Python 3.11 to CI (#830)
fix lint error
Fix casting on Validator and improve docs (#873)
Bryan Weber (1):
Fix typos in envvars docs (#840)
Florian Apolloner (1):
Small typo fix. (#822)
Maxwell G (1):
Include license files for vendored deps (#841)
MicLon (1):
fix: envvars.md get `HOME` environment variable (#831)
Otávio Dantas (1):
doc(pt-br): translate flask extension to pt-br (#852)
Sergio Kef (1):
Fix code snippet in docs (#843)
Tetiana (1):
#817 Add note about defining root_path when testing (#818)
jctanner (1):
Handle all failures when pwd does not exist. (#857)
jmeichle (1):
Add support for VAULT_NAMESPACE_FOR_DYNACONF (#854)
Update vault and redis APIs as suggested in deprecation warnings. fix #950 by @pedro-psb in https://github.com/dynaconf/dynaconf/pull/954
loader.write to fix #839 by @Mdslino in https://github.com/dynaconf/dynaconf/pull/875includes info by @pedro-psb in https://github.com/dynaconf/dynaconf/pull/899Extensions header to index and pytest-dynaconf reference by @pedro-psb in https://github.com/dynaconf/dynaconf/pull/907envvar_prefix in DynaconfFlask (Fix #848) by @pedro-psb in https://github.com/dynaconf/dynaconf/pull/915get() #742 by @pedro-psb in https://github.com/dynaconf/dynaconf/pull/916load_file relative path resolution and root_path fallbacks #909 by @pedro-psb in https://github.com/dynaconf/dynaconf/pull/921add_converter by @pedro-psb in https://github.com/dynaconf/dynaconf/pull/951Full Changelog: https://github.com/dynaconf/dynaconf/compare/3.1.12...3.2.0
Envvars.md get HOME environment variable (#831) [MicLon]
Fix
- Envvars.md get `HOME` environment variable (#831) [MicLon]
Other
Release version 3.1.12. [Bruno Rocha]
Shortlog of commits since last release:
André "decko" de Brito (2):
Removes Codacy Coverage Reporter (#871)
Add a namespace property for VAULT_FOR_DYNACONF dict (#870)
Bruno Rocha (8):
Release version 3.1.11
bump dev version to 3.1.12
Ensure `dynaconf get` returns a valid json string. (#813)
[bugfix] Fix access of keys with spaces (#815)
hotfix func tests (#816)
Add Python 3.11 to CI (#830)
fix lint error
Fix casting on Validator and improve docs (#873)
Bryan Weber (1):
Fix typos in envvars docs (#840)
Florian Apolloner (1):
Small typo fix. (#822)
Maxwell G (1):
Include license files for vendored deps (#841)
MicLon (1):
fix: envvars.md get `HOME` environment variable (#831)
Otávio Dantas (1):
doc(pt-br): translate flask extension to pt-br (#852)
Sergio Kef (1):
Fix code snippet in docs (#843)
Tetiana (1):
#817 Add note about defining root_path when testing (#818)
jctanner (1):
Handle all failures when pwd does not exist. (#857)
jmeichle (1):
Add support for VAULT_NAMESPACE_FOR_DYNACONF (#854)
Fix casting on Validator and improve docs (#873) [Bruno Rocha]
fix: #823 fix: #834
Fix lint error. [Bruno Rocha]
Small typo fix. (#822) [Bruno Rocha, Florian Apolloner]
Fix typos in envvars docs (#840) [Bruno Rocha, Bryan Weber]
Include license files for vendored deps (#841) [Bruno Rocha, Maxwell G]
Fix code snippet in docs (#843) [Sergio Kef]
Fix syntax error, missing comma
Add a namespace property for VAULT_FOR_DYNACONF dict (#870) [André "decko" de Brito, Bruno Rocha]
Removes Codacy Coverage Reporter (#871) [André "decko" de Brito]
Add support for VAULT_NAMESPACE_FOR_DYNACONF (#854) [Bruno Rocha, jmeichle]
Add support for VAULT_NAMESPACE_FOR_DYNACONF
adjusting for linting
Handle all failures when pwd does not exist. (#857) [jctanner]
Doc(pt-br): translate flask extension to pt-br (#852) [Otávio Dantas]
Add Python 3.11 to CI (#830) [Bruno Rocha, Vicente Marçal]
Fix a testing error on CI
#817 Add note about defining root_path when testing (#818) [Tetiana]
fix #817
Hotfix func tests (#816) [Bruno Rocha]
[bugfix] Fix access of keys with spaces (#815) [Bruno Rocha]
Fix #814
Ensure dynaconf get returns a valid json string. (#813) [Bruno
Rocha]
Bump dev version to 3.1.12. [Bruno Rocha]
Release version 3.1.11. [Bruno Rocha]
This release is a hotfix on top of 3.1.10
Please read changelog from https://github.com/dynaconf/dynaconf/releases/tag/3.1.10
Shortlog of commits since last release:
Bruno Rocha (2):
Release version 3.1.10
Release hotfix (no need to run coverage or include tests_functional)
Amadou Crookes (1): envars.md typo fix
Dynaconf 3.1.11
Amadou Crookes (1):
envars.md typo fix (#786)
Bruno Rocha (19):
Release version 3.1.9
Bump dev version to 3.1.10
Update badges
demo repo will be replaced by a video tutorial soon
Fix CI
New data key casing must adapt to existing key casing (#795)
Add test and docs about includes (#796)
Removed vendor_src folder (#798)
Replacing rochacbruno/ with dynaconf/ (#800)
Fix codecov (#801)
Parse negative numbers from envvar Fix #799 and Fix #585 (#802)
Fix get command with Django (#804)
Add a functional test runner (#805)
Test runner docs and styling (#806)
Allow merge_unique on lists when merge_enabled=True (#810)
Rebind current env when forced for Pytest Fix #728 (#809)
AUTO_CAST can be enabled on instance (#811)
Ensure pyminify is on release script
Add missing tomllib to monify script
Gaurav Talreja (1):
Fix #807 Use client.auth.approle.login instead of client.auth_approle (#808)
Jitendra Yejare (1):
Fix #768 of kv property depreciation from client object (#769)
Joren Retel (2):
Feature/detect casting comb token from converters (#784)
Adding documentation and example to makefile. (#791)
João Gustavo A. Amorim (1):
Add pyupgrade hook (#759)
Kian-Meng Ang (1):
Fix typos (#788)
Lucas Limeira (1):
Using filter_strategy in env_loader to fix #760 (#767)
Nicholas Nadeau, Ph.D., P.Eng (1):
fix: typo (#766)
Oleksii Baranov (2):
Bump codecov action version (#775)
Fix cli init command for flask (#705) (#774)
Pedro de Medeiros (1):
documentation fixes (#771)
The Gitter Badger (1):
Add a Gitter chat badge to README.md (#776)
Théo Melo (1):
Fixing a typo on the readme file (#763)
Vicente Marçal (1):
docs(pt-br): Docs Translation to brazilian portugues. (#787)
Full Changelog: https://github.com/dynaconf/dynaconf/compare/3.1.9...3.1.11
Release version 3.1.11. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (2):
Release version 3.1.10
Release hotfix (no need to run coverage or include tests_functional)
Release hotfix (no need to run coverage or include tests_functional) [Bruno Rocha]
Release version 3.1.10. [Bruno Rocha]
Shortlog of commits since last release:
Amadou Crookes (1):
envars.md typo fix (#786)
Bruno Rocha (19):
Release version 3.1.9
Bump dev version to 3.1.10
Update badges
demo repo will be replaced by a video tutorial soon
Fix CI
New data key casing must adapt to existing key casing (#795)
Add test and docs about includes (#796)
Removed vendor_src folder (#798)
Replacing rochacbruno/ with dynaconf/ (#800)
Fix codecov (#801)
Parse negative numbers from envvar Fix #799 and Fix #585 (#802)
Fix get command with Django (#804)
Add a functional test runner (#805)
Test runner docs and styling (#806)
Allow merge_unique on lists when merge_enabled=True (#810)
Rebind current env when forced for Pytest Fix #728 (#809)
AUTO_CAST can be enabled on instance (#811)
Ensure pyminify is on release script
Add missing tomllib to monify script
Gaurav Talreja (1):
Fix #807 Use client.auth.approle.login instead of client.auth_approle (#808)
Jitendra Yejare (1):
Fix #768 of kv property depreciation from client object (#769)
Joren Retel (2):
Feature/detect casting comb token from converters (#784)
Adding documentation and example to makefile. (#791)
João Gustavo A. Amorim (1):
Add pyupgrade hook (#759)
Kian-Meng Ang (1):
Fix typos (#788)
Lucas Limeira (1):
Using filter_strategy in env_loader to fix #760 (#767)
Nicholas Nadeau, Ph.D., P.Eng (1):
fix: typo (#766)
Oleksii Baranov (2):
Bump codecov action version (#775)
Fix cli init command for flask (#705) (#774)
Pedro de Medeiros (1):
documentation fixes (#771)
The Gitter Badger (1):
Add a Gitter chat badge to README.md (#776)
Théo Melo (1):
Fixing a typo on the readme file (#763)
Vicente Marçal (1):
docs(pt-br): Docs Translation to brazilian portugues. (#787)
Typo (#766) [Bruno Rocha, Nicholas Nadeau, Ph.D., P.Eng]
Fix
- Typo (#766) [Bruno Rocha, Nicholas Nadeau, Ph.D., P.Eng]
Other
Release version 3.1.10. [Bruno Rocha]
Shortlog of commits since last release:
Amadou Crookes (1):
envars.md typo fix (#786)
Bruno Rocha (19):
Release version 3.1.9
Bump dev version to 3.1.10
Update badges
demo repo will be replaced by a video tutorial soon
Fix CI
New data key casing must adapt to existing key casing (#795)
Add test and docs about includes (#796)
Removed vendor_src folder (#798)
Replacing rochacbruno/ with dynaconf/ (#800)
Fix codecov (#801)
Parse negative numbers from envvar Fix #799 and Fix #585 (#802)
Fix get command with Django (#804)
Add a functional test runner (#805)
Test runner docs and styling (#806)
Allow merge_unique on lists when merge_enabled=True (#810)
Rebind current env when forced for Pytest Fix #728 (#809)
AUTO_CAST can be enabled on instance (#811)
Ensure pyminify is on release script
Add missing tomllib to monify script
Gaurav Talreja (1):
Fix #807 Use client.auth.approle.login instead of client.auth_approle (#808)
Jitendra Yejare (1):
Fix #768 of kv property depreciation from client object (#769)
Joren Retel (2):
Feature/detect casting comb token from converters (#784)
Adding documentation and example to makefile. (#791)
João Gustavo A. Amorim (1):
Add pyupgrade hook (#759)
Kian-Meng Ang (1):
Fix typos (#788)
Lucas Limeira (1):
Using filter_strategy in env_loader to fix #760 (#767)
Nicholas Nadeau, Ph.D., P.Eng (1):
fix: typo (#766)
Oleksii Baranov (2):
Bump codecov action version (#775)
Fix cli init command for flask (#705) (#774)
Pedro de Medeiros (1):
documentation fixes (#771)
The Gitter Badger (1):
Add a Gitter chat badge to README.md (#776)
Théo Melo (1):
Fixing a typo on the readme file (#763)
Vicente Marçal (1):
docs(pt-br): Docs Translation to brazilian portugues. (#787)
Add missing tomllib to monify script. [Bruno Rocha]
Ensure pyminify is on release script. [Bruno Rocha]
AUTO_CAST can be enabled on instance (#811) [Bruno Rocha]
Fix #772
Rebind current env when forced for Pytest Fix #728 (#809) [Bruno Rocha]
Allow merge_unique on lists when merge_enabled=True (#810) [Bruno Rocha]
Fix #726
Fix #807 Use client.auth.approle.login instead of client.auth_approle (#808) [Gaurav Talreja]
Fix typos (#788) [Kian-Meng Ang]
Found via this command:
codespell -S "./dynaconf/vendor/*,./docs/pt-br/*,./.mypy_cache/*,*.svg" -L hashi
Test runner docs and styling (#806) [Bruno Rocha]
Test runner docs and styling
No emojis on windows
Add a functional test runner (#805) [Bruno Rocha]
Add a functional test runner
Renamed example/ to tests_functional/
Fix get command with Django (#804) [Bruno Rocha]
Fix #789
Parse negative numbers from envvar Fix #799 and Fix #585 (#802) [Bruno Rocha]
Fix codecov (#801) [Bruno Rocha]
Fix codecov
call coverage xml
Replacing rochacbruno/ with dynaconf/ (#800) [Bruno Rocha]
Replacing rochacbruno/ with dynaconf/
xscode doesn't exist anymore
Removed vendor_src folder (#798) [Bruno Rocha]
Now vendor is the source
and minification happens during release process.
toml kept as a fallback until 4.0.0 to nor break compatibility
Add test and docs about includes (#796) [Bruno Rocha]
closes #794
New data key casing must adapt to existing key casing (#795) [Bruno Rocha]
Fix #737
Docs(pt-br): Docs Translation to brazilian portugues. (#787) [Vicente Marçal]
Adding documentation and example to makefile. (#791) [Joren Retel]
Adding documentation and example to makefile.
Put header one level down in docs.
Feature/detect casting comb token from converters (#784) [Joren Retel]
Envars.md typo fix (#786) [Amadou Crookes]
Fix CI. [Bruno Rocha]
Demo repo will be replaced by a video tutorial soon. [Bruno Rocha]
Update badges. [Bruno Rocha]
Documentation fixes (#771) [Bruno Rocha, Pedro de Medeiros]
Add a Gitter chat badge to README.md (#776) [Bruno Rocha, The Gitter Badger]
Fix cli init command for flask (#705) (#774) [Bruno Rocha, Oleksii Baranov]
Bump codecov action version (#775) [Oleksii Baranov]
Fix #768 of kv property depreciation from client object (#769) [Jitendra Yejare]
Using filter_strategy in env_loader to fix #760 (#767) [Lucas Limeira]
Fixing a typo on the readme file (#763) [Théo Melo]
Add pyupgrade hook (#759) [João Gustavo A. Amorim]
update hooks and add pyupgrade
updates by pyupgrade
remove unused typing imports
add from __future__ import annotations across the codebase
add from __future__ import annotations in examples
Bump dev version to 3.1.10. [Bruno Rocha]
Release version 3.1.9. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (4):
Release version 3.1.8
Bye py 3.7
Multiple fixes for 3.19 (#756)
update docs site (#758)
João Gustavo A. Amorim (1):
Organize pre-commit setup (#757)
dependabot[bot] (1):
Bump django from 2.2.27 to 2.2.28 in /example/django_pytest_pure (#743)
Bump django from 2.2.27 to 2.2.28 in /example/django_pytest_pure by @dependabot in https://github.com/rochacbruno/dynaconf/pull/743
Full Changelog: https://github.com/rochacbruno/dynaconf/compare/3.1.8...3.1.9
Dynaconf 3.1.9
List of issues fixed on this release: https://github.com/rochacbruno/dynaconf/issues?q=is%3Aissue+sort%3Aupdated-desc+milestone%3A3.1.9+is%3Aclosed
Release version 3.1.9. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (4):
Release version 3.1.8
Bye py 3.7
Multiple fixes for 3.19 (#756)
update docs site (#758)
João Gustavo A. Amorim (1):
Organize pre-commit setup (#757)
dependabot[bot] (1):
Bump django from 2.2.27 to 2.2.28 in /example/django_pytest_pure (#743)
Update docs site (#758) [Bruno Rocha]
Organize pre-commit setup (#757) [João Gustavo A. Amorim]
Multiple fixes for 3.19 (#756) [Bruno Rocha]
Bump django from 2.2.27 to 2.2.28 in /example/django_pytest_pure (#743) [dependabot[bot], dependabot[bot]]
Bye py 3.7. [Bruno Rocha]
Release version 3.1.8. [Bruno Rocha]
Shortlog of commits since last release:
Anderson Sousa (1):
Document the usage with python -m (#710)
Andressa Cabistani (2):
Add unique label when merging lists to fix issue #653 (#661)
Add new validation to fix issue #585 (#667)
Armin Berres (1):
Fix typo in error message
Bruno Rocha (7):
Release version 3.1.7
Found this bug that was duplicating the generated envlist (#663)
Add support for Python 3.10 (#665)
Attempt to fix #555 (#669)
Create update_contributors.yml
Fixing pre-coomit and docs CI
Added `dynaconf get` command to cli (#730)
Caneco (2):
improvement: add brand new logo to the project (#686)
improvement: update socialcard to match the python way (#687)
EdwardCuiPeacock (2):
Feature: add @jinja and @format casting (#704)
Combo converter doc (#735)
Eitan Mosenkis (1):
Fix FlaskConfig.setdefault (#706)
Enderson Menezes (Mr. Enderson) (2):
Force PYTHONIOENCODING to utf-8 to fix #664 (#672)
edit: move discussions to github tab (#682)
Eugene Triguba (1):
Fix custom prefix link in envvar documentation (#680)
Gibran Herrera (1):
Fix Issue 662 Lazy validation (#675)
Jitendra Yejare (2):
Load vault secrets from environment less stores or which are not written by dynaconf (#725)
Use default value when settings is blank (#729)
Pavel Alimpiev (1):
Update docs link (#678)
Ugo Benassayag (1):
Added validate_only_current_env to validator (issue #734) (#736)
Waylon Walker (1):
Docs Fix Spelling (#696)
dependabot[bot] (3):
Bump django from 2.1.5 to 2.2.26 in /example/django_pytest_pure (#711)
Bump mkdocs from 1.1.2 to 1.2.3 (#715)
Bump django from 2.2.26 to 2.2.27 in /example/django_pytest_pure (#717)
github-actions[bot] (2):
[automated] Update Contributors File (#691)
[automated] Update Contributors File (#732)
lowercase00 (1):
Makes Django/Flask kwargs case insensitive (#721)
Release version 3.1.8. [Bruno Rocha]
Release version 3.1.8. [Bruno Rocha]
Shortlog of commits since last release:
Anderson Sousa (1):
Document the usage with python -m (#710)
Andressa Cabistani (2):
Add unique label when merging lists to fix issue #653 (#661)
Add new validation to fix issue #585 (#667)
Armin Berres (1):
Fix typo in error message
Bruno Rocha (7):
Release version 3.1.7
Found this bug that was duplicating the generated envlist (#663)
Add support for Python 3.10 (#665)
Attempt to fix #555 (#669)
Create update_contributors.yml
Fixing pre-coomit and docs CI
Added `dynaconf get` command to cli (#730)
Caneco (2):
improvement: add brand new logo to the project (#686)
improvement: update socialcard to match the python way (#687)
EdwardCuiPeacock (2):
Feature: add @jinja and @format casting (#704)
Combo converter doc (#735)
Eitan Mosenkis (1):
Fix FlaskConfig.setdefault (#706)
Enderson Menezes (Mr. Enderson) (2):
Force PYTHONIOENCODING to utf-8 to fix #664 (#672)
edit: move discussions to github tab (#682)
Eugene Triguba (1):
Fix custom prefix link in envvar documentation (#680)
Gibran Herrera (1):
Fix Issue 662 Lazy validation (#675)
Jitendra Yejare (2):
Load vault secrets from environment less stores or which are not written by dynaconf (#725)
Use default value when settings is blank (#729)
Pavel Alimpiev (1):
Update docs link (#678)
Ugo Benassayag (1):
Added validate_only_current_env to validator (issue #734) (#736)
Waylon Walker (1):
Docs Fix Spelling (#696)
dependabot[bot] (3):
Bump django from 2.1.5 to 2.2.26 in /example/django_pytest_pure (#711)
Bump mkdocs from 1.1.2 to 1.2.3 (#715)
Bump django from 2.2.26 to 2.2.27 in /example/django_pytest_pure (#717)
github-actions[bot] (2):
[automated] Update Contributors File (#691)
[automated] Update Contributors File (#732)
lowercase00 (1):
Makes Django/Flask kwargs case insensitive (#721)
Combo converter doc (#735) [EdwardCuiPeacock]
Added validate_only_current_env to validator (issue #734) (#736) [Ugo Benassayag, Ugo Benassayag]
[automated] Update Contributors File (#732) [github-actions[bot], rochacbruno]
Added dynaconf get command to cli (#730) [Bruno Rocha]
Fixing pre-coomit and docs CI. [Bruno Rocha]
Fix typo in error message. [Armin Berres]
It is, e.g., REDIS_HOST_FOR_DYNACONF - not REDIS_FOR_DYNACONF_HOST.
Bump django from 2.2.26 to 2.2.27 in /example/django_pytest_pure (#717) [Bruno Rocha, dependabot[bot], dependabot[bot]]
Bump mkdocs from 1.1.2 to 1.2.3 (#715) [Bruno Rocha, dependabot[bot], dependabot[bot]]
Fix custom prefix link in envvar documentation (#680) [Andressa Cabistani, Bruno Rocha, Eugene Triguba]
Use default value when settings is blank (#729) [Bruno Rocha, Jitendra Yejare]
Load vault secrets from environment less stores or which are not written by dynaconf (#725) [Jitendra Yejare]
Makes Django/Flask kwargs case insensitive (#721) [lowercase00]
Docs Fix Spelling (#696) [Bruno Rocha, Waylon Walker]
Bump django from 2.1.5 to 2.2.26 in /example/django_pytest_pure (#711) [Bruno Rocha, dependabot[bot], dependabot[bot]]
[automated] Update Contributors File (#691) [github-actions[bot], rochacbruno]
Feature: add @jinja and @format casting (#704) [Bruno Rocha, EdwardCuiPeacock]
Document the usage with python -m (#710) [Anderson Sousa, Bruno Rocha]
Fix FlaskConfig.setdefault (#706) [Eitan Mosenkis]
Create update_contributors.yml. [Bruno Rocha]
Improvement: update socialcard to match the python way (#687) [Caneco]
Improvement: add brand new logo to the project (#686) [Caneco]
Edit: move discussions to github tab (#682) [Enderson Menezes (Mr. Enderson)]
Update docs link (#678) [Pavel Alimpiev]
Replace an old Django-related link with a new one
Update docs link
Fix Issue 662 Lazy validation (#675) [Gibran Herrera]
Force PYTHONIOENCODING to utf-8 to fix #664 (#672) [Enderson Menezes (Mr. Enderson)]
Attempt to fix #555 (#669) [Bruno Rocha]
Add new validation to fix issue #585 (#667) [Andressa Cabistani, andressa.cabistani]
Add support for Python 3.10 (#665) [Bruno Rocha]
Python 3.10 supported and tested
Found this bug that was duplicating the generated envlist (#663) [Bruno Rocha]
Add unique label when merging lists to fix issue #653 (#661) [Andressa Cabistani, andressa.cabistani]
Release version 3.1.7. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (2):
Release version 3.1.6
Add missing docs and missing python_requires (#659)
Kamil Gałuszka (1): Add support for Python 3.9 and remove Ubuntu 16.04 that is deprecated in Azure Pipelines
Release version 3.1.7. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (2):
Release version 3.1.6
Add missing docs and missing python_requires (#659)
Add missing docs and missing python_requires (#659) [Bruno Rocha]
Release version 3.1.6. [Bruno Rocha]
Shortlog of commits since last release:
Ambient Lighter (1):
Fix typo (#647)
Bruno Rocha (19):
Release version 3.1.4
demo link (#546)
removed release_notes from the docs. (#550)
HOTFIX: Add coverage for 2 lines on validators.
Fix #595 namedtuples are no more converted to BoxList (#623)
Fix black issues (#631)
Update FUNDING.yml
description and type annotation for validator (#634)
Add myoy and pre-commit to CI (#635)
Update codaci badge (#636)
Remove dependabot (this project has no dependencies)
fix #596 django override (#645)
fix #491 pytest django Fix #491 pytest and django (#646)
Delete requirements.txt
Update FUNDING.yml
Add support for dynaconf_hooks(post) issue #654 (#655)
Move to Github Actions (#656)
Bye Azure (#657)
Bump dev version
FrankBattaglia (1):
fix dict iterator methods for flask DynaconfConfig (#581)
Jacob Callahan (1):
Add the ability for selective validation (#549)
Kamil Gałuszka (1):
Add support for Python 3.9 and remove Ubuntu 16.04 that is deprecated in Azure Pipelines (#618)
Konstantin (2):
Update configuration.md (#553)
Update configuration.md (#554)
Linus Torvalds (1):
Fix a typo in the docs
Martin Thoma (1):
Add type annotations for dynaconf.utils (#450)
Nicholas Dentandt (1):
feat: add filter strategy with PrefixFilter (#625)
Robert Rosca (1):
Add a warning if `--env` is passed to `init` (#629)
Tanya Tereshchenko (1):
Do not search anywhere if the absolute path to a file provided (#570)
Yusuf Kaka (1):
Added an example using FastAPI (#571)
dependabot-preview[bot] (2):
Bump mkdocs-material from 7.0.5 to 7.0.6 (#552)
Upgrade to GitHub-native Dependabot (#574)
puntonim (1):
Fix typo (#588)
Release version 3.1.5. [Bruno Rocha]
Release version 3.1.5. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (4):
Fix #595 namedtuples are no more converted to BoxList (#623)
fix #596 django override (#645)
fix #491 pytest django Fix #491 pytest and django (#646)
Delete requirements.txt
FrankBattaglia (1):
fix dict iterator methods for flask DynaconfConfig (#581)
Robert Rosca (1):
Add a warning if `--env` is passed to `init` (#629)
Tanya Tereshchenko (1):
Do not search anywhere if the absolute path to a file provided (#570)
Delete requirements.txt. [Bruno Rocha]
Fix #491 pytest django Fix #491 pytest and django (#646) [Bruno Rocha]
Fix #596 django override (#645) [Bruno Rocha]
Fix #596 django.test.override issue
Fix CI side effects
Add a warning if --env is passed to init (#629) [Bruno Rocha,
Bruno Rocha, Robert Rosca]
Add a warning if --env is passed to init
Fix typo, file was doubled in init help
Update docstrings for CLI
Raise error if using -i with init subcommand
Update docs to match current behaviour
add test coverage
Fix dict iterator methods for flask DynaconfConfig (#581) [Bruno Rocha, Frank Battaglia, FrankBattaglia]
Fix #595 namedtuples are no more converted to BoxList (#623) [Bruno Rocha]
Do not search anywhere if the absolute path to a file provided (#570) [Bruno Rocha, Tanya Tereshchenko]
fixes #569
Release version 3.1.4. [Bruno Rocha]
Release version 3.1.4. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (3):
Release version 3.1.3
HOTFIX for 501 (#540)
HOTFIX for 462 related issue, `default` on .get should be parsed as Box (#541)
dependabot-preview[bot] (2):
Bump mkdocs-material from 6.1.6 to 7.0.4 (#537)
Bump mkdocs-material from 7.0.4 to 7.0.5 (#539)
HOTFIX for 462 related issue, default on .get should be parsed as
Box (#541) [Bruno Rocha]
objects
In order to keep the same method api, default values should be parsed and converted to Boxed objects.
https://github.com/rochacbruno/dynaconf/issues/462
HOTFIX for 501 (#540) [Bruno Rocha]
Flask still missing contains
Bump mkdocs-material from 7.0.4 to 7.0.5 (#539) [dependabot- preview[bot]]
Bumps mkdocs-material from 7.0.4 to 7.0.5.
Bump mkdocs-material from 6.1.6 to 7.0.4 (#537) [dependabot- preview[bot]]
Bumps mkdocs-material from 6.1.6 to 7.0.4.
Release version 3.1.3. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (4):
Release version 3.1.3rc1
Fix #462 make DynaBox nested List to use DynaBox as default class (#533)
Fix #478 Make alias for environment -> environments (#534)
Test to ensure #467 is not an issue (#535)
Environment variables filtering #470 (#474) [Michal Odnous]
Fix
- Environment variables filtering #470 (#474) [Michal Odnous]
Other
Release version 3.1.3. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (4):
Release version 3.1.3rc1
Fix #462 make DynaBox nested List to use DynaBox as default class (#533)
Fix #478 Make alias for environment -> environments (#534)
Test to ensure #467 is not an issue (#535)
Test to ensure #467 is not an issue (#535) [Bruno Rocha]
Closes #467
Fix #478 Make alias for environment -> environments (#534) [Bruno Rocha]
This is a common mistake to pass environment so it is alias.
Fix #478
Fix #462 make DynaBox nested List to use DynaBox as default class (#533) [Bruno Rocha]
Fix #462
Release version 3.1.3rc1. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (11):
Release version 3.1.2
Fix #445 casting on dottet get. (#446)
Fix docs regarding --django argument on cli (#477)
Fix #521 - FlaskDynaconf should raise KeyError for non existing keys (#522)
Case insensitive envvar traversal (#524)
Allow load_file to accept pathlib.Path (#525)
Allow Title case lookup and validation. (#526)
Fix #482 - formatter case insensitive (#527)
Fix #449 - Django lazy templating Fix #449 (#528)
Added a test to reproduce #492 (not able to reproduce) (#530)
Fix #511 allow user to specify loaders argument to execute_loaders (#531)
FrankBattaglia (1):
Specify flask extension initializers by entry point object reference (#456)
Ilito Torquato (3):
fix merging hyperlink to fix #454 (#458)
Changed enabled_core_loaders elements to be upper case to fix #455 (#457)
Fix doc secrets from vault #403 (#459)
Marcelo Lino (1):
Add __contains__ to Dynaconf (#502)
Michal Odnous (1):
Fix: Environment variables filtering #470 (#474)
dependabot-preview[bot] (5):
Bump mkdocs-material from 6.0.2 to 6.1.0 (#453)
Bump mkdocs-git-revision-date-localized-plugin from 0.5.2 to 0.7.3 (#463)
Bump mkdocs-material from 6.1.0 to 6.1.5 (#473)
Bump mkdocs-versioning from 0.2.1 to 0.3.1 (#475)
Bump mkdocs-material from 6.1.5 to 6.1.6 (#476)
mirrorrim (1):
Fix reading secret from Vault kv v2 (#483) (#487)
Fix #511 allow user to specify loaders argument to execute_loaders (#531) [Bruno Rocha]
Fix #511
settings.execute_loaders(loaders=[dynaconf.loaders.env_loader])
Added a test to reproduce #492 (not able to reproduce) (#530) [Bruno Rocha]
I can't reproduce the bug #492 but I added a test to ensure.
Fix #449 - Django lazy templating Fix #449 (#528) [Bruno Rocha]
Fix django laxy templates fix #449
Delete unused files
Fix LOADERS enabling
Fix #482 - formatter case insensitive (#527) [Bruno Rocha]
Fix #482
Allow Title case lookup and validation. (#526) [Bruno Rocha]
Fix #486
Allow load_file to accept pathlib.Path (#525) [Bruno Rocha]
Fix #494
Case insensitive envvar traversal (#524) [Bruno Rocha]
Fix #519 Fix #516
Now export DYNACONF_FOO__bar__zaz is the same as
DYNACONF_FOO__BAR__ZAZ
first level prefix still needs to be uppercase!
Added a warning about django to the docs.
Fix #521 - FlaskDynaconf should raise KeyError for non existing keys (#522) [Bruno Rocha]
Fix #521 - FlaskDynaconf should raise KeyError for non existing keys
Test coverage got dotted get
Add contains to Dynaconf (#502) [Marcelo Lino, Marcelo Lino]
Add contains to Dynaconf
Add contains assert for flask test
Remove duplicated contains from dynaconf
Fix reading secret from Vault kv v2 (#483) (#487) [Alexey Tylindus, mirrorrim]
Fix docs regarding --django argument on cli (#477) [Bruno Rocha]
fix #465 fix #451
Bump mkdocs-material from 6.1.5 to 6.1.6 (#476) [dependabot- preview[bot]]
Bumps mkdocs-material from 6.1.5 to 6.1.6.
Bump mkdocs-versioning from 0.2.1 to 0.3.1 (#475) [dependabot- preview[bot]]
Bumps mkdocs-versioning from 0.2.1 to 0.3.1.
Bump mkdocs-material from 6.1.0 to 6.1.5 (#473) [dependabot- preview[bot]]
Bumps mkdocs-material from 6.1.0 to 6.1.5.
Bump mkdocs-git-revision-date-localized-plugin from 0.5.2 to 0.7.3 (#463) [dependabot-preview[bot]]
Bumps mkdocs-git-revision-date-localized-plugin from 0.5.2 to 0.7.3.
Fix doc secrets from vault #403 (#459) [Bruno Rocha, Ilito Torquato, Ilito Torquato]
Fix secrets`s doc at Using Vault Server session
Fix secrets`s doc at Using Vault Server session
Revert "Fix secrets`s doc at Using Vault Server session"
This reverts commit c47cd986bf089b3528e5c0e7c5a914cb7c1e69c8.
Changed enabled_core_loaders elements to be upper case to fix #455 (#457) [Bruno Rocha, Ilito Torquato, Ilito Torquato]
Changed enabled_core_loaders elements to be upper case to fix #455
Change map to list comprehension and create empty [] as default value
fix wrong indentation
Fix merging hyperlink to fix #454 (#458) [Ilito Torquato, Ilito Torquato]
Specify flask extension initializers by entry point object reference (#456) [FrankBattaglia]
Bump mkdocs-material from 6.0.2 to 6.1.0 (#453) [dependabot- preview[bot]]
Bumps mkdocs-material from 6.0.2 to 6.1.0.
Fix #445 casting on dottet get. (#446) [Bruno Rocha]
Fix the rebound of cast on dotted get.
Fix #445
Release version 3.1.2. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (13):
Release version 3.1.1
Update diagram images
Update docs/release_notes
Fixing prospector warnings. (#425)
Fix mkdocs config problem found in #423
Signed in for https://xscode.com/rochacbruno/dynaconf (#426)
Remove links to outdated issues from guidelines
Fix colors and KEyError handling on cli.py (#429)
Fix #434 setenv failing to unset LazyValues (#437)
Fix #432 no need for warning when env is missing on a file (#438)
Add test to ensure fix #430 (#439)
Close #284 not a bug (#440)
Fix #443 object merge with same value on same level keys (#444)
dependabot-preview[bot] (6):
Bump mkdocs-material from 5.3.2 to 5.5.13 (#423)
Bump pymdown-extensions from 7.1 to 8.0 (#422)
Bump mkdocs-material-extensions from 1.0 to 1.0.1 (#427)
Bump pymdown-extensions from 8.0 to 8.0.1 (#435)
Bump mkdocs-material from 5.5.13 to 6.0.1 (#436)
Bump mkdocs-material from 6.0.1 to 6.0.2 (#442)
Nothing published for this version
Release version 3.1.2. [Bruno Rocha]
Release version 3.1.2. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (13):
Release version 3.1.1
Update diagram images
Update docs/release_notes
Fixing prospector warnings. (#425)
Fix mkdocs config problem found in #423
Signed in for https://xscode.com/rochacbruno/dynaconf (#426)
Remove links to outdated issues from guidelines
Fix colors and KEyError handling on cli.py (#429)
Fix #434 setenv failing to unset LazyValues (#437)
Fix #432 no need for warning when env is missing on a file (#438)
Add test to ensure fix #430 (#439)
Close #284 not a bug (#440)
Fix #443 object merge with same value on same level keys (#444)
dependabot-preview[bot] (6):
Bump mkdocs-material from 5.3.2 to 5.5.13 (#423)
Bump pymdown-extensions from 7.1 to 8.0 (#422)
Bump mkdocs-material-extensions from 1.0 to 1.0.1 (#427)
Bump pymdown-extensions from 8.0 to 8.0.1 (#435)
Bump mkdocs-material from 5.5.13 to 6.0.1 (#436)
Bump mkdocs-material from 6.0.1 to 6.0.2 (#442)
Fix #443 object merge with same value on same level keys (#444) [Bruno Rocha]
This solution is a temporary solution as it solves current
problem, but there is still the case for None values.
The best solution for this case would be wrapping all the values on assignment and give it a full path signature to compare.
Bump mkdocs-material from 6.0.1 to 6.0.2 (#442) [dependabot- preview[bot]]
Bumps mkdocs-material from 6.0.1 to 6.0.2.
Close #284 not a bug (#440) [Bruno Rocha]
284 is not a bug but a missing of explicit merge tokens
Add test to ensure fix #430 (#439) [Bruno Rocha]
I could not reproduce the problem resported on #430 considering it close #430 reopen as needed.
Fix #432 no need for warning when env is missing on a file (#438) [Bruno Rocha]
When env is missing on a file there is no need to output a warning.
All envs are optional on files.
Fix #432
Fix #434 setenv failing to unset LazyValues (#437) [Bruno Rocha]
Fix #434
Bump mkdocs-material from 5.5.13 to 6.0.1 (#436) [dependabot- preview[bot]]
Bumps mkdocs-material from 5.5.13 to 6.0.1.
Bump pymdown-extensions from 8.0 to 8.0.1 (#435) [dependabot- preview[bot]]
Bumps pymdown-extensions from 8.0 to 8.0.1.
Fix colors and KEyError handling on cli.py (#429) [Bruno Rocha]
Remove links to outdated issues from guidelines. [Bruno Rocha]
Bump mkdocs-material-extensions from 1.0 to 1.0.1 (#427) [dependabot- preview[bot]]
Bumps mkdocs-material-extensions from 1.0 to 1.0.1.
Signed in for https://xscode.com/rochacbruno/dynaconf (#426) [Bruno Rocha]
Offering paid support for dynaconf users.
Bump pymdown-extensions from 7.1 to 8.0 (#422) [dependabot- preview[bot]]
Bumps pymdown-extensions from 7.1 to 8.0.
Bump mkdocs-material from 5.3.2 to 5.5.13 (#423) [dependabot- preview[bot]]
Bumps mkdocs-material from 5.3.2 to 5.5.13.
Fix mkdocs config problem found in #423. [Bruno Rocha]
Fix #mkdocs-material/1941
Fixing prospector warnings. (#425) [Bruno Rocha]
Fixing prospector warnings
Used vulture to detect and remove dead code
Update docs/release_notes. [Bruno Rocha]
Update diagram images. [Bruno Rocha]
Release version 3.1.1. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (2):
Release version 3.1.1rc6
HOTFIX: Cli now accepts dotter keys
Andreas Poehlmann (1): Allow importing SEARCHTREE before settings are configured
Andreas Poehlmann (1): Allow importing SEARCHTREE before settings are configured (#383)
Bruno Rocha (38):
Hot fix removing unused imports
Merge branch 'master' of github.com:rochacbruno/dynaconf
Removing invalid links, adding allert on old docs fix #369 and fix #371 (#372)
Fix #359 lazy template substitution on nested keys (#375)
Flask fizes and other issues included. (#376)
Fix #379 dict like iteration (#385)
Fix #377 allow computed values (#386)
Fix #388 URL reference for custom loaders (#389)
Fix #382 add is_overriden method (#390)
Release version 3.1.0
Create FUNDING.yml
Fix #391 make box_settings optional, change vendoring strategy (#398)
HOTFIX: Add missing vendor.txt
Allow nested Lazy Values (#405)
Makes PEP8 more strictly and remove unused variables (#408)
Merge branch 'master' into vault
boto is optional
Merge branch 'vault' into master
Included example of custom SOPS loader to the docs
Release version 3.1.1rc1
HOTFIX: Logging instance has a `formatter` attribute (#410)
Release version 3.1.1rc2
Fix set attribute directly and fresh vars (#412)
384 fix tail and dotted merge (#415)
Fix #404 no more dup message on combined validators (#417)
HOTFIX 414 update docs version on release
Release version 3.1.1rc3
HOTFIX: Add missing instruction to release.sh
Added full Dynaconf Diagram and few fizes. (#418)
Release version 3.1.1rc4
Small fix on release script
Minification of vendored modules (#419)
Release version 3.1.1rc5
Do not include vendor_src on wheel target (#420)
Release version 3.1.1rc6
HOTFIX: Cli now accepts dotter keys
Release version 3.1.1
Christoph Schmatzler (1):
Fix typo in Validation docs (#394)
Gabriel Simonetto (1):
Fix #399 - Update documentation link (#401)
Jiranun Jiratrakanvong (1):
Add auth username and password for redis settings (#378)
John Vandenberg (1):
Allow testing against local redis server (#387)
Martijn Pieters (1):
Correct typos in documentation and README (#400)
Max Winterstein (1):
Fix typo in release notes (#411)
Mirek Długosz (2):
Test all names in Validator("foo", "bar", must_exist=False) (#406)
Fix #407 - add proper equality test for CombinedValidator (#413)
Nikolai Bessonov (1):
fix a typo (#393)
Peng Yin (5):
Read all secrets under a vault path
Add option to auth vault with iam role
Fix format
Fix test for versioned kv engine in latest vault
Merge branch 'master' into vault
Piotr Baniukiewicz (1):
Fix validation of optional fields (#370)
whg517 (1):
docs: Fixed filename error in the case of the index page (#396)
Release version 3.1.1. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (2):
Release version 3.1.1rc6
HOTFIX: Cli now accepts dotter keys
HOTFIX: Cli now accepts dotter keys. [Bruno Rocha]
Release version 3.1.1rc6. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (2):
Release version 3.1.1rc5
Do not include vendor_src on wheel target (#420)
Do not include vendor_src on wheel target (#420) [Bruno Rocha]
Release version 3.1.1rc5. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (3):
Release version 3.1.1rc4
Small fix on release script
Minification of vendored modules (#419)
Minification of vendored modules (#419) [Bruno Rocha]
Minified all the vendor folder saving 50% od disk space
Add vendor_src and minify script
vendor_src is not included in the build, only the results of its minification
Small fix on release script. [Bruno Rocha]
Correct path for mkdocs.yml
Release version 3.1.1rc4. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (3):
Release version 3.1.1rc3
HOTFIX: Add missing instruction to release.sh
Added full Dynaconf Diagram and few fizes. (#418)
Added full Dynaconf Diagram and few fizes. (#418) [Bruno Rocha]
HOTFIX: Add missing instruction to release.sh. [Bruno Rocha]
Release version 3.1.1rc3. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (5):
Release version 3.1.1rc2
Fix set attribute directly and fresh vars (#412)
384 fix tail and dotted merge (#415)
Fix #404 no more dup message on combined validators (#417)
HOTFIX 414 update docs version on release
Max Winterstein (1):
Fix typo in release notes (#411)
Mirek Długosz (1):
Fix #407 - add proper equality test for CombinedValidator (#413)
HOTFIX 414 update docs version on release. [Bruno Rocha]
Fix #414
Fix #404 no more dup message on combined validators (#417) [Bruno Rocha]
384 fix tail and dotted merge (#415) [Bruno Rocha]
attempt to fix tail call on object_merge Fix #384
Fix list and dict merge issues
Fix typo in release notes (#411) [Bruno Rocha, Max Winterstein]
Fix #407 - add proper equality test for CombinedValidator (#413) [Mirek Długosz]
Fix #407 - add proper equality test for CombinedValidator
Update after review
Fix set attribute directly and fresh vars (#412) [Bruno Rocha]
Fix #253 Fix #395
Release version 3.1.1rc2. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (2):
Release version 3.1.1rc1
HOTFIX: Logging instance has a `formatter` attribute (#410)
HOTFIX: Logging instance has a formatter attribute (#410) [Bruno
Rocha]
Dynaconf was trying to detect a lazy value by the existence
of formatter attribute but in Django when the value is a logging
it has .formatter attribute.
Release version 3.1.1rc1. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (10):
Release version 3.1.0
Create FUNDING.yml
Fix #391 make box_settings optional, change vendoring strategy (#398)
HOTFIX: Add missing vendor.txt
Allow nested Lazy Values (#405)
Makes PEP8 more strictly and remove unused variables (#408)
Merge branch 'master' into vault
boto is optional
Merge branch 'vault' into master
Included example of custom SOPS loader to the docs
Christoph Schmatzler (1):
Fix typo in Validation docs (#394)
Gabriel Simonetto (1):
Fix #399 - Update documentation link (#401)
Jiranun Jiratrakanvong (1):
Add auth username and password for redis settings (#378)
Martijn Pieters (1):
Correct typos in documentation and README (#400)
Mirek Długosz (1):
Test all names in Validator("foo", "bar", must_exist=False) (#406)
Nikolai Bessonov (1):
fix a typo (#393)
Peng Yin (5):
Read all secrets under a vault path
Add option to auth vault with iam role
Fix format
Fix test for versioned kv engine in latest vault
Merge branch 'master' into vault
whg517 (1):
docs: Fixed filename error in the case of the index page (#396)
Included example of custom SOPS loader to the docs. [Bruno Rocha]
Add auth username and password for redis settings (#378) [Bruno Rocha, Jiranun Jiratrakanvong, Jiranun Jiratrakanvong]
Merge branch 'vault' into master. [Bruno Rocha]
Boto is optional. [Bruno Rocha]
Merge branch 'master' into vault. [Bruno Rocha]
Fix a typo (#393) [Bruno Rocha, Nikolai Bessonov]
Fix typo in Validation docs (#394) [Bruno Rocha, Christoph Schmatzler]
Correct typos in documentation and README (#400) [Bruno Rocha, Martijn Pieters]
Correct minor documentation typo in the Dynamic Variables section.
Fix typos throughout the docs
Docs: Fixed filename error in the case of the index page (#396) [Bruno Rocha, whg517]
Fix #399 - Update documentation link (#401) [Bruno Rocha, Gabriel Simonetto]
Makes PEP8 more strictly and remove unused variables (#408) [Bruno Rocha]
Test all names in Validator("foo", "bar", must_exist=False) (#406) [Mirek Długosz]
Validator(must_exist=False) incorrectly checked first name only.
Given settings.yaml:
bar: some_value
Validator("foo", "bar", must_exist=False) would not raise
ValidationError - it would return after checking that first name
indeed is not defined.
Allow nested Lazy Values (#405) [Bruno Rocha]
Fix #392 Fix #402
Merge branch 'master' into vault. [Peng Yin]
HOTFIX: Add missing vendor.txt. [Bruno Rocha]
Fix #391 make box_settings optional, change vendoring strategy (#398) [Bruno Rocha]
Fix test for versioned kv engine in latest vault. [Peng Yin]
Fix format. [Peng Yin]
Add option to auth vault with iam role. [Peng Yin]
Read all secrets under a vault path. [Peng Yin]
Create FUNDING.yml. [Bruno Rocha]
Release version 3.1.0. [Bruno Rocha]
Shortlog of commits since last release:
Andreas Poehlmann (1):
Allow importing SEARCHTREE before settings are configured (#383)
Bruno Rocha (10):
Release version 3.0.0
Hot fix removing unused imports
Merge branch 'master' of github.com:rochacbruno/dynaconf
Removing invalid links, adding allert on old docs fix #369 and fix #371 (#372)
Fix #359 lazy template substitution on nested keys (#375)
Flask fizes and other issues included. (#376)
Fix #379 dict like iteration (#385)
Fix #377 allow computed values (#386)
Fix #388 URL reference for custom loaders (#389)
Fix #382 add is_overridden method (#390)
John Vandenberg (1):
Allow testing against local redis server (#387)
Piotr Baniukiewicz (1):
Fix validation of optional fields (#370)
This release is more about bug fixes and improvements, we included a full diagram of the library to help contributors.
Dynaconf doesn't have dependencies because the main libraries used have been vendored. In addition to the vendoring process (which followed the guidelines regarding licensing and structure), all the vendored libraries have been minified to save space on the distribution.
Ideally the vendored libraries will be upgraded on-demand only when a new security or important bug fix is released on the respective vendored repository.
Python-box is an exception since the goal is to remove the dependency and implement its basic features within dynaconf/DynaBox type.
We made flake8 more strict and removed some unused imports and variables.
The mechanism to evaluate Lazy values has been refactored and now @format and
@jinja values can be used within dictionaries and lists in any nesting levels.
Fixed a problem when multiple combined validators are registered and fixed duplication of ValidationError messages.
All names in a must_exist clause are now tested, instead of stopping validation on the first failure.
dynaconf -i config.settings list -k foo.bar.zaz.formatter attribute lookup was conflicting with Django logging so argument has
been renamed.settings.set is fixed so it now can set dotted attrs directly settings.FOO = 1Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Release version 3.1.0. [Bruno Rocha]
Release version 3.1.0. [Bruno Rocha]
Shortlog of commits since last release:
Andreas Poehlmann (1):
Allow importing SEARCHTREE before settings are configured (#383)
Bruno Rocha (10):
Release version 3.0.0
Hot fix removing unused imports
Merge branch 'master' of github.com:rochacbruno/dynaconf
Removing invalid links, adding allert on old docs fix #369 and fix #371 (#372)
Fix #359 lazy template substitution on nested keys (#375)
Flask fizes and other issues included. (#376)
Fix #379 dict like iteration (#385)
Fix #377 allow computed values (#386)
Fix #388 URL reference for custom loaders (#389)
Fix #382 add is_overridden method (#390)
John Vandenberg (1):
Allow testing against local redis server (#387)
Piotr Baniukiewicz (1):
Fix validation of optional fields (#370)
Allow importing SEARCHTREE before settings are configured (#383) [Andreas Poehlmann]
Allow testing against local redis server (#387) [John Vandenberg]
Fix #382 add is_overridden method (#390) [Bruno Rocha]
Fix #382 add is_overridden method for DJDT
Fix #388 URL reference for custom loaders (#389) [Bruno Rocha]
Fix #388 URL reference for custom loaders
Fix #377 allow computed values (#386) [Bruno Rocha]
This fixes #377 by allowing Validator to provide default values.
Fix #379 dict like iteration (#385) [Bruno Rocha]
Fix #379 add missing iter and items
Fix docs
Flask fizes and other issues included. (#376) [Bruno Rocha]
Fix #323 Fix #325 Fix #327 Fix #341
Examples added:
example/issues/323_DEFAULT_VALUES_RESOLUTION/ example/issues/325_flask_dot_env/ example/issues/327_flask_extensions_warning/ example/issues/341_box_it_up/
Fix #359 lazy template substitution on nested keys (#375) [Bruno Rocha]
Removing invalid links, adding allert on old docs fix #369 and fix #371 (#372) [Bruno Rocha]
Merge branch 'master' of github.com:rochacbruno/dynaconf. [Bruno Rocha]
Fix validation of optional fields (#370) [Bruno Rocha rochacbruno@users.noreply.github.com Co-authored-by: Bruno Rocha rochacbruno@users.noreply.github.com, Piotr Baniukiewicz]
Fix validation of optional fields
More concise code
Hot fix removing unused imports. [Bruno Rocha]
Release version 3.0.0. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (5):
Release version 3.0.0rc2
Improvements on CLI and init command (#363)
Writing new docs page 1 (#364)
Add netlify (#366)
Add netlify runtime file...
Validators can be used to provide default or computed values.
Validator("FOO", default="A default value for foo")
Then if not able to load the values from files or environment this default value will be set for that key.
Sometimes you need some values to be computed by calling functions, just pass a callable to the default argument.
Validator("FOO", default=my_function)
then
def my_function(settings, validator):
return "this is computed during validation time"
If you want it to be lazy evaluated
from dynaconf.utils.parse_conf import empty, Lazy
Validator("FOO", default=Lazy(empty, formatter=my_function))
…envless by default - breaking change ⚠️ (#358) dotenv is no more loaded by default (#360) No more loading of settings.* by default (#361) NO more logg…
Release version 3.0.0. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (5):
Release version 3.0.0rc2
Improvements on CLI and init command (#363)
Writing new docs page 1 (#364)
Add netlify (#366)
Add netlify runtime file...
Add netlify runtime file... [Bruno Rocha]
Add netlify (#366) [Bruno Rocha]
Writing new docs page 1 (#364) [Bruno Rocha]
porting docs to mkdocs
Docs First Page
New docs ok
Improvements on CLI and init command (#363) [Bruno Rocha]
Release version 3.0.0rc2. [Bruno Rocha]
Shortlog of commits since last release:
Bernardo Gomes (2):
Adding f string (#319)
Added little information about how dev into this project. (#321)
Bruno Rocha (18):
Release version 3.0.0rc1
Better exception handling on env_loader (#316)
Add support for config aliases (#332)
Add ENVLESS_MODE (#337)
Fix #272 allow access of lowercase keys (#338)
Fix #298 allow auto complete for editors and console (#339)
Vendoring dependencies Fix #301 (#345)
Clean tox installation for local testing (#346)
Validator improvements on conditions (#353)
Add note about quoting in env vars (#347)
DEPRECATED global settings object.
DEPRECATED global settings object. (#356)
Lowecase read allowed by default (#357)
Merge branch 'master' of github.com:rochacbruno/dynaconf
envless by default - breaking change ⚠️ (#358)
dotenv is no more loaded by default (#360)
No more loading of `settings.*` by default (#361)
NO more logger and debug messages (#362)
Douglas Maciel d'Auriol Souza (1):
Insert news validator conditions: (len_eq, len_ne, len_min, len_max, contd) (#328)
Jeff Wayne (1):
s/DYNACONF_ENV/ENV_FOR_DYNACONF (#335)
Marcos Benevides (1):
Fix minor typo in Flask extension docs (#318)
Nicholas Nadeau, Ph.D., P.Eng (1):
Fixed comma typo (#334)
sfunkhouser (1):
Add option to override default mount_point for vault (#349)
NO more logger and debug messages (#362) [Bruno Rocha]
logger and DEBUG_LEVEL has gone.
Add logger as a backwards compat method
No more loading of settings.* by default (#361) [Bruno Rocha]
Dotenv is no more loaded by default (#360) [Bruno Rocha]
Envless by default - breaking change ⚠️ (#358) [Bruno Rocha]
⚠️ THIS IS BREAKING CHANGE ⚠️
envless by default is done
Fix redis and vault tests
CLI default to global instance with warnings
Merge branch 'master' of github.com:rochacbruno/dynaconf. [Bruno Rocha]
Lowecase read allowed by default (#357) [Bruno Rocha]
No more from dynaconf import settings
DEPRECATED global settings object. (#356) [Bruno Rocha]
No more from dynaconf import settings
DEPRECATED global settings object. [Bruno Rocha]
No more from dynaconf import settings
Add note about quoting in env vars (#347) [Bruno Rocha]
Validator improvements on conditions (#353) [Bruno Rocha]
Validators improvements
add cast argument to validators
Add option to override default mount_point for vault (#349) [sfunkhouser]
Clean tox installation for local testing (#346) [Bruno Rocha]
Vendoring dependencies Fix #301 (#345) [Bruno Rocha]
Fix #298 allow auto complete for editors and console (#339) [Bruno Rocha]
implemented __dir__ on Settings and Dynabox
Fix #272 allow access of lowercase keys (#338) [Bruno Rocha]
settings.lowercase_key is allowedsettings.dynaconf is a proxy to internal methodssettings.__reserved_attributes validates key namesLazySettings __init__ parameters can receive lower case configsAdd ENVLESS_MODE (#337) [Bruno Rocha]
S/DYNACONF_ENV/ENV_FOR_DYNACONF (#335) [Jeff Wayne]
Fixed comma typo (#334) [Nicholas Nadeau, Ph.D., P.Eng]
Add support for config aliases (#332) [Bruno Rocha]
All _FOR_DYNACONF can now be aliased when passing to LazySettings.
Insert news validator conditions: (len_eq, len_ne, len_min, len_max, contd) (#328) [Bruno Rocha, Douglas Maciel d'Auriol Souza]
Insert news validator conditions: len_eq, len_ne, len_min, len_max, contd
Insert news validator conditions: len_eq, len_ne, len_min, len_max, contd
Update validator_conditions.py
Update test_validators_conditions.py
Checked: Flake8
Black sugest
Change of the term contd to cont, in order to avoid false interpretation.
Better exception handling on env_loader (#316) [Bruno Rocha]
Added little information about how dev into this project. (#321) [Bernardo Gomes]
Adding f string (#319) [Bernardo Gomes]
First test to change to f-string
second change to f-string
Removed 95% of .format(
Removed % from code.
forget format.
Fixing flaked reports.
Fixing flaked reports-v2.
make run-pre-commit command executed.
Little bugfix f of f-string inside of the string.
Fix minor typo in Flask extension docs (#318) [Marcos Benevides]
Release version 3.0.0rc1. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (8):
Release version 2.2.3
Changed text format and fixed tests
Merge branch '304-ShowDataTypeListCli'
Fix issue #305 - printing and exporting LazyFormat (#312)
Fix #288 - Nullable values (#300)
Default to ruamel.yaml when it is available. (#313)
Fix #306 - does not defaults to merge, deprecated reset - [Breaking Change] (#315)
HOTFIX - tox.ini drops 3.5
Tiago Cordeiro (1):
Added OSX builds to the Azure Pipeline (#307)
Vicente Marçal (1):
Changed CLI list to show data type of the envvars to fix #304
dependabot-preview[bot] (1):
Unpinning python-box, removing box_it_up and default_box arguments (#279)
HOTFIX - tox.ini drops 3.5. [Bruno Rocha]
Fix #306 - does not defaults to merge, deprecated reset - [Breaking Change] (#315) [Bruno Rocha]
merge for __ variables@merge more explicit and smart@resetUnpinning python-box, removing box_it_up and default_box arguments (#279) [Bruno Rocha, dependabot-preview[bot]]
Default to ruamel.yaml when it is available. (#313) [Bruno Rocha]
Fix #288 - Nullable values (#300) [Bruno Rocha]
Attempt to fix #288 (needs more debugging)
Fixing bug on DynaBox.get
Fix issue #305 - printing and exporting LazyFormat (#312) [Bruno Rocha]
Merge branch '304-ShowDataTypeListCli' [Bruno Rocha]
Changed text format and fixed tests. [Bruno Rocha]
Changed CLI list to show data type of the envvars to fix #304. [Vicente Marçal]
Added OSX builds to the Azure Pipeline (#307) [Tiago Cordeiro]
Added OSX builds to the Azure Pipeline
Added OSX builds to the Azure Pipeline
skip docker tests on macOS
Release version 2.2.3. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (7):
Release version 2.2.2
Fix #273 add Flask load extensions method.
add t.me badge fix #262
Fix #145 allow lazy format using os.environ and settings values.
Overriding strategy test
Fix #203 document the usage with pytest (with examples)
unpin dependencies
Hildeberto (2):
Fix pre-commit to run python3 rather than python3.7
Merge pull request #281 from hilam/fix_pre_commit
JSP (1):
fix object_merge issue #285 with meta value
dependabot-preview[bot] (2):
Update python-dotenv requirement from <=0.10.3 to <0.10.6
Update python-dotenv requirement from <0.10.6 to <0.11.1
In Dynaconf 3.0.0 we introduced some improvements and with those improvements it comes some breaking changes.
Some of the changes were discussed on the 1st Dynaconf community meeting video is available and meeting notes #354.
Nothing published for this version
Nothing published for this version
Release version 2.2.3. [Bruno Rocha]
Release version 2.2.3. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (7):
Release version 2.2.2
Fix #273 add Flask load extensions method.
add t.me badge fix #262
Fix #145 allow lazy format using os.environ and settings values.
Overriding strategy test
Fix #203 document the usage with pytest (with examples)
unpin dependencies
Hildeberto (2):
Fix pre-commit to run python3 rather than python3.7
Merge pull request #281 from hilam/fix_pre_commit
JSP (1):
fix object_merge issue #285 with meta value
dependabot-preview[bot] (2):
Update python-dotenv requirement from <=0.10.3 to <0.10.6
Update python-dotenv requirement from <0.10.6 to <0.11.1
Unpin dependencies. [Bruno Rocha]
Update python-dotenv requirement from <0.10.6 to <0.11.1. [dependabot- preview[bot]]
Updates the requirements on python-dotenv to permit the latest version.
Fix #203 document the usage with pytest (with examples) [Bruno Rocha]
Overriding strategy test. [Bruno Rocha]
Fix #145 allow lazy format using os.environ and settings values. [Bruno Rocha]
Add t.me badge fix #262. [Bruno Rocha]
Fix #273 add Flask load extensions method. [Bruno Rocha]
load_extensions to
FlaskDynaconf class.Update python-dotenv requirement from <=0.10.3 to <0.10.6. [dependabot-preview[bot]]
Updates the requirements on python-dotenv to permit the latest version.
Fix object_merge issue #285 with meta value. [JSP]
Merge pull request #281 from hilam/fix_pre_commit. [Hildeberto]
Fix pre-commit to run python3 rather than python3.7
Fix pre-commit to run python3 rather than python3.7. [Hildeberto]
Release version 2.2.2. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (3):
Release version 2.2.1
Fix #258 custom message for validators
Pin python-box version because of a breaking release
Hildeberto (1):
Close #178. Included integration tests redis/vault
The release of python-box https://github.com/cdgriffith/Box/pull/116 is a breaking change.
Release version 2.2.2. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (3):
Release version 2.2.1
Fix #258 custom message for validators
Pin python-box version because of a breaking release
Hildeberto (1):
Close #178. Included integration tests redis/vault
Pin python-box version because of a breaking release. [Bruno Rocha]
The release of python-box https://github.com/cdgriffith/Box/pull/116 is a breaking change.
So pinning this until this project adapts.
Also pinning other direct deps.
Fix #258 custom message for validators. [Bruno Rocha]
Close #178. Included integration tests redis/vault. [Hildeberto]
Release version 2.2.1. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (4):
Release version 2.2.0
Fix #251 recursive call was using mutable memoized data (#254)
Fix #266 created new variable FORCE_ENV to override ENV_FOR_DYNACONF
Fix coverage for validators
David Moreau Simard (1):
Add ara as a user of dynaconf (#252)
Emmanuel Nosa Evbuomwan (1):
Update sensitive_secrets.md
Hildeberto (1):
Adjust remote upstream URL
Jan Willhaus (1):
Add support for detecting duplicate validators being added (and ignore them) (#256)
Oliver Lehmann (5):
fix: env_loader.write: quote_mode for non-string values
: added line break
fix str comparison
changing quote logic
fix open error @py3.5
Env_loader.write: quote_mode for non-string values. [Oliver Lehmann]
Fix
- Env_loader.write: quote_mode for non-string values. [Oliver Lehmann]
Other
Release version 2.2.1. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (4):
Release version 2.2.0
Fix #251 recursive call was using mutable memoized data (#254)
Fix #266 created new variable FORCE_ENV to override ENV_FOR_DYNACONF
Fix coverage for validators
David Moreau Simard (1):
Add ara as a user of dynaconf (#252)
Emmanuel Nosa Evbuomwan (1):
Update sensitive_secrets.md
Hildeberto (1):
Adjust remote upstream URL
Jan Willhaus (1):
Add support for detecting duplicate validators being added (and ignore them) (#256)
Oliver Lehmann (5):
fix: env_loader.write: quote_mode for non-string values
: added line break
fix str comparison
changing quote logic
fix open error @py3.5
Fix coverage for validators. [Bruno Rocha]
Fix #266 created new variable FORCE_ENV to override ENV_FOR_DYNACONF. [Bruno Rocha]
Adjust remote upstream URL. [Hildeberto]
Update sensitive_secrets.md. [Emmanuel Nosa Evbuomwan]
Updated the file reference from settings.toml{json|py|ini|yaml} to the convention used thus far; secrets.toml{json|py|ini|yaml}. This can help alleviate the slightest chance of the information becoming misleading or confusing. This can also be ignored if Dynaconf can be set to search for secrets in files other than secrets.<ext>
Fix open error @py3.5. [Oliver Lehmann]
Changing quote logic. [Oliver Lehmann]
Fix str comparison. [Oliver Lehmann]
: added line break. [Oliver Lehmann]
Add support for detecting duplicate validators being added (and ignore them) (#256) [Jan Willhaus]
Fix #251 recursive call was using mutable memoized data (#254) [Bruno Rocha]
replaced with recursive passing of parent data.
NOTE to SELF: Never! use a mutable memoized data
Always use == to compare when you dont know the types
Add ara as a user of dynaconf (#252) [David Moreau Simard]
Release version 2.2.0. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (5):
Release version 2.1.1
Fix #236 added .local. files loading and module impersonation docs (#239)
Replace key.upper with `upperfy` function that keeps `__` attributes (#240)
Fix #241 new merge standards (#243)
Add support for PRELOAD_ setting. (#244)
Kedar Kulkarni (1):
Fixing how filename.local.* files are loaded (#238)
paskozdilar (1):
fix crash on empty settings (#242)
also MERGE_ENABLED is no more deprecated.
Release version 2.2.0. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (5):
Release version 2.1.1
Fix #236 added .local. files loading and module impersonation docs (#239)
Replace key.upper with `upperfy` function that keeps `__` attributes (#240)
Fix #241 new merge standards (#243)
Add support for PRELOAD_ setting. (#244)
Kedar Kulkarni (1):
Fixing how filename.local.* files are loaded (#238)
paskozdilar (1):
fix crash on empty settings (#242)
Add support for PRELOAD_ setting. (#244) [Bruno Rocha]
Fix #241 new merge standards (#243) [Bruno Rocha]
Adds dynaconf_merge and @merge for better merge standards. ref #241
Fix crash on empty settings (#242) [paskozdilar]
fix crash on empty settings
add test for empty environment
fix PEP 8 issue (expected 2 blank lines, found 1)
Replace key.upper with upperfy function that keeps __ attributes
(#240) [Bruno Rocha]
Fix #236 added .local. files loading and module impersonation docs (#239) [Bruno Rocha]
also MERGE_ENABLED is no more deprecated.
Fixing how filename.local.* files are loaded (#238) [Kedar Kulkarni]
Release version 2.1.1. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (7):
Release version 2.1.0
Improve validators to use `from_env` method (#225)
Add info about dunder envvars on django.md docs guide (#226)
Fix #228 add `ignore` argument to Django explicit mode. (#229)
Improvement to close #230 - do not throw error for base envs. (#231)
dynaconf init will not write all possible envs, only [default] (#233)
When both enabled, Vault has the priority over Redis for overriding (#234)
Dave Barnow (1):
Fix typo in CLI init (#227)
Kedar Kulkarni (1):
Fixing self._root_path to fall back to os.getcwd() only when `settings.load_file` is called directly or from includes (#232)
Release version 2.1.1. [Bruno Rocha]
Release version 2.1.1. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (7):
Release version 2.1.0
Improve validators to use `from_env` method (#225)
Add info about dunder envvars on django.md docs guide (#226)
Fix #228 add `ignore` argument to Django explicit mode. (#229)
Improvement to close #230 - do not throw error for base envs. (#231)
dynaconf init will not write all possible envs, only [default] (#233)
When both enabled, Vault has the priority over Redis for overriding (#234)
Dave Barnow (1):
Fix typo in CLI init (#227)
Kedar Kulkarni (1):
Fixing self._root_path to fall back to os.getcwd() only when `settings.load_file` is called directly or from includes (#232)
When both enabled, Vault has the priority over Redis for overriding (#234) [Bruno Rocha]
Dynaconf init will not write all possible envs, only [default] (#233) [Bruno Rocha]
Fixing self._root_path to fall back to os.getcwd() only when
settings.load_file is called directly or from includes (#232) [Kedar
Kulkarni]
Improvement to close #230 - do not throw error for base envs. (#231) [Bruno Rocha]
Fix #228 add ignore argument to Django explicit mode. (#229) [Bruno
Rocha]
Fix typo in CLI init (#227) [Dave Barnow]
Add info about dunder envvars on django.md docs guide (#226) [Bruno Rocha]
Improve validators to use from_env method (#225) [Bruno Rocha]
Release version 2.1.0. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (8):
Release version 2.0.4
Merge branch 'dgarcia360-master'
Fix #197 add support for DOTTED__ENV__VARS (#215)
Add support to export merged env to filesystem via cli. (#217)
Adds `from_env` method and change `_store` to be a `DynaBox` (#219)
hotfix: next release will be 2.1.0 because new features added. (#220)
Fix `make test_examples` to use better assertions, redis and vault loader now respects `envs` (#222)
fix #221 removed JSON,YAML,INI,TOML cosntants from default_settings (#223)
Kedar Kulkarni (1):
Add `list_envs` function to vault loader and now envs can have `_` on its name.
Pavel Alimpiev (1):
Fix typo in documentation for a Validator class (#213)
dgarcia360 (3):
Updated configuration options table to csv table
Added responsive table fix
Fix format
Lets say you have a configuration like this:
Lets say you have a configuration like this:
settings.py
DATABASES = {
'default': {
'NAME': 'db',
'ENGINE': 'module.foo.engine',
'ARGS': {'timeout': 30}
}
}
And now you want to change the values of ENGINE to other.module, via environment variables you can use the format ${ENVVAR_PREFIX}_${VARIABLE}__${NESTED_ITEM}__${NESTED_ITEM}
Each __ (dunder, a.k.a double underline) denotes access to nested elements in a dictionary.
So
DATABASES['default']['ENGINE'] = 'other.module'
Can be expressed as environment variables as:
export DYNACONF_DATABASES__default__ENGINE=other.module
NOTE: if you are using Django extension then the prefix will be
DJANGO_instead ofDYNACONF_and the same if you are usingFLASK_or a custom prefix if you have customized theENVVAR_PREFIX.
This will result in
DATABASES = {
'default': {
'NAME': 'db',
'ENGINE': 'other.module',
'ARGS': {'timeout': 30}
}
}
Read more on: https://dynaconf.readthedocs.io/en/latest/guides/environment_variables.html#nested-keys-in-dictionaries-via-environment-variables
.from_env easy access to different envsReturn a new isolated settings object pointing to specified env.
Example of settings.toml::
[development]
message = 'This is in dev'
foo = 1
[other]
message = 'this is in other env'
bar = 2
Then you can use from_env:
>>> print(settings.from_env('other').MESSAGE)
'This is in other env'
>>> print(settings.from_env('other').BAR)
2
>>> print(settings.from_env('other').FOO)
AttributeError: settings object has no attribute 'FOO'
The existing settings object remains the same.
>>> print(settings.MESSAGE)
'This is in dev'
Read more on: https://dynaconf.readthedocs.io/en/latest/guides/advanced_usage.html#from-env
$dynaconf list -o export your settings as a filedynaconf list -o path/to/file.yaml
The above command will export all the items showed by dynaconf list to the desired format which is inferred by the -o file extension, supported formats yaml, toml, ini, json, py
When using py you may want a flat output (without being nested inside the env key)
dynaconf list -o path/to/file.py --output-flat
Read more on: https://dynaconf.readthedocs.io/en/latest/guides/cli.html#exporting-current-environment-as-a-file
If you want to write to specific env pass the -e option.
$ dynaconf write redis -v name=Bruno -v database=localhost -v port=1234 -e production
The above data will be recorded in redis as a hash:
DYNACONF_PRODUCTION {
NAME='Bruno'
DATABASE='localhost'
PORT='@int 1234'
}
Then to access that values you can set export ENV_FOR_DYNACONF=production or directly via settings.from_env('production').NAME
Read more on: https://dynaconf.readthedocs.io/en/latest/guides/external_storages.html
Dynaconf 2.1.0
Bruno Rocha (8):
Release version 2.0.4
Merge branch 'dgarcia360-master'
Fix #197 add support for DOTTED__ENV__VARS (#215)
Add support to export merged env to filesystem via cli. (#217)
Adds `from_env` method and change `_store` to be a `DynaBox` (#219)
hotfix: next release will be 2.1.0 because new features added. (#220)
Fix `make test_examples` to use better assertions, redis and vault loader now respects `envs` (#222)
fix #221 removed JSON,YAML,INI,TOML cosntants from default_settings (#223)
Kedar Kulkarni (1):
Add `list_envs` function to vault loader and now envs can have `_` on its name.
Pavel Alimpiev (1):
Fix typo in documentation for a Validator class (#213)
dgarcia360 (3):
Updated configuration options table to csv table
Added responsive table fix
Fix format
Release version 2.1.0. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (8):
Release version 2.0.4
Merge branch 'dgarcia360-master'
Fix #197 add support for DOTTED__ENV__VARS (#215)
Add support to export merged env to filesystem via cli. (#217)
Adds `from_env` method and change `_store` to be a `DynaBox` (#219)
hotfix: next release will be 2.1.0 because new features added. (#220)
Fix `make test_examples` to use better assertions, redis and vault loader now respects `envs` (#222)
fix #221 removed JSON,YAML,INI,TOML cosntants from default_settings (#223)
Kedar Kulkarni (1):
Add `list_envs` function to vault loader and now envs can have `_` on its name.
Pavel Alimpiev (1):
Fix typo in documentation for a Validator class (#213)
dgarcia360 (3):
Updated configuration options table to csv table
Added responsive table fix
Fix format
Fix #221 removed JSON,YAML,INI,TOML cosntants from default_settings (#223) [Bruno Rocha]
Default settings should hold only constants ending in _FOR_DYNACONF
Fix make test_examples to use better assertions, redis and vault
loader now respects envs (#222) [Bruno Rocha]
Hotfix: next release will be 2.1.0 because new features added. (#220) [Bruno Rocha]
Adds from_env method and change _store to be a DynaBox (#219)
[Bruno Rocha]
Add list_envs function to vault loader and now envs can have _ on
its name. [Kedar Kulkarni]
list_envs function on vault loaderAdd support to export merged env to filesystem via cli. (#217) [Bruno Rocha]
fix #200
dynaconf list -o path/to/file.yaml --output-flat
Fix #197 add support for DOTTED__ENV__VARS (#215) [Bruno Rocha]
Fix #197 add support for DOTTED__ENV__VARS
Full support for __ - @reset and @del markers
Merge branch 'dgarcia360-master' [Bruno Rocha]
Fix format. [dgarcia360]
Added responsive table fix. [dgarcia360]
Updated configuration options table to csv table. [dgarcia360]
Fix typo in documentation for a Validator class (#213) [Pavel Alimpiev]
Release version 2.0.4. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (2):
Release version 2.0.3
Fix #207 allow python module path name for includes (#209)
Michał Bartoszkiewicz (1):
Update usage.md (#208)
Pavel Alimpiev (2):
Refactor Vault integration (#202)
Update configuration.md (#205)
Tanveer Alam (2):
Update usage.md (#196)
Update usage.md (#195)
Release version 2.0.4. [Bruno Rocha]
Release version 2.0.4. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (2):
Release version 2.0.3
Fix #207 allow python module path name for includes (#209)
Michał Bartoszkiewicz (1):
Update usage.md (#208)
Pavel Alimpiev (2):
Refactor Vault integration (#202)
Update configuration.md (#205)
Tanveer Alam (2):
Update usage.md (#196)
Update usage.md (#195)
Fix #207 allow python module path name for includes (#209) [Bruno Rocha]
Update usage.md (#208) [Michał Bartoszkiewicz]
Change 'FLask' to 'Flask'
Update configuration.md (#205) [Pavel Alimpiev]
Refactor Vault integration (#202) [Pavel Alimpiev]
Add AppRole based authorization for Vault loader
Fix default value for VAULT_PATH_FOR_DYNACONF, Update docs
HVAC automatically adds /secret/ prefix on read and write access
/dynaconf was never added to the VAULT_PATH_FOR_DYNACONF value
Docs was inconsistent with the actual code base
Fix inconsistency in the docs
Remove VAULT_SESSION_FOR_DYNACONF config variable.
HVAC's session argument must be a fully initialized Session object, that means - it's very complicated to setup Vault client with this argument, via default instruments (.toml, .env, etc)
Users can still setup this argument by setting up VAULT_FOR_DYNACONF directly
Update documentation for VAULT_* configuration
Fix code style
Update usage.md (#195) [Tanveer Alam]
Update usage.md (#196) [Tanveer Alam]
Release version 2.0.3. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (2):
Release version 2.0.2
Fix #194 flask.app.config __setitem__ (#199)
Jan Willhaus (1):
Catch BoxKeyError when contents are TOML parsable but not keyable (#192)
Raoul Snyman (1):
Use the Key Value API rather than the old 'read' and 'write' methods (#198)
…no ENVVAR_PREFIX_ (Addresses #177) (#185) Hide DeprecationWarning from Pytest when testing for them (#186) Replace logging.basicConfig with handler on…
Release version 2.0.3. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (2):
Release version 2.0.2
Fix #194 flask.app.config __setitem__ (#199)
Jan Willhaus (1):
Catch BoxKeyError when contents are TOML parsable but not keyable (#192)
Raoul Snyman (1):
Use the Key Value API rather than the old 'read' and 'write' methods (#198)
Fix #194 flask.app.config setitem (#199) [Bruno Rocha]
Flask.config was not proxying setitem attribute so this change adds a call to setitem on contrib/flask_dynaconf
Use the Key Value API rather than the old 'read' and 'write' methods (#198) [Raoul Snyman]
Catch BoxKeyError when contents are TOML parsable but not keyable (#192) [Jan Willhaus]
Release version 2.0.2. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (8):
Release version 2.0.1
Add note to release script
Adhering to Github Community Standards (#175)
removed pytest-xdist (#181)
Add example and test for issue #182 (#183)
Fix #179 dynaconf cli shows only user defined vars unless -a used (#188)
Fix #184 - workdir should walk to root in ipython REPL (#190)
Fix #189 added `settings.as_dict()` and `dynaconf list -o file.json` (#191)
Jan Willhaus (4):
Fix `False` not being an acceptable env (#176)
Fix base loader when having no ENVVAR_PREFIX_ (Addresses #177) (#185)
Hide DeprecationWarning from Pytest when testing for them (#186)
Replace logging.basicConfig with handler on logger (#187)
…no ENVVAR_PREFIX_ (Addresses #177) (#185) Hide DeprecationWarning from Pytest when testing for them (#186) Replace logging.basicConfig with handler on…
Release version 2.0.2. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (8):
Release version 2.0.1
Add note to release script
Adhering to Github Community Standards (#175)
removed pytest-xdist (#181)
Add example and test for issue #182 (#183)
Fix #179 dynaconf cli shows only user defined vars unless -a used (#188)
Fix #184 - workdir should walk to root in ipython REPL (#190)
Fix #189 added `settings.as_dict()` and `dynaconf list -o file.json` (#191)
Jan Willhaus (4):
Fix `False` not being an acceptable env (#176)
Fix base loader when having no ENVVAR_PREFIX_ (Addresses #177) (#185)
Hide DeprecationWarning from Pytest when testing for them (#186)
Replace logging.basicConfig with handler on logger (#187)
Fix #189 added settings.as_dict() and dynaconf list -o file.json
(#191) [Bruno Rocha]
Fix #184 - workdir should walk to root in ipython REPL (#190) [Bruno Rocha]
Fix #179 dynaconf cli shows only user defined vars unless -a used (#188) [Bruno Rocha]
Command dynaconf list will show only user defined vars
IF --all|-a is passed then it includes internal variables.
Replace logging.basicConfig with handler on logger (#187) [Jan Willhaus]
Hide DeprecationWarning from Pytest when testing for them (#186) [Jan Willhaus]
Hide DeprecationWarnings from Pytest when testing for them
Use parametrized test instead of repeating code
Fix base loader when having no ENVVAR_PREFIX_ (Addresses #177) (#185) [Jan Willhaus]
Fix False not being an acceptable env
Additional testcase for prefix being false from envvar
Fix mistaken reference to ENVVAR_PREFIX
Fix typo
Add example and test for issue #182 (#183) [Bruno Rocha]
Add working example for issue 182
Option 2 added
Allowed settings.load_file programmatically
Removed pytest-xdist (#181) [Bruno Rocha]
Now tests run in a separate tmpdir so xdist is not needed anymore
Fix False not being an acceptable env (#176) [Jan Willhaus]
Fix False not being an acceptable env
Additional testcase for prefix being false from envvar
unset envvar_prefix after test
Adhering to Github Community Standards (#175) [Bruno Rocha]
Add note to release script. [Bruno Rocha]
Release version 2.0.1. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (17):
Release version 2.0.0
Added Django explicit mode to docs (#149)
HOTIX: Django doc
Logger is now cached (removed logging import time overhead)
Update issue templates
Adjusts issue templates
Fix Typo in issue template
fix #160 - invoking directory should not be search breaking point.
Add explicit call to main() on cli.py (#165)
Generate coverage.xml file (#167)
Fix #166 renamed GLOBAL_ENV_ to ENVVAR_PREFIX_ (#168)
Fix #169 renamed SETTINGS_MODULE_ to SETTINGS_FILE_ (#170)
HOTFIX config.md on docs [skip ci] (#171)
Fix some open file descriptors on exampls and tests (#172)
Fix #151 setup pre-commit and black (#173)
Add CONTRIBUTING.md, contrib instructions and Black badge (#174)
Fix release script
David Moreau Simard (1):
Fix typos in bash export examples
Jan Willhaus (2):
Skip reloading envs for validators that only apply to current_env (#162)
Fix #163 Allow disabling env prefix (#164)
Release version 2.0.1. [Bruno Rocha]
Release version 2.0.1. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (17):
Release version 2.0.0
Added Django explicit mode to docs (#149)
HOTIX: Django doc
Logger is now cached (removed logging import time overhead)
Update issue templates
Adjusts issue templates
Fix Typo in issue template
fix #160 - invoking directory should not be search breaking point.
Add explicit call to main() on cli.py (#165)
Generate coverage.xml file (#167)
Fix #166 renamed GLOBAL_ENV_ to ENVVAR_PREFIX_ (#168)
Fix #169 renamed SETTINGS_MODULE_ to SETTINGS_FILE_ (#170)
HOTFIX config.md on docs [skip ci] (#171)
Fix some open file descriptors on exampls and tests (#172)
Fix #151 setup pre-commit and black (#173)
Add CONTRIBUTING.md, contrib instructions and Black badge (#174)
Fix release script
David Moreau Simard (1):
Fix typos in bash export examples
Jan Willhaus (2):
Skip reloading envs for validators that only apply to current_env (#162)
Fix #163 Allow disabling env prefix (#164)
Fix release script. [Bruno Rocha]
Add CONTRIBUTING.md, contrib instructions and Black badge (#174) [Bruno Rocha]
Fix #151 setup pre-commit and black (#173) [Bruno Rocha]
Add pre-commit to makefile
Fix #151 setup pre-commit and black
Fix some open file descriptors on exampls and tests (#172) [Bruno Rocha]
HOTFIX config.md on docs [skip ci] (#171) [Bruno Rocha]
Fix #169 renamed SETTINGS_MODULE_ to SETTINGS_FILE_ (#170) [Bruno Rocha]
Backwards compatibility maintained!
Fix #166 renamed GLOBAL_ENV_ to ENVVAR_PREFIX_ (#168) [Bruno Rocha]
See #166
Generate coverage.xml file (#167) [Bruno Rocha]
Add explicit call to main() on cli.py (#165) [Bruno Rocha]
To use click-web tool the module should be able to be explicitly called. python -m dynaconf.cli
Fix #163 Allow disabling env prefix (#164) [Jan Willhaus, janw mail@janwillhaus.de * Update docs for use of False instead of none]
Allow setting GLOBAL_ENV to "" or NoneType to remove prefix
Allow for underscore-only prefix with empty string GLOBAL_ENV
Test cases for the different GLOBAL_ENV settings
Update docs, add usage example
Apply suggestions from code review
Skip reloading envs for validators that only apply to current_env (#162) [Jan Willhaus]
Simplify control flow for single-env use-cases
Ensure uppercase env/current_env
Add test not reloading env with validation in same env
Pep8 compliance
Change mock call assertions for support in Py3.5
Fix #160 - invoking directory should not be search breaking point. [Bruno Rocha]
Search should stop at breaking point only if ROOT_PATH is defined
Fix Typo in issue template. [Bruno Rocha]
Adjusts issue templates. [Bruno Rocha]
Update issue templates. [Bruno Rocha]
Logger is now cached (removed logging import time overhead) [Bruno Rocha]
Debugged using:
python3.7 -X importtime -c 'import app' and python3.7 -X importtime -c 'import dynaconf'
Found that the tries to import logzero were consuming 0.1us (not so much, but we dont want it)
removed logzero, cached logger using lru_cache (that means that if loglevel changes, log changes)
Fix typos in bash export examples. [David Moreau Simard]
HOTIX: Django doc. [Bruno Rocha]
Added Django explicit mode to docs (#149) [Bruno Rocha]
Release version 2.0.0. [Bruno Rocha]
Shortlog of commits since last release:
Aaron DeVore (1):
GH-111: Fix MERGE_ENABLED merging settings with themselves
Bruno Rocha (21):
Merge branch 'jperras-merge-multiple-settings-files'
Merge branch 'master' of github.com:rochacbruno/dynaconf
Fix #106 make PROJECT_ROOT_FOR_DYNACONF to work with custom paths
Update dynaconf/utils/boxing.py
Update dynaconf/utils/boxing.py
Add release script and CHANGELOG in place of history.
Release version 1.2.0
Tox is now part of pre-publish command
Drop Python 3.4
Release version 1.2.1
add top contributors
Fix #129 on settings file, single keys should be case insensitive.
Fix #125 settings_module not being set on .configure()
Fix #127 add configurable yaml loader method, default to full_load
Fix #122 allow disable of core loaders, added examples.
Fix #117 add support for extra secrets file (like for jenkins CI)
Fix #110 add docs for dynaconf_include
Add dynaconf_include examples
Set up CI with Azure Pipelines (#142)
Add dynaconf_merge functionality for dict and list settings. (#139)
Preparing for 2.0.0
Byungjin Park (1):
Fix typo
Jaepil Koh (1):
Update django.md
Joel Perras (3):
Allow dotted-path based setting of configuration key/value pairs.
Handle nested includes in settings files.
Remove extraneous lines.
Mantas (3):
Add INSTANCE_FOR_DYNACONF and --instance
Remove mocker fixture
Python 3.4 has different error message
Matthias (1):
Fix small typo in README.md
Pete Savage (1):
Fix exponential slow down when loader is run multiple times
Raoul Snyman (1):
Add environments into the path in Vault so that the same Vault server can be used for multiple environments
mspinelli (2):
fixed infinite recursion caused by copy()
add tests for dynabox fix
Deprecated MERGE_ENABLED in favor of local dynaconf_merge
Dynaconf 2.0.0
settings_module passed as argumentinspect instrospetionenv was not being passed to custom loaderssix as it is a Py3.4+ only projectRelease version 2.0.0. [Bruno Rocha]
Shortlog of commits since last release:
Aaron DeVore (1):
GH-111: Fix MERGE_ENABLED merging settings with themselves
Bruno Rocha (21):
Merge branch 'jperras-merge-multiple-settings-files'
Merge branch 'master' of github.com:rochacbruno/dynaconf
Fix #106 make PROJECT_ROOT_FOR_DYNACONF to work with custom paths
Update dynaconf/utils/boxing.py
Update dynaconf/utils/boxing.py
Add release script and CHANGELOG in place of history.
Release version 1.2.0
Tox is now part of pre-publish command
Drop Python 3.4
Release version 1.2.1
add top contributors
Fix #129 on settings file, single keys should be case insensitive.
Fix #125 settings_module not being set on .configure()
Fix #127 add configurable yaml loader method, default to full_load
Fix #122 allow disable of core loaders, added examples.
Fix #117 add support for extra secrets file (like for jenkins CI)
Fix #110 add docs for dynaconf_include
Add dynaconf_include examples
Set up CI with Azure Pipelines (#142)
Add dynaconf_merge functionality for dict and list settings. (#139)
Preparing for 2.0.0
Byungjin Park (1):
Fix typo
Jaepil Koh (1):
Update django.md
Joel Perras (3):
Allow dotted-path based setting of configuration key/value pairs.
Handle nested includes in settings files.
Remove extraneous lines.
Mantas (3):
Add INSTANCE_FOR_DYNACONF and --instance
Remove mocker fixture
Python 3.4 has different error message
Matthias (1):
Fix small typo in README.md
Pete Savage (1):
Fix exponential slow down when loader is run multiple times
Raoul Snyman (1):
Add environments into the path in Vault so that the same Vault server can be used for multiple environments
mspinelli (2):
fixed infinite recursion caused by copy()
add tests for dynabox fix
Preparing for 2.0.0. [Bruno Rocha]
Dynaconf 2.0.0
settings_module passed as argumentinspect instrospetionenv was not being passed to custom loaderssix as it is a Py3.4+ only projectAdd dynaconf_merge functionality for dict and list settings. (#139) [Bruno Rocha]
If your settings has existing variables of types list or dict and you want to merge instead of override then
the dynaconf_merge and dynaconf_merge_unique stanzas can mark that variable as a candidate for merging.
For dict value:
Your main settings file (e.g settings.toml) has an existing DATABASE dict setting on [default] env.
Now you want to contribute to the same DATABASE key by addind new keys, so you can use dynaconf_merge at the end of your dict:
In specific [envs]
[default]
database = {host="server.com", user="default"}
[development]
database = {user="dev_user", dynaconf_merge=true}
[production]
database = {user="prod_user", dynaconf_merge=true}
In an environment variable:
export DYNACONF_DATABASE='{password=1234, dynaconf_merge=true}'
Or in an additional file (e.g settings.yaml, .secrets.yaml, etc):
default:
database:
password: 1234
dynaconf_merge: true
The dynaconf_merge token will mark that object to be merged with existing values (of course dynaconf_merge key will not be added to the final settings it is just a mark)
The end result will be on [development] env:
settings.DATABASE == {'host': 'server.com', 'user': 'dev_user', 'password': 1234}
The same can be applied to lists:
settings.toml
[default]
plugins = ["core"]
[development]
plugins = ["debug_toolbar", "dynaconf_merge"]
And in environment variable
export DYNACONF_PLUGINS='["ci_plugin", "dynaconf_merge"]'
Then the end result on [development] is:
settings.PLUGINS == ["ci_plugin", "debug_toolbar", "core"]
The dynaconf_merge_unique is the token for when you want to avoid duplications in a list.
Example:
[default]
scripts = ['install.sh', 'deploy.sh']
[development]
scripts = ['dev.sh', 'test.sh', 'deploy.sh', 'dynaconf_merge_unique']
export DYNACONF_SCRIPTS='["deploy.sh", "run.sh", "dynaconf_merge_unique"]'
The end result for [development] will be:
settings.SCRIPTS == ['install.sh', 'dev.sh', 'test.sh', 'deploy.sh', 'run.sh']
Note that
deploy.shis set 3 times but it is not repeated in the final settings.
The dynaconf_merge functionality works only for the first level keys, it will not merge subdicts or nested lists (yet).
Set up CI with Azure Pipelines (#142) [Bruno Rocha]
Add dynaconf_include examples. [Bruno Rocha]
Fix #110 add docs for dynaconf_include. [Bruno Rocha]
fix #110
Fix #117 add support for extra secrets file (like for jenkins CI) [Bruno Rocha]
Now it is possible to export SECRETS_FOR_DYNACONF and have this extra point loaded, like in a Jenkins CI you can specify on job.
secret_file:
variable: SECRETS_FOR_DYNACONF
credentials:
type: specific_credentials
value: /path/to/secrets_file.toml{json,ini,yaml,py}
That variable can also be a list of paths.
Fix #122 allow disable of core loaders, added examples. [Bruno Rocha]
Fix #127 add configurable yaml loader method, default to full_load. [Bruno Rocha]
Fix #125 settings_module not being set on .configure() [Bruno Rocha]
Fix #129 on settings file, single keys should be case insensitive. [Bruno Rocha]
GH-111: Fix MERGE_ENABLED merging settings with themselves. [Aaron DeVore]
Add top contributors. [Bruno Rocha]
Release version 1.2.1. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (9):
Merge branch 'jperras-merge-multiple-settings-files'
Merge branch 'master' of github.com:rochacbruno/dynaconf
Fix #106 make PROJECT_ROOT_FOR_DYNACONF to work with custom paths
Update dynaconf/utils/boxing.py
Update dynaconf/utils/boxing.py
Add release script and CHANGELOG in place of history.
Release version 1.2.0
Tox is now part of pre-publish command
Drop Python 3.4
Byungjin Park (1):
Fix typo
Jaepil Koh (1):
Update django.md
Joel Perras (3):
Allow dotted-path based setting of configuration key/value pairs.
Handle nested includes in settings files.
Remove extraneous lines.
Mantas (3):
Add INSTANCE_FOR_DYNACONF and --instance
Remove mocker fixture
Python 3.4 has different error message
Matthias (1):
Fix small typo in README.md
Pete Savage (1):
Fix exponential slow down when loader is run multiple times
Raoul Snyman (1):
Add environments into the path in Vault so that the same Vault server can be used for multiple environments
mspinelli (2):
fixed infinite recursion caused by copy()
add tests for dynabox fix
Shortlog of commits since last release:
Release version 1.2.1
Shortlog of commits since last release:
Bruno Rocha (9):
Merge branch 'jperras-merge-multiple-settings-files'
Merge branch 'master' of github.com:rochacbruno/dynaconf
Fix #106 make PROJECT_ROOT_FOR_DYNACONF to work with custom paths
Update dynaconf/utils/boxing.py
Update dynaconf/utils/boxing.py
Add release script and CHANGELOG in place of history.
Release version 1.2.0
Tox is now part of pre-publish command
Drop Python 3.4
Byungjin Park (1):
Fix typo
Jaepil Koh (1):
Update django.md
Joel Perras (3):
Allow dotted-path based setting of configuration key/value pairs.
Handle nested includes in settings files.
Remove extraneous lines.
Mantas (3):
Add INSTANCE_FOR_DYNACONF and --instance
Remove mocker fixture
Python 3.4 has different error message
Matthias (1):
Fix small typo in README.md
Pete Savage (1):
Fix exponential slow down when loader is run multiple times
Raoul Snyman (1):
Add environments into the path in Vault so that the same Vault server can be used for multiple environments
mspinelli (2):
fixed infinite recursion caused by copy()
add tests for dynabox fix
Release version 1.2.1. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (9):
Merge branch 'jperras-merge-multiple-settings-files'
Merge branch 'master' of github.com:rochacbruno/dynaconf
Fix #106 make PROJECT_ROOT_FOR_DYNACONF to work with custom paths
Update dynaconf/utils/boxing.py
Update dynaconf/utils/boxing.py
Add release script and CHANGELOG in place of history.
Release version 1.2.0
Tox is now part of pre-publish command
Drop Python 3.4
Byungjin Park (1):
Fix typo
Jaepil Koh (1):
Update django.md
Joel Perras (3):
Allow dotted-path based setting of configuration key/value pairs.
Handle nested includes in settings files.
Remove extraneous lines.
Mantas (3):
Add INSTANCE_FOR_DYNACONF and --instance
Remove mocker fixture
Python 3.4 has different error message
Matthias (1):
Fix small typo in README.md
Pete Savage (1):
Fix exponential slow down when loader is run multiple times
Raoul Snyman (1):
Add environments into the path in Vault so that the same Vault server can be used for multiple environments
mspinelli (2):
fixed infinite recursion caused by copy()
add tests for dynabox fix
Fix exponential slow down when loader is run multiple times. [Pete Savage]
Add environments into the path in Vault so that the same Vault server can be used for multiple environments. [Raoul Snyman]
Fix typo. [Byungjin Park]
Drop Python 3.4. [Bruno Rocha]
Tox is now part of pre-publish command. [Bruno Rocha]
Release version 1.2.0. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (6):
Merge branch 'jperras-merge-multiple-settings-files'
Merge branch 'master' of github.com:rochacbruno/dynaconf
Fix #106 make PROJECT_ROOT_FOR_DYNACONF to work with custom paths
Update dynaconf/utils/boxing.py
Update dynaconf/utils/boxing.py
Add release script and CHANGELOG in place of history.
Jaepil Koh (1):
Update django.md
Joel Perras (3):
Allow dotted-path based setting of configuration key/value pairs.
Handle nested includes in settings files.
Remove extraneous lines.
Mantas (3):
Add INSTANCE_FOR_DYNACONF and --instance
Remove mocker fixture
Python 3.4 has different error message
Matthias (1):
Fix small typo in README.md
mspinelli (2):
fixed infinite recursion caused by copy()
add tests for dynabox fix
Release version 1.2.0. [Bruno Rocha]
Release version 1.2.0. [Bruno Rocha]
Shortlog of commits since last release:
Bruno Rocha (6):
Merge branch 'jperras-merge-multiple-settings-files'
Merge branch 'master' of github.com:rochacbruno/dynaconf
Fix #106 make PROJECT_ROOT_FOR_DYNACONF to work with custom paths
Update dynaconf/utils/boxing.py
Update dynaconf/utils/boxing.py
Add release script and CHANGELOG in place of history.
Jaepil Koh (1):
Update django.md
Joel Perras (3):
Allow dotted-path based setting of configuration key/value pairs.
Handle nested includes in settings files.
Remove extraneous lines.
Mantas (3):
Add INSTANCE_FOR_DYNACONF and --instance
Remove mocker fixture
Python 3.4 has different error message
Matthias (1):
Fix small typo in README.md
mspinelli (2):
fixed infinite recursion caused by copy()
add tests for dynabox fix
Add release script and CHANGELOG in place of history. [Bruno Rocha]
Add tests for dynabox fix. [mspinelli]
Update dynaconf/utils/boxing.py. [Bruno Rocha, mspinelli]
Update dynaconf/utils/boxing.py. [Bruno Rocha, mspinelli]
Fixed infinite recursion caused by copy() [mspinelli]
Fix #106 make PROJECT_ROOT_FOR_DYNACONF to work with custom paths. [Bruno Rocha]
Added example/project_root and entry on Makefile:test_examples
Update django.md. [Jaepil Koh]
Typo!
Fix small typo in README.md. [Matthias]
Merge branch 'master' of github.com:rochacbruno/dynaconf. [Bruno Rocha]
Python 3.4 has different error message. [Mantas]
Remove mocker fixture. [Mantas]
Left this accidentally.
https://travis-ci.org/rochacbruno/dynaconf/jobs/452612532
Add INSTANCE_FOR_DYNACONF and --instance. [Mantas]
There parameters allows dynaconf to use different LazySettings instance if project uses one.
Also did some other fixes along the way:
Added catch_exceptions=False to CliRunner.invoke in order to
prevent click from swallowing errors silently. This uncovered other
errors in init and validate cli commands.
Removed module level code execution from cli module. Module level code execution makes it really difficult to test code. Now cli does not rely on global state and can be tested properly.
Removed a code snipper from LazySettings which modified global default_settings values. This means, that each LazySettings constructor call has side effects.
dynaconf validate command tests were useless because they didn't
test anything and I found, that dynaconf validate command don't even
work and raises ValidationError if there are any validation errors.
Changed that to cli friendly error message.
Merge branch 'jperras-merge-multiple-settings-files' [Bruno Rocha]
Remove extraneous lines. [Joel Perras]
Handle nested includes in settings files. [Joel Perras]
A settings file can include a dynaconf_include stanza, whose exact
syntax will depend on the type of settings file (json, yaml, toml, etc)
being used:
[default]
dynaconf_include = ["/absolute/path/to/plugin1.toml", "relative/path/to/plugin2.toml"]
DEBUG = false
SERVER = "www.example.com"
When loaded, the files located at the (relative or absolute) paths in
the dynaconf_include key will be parsed, in order, and override any
base settings that may exist in your current configuration.
The paths can be relative to the base settings.(toml|yaml|json|ini|py)
file, or can be absolute paths.
The idea here is that plugins or extensions for whatever framework or architecture you are using can provide their own configuration values when necessary.
It is also possible to specify glob-based patterns:
[default]
dynaconf_include = ["configurations/*.toml"]
DEBUG = false
SERVER = "www.example.com"
Currently, only a single level of includes is permitted to keep things simple and straightforward.
Allow dotted-path based setting of configuration key/value pairs. [Joel Perras]
You can set a value with an arbitrary number of nested keys, separated by dots:
settings.set('nested_1.nested_2.nested_3.nested_4', 'secret')
And accessing the keys/values with dotted-path lookup behaves as expected:
print(settings.NESTED_1.NESTED_2.NESTED_3.to_dict())
If for some reason you didn't want to have a key parsed into nested structures delimited by dots and just wanted a key of "foo.bar", you can disable the parsing with:
settings.set('nested_1.nested_2.nested_3.nested_4',
'secret',
dotted_lookup=False)
And accessing keys that don't exist will raise KeyError:
settings.NESTED_1.NESTED_5
Added MERGE_ENABLED_FOR_DYNACONF with ability to merge nested dictionaries instead of replacing PR #88
MERGE_ENABLED_FOR_DYNACONF with ability to merge nested dictionaries instead of replacing PR #88settings['KEY.OTHER.NESTED.DEEPER'] PR #93.setenv method was called PR #97Bruno Rocha (8): add example for merge_configs Merge branch 'rsnyman-merge-settings' Merge branch 'dot-traversal-access' of https://github.com/jperras/dynaconf into jperras-dot-traversal-access Merge branch 'jperras-dot-traversal-access' Fix #94 setenv cleans SETTINGS_MODULE attribute Merge branch 'jperras-dotted-validators' Fixing new flake8 warnings Released 1.1.0
Joel Perras (6): Allow dot-traversal access to nested dictionaries. Implements dotted-path validator name declarations. Updates Missing singleton with eq dunder. Enable python 3.7 in TravisCI config. Enable Python 3.7 env for tox testing. Update py.test command in tox to allow passing positional arguments.
Joël Perras (1): Updates Missing singleton with eq dunder. (#98)
Raoul Snyman (1): Add setting merging
Released 1.1.0. [Bruno Rocha]
MERGE_ENABLED_FOR_DYNACONF with ability to merge nested dictionaries instead of replacing PR #88settings['KEY.OTHER.NESTED.DEEPER'] PR #93.setenv method was called PR #97Fixing new flake8 warnings. [Bruno Rocha]
Update py.test command in tox to allow passing positional arguments. [Joel Perras]
The basic, default functionality of running tox remains unchanged. You
are now, however, able to pass positional arguments to py.test at
invocation time. For example:
tox -- -x --pdb tests/test_basic.py
Which will pass all input after the -- separator (which is used to
signify the end of possible options to tox) down to the py.test
command in the {posargs} location, as defined in tox.ini.
Enable Python 3.7 env for tox testing. [Joel Perras]
Enable python 3.7 in TravisCI config. [Joel Perras]
Updates Missing singleton with eq dunder. (#98) [Joël Perras]
Adds some additional tests for the Missing class and singleton
instance usage to ensure it returns equality only for comparisons to
itself and not None, or False, or True.
Merge branch 'jperras-dotted-validators' [Bruno Rocha]
Updates Missing singleton with eq dunder. [Joel Perras]
Adds some additional tests for the Missing class and singleton
instance usage to ensure it returns equality only for comparisons to
itself and not None, or False, or True.
Implements dotted-path validator name declarations. [Joel Perras]
One is now able to write:
settings.validators.register(
Validator('REDIS', must_exist=True, is_type_of=dict),
Validator('REDIS.HOST', must_exist=True, is_type_of=str),
Validator('REDIS.PORT', must_exist=True, is_type_of=int),
)
Which will validate the dotted attributes as nested structures. For example, in yaml:
DEFAULT:
REDIS:
HOST: localhost
PORT: 1234
This necessitated a slight but non-negligible change in the
implementation of Settings.exists(), which previously did a shallow
check of loaded data. It has now been updated to perform a
Settings.get() of the key in question, and compares that to a newly
defined sentinel value to ensure None values do not cause a false
negative result.
New tests and assertions have been added to cover the new functionality. Docs have been updated to show an example of the nested validator name definition in action.
Closes rochacbruno/dynaconf#85.
Fix #94 setenv cleans SETTINGS_MODULE attribute. [Bruno Rocha]
Merge branch 'jperras-dot-traversal-access' [Bruno Rocha]
Merge branch 'dot-traversal-access' of https://github.com/jperras/dynaconf into jperras-dot-traversal-access. [Bruno Rocha]
Allow dot-traversal access to nested dictionaries. [Joel Perras]
A simple memoized recursion has been added to get() if the key
contains at least one dot.
The caller can choose to opt-out of this behaviour by specifying the
dotted_lookup argument:
settings('AUTH.USERNAME', dotted_lookup=False)
While the performance impact of this has not been quantified, the net impact in any real-world application should be minimal due to typical nesting levels, and the fact that we overwrite the memoized portion of the dotted-key lookup on each iteration.
Closes rochacbruno/dynaconf#84
Merge branch 'rsnyman-merge-settings' [Bruno Rocha]
Add example for merge_configs. [Bruno Rocha]
Add setting merging. [Raoul Snyman]
Fixed issue #81 - added ENCODING_FOR_DYNACONF to handle different settings files encodings specially on Windows
Fixed issue #81 - added ENCODING_FOR_DYNACONF to handle different settings files encodings specially on Windows
Release 1.0.6. [Bruno Rocha]
Fixed issue #81 - added ENCODING_FOR_DYNACONF to handle different settings files encodings specially on Windows
Add ENCODING_FOR_DYNACONF to handle different file encoding Fix #81. [Bruno Rocha]
By default ENCODING_FOR_DYNACONF is utf-8 (recommended to always write settings files in utf-8) If you need to change the format of settings file set the variable:
export ENCODING_FOR_DYNACONF="cp1252"
Enhancements to Django and Flask Extensions to allow customized DJANGO_ENV and FLASK_ENV or PROJECT_ENV to switch environments
DJANGO_ENV and FLASK_ENV or PROJECT_ENV to switch environmentsFix Django definition of GLOBAL_ENV
Fix the definition of Django prefixed variable. [Bruno Rocha]
Merge pull request #78 from mattkatz/patch-1. [Bruno Rocha]
small corrections for usage.md
Small corrections for usage.md. [Matt Katz]
This library is great, just a correction in the docs.
There must be AT LEAST one default section.
Changed ATTENTION to ATTENTION: to match with the style of NOTE:
Merge pull request #75 from yoyonel/master. [Bruno Rocha]
Fix in 'dynaconf/base.py' for getitem method
Bump version. [latty]
[Fix] in 'dynaconf/base.py' for getitem method, change (fix) the condition to raise a exception. Update unit tests. Bump version. [latty]
Release 1.0.3. [Bruno Rocha]
Excluded example and tests from realease dist
Merge pull request #72 from chobeat/issue_71. [Bruno Rocha]
Removed root config
Removed root config. [Simone Robutti]
Merge pull request #70 from allan-silva/master. [Bruno Rocha]
Exclude example and tests folders from setup (twitter help wanted)
Exclude example and tests folders from setup (twitter help wanted) [allan.silva]
Merge pull request #67 from cassiobotaro/patch-1. [Bruno Rocha]
Incorrect help
Fix docs. [cassiobotaro]
Incorrect help. [Cássio Botaro]
For while is impossible to use --to as argument.
Merge pull request #66 from gpkc/patch-1. [Bruno Rocha]
Fixing typos
Merge pull request #1 from gpkc/patch-2. [Guilherme Caminha]
Update README.md
Update README.md. [Guilherme Caminha]
Update usage.md. [Guilherme Caminha]
Adjust logs to include python module names. [Bruno Rocha]
Fix sphinx aafig syntax for python 3.x. [Bruno Rocha]
Your coding agent can read these notes before it upgrades. Set up the MCP server →