Removed:
- Drop support of Python 3.5 which reached EOL in September 2020
- Drop support of Python 3.6 which reached EOL in September 2021
Bugfix:
- Fix support for simple enum.Enum objects (not inheriting
str
) ingetenum
getter.- Delay
default
value validation ingetenum
getter.
Note:
- Switch test runner to pytest
- Add official support of Python 3.10
- Python 3.5 and 3.6 support will be dropped in the next minor version.
New:
- Add support for enum.Enum based objects through the new
getenum
getter.
New:
- Add support of pathlib.Path objects, both in loading the config and through the new
getpath
getter.- Add
mandatory_section
option toConfigGetter
to enforce the use of a section in requested keys (and its underlying optionkey_validator
onBaseConfigGetter
to validate keys format)
Removed:
- Drop support of Python 2.7 which reached EOL in January 2020
- Drop support of Python 3.4 which reached EOL in 2019
Removed:
- Drop support of Python 3.3 which reached EOL in September 2017
Deprecated:
- Use of list of non-strings as getconf.getlist() default value is deprecated
New:
- Add
BaseConfigGetter
and the notion of "finders" to ease customization.
Note:
- Python 2.7 and 3.3 support will be dropped in next minor version.
Bugfix:
- Allows to override a configuration containing a dash.
New:
- Allow using an empty namespace (
ConfigGetter(namespace=getconf.NO_NAMESPACE
) to load unprefixed environment variables.
New:
- Remove support for string interpolation in .ini file If this undocumented getconf feature is still needed by some users, we might consider restoring it in a future release.
New:
- Add a new gettimedelta function to parse simple durations expressed as strings (10 days as '10d', 3 hours as '3h', etc.)
New:
- Display the key of the value that triggers an error to help resolve.
New:
- Better AssertionError messages when default values have the wrong type.
- Add ConfigGetter.get_ini_template() method
New:
- Improve error reporting when raising on wrongly typed defaults
New:
- Enforce type checking on every getconf.getXXX() call
- Add getconf.getstr() method
- Enable using None as default value for every function
- Better support for Python 3.3, 3.4 and wheel distribution
Deprecated:
- Use of strings as default values for getconf.getlist()
- Use of getconf.get() in favor of getconf.getstr()
New:
- Add getfloat() method
- Allow globs in config_files
- <PROJECT>_CONFIG env var will now have the same behaviour than config_files items
Bugfix:
- Fix version number
New:
- Add support for directory-based configuration and providing defaults through a dict
Removed:
- Remove support for
ConfigGetter(namespace, file1, file2, file3)
syntax (deprecated in 1.1.0), useConfigGetter(namespace, [file1, file2, file3])
instead
New:
- New initialization syntax
Deprecated
- Using argument list for config file paths when initializing ConfigGetter is now deprecated, you need to use a list (use ConfigGetter(namespace, ['settings_1.ini', 'settings_2.ini']) instead of ConfigGetter(namespace, 'settings_1.ini', 'settings_2.ini'))
Bugfix:
- Fix packaging (missing requirements files)
New:
- First version