I was looking at dependencies of various zope.* packages and see that
some packages depend on other because of ZCML directives and some are
not. For example:

The zope.app.catalog package depends on zope.app.component, but
doesn't use it anywhere in non-testing code, however it does use the
``class`` directive, registered in zope.app.component.

While the zope.app.keyreference doesn't depend on zope.app.component
at all, but uses ``class`` directive as well.

So, the question is: what's the common policy for that? Should we
depend on packages that is used in ZCML or not? Or maybe ZCML-related
dependencies should be in some extras_require, say "zcml"?

Personally, I think, that extras_require way is a nice compromise for
that. Because many of packages can be used greatly without ZCML
configuration, but getting ZCML-reqired dependencies should be easy.

PS BTW, I think that zope.app.keyreference should be moved to plain
zope.keyreference, because it's really lightweight, useful outside of
zope and it doesn't depend on any zope.app package. What do you people
think?

-- 
WBR, Dan Korostelev
_______________________________________________
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 )

Reply via email to