[Zope3-dev] cutting away dependencies

Martijn Faassen faassen at startifact.com
Fri Jun 15 12:33:18 EDT 2007


Hi there,

Recently I had the opportunity to try the new buildouts of two Zope 3 
projects, namely zope.tal and zope.fssync. In both, the dependency 
specification in install_requires looks innocent:

zope.tal:

'setuptools',
'zope.i18nmessageid',
'zope.i18n',
'zope.interface',

zope.fssync:

setuptools',
'zope.interface',
'zope.proxy',
'zope.traversing',
zope.xmlpickle'

These looks like dependencies that should only pull in a few more 
packages at most. Unfortunately this is not the case. zope.tal somehow 
ends up depending on, say, zope.dublincore and zope.lifecycleevent, 
zope.app.publisher, zope.formlib, and a total of about 60 dependencies. 
The story is very similar for zope.fssync. You'd not think the basic 
page template interpreter should have a dependency on formlib.

Do we have a plan for unweaving these dependencies? It just doesn't seem 
needed that such basic packages pull in so much of zope. Is there a 
particular dependency that we could surgically alter to minimize this 
explosion? It'd be useful to start publishing some dependency graphs to 
identify critical packages. Is anyone already doing this work?

Regards,

Martijn



More information about the Zope3-dev mailing list