Object annotation mechanism
This package provides a mechanism to store additional information about objects without need to modify object class.
- Make AttributeAnnotations have a __parent__. The __parent__ is the object that it stores __annotations__ on. This is a convenience for upwards traversal as used by things like zope.keyreference. See https://github.com/zopefoundation/zope.annotation/issues/11
- Drop support for Python 2.6.
- Claim support for Python 3.5 and 3.6.
- Reach 100% test coverage.
- AttributeAnnotations is now always a collections.MutableMapping. Previously on Python 2 it was a UserDict.DictMixin.
- Convert doctests to Sphinx documentation. Doctest snippets are still tested via tox -e docs.
- LP #98462: add additional “iterable mapping” methods to IAnnotations.
- LP #878265:
- Make persistent (used only for doctests) a soft dependency, installable via the zope.annotation[btree] extra.
- Make BTrees (used for attribute storage) a soft dependency, installable via the zope.annotation[btree] extra. Fall back to using dict for attribute storage if BTrees is not importable.
- Add support for Python 3.4.
- Don’t make AttributeAnnotations available as a view.
- Add __bool__ method to IAnnotations API for Python 3 compatibility.
- Add tox.ini.
- Add support for Python 3.3 and PyPy.
- Replace deprecated zope.component.adapts usage with equivalent zope.component.adapter decorator.
- Replace deprecated zope.interface.implements usage with equivalent zope.interface.implementer decorator.
- Drop support for Python 2.4 and 2.5.
- Include zcml dependencies in configure.zcml, require the necessary packages via a zcml extra, added tests for zcml.
- Add ZODB3 to install_requires, because it’s a true requirement of this package, not just a testing requirement, as BTrees are in use.
- Fix one test that was inactive because it’s function was overriden by a mistake.
- Clean up package description and documentation a bit.
- Change mailing list address to zope-dev at zope.org, as zope3-dev at zope.org is now retired.
- Remove old zpkg-related files.
- Annotation factories take care not to store proxies in the database, so adapting an object wrapped in a LocationProxy works correctly. Fixes https://bugs.launchpad.net/zope3/+bug/261620
- Annotation factories are no longer containing the factored object. Instead the objects are located using zope.location. This removes a dependency to zope.app.container.
Release history Release notifications
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size & hash SHA256 hash help||File type||Python version||Upload date|
|zope.annotation-4.6.0-py2.py3-none-any.whl (15.6 kB) Copy SHA256 hash SHA256||Wheel||py2.py3||Sep 22, 2017|
|zope.annotation-4.6.0.tar.gz (23.9 kB) Copy SHA256 hash SHA256||Source||None||Sep 22, 2017|