[Zope3-dev] Re: zope.sendmail having dependency on zope.app.comonent

Philipp von Weitershausen philipp at weitershausen.de
Wed Aug 22 09:53:30 EDT 2007

Michael Howitz wrote:
> while looking at the dependencies of packages in the zope.* namespace at 
> gocept we found out that zope.sendmail depends on zope.app.component.

Just to make sure: If we ever had a formal distinction of the zope.* and 
zope.app.* namespaces, I think we've abandoned it a while ago already. 
So, it doesn't matter whether a package is in zope.* or zope.app.*, we 
need to take all interdependencies (also the ones in zope.app.*) into 
account. So all in all I don't think it's a big problem in zope.sendmail 
depended on zope.app.component, as long as zope.app.component wouldn't 
depend on a gazillion other things...

> zope.sendmail needs zope.app.component.vocabulary.UtilityVocabulary to 
> define a vocabulary for the utilities implementing 
> zope.sendmail.interfaces.IMailDelivery.
> So we'd suggest to move zope.app.component.vocabulary.UtilityVocabulary 
> out of the zope.app.* namespace because it is a generic vocabulary.
> Possible places for UtilityVocabulary could be zope.component (because 
> the concept of utilities is defined there) or zope.schema (because the 
> concept of vocabularies is defined there).
> zope.schema seems to be the better place because zope.component does not 
> depend on zope.schema yet.

But zope.schema does in no way depend on zope.component.

> zope.app.component then can import UtilityVocabulary from the new place 
> to avoid deprecation.

http://worldcookery.com -- Professional Zope documentation and training

More information about the Zope3-dev mailing list