All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
1.0.0 (2019-10-07)
- Adding the ability to define custom JSONSchema
$id
and$schema
properties. Will raise user warnings if unsupported schema draft is specified. #41
- Adding some documentation around
schema_id
andschema_draft
parameters for the@config()
decorator in Getting Started
- Adding
long_description_content_type
tosetup.cfg
for new twine package check warnings
0.3.10 (2019-10-04)
- Allowing Python 3 typehints to be considered as the config var's type just like the var's
type
kwarg #38
- Fixing access to collections.abc for Iterable deprecation warning
- Updating package stubs to mimic true kwargs typings
0.3.9 (2019-06-15)
- Adding kwarg passthrough for
config
so you can now use things likeconfig(hash=True)
- Adding extremely basic reflection tests for
ujson
serialization (please userapidjson
instead ofujson
)
0.3.8 (2019-04-01)
- Fixed issue related to the
prefer
keyword not loading the proper modules for serialization / deserialization whenprefer
had already been invoked in subsequent calls for a given config #36
- Adding codecov for alternate coverage reporting since codacy struggles sometimes and isn't always correct
- Adding and improving tests for serialization handlers
- Improving testing and code coverage for
schema_builder
and_file_config
0.3.7 (2019-03-22)
- Adding the ability for nested configs to default to the empty state of the nested config if desired #26
- Adding documentation
Loading Defaults
in "Getting Started" regarding the different results when loading defaults from serialized content
- Updating the copyright year in the docs to 2019
0.3.6 (2019-03-15)
- Fixing failures when loading from serialized content missing configuration for nested configs #24
- Adding latest PyPi version badge to documentation and README
- Adding basic auto-generated typing stubs under
stubs/
0.3.5 (2019-02-15)
- Allowing default values to be used in configs when loading from dictionaries that are missing the value #22
0.3.4 (2019-01-11)
- Fixing
typing._GenericAlias
typecasting raisingAttributeError
#21
0.3.3 (2019-01-10)
- Fixing regex check bug where
type_.__name__
raises anAttributeError
ontyping.List
edge case #19 - Fixing
dump_x
handlers not using kwargs likedumps_x
handlers #20
0.3.2 (2019-01-09)
- Fixing schema builder where building schemas for object types with nested typing types silently fails #18
- Showing newly documented private methods in package documentation
- Adding basic docstrings for private schema_builder functions
- Adding basic docstrings for util functions
- Updating copyright statements from 2018 to 2019
- Fixing missing wheel in release
0.3.1 (2018-12-18)
- Adding defusedxml as fromstring reader in
XMLParser
#17
- Fixing lxml required for import
0.3.0 (2018-12-16)
- Splitting up Sphinx autodocs into separate sections
- Adding Handlers section to documentation
- Adding
TYPE_MAPPINGS
toutils.py
as a way of generically representing available types and their translations - Project Restructure - restructuring project to provide a better development experience
- Updating from MIT to ISC licensing
0.2.0 (2018-11-07)
- adding serialization and deserialization support for enums
0.1.0 (2018-10-26)
- adding
encoder
anddecoder
var kwargs for customizing how a specific var is serialized/deserialized - adding support for python-rapidjson as json serializer
0.0.8 (2018-10-16)
- adding
sort_keys
support forjson
dumpers - adding conditional
validate
boolean flag forload_<json,toml,yaml,etc...>
config method (performs pre-validation of loaded dictionary) - fixing typecasting of loaded content when var is missing in content, now sets var to None
- improved tests via a hypothesis dynmaic config instance builder
- removing support for complex vars since no serializers support them
0.0.7 (2018-10-12)
- adding
prefer
keyword to use specific serialization handler - adding
inline_tables
argument fortoml
handlers (takes a list of fnmatch patterns) - adding support for toml
0.0.6 (2018-10-08)
- fixing
make_config
not using any passed infile_config.var
instances - added
indent
dumping argument forJSONHandler
- improved documentation in
file_config.schema_builder
- improved sphinx linking from
getting-started.rst
to generated autodocs
0.0.5 (2018-10-05)
- added better docstrings
- added better documentation in rtd
- fixed
file_config._file_config._build
forfile_config.Regex
types - fixed
file_config.utils.typecast
for serializing tostr
instead of None
0.0.4 (2018-10-04)
- added basic sphinx documentation
- fixing dynamic type casting for config var typing types