.. _changelog: Changelog ######### Version 0.3 =========== * **Breaking change**: The `required` keyword argument on most :mod:`aioxmpp.xso` descriptors has been removed. The semantics of the `default` keyword argument have been changed. Before 0.3, the XML elements represented by descriptors were not required by default and had to be marked as required e.g. by setting ``required=True`` in :class:`.xso.Attr` constructor. Since 0.3, the descriptors are generally required by default. However, the interface on how to change that is different. Attributes and text have a `default` keyword argument which may be set to a value (which may also be :data:`None`). In that case, that value indicates that the attribute or text is absent: it is used if the attribute or text is missing in the source XML and if the attribute or text is set to the `default` value, it will not be emitted in XML. Children do not support default values other than :data:`None`; thus, they are simply controlled by a boolean flag `required` which needs to be passed to the constructor. * The class attributes :attr:`~aioxmpp.service.Meta.SERVICE_BEFORE` and :attr:`~aioxmpp.service.Meta.SERVICE_AFTER` have been renamed to :attr:`~aioxmpp.service.Meta.ORDER_BEFORE` and :attr:`~aioxmpp.service.Meta.ORDER_AFTER` respectively. The :class:`aioxmpp.service.Service` class has additional support to handle the old attributes, but will emit a DeprecationWarning if they are used on a class declaration. See :attr:`aioxmpp.service.Meta.SERVICE_AFTER` for more information on the deprecation cycle of these attributes.