==========================
Bugfixes
--------
- Add missing alias for ``reclassify_modules`` to the qualified aliases module
(``qaliases``) as ``reclassify_modules_as_accretive``. (12)
Features
--------
- Add ``ValidatorDictionary`` and ``ProducerValidatorDictionary`` classes.
Validator dictionaries allow a validation function to be supplied, which can
inspect the key and value of a proposed dictionary entry to determine if it
should be accepted or not. Producer dictionaries are like ``defaultdict`` from
the standard Python ``collections`` module. (10)
- Add ``py.typed`` file to package to let typecheckers know that it has a full
set of type annotations. (11)
- Dictionary classes now accept type annonations for key and value. (14)
- Accept a ``decorators`` argument with all of the metaclasses to produce classes
which have a sequence of class decorators applied before class attribute
accretion is enforced. Some class decorators are compatible with accretion but
some are not; this gives a way to ensure that they are applied without
attribute enforcement. Advanced cases, such as ``dataclasses.dataclass( slots
= True )``, which produces a replacement class, are correctly supported by this
machinery on CPython.
- Add ``ProtocolClass`` metaclass to produce accretive protocol classes.
Supported Platforms
-------------------
- Add support for CPython 3.13.
- Drop support for CPython 3.8 (past end-of-life).
- Drop support for CPython 3.9 (skipping to 3.10, which is the next baseline LTS
version for major OS distributions).
- Drop support for PyPy 3.9, which is no longer maintained upstream.
Deprecations and Removals
-------------------------
- Remove ``complete``, ``concealment``, and ``protection`` subpackages to focus
on core value of package: accretive data structures. Users can easily make
their own syntheses as necessary. (13)