Hi there, I've just made a lot of releases as the result of our dependency cleanup sprint. There are more releases to be made, but I think I've released the most important affected packages now. Christian Theune is going to follow up and release some more packages that we touched, probably tomorrow.
I'm going to write up a document that describes how we analyzed dependencies and what approaches we took so that people who want to help have some idea of what to do. the most important affected packages are (as far as I can remember): zope.app.component ('class' ZCML directive moved into zope.security, site stuff extracted into zope.site) zope.app.security ('module' directive moved into zope.security, along with some helper functions) zope.app.container (most functionality moved into zope.container) zope.app.folder (base class moved into zope.container, Folder itself moved into zope.site as its main function was to mix in site management facilities) zope.traversing (depends on zope.location now instead of the other way around) zope.location (doesn't depend on zope.traversing anymore) zope.site (a new package extracted from zope.app.component and zope.app.folder) zope.container (a new package extracted from zope.app.container and zope.app.folder) Another thing we want to do is reduce the test dependencies of packages to almost nothing (or nothing at all). We think it'd be good if package only used what they depend on directly for testing purposes; testing dependencies in general should follow implementation dependencies. This might allow us to get rid of zope.app.testing at some point. Instead we'd like to see more (and more consistent!) 'testing' modules in packages that help with test setup. We have created a bunch of tools in the process of reducing dependencies: an extension to the test runner to track imports that could be modified to be from a better location (though 'grep' is very useful there too), z3c.recipe.compattest, and Christian Theune is working on a way to 'touch' the ZODB so that it will update any moved class to the new location. Note that we haven't finished going through the codebase changing imports from zope.app.folder to zope.site where possible - volunteers are welcome. This should further reduce dependencies in the entire graph as zope.site pulls in far less than zope.app.folder. If a bunch of us keep this up we'll that'll allow us to start retiring a lot of packages that are mostly unused, and have a smaller, easier set of Zope 3 packages to maintain and understand. Users of the Zope 3 libraries (plain Zope 3, Grok, Zope 2, Repoze, and others) should all benefit from this. Regards, Martijn _______________________________________________ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )