- Nothing changed yet.
- Drop support for Python 2.7.
- Add support for Python 3.7, 3.8, 3.9, 3.10, 3.11.
- Fix deprecation warnings.
- Add the possibility to commit savepoints and output progress for Fixer.
- Support Python 3.8.
- Use tox as only test setup.
- Switch dependency from
ZODB3
toZODB
. - Migrate to Github.
- Version 0.9.3 did not include all files. Fixing this by adding a MANIFEST.in.
- Use pytest as test runner.
- Move repos to https://bitbucket.org/gocept/gocept.reference
- Bug fixed: reference descriptors could not find out their attribute names when read from the class.
- Bug fixed: the algorithm for digging up the attribute name of a reference descriptor on a class would not handle inherited references.
- Depending on
zope.generations
instead ofzope.app.generations
.
- Updated tests to work with zope.schema 3.6.
- Removed unused parameter of
InstrumentedSet.__init__
. - Avoid
sets
module as it got deprecated in Python 2.6.
- Fixed generation added in previous version.
- Fixed reference counting for reference collections by keeping a usage counter for InstrumentedSets.
- Added a tool that rebuilds all reference counts. Added a database generation that uses this tool to set up the new usage counts for InstrumentedSets.
- Require newer
zope.app.generations
version to get rid of dependency onzope.app.zopeappgenerations
.
- Validation of
gocept.reference.field.Set
now allows bothInstrumentedSet
andset
in field validation, as both variants occur.
zope.app.form
breaks encapsulation of the fields by using the_type
attribute to convert form values to field values. UsingInstrumentedSet
as_type
was a bad idea, as only the reference collection knows how to instantiate anInstrumentedSet
. Now the trick is done on validation where the_type
gets set toInstrumentedSet
temporarily.
- Take advantage of the simpler zope package dependencies achieved at the Grok cave sprint in January 2009.
- Added zope.schema field
gocept.reference.field.Set
which has the internally used InstrumentedSet as field type, so validation does not fail. - gocept.reference 0.5.2 had a consistency bug: Causing a TypeError by trying to assign a non-collection to a ReferenceCollection attribute would break integrity enforcement for that attribute while keeping its previously assigned value.
- Fixed: When upgrading gocept.reference to version 0.5.1, a duplication error was raised.
- Made sure that the reference manager is installed using zope.app.generations before other packages depending on gocept.reference.
- Added specialized variant of zope.interface.verify.verifyObject which can handle references and reference collections correctly.
- Moved InstrumentedSet to use BTree data structures for better performance.
- Added update method to InstrumentedSet.
- Updated documentation.
- Added a set implementation for referencing collections of objects.
- Extended the API for IReferenceTarget.is_referenced to allow specifying whether to query for references recursively or only on a specific object. By default the query is recursive.
- Fixed bug in the event handler for enforcing ensured constraints: referenced objects could be deleted if they were deleted together with a parent location.
Initial release.