Nti.externalization

Latest version: v2.3.0

Safety actively analyzes 621924 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 4

2.3.1

==================

- Nothing changed yet.

2.3.0

==================

- Add a new base class, ``StandardInternalObjectExternalizer``. See
`PR 120
<https://github.com/NextThought/nti.externalization/pull/120>`_ and
`issue 117 <https://github.com/NextThought/nti.externalization/issues/117>`_.
- Rename ``IExternalMappingDecorator`` to
``IExternalStandardDictionaryDecorator`` to emphasize that it is
only used if you (directly or through a super class) call
``to_standard_external_dictionary``. A compatibility alias remains.
See `PR 120
<https://github.com/NextThought/nti.externalization/pull/120>`_ and
`issue 118
<https://github.com/NextThought/nti.externalization/issues/118>`_.
- Docs-deprecated aliases in ``nti.externalization.interfaces`` now also
emit deprecation warnings at runtime.
- Other documentation improvements. Sphinx can now run all the
doctests (on Python 3); many doctests are still run an Python 2.

2.2.0

==================

- Add support for Python 3.9.

- Depend on BTrees 4.8 and above. This simplifies externalization
checks. See `issue 111 <https://github.com/NextThought/nti.externalization/issues/111>`_.

2.1.0

==================

- Add support for "externalization policies." These are instances of
``ExternalizationPolicy`` that can be used to tweak certain
low-level details of externalization without replacing
externalization objects wholesale. They are intended to have a very
low performance impact.

The only supported detail that can be changed right now is whether
the standard created and last modified fields are externalized as
Unix timestamps (the default) or as ISO 8601 strings.

See https://github.com/NextThought/nti.externalization/issues/109

2.0.0

==================

- Change ``ILocatedExternalMapping``: Previously it extended the
legacy ``zope.interface.common.mapping.IFullMapping``. Now it
extends the modern ``zope.interface.common.collections.IMapping``.
Note that this does not require mutability unlike the older
interface. (The ``LocatedExternalDict`` class provided by this
package is fully mutable and implements ``IMutableMapping``. It also
continues to implement ``IFullMapping``, but use of that interface
is discouraged.)

- Change ``ILocatedExternalSequence``: Previously it extended the
legacy ``zope.interface.common.sequence.ISequence``. Now it extends
the modern ``zope.interface.common.collections.ISequence``.
Note that this does not require mutability unlike the older
interface. (The ``LocatedExternalList`` class provided by this
package is fully mutable and implements ``IMutableSequence``.)

- Fix the interface resolution order for ``LocatedExternalList``.
Previously, with zope.interface 5, it began implementing both
``IMutableSequence`` (the new interface from
``zope.interface.common.collections``) as well as the older
interface ``ISequence`` (from ``zope.interface.common.sequence``);
the two have inconsistent resolution orders. Now, it only implements
``IMutableSequence`` and a subset of the legacy interfaces that do
not conflict. See `issue 105
<https://github.com/NextThought/nti.externalization/issues/105>`_.

1.1.3

==================

- Correctly fire ``IObjectWillUpdateFromExternalEvent`` events before
updating an object.

Page 1 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.