-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Lennart Regebro wrote: > On 10/20/07, Martijn Faassen <[EMAIL PROTECTED]> wrote: >> I'd say it is a general concern of a framework to try to avoid how often >> you need to repeat yourself. Right now you to use a Zope 3 package you >> need to do the following things: >> >> * list the egg in your setup.py dependencies >> >> * load the ZCML required >> >> * import it in your code > > True. But they do different things. > > 1. Says "download and install a component" > 2. Says "configure a component" > 3. Says "use a component" > > Or something like that. > > I must say I kinda prefer the method of including the ZCML from the > application zcml, where it is used, than having it magically included > by buildout just because it was downloaded and installed. This mainly > because if I write a module that requires foo.bar.frotz to have it's > zcml included, I think it's the job of my module to include it, not a > separate buildout. > > But I see your point as well, and maybe there could be made a > difference in the buildout between modules to just be installed and > modules to be installed and configured?
I'd rather see eggs designed to be used as plugins for a pluggable app (e.g., Plone / Zope2 Products, maybe Grok add-ons) expose and entry point in their setup.py, which would then be found and triggered automagically by the plugin-aware application. E.g., a stock Zope2 product, bundled as an egg, might expose the following in its setup() call:: entry_points={ 'zope2.product': ['Products.myproduct:initialize'[, }, Or maybe the product even exposes mroe than one kind of entry point:: entry_points={ 'zope2.product': ['Products.myproduct:initialize'], 'plone.quickinstall': ['Products.myproduct.Extensions.Install:install'], }, A Grok application might say: entry_points={ 'grok.module': ['myapp'], }, The entry points feature of setuptools was originall added in order to support this use case (plugins / add-ons for a particular framework). Tres. - -- =================================================================== Tres Seaver +1 540-429-0999 [EMAIL PROTECTED] Palladion Software "Excellence by Design" http://palladion.com -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFHGjXJ+gerLs4ltQ4RAjsPAJ9XUPLazljd5m5GmJarLoLURXpAygCgpw31 7pBQ1xtoHbFY0H/EAJ7KJVE= =ytRr -----END PGP SIGNATURE----- _______________________________________________ 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 )