[Zope-dev] zope.container analysis
chrism at plope.com
Thu May 14 23:05:01 EDT 2009
zope.container (32 transitive dependencies) has some possibly low-hanging
dependency tease-apart fruit. Does anyone have any ideas about to sort out the
below, particularly with externalizing the mentioned interface dependencies?
- It depends on zope.filerepresentation but depends only on its interfaces
IReadDirectory, IWriteDirectory, and IDirectoryFactory.
(zope.filerepresentation has 32 transitive dependencies).
- It depends on zope.app.dependable but depends only on its interfaces
IDependable and DependencyError. (note: zope.app.dependable might
be a candidate to be called zope.dependable as it depends on no other zope.app
packages; it does depend on about 20 other zope.* packages transitively tho).
- It depends on zope.publisher, but only its interfaces browser.IBrowserRequest,
browser.IBrowserPublisher, NotFound, IDefaultViewName,
xmlrpc.IXMLRPCPublisher, and IPublishTraverse.
- I was able to break a runtime logic dependency on zope.traversing by
disusing zope.traversing.api.getPath in favor of using
ILocationInfo(object).getPath(). The rest of the runtime dependencies on
zope.traversing are interface dependencies (ITraversable, IContainmentRoot).
More information about the Zope-Dev