[Zope-dev] Re: Zope 2 eggification [was: Merge philikon-aq branch into Zope trunk]

Chris McDonough chrism at plope.com
Mon Apr 21 20:13:16 EDT 2008


Hanno Schlichting wrote:
> Hi.
> 
> Chris McDonough wrote:
>> True, although the Zope2 instance-creation scripts will probably 
>> become setuptools console scripts, which means that things will likely 
>> need to get shuffled around a bit from how things are now regardless 
>> and old hands will be baffled anyway.
>>
>> repoze.zope2 needs the libraries, but doesn't need the stock Zope 
>> instance creation scripts (repoze.zope2's may actually conflict 
>> name-wise with those from "stock" Zope 2).  I'll see if I can figure 
>> out a way that repoze.zope2 can just use stock zope2 instance-creation 
>> scripts so making a different meta-egg that includes just instance 
>> creation stuff isn't as attractive.
> 
> We have lots of instance creation logic in the 
> plone.recipe.zope2instance package as well. While it currently still 
> calls mkzope2instance internally, there isn't really anything from it 
> which it depends on anymore.
> 
> While this code is currently zc.buildout specific, I would favor a 
> smarter general instance creation script where we could offload all 
> logic to. Currently there is too much zope.conf building stuff and a 
> improved test runner and control script in that recipe, where lots of 
> the parts are reusable. Most of this is providing a Python API to build 
> zope.conf and adjusting the default values of some options to more 
> sensible values. We also have the zope2zeoserver recipe which on top 
> provides the missing Windows support scripts and adjustments for ZEO.
> 
> Do people feel any of this should be more generally reusable? What does 
> repoze.zope2 currently do in this area or would like to do?

repoze.zope2 doesn't use any of the instance-file-creation stuff in Zope.  So 
far we haven't much want to either, because creating instances is pretty easy. 
Also, because repoze.zope2 depends on PasteScript, we have the opportunity to 
use "paster create" to create repoze.zope2 instances.  Although we don't yet do 
that, that might be the natural way for us to go if we did want to use any 
framework to create instances.

But "paster create" would probably not be a reasonable way to generate instances 
for "plain old Zope", because it would form a dependency on PasteScript, which 
Zope 2 doesn't currently need otherwise.

But with that in mind, I think we would be happiest if there was an egg that 
could be installed that got all the Zope libs but which didn't subsequently 
install instance creation / instance management console scripts (back to the 
"zope2libs" idea..).  Might that also be the case for Plone?

- C


More information about the Zope-Dev mailing list