- Added support to treat
Mapping
type annotations as dictionaries. - Fixed handling of default values for
dataclass
attributes.
- Added support for recursively matching arbitrary depth paths of files.
- Fixed
AttributeError
when attempting to load malformed YAML files.
- Fixed serialization of optional nested dataclasses with a value of
None
. - Fixed preservation of comments on nested dataclass attributes.
- Added support for using
enum.Enum
subclasses as type annotations.
- Fixed loading of
Missing
nested dataclasses attributes.
- Updated the
@datafile(...)
decorator to be used as a drop-in replacement for@dataclass(...)
. - Added support for loading unlimited levels of nested objects.
- Added a
YAML_LIBRARY
setting to control the underlying YAML library. - Fixed ORM methods to handle relative file patterns.
- Updated the
@datafile
decorator to be able to be called without parentheses to act as@dataclass
. - Updated YAML serialization to preserve quotation marks in files.
- Added a registration system for custom formatter classes.
- Fixed loading of missing attribute from disk for ORM methods.
- Added support for file patterns relative to the current directory.
- Removed unnecessary warning when loading objects.
- Added an
INDENT_YAML_BLOCKS
setting to optionally use the old serialization behavior. - Disabled initial file creation when
settings.HOOKS_ENABLED = False
is set.
- Fixed a
TypeError
when converting custom types withfrom __future__ import annotations
enabled.
- Fixed a
TypeError
when converting non-builtin attributes.
- Fixed ORM methods for datafiles with relative path patterns.
- Added plugin for
mypy
support. - Updated YAML format to indent lists.
- Added ORM method:
all()
- Added ORM method:
get_or_none()
. - Added ORM method:
get_or_create()
. - Added ORM method:
filter
.
- Added an option to automatically resave files after loading.
- Added an option to automatically reload files after saving.
- Added a registration system for custom converter classes.
- Added initial support for file inference via
auto(filename)
.
- Initial release.