-------------------
Backward-incompatible changes:
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
*none*
Deprecations:
^^^^^^^^^^^^^
- The ``defaults`` argument of :func:`~characteristic.with_init` and :func:`~characteristic.attributes` has been deprecated in favor of the new explicit :class:`~characteristic.Attribute` class and it's superior ``default_value`` and ``default_factory`` arguments.
- The ``create_init`` argument of :func:`~characteristic.attributes` has been deprecated in favor of the new ``apply_with_init`` argument for the sake of consistency.
Changes:
^^^^^^^^
- Switch to a year-based version scheme.
- Add :func:`~characteristic.immutable` to make certain attributes of classes immutable.
Also add ``apply_immutable`` argument to :func:`~characteristic.attributes`.
[`14 <https://github.com/hynek/characteristic/issues/14>`_]
- Add explicit :class:`~characteristic.Attribute` class and use it for default factories.
[`8 <https://github.com/hynek/characteristic/issues/8>`_]
- Add aliasing of private attributes for :func:`~characteristic.with_init`\’s initializer when used together with :class:`~characteristic.Attribute`.
Allow for custom aliasing via a callable.
[`6 <https://github.com/hynek/characteristic/issues/6>`_, `13 <https://github.com/hynek/characteristic/issues/13>`_]
- Add type checks to :func:`~characteristic.with_init`\’s initializer.
[`12 <https://github.com/hynek/characteristic/issues/13>`_]
- Add possibility to hand-pick which decorators are applied from within :func:`~characteristic.attributes`.
- Add possibility to exclude single attributes from certain decorators.
----