Update dependency dynaconf to v3.2.11
This MR contains the following updates:
Package | Type | Update | Change |
---|---|---|---|
dynaconf | dependencies | patch |
3.2.0 -> 3.2.11
|
Release Notes
dynaconf/dynaconf (dynaconf)
v3.2.11
What's Changed
Release version 3.2.11
Shortlog of commits since last release:
-
Bruno Rocha (9): @rochacbruno
- fix(cli): handle empty hooks and boolean environments.
- fix: Better way for CLI to find the Django Settings
- fix: windows CI
- feat: Run CLI as module with
python -m dynaconf
(#1290) - fix: use sys.argv instead of click.get_os_args (#1292)
- fix:
-k
must exit code 1 when key do not exist (#1293) - feat: envless load file (#1295)
- fix: add correct supported python version to 3.2.x
-
Fabricio Aguiar (1): @fao89
- fix: make raw variables private (#1287)
-
Pedro Brochado (1): @pedro-psb
- docs: clarification on redis hash title when using custom envvar prefixes (#1273)
Milestone https://github.com/dynaconf/dynaconf/milestone/31?closed=1
Full Changelog: https://github.com/dynaconf/dynaconf/compare/3.2.10...3.2.11
v3.2.10
Hot Fixes
- Hotfix hook collector to avoid eager evaluation. (#1255). By Bruno Rocha.
Bug Fixes
- Parse data type on merge with comma separated value. By Bruno Rocha.
Features
- Add CLI command
debug-info
(#1251). By Bruno Rocha. - Add support for decorated hooks on settings files (#1246). By Bruno Rocha.
- Add VAULT_TOKEN_RENEW_FOR_DYNACONF config/code (#1094) (#1242). By Pedro Brochado.
- populate_obj takes convert_to_dict (#1237). By Bruno Rocha.
- add VAULT_TOKEN_RENEW. By Bruno Rocha.
Full Changelog: https://github.com/dynaconf/dynaconf/compare/3.2.7...3.2.10
v3.2.9
: [YANKED]
v3.2.8
: [YANKED]
YANKED VERSION
v3.2.7
Async Release for Integration with Ansible Automation Platform
What's Changed
- [backport] fix(inspect): Fixed an error that would raise when using get_history with lazy values by @pedro-psb in https://github.com/dynaconf/dynaconf/pull/1185
- [Backport 3.2] Fix early trigger of lazy value by @pedro-psb in https://github.com/dynaconf/dynaconf/pull/1198
- AWX Integration fixes by @rochacbruno in https://github.com/dynaconf/dynaconf/pull/1204
Bug Fixes
- lazy validator's default value would evaluate early (#1198). By Pedro Brochado.
- Fixed an error that would raise when using get_history() with lazy values (#1184) (#1185). By Pedro Brochado.
- Fixed Redis loader when ENV prefix is
None
. - Populate object method now takes
internal
attribute to filter out internal variables. - On CLI
json.dumps
defaults torepr
for types that cannot be serialized. - Added an identifier to validator calls of
set
method - Fix django app discovery using DJANGO_SETTINGS_MODULE variable
Features
- Added
@insert
token to calllist.insert
- Allow env loader to load from multiple prefixes
- Allow multiple composable current environments
- Track more data on
load_file
method - Added
--json
to dynaconf list CLI
Full Changelog: https://github.com/dynaconf/dynaconf/compare/3.2.6...3.2.7
v3.2.6
3.2.6 - 2024-07-19
Bug Fixes
- Don't instantiate a Settings object for every hook call.
Details
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
v3.2.5
Bug Fixes
-
_bypass_evaluation
showing in end-user settings (#1071). By Pedro Brochado. - dependabot alert 21 about Django (on tests) (#1067). By Bruno Rocha.
- include load with relative root path (#1049). By Pedro Brochado.
Features
- Add
@get
converter to alias existing keys (#1040). By Bruno Rocha.
Docs
- fix wrong info about validation trigger on insantiation (#1076). By Pedro Brochado.
- fix incorrect combination of TOML table and inline table (#1070). By Aaron DeVore.
- Fix mkdocs warnings for cleaner build output (#1061). By Mitchell Edmunds.
- Add dynaconf API to docs with mkdocstrings (#1058). By Mitchell Edmunds.
- fix argument
env
in Validation at validation.md (#1051). By Mostafa Alayesh. - fix click help syntax error (#1041). By xiaohuanshu.
- replace dead link to flask subclassing page (#1031). By Adam Kjems.
- Add explicit Dynaconf instantiation to sample code (#1022). By Lucas Limeira.
- Fix the syntax errors in the sample program. (#1027). By Sun Jianjiao.
Chore
- Replace lint and formatting tools with ruff (#1074). By Mitchell Edmunds.
- Replace/Update release script (#1078). By Pedro Brochado.
- add "typos" tool and run it in codebase/docs (#1063). By Mitchell Edmunds.
- move release workflow to GitHub actions (partial) (#1043). By Pedro Brochado.
- Fix misspelled variable name (#1032). By HAMASHITA.
v3.2.4
Bug Fixes
- allow underscore in env name #1011 (#1015) (f55c277 by Bruno Rocha).
- support for 'entrypoint-path' in FLASK_APP #946 (#1014) (f2bb032 by Pedro Pessoa).
- dynaconf_merge=False on nested structures (#1012) (b113e74 by Pedro Pessoa).
- non-str key raising type error #1005 (#1008) (4ed2350 by Pedro Pessoa).
- pin hvac minimum version (9170beb by Jake Callahan).
Docs
- Fix link to configuration page (#1020) (df3b437 by Vladislav Sharapov).
- Improve Configuration and Validation sections of the docs (#989) (99741a3 by Sebastian Correa).
v3.2.3
-
Release version 3.2.3. [Bruno Rocha]
Shortlog of commits since last release:
Anderson Sousa (1): chore(lint): pep8 errors (#​995) Bruno Rocha (7): Release version 3.2.1 Hooking: Add support for changing the wrapped class (#​975) Hotfix bypass evaluation #​984 (#​985) Fix #​976 from envvars parse True/False as booleans (#​983) Fix #​982 glob on settings_files (#​987) docker compose is available on CI no need to install fix(django): fix #​1000 AttributeError on admin (#​1002) Pedro Pessoa (1): Inspect Feature Review (#​958) pedro-psb (1): Release version 3.2.2
-
Fix(django): fix #1000 AttributeError on admin (#1002) [Bruno Rocha]
fix #1000
-
Chore(lint): pep8 errors (#995) [Anderson Sousa]
-
Release version 3.2.2. [pedro-psb]
Shortlog of commits since last release:
Bruno Rocha (6): Release version 3.2.1 Hooking: Add support for changing the wrapped class (#​975) Hotfix bypass evaluation #​984 (#​985) Fix #​976 from envvars parse True/False as booleans (#​983) Fix #​982 glob on settings_files (#​987) docker compose is available on CI no need to install Pedro Pessoa (1): Inspect Feature Review (#​958)
-
Inspect Feature Review (#958) [Pedro Pessoa]
inspect_settings:
- change inspect_settings report-output format names and structure
- implement 'history_limit' on 'utils.inspect:inspect_settings'
- rename key_dotted_path to key
- rename history_sort to new_first
- enforce usage of kwargs, except for "settings", "key" and "env"
- merge "output_format" and "custom" into "dumper"
- add "report_builder" to allow output customization
- add explicit 'print_report' param
cli:
- implement cli --limit|-n
- update cli to match 'inspect_settings' changes
non-breaking-change
- minor "utils.inspect" internal renames
- re-write docstrings in sphinx-style (:param foo)
- expose 'get_history'
- refactor 'test_cli.py': use more robust test isolation strategy
- add data return to 'inspect_settings' for cleaner testing
-
Docker compose is available on CI no need to install. [Bruno Rocha]
-
Fix #976 from envvars parse True/False as booleans (#983) [Bruno Rocha]
Only when reading from envvars True and False will be transformed to lowercase to allow toml parser.
-
Hooking: Add support for changing the wrapped class (#975) [Bruno Rocha]
- add support for _wrapper_class replacement
- add hooking with a Hookable implementation to be used by Django integration only (this is transparent now, must not affect any current user)
- fix integer key access
- Changes on inspect
- History now saves the raw value instead of parsed, as parsed will be showed on the current_value anyway
- Set will always create a source_metadata even if not passed or if a str is passed as laoder_identifier
- Internal uses of set are now tracked
- dynaconf_hooks.py is now tracked
- set method now keeps
value
as the raw unparsed value andparsed
as the evaluated value -
inspect
command no more printsdjango app detected
- get_history now accepts
include_internal
to output internal identifiers -
_get_data_by_key
refactored for dotted path traversal - access to integer indexes on dotted path removed, we gonna implement later as
key._1_
- Fixed the acceptance of keys with other types
-
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 MR 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
v3.2.2
What's Changed
- Hooking: Add support for changing the wrapped class by @rochacbruno in https://github.com/dynaconf/dynaconf/pull/975
- Hotfix bypass evaluation #984 by @rochacbruno in https://github.com/dynaconf/dynaconf/pull/985
- Fix #976 from envvars parse True/False as booleans by @rochacbruno in https://github.com/dynaconf/dynaconf/pull/983
- Fix #982 glob on settings_files by @rochacbruno in https://github.com/dynaconf/dynaconf/pull/987
- Inspect Review by @pedro-psb in https://github.com/dynaconf/dynaconf/pull/958
Full Changelog: https://github.com/dynaconf/dynaconf/compare/3.2.1...3.2.2
v3.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 MR 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 MR 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]
- fix hooks not re-running on reload #850 by clearing
settings._loaded_hooks
- fix hooks not re-running on reload #850 by clearing
-
Cancel any running CI job when a Push is made to an existing MR 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]
- add '_safe_get' and '_safe_items' to DynaBox
- small indirect refactors
-
fix inspect exception names (flake8)
-
remove accidental file
-
update to the new official publisher of the vault image (hashicorp)
- see deprecation notice in: https://hub.docker.com/\_/vault/
-
fix test_vault.sh image name (update to hashicorp/vault)
-
fix main workflow and test_vault_userpass.sh references to vault image
- can't trust telescope live_grep
-
Feature - Inspect and CLI (#939) [Pedro Pessoa]
- implement get_history and inspect_settings utilities
- implement CLI inspect command
-
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 androot_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]
- add test for #905 (item duplication in list)
- when using validator with the default field, list items would get duplicated under certain circumstances.
- fix for #905
- this avoids an unwanted merge when setting the default for some value.
-
Docs - Add
Extensions
header to index andpytest-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]
- add tests to validate on update/set/load_file
support for:
- global option VALIDATE_ON_UPDATE_FOR_DYANCONF
- Settings.update(... validate=bool)
- Settings.set(... validate=bool)
- Settings.load_file(... validate=bool)
- feature: validate on call to update/set. #712
- option to validate data in methods Settings.[load|set|load_file]
- global option to set default behaviour.
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
- feature: validate on call to load_file (add support)
eg: settings.load_file(file, validate=True) # will validate
-
Replace bare tries with suppress and increase codecov (#901)
-
docs: include validate on update feature
- add section to Configurations
- include inside Validation
- support for validate_all() on validate_on_update feat
- add support for validate_all() as
validate="all"
. - tests: include all file loaders (except .env, coz load_file doesnt support it)
- Update dynaconf/default_settings.py
add FOR_DYNACONF suffix for validate_on_update envvar
-
Docs - Add faq and fix
includes
info (#899) [Bruno Rocha, Pedro Pessoa]
-
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]
- add type_map to convert quoted types to proper class types ("int" to int)
- add functional test
- small adjustment on existing tests/test_cli.py:test_validate
- fix mypy complain on truthy callable
This expression is always True (considering that the value of 'self.cast' is not directly modified by some other module)
- 'cast' param in the constructor can be None, but if so,
- 'self.cast' is initialized as 'lambda value: value', which
- is a truthy value (a function class).
-
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]
-
Docs - Django functions in settings file and misc (#891) [Bruno Rocha, Pedro Pessoa]
- restructure tip/warning boxes and related readability content
- special look at "Reading Settings on Standalone Scripts" (has more changes)
- add 'using django func inside custom settings' to django page and faq
- used the user-tested example: https://github.com/dynaconf/dynaconf/issues/858#issuecomment-1418202630
- faq just mentions the doc section
-
add note on envvars uppercase prefix. fix #860
-
grammarly-assisted typos on django.md
-
add mkdocs plugin to requirements-dev
- it had to be installed manually, because it was just defined in 'requirements.txt' (which is not read by any make command)
-
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]
- configuration-page: rearrange info into headers for all opts. #884
some small modifications are out of scope of this design change and will be pointed in the MR
- add clarification on preferred way of loading settings
-
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
toloader.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)
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.