Hello, I've implemented PLIP #247, Automate ZCML Loading for Plone Plugins ( http://plone.org/products/plone/roadmap/247) and committed a review buildout here: https://svn.plone.org/svn/plone/review/plip247-automate-plugin-zcml for your review. The buildout is branched from the 3.3 review bundle buildout based on buildout.eggtractor, which automatically generates ZCML slugs for development packages and puts them in parts/instance/etc/package-includes. Since the purpose of PLIP 247 is to automate ZCML loading, those automatically generated ZCML slugs should be removed. I've hardly ever used buildout so I'm not sure how to change that behavior -- sorry about that; I'll change it if I can figure out how.
The changes in Plone itself (branched and pulled in with an svn:external) are pretty small: I added z3c.autoinclude as a dependency in setup.py, included z3c.autoinclude's meta.zcml from Products/CMFPlone/meta.zcml and added the <includePlugins> directives to Products/CMFPlone/configure.zcml, meta.zcml and overrides.zcml. I've included a sample plugin package `foo` as an svn external in src/. If you install that package in your environment (by adding it to buildout.cfg's [develop] section for example -- though again the package-include slugs should be removed) its ZCML will be automatically detected and executed (from Products.CMFPlone's <includePlugins/> directives) when the zope server is started. The foo package has a README with more details. The implementation is currently using the unreleased trunk of z3c.autoinclude to allow the entry point spelling "target=plone" (as opposed to "target=Products.CMFPlone") and to allow three separate directives to load a plugin's meta.zcml, configure.zcml, and overrides.zcml. Some of the things that people have said ought to be discussed about PLIP #247 are: 1) impact on server startup time 2) implications for test environments 3) stabilizing and releasing a new version of z3c.autoinclude 4) debugging tools/APIs for z3c.autoinclude 5) documentation and/or code generation templates to explain the entry point for plugin authors I'll begin working on #3 immediately, since there's plenty I can do there while discussion is still happening. Please let me know if there's anything else I'll need to submit for the PLIP's review. Thanks, Ethan Jucovy
_______________________________________________ Framework-Team mailing list Framework-Team@lists.plone.org http://lists.plone.org/mailman/listinfo/framework-team