[Zope-dev] Re: zcml entry points

Fred Drake fdrake at gmail.com
Wed Oct 17 18:22:21 EDT 2007


On 10/17/07, Martin Aspeli <optilude at gmx.net> wrote:
> The main win, IMHO, is to avoid the requirement for people to install
> slugs for third party products. Slugs suck - they are confusing to
> explain and people forget them all the time. Buildout makes it a bit
> easier, but it's still not a terribly good solution.

Slugs are evil; agreed.  We never use them.  They were an accident of
the "instance" tree inherited from older versions of Zope, and how
that tree was re-interpreted for Zope 3.  They never worked well, and
did no one any favors.

> For example, say you want to install oi.plum. You need to add the line
> 'oi.plum' twice - once under 'eggs' and once under 'zcml' in your
> buildout.cfg. Forget the latter, and the package doesn't work properly
> (or at all).

I actually really like this; I don't get the configuration for a
package unless I ask for it.  It's not unusual to want only the code
and not the default configuration for a package.

> If we had entry points, we could just load the egg. Internally, oi.plum
> may use <include /> as much as necessary to load *its* dependencies, but
> that's not something the user of the package needs to worry about.

Requiring a package doesn't say anything about how it's going to be
used; making an assumption about that is really bad.

> If Zope loaded entry-point ZCML automatically (maybe with an on/off
> switch in zope.conf for those who need more fine grained control) that'd
> be a pretty nice solution.

I suspect I'd always want it off.  Picking up configuration
willy-nilly is too dangerous.


  -Fred

-- 
Fred L. Drake, Jr.    <fdrake at gmail.com>
"Chaos is the score upon which reality is written." --Henry Miller


More information about the Zope-Dev mailing list