I've created two codependent branches of zope.container and zope.lifecyclevent: http://svn.zope.org/zope.container/branches/movedaddedremoved/ http://svn.zope.org/zope.lifecycleevent/branches/movedaddedremoved/ The intent was to move ``IObjectMovedEvent``, ``IObjectAddedEvent``, ``IObjectRemovedEvent`` interfaces and ``ObjectMovedEvent``, ``ObjectAddedEvent`` and ``ObjectRemovedEvent`` to the ``zope.lifecycleevent`` event package. Merging this would allow us to reduce dependencies on zope.container in other packages (instead, those packages would just depend on zope.lifecycleevent, which has very few dependencies). zope.intid is one such package (although it still will have one niggling dependency on "IContained" from zope.container even after it started to import event stuff from zope.lifecycleevent) I don't know if merging this stuff is reasonable. I do understand the difference between "lifecycle events" and "container events" and the events I moved out are definitely container events. I just wonder if it matters to be completely correct terminology-wise here. The other alternative is to create another package. - C