[Zope3-dev] More thoughts on packaging

Jim Fulton jim at zope.com
Tue Feb 17 11:27:26 EST 2004


Jeremy Hylton wrote:
> On Tue, 2004-02-17 at 05:08, Jim Fulton wrote:
> 
>>Somehow, Z3's setup.py is evidence of problems with distutils.
>>I wish we had separate setup.py scripts for the separate major
>>components of Zope 3, but somehow, this has been too hard. Instead,
>>we have this rather complicated monolithic setup.py. Worse, we have
>>three big monolithic setup.py scripts, for Zope 2, for Zope 3, and for
>>ZODB that duplicate a good bit of code.
>>
>>We should have separate setup.py scripts and a controller script that
>>invokes the separate scripts.  It should, IMO, be possible for the central
>>script to invoke the others as modules.  This doesn't seem to be possible,
>>given the way things setup.py scripts are typically written.  It wouldn't
>>be that big a deal to devise a different *style* of writing setup scripts
>>so that they could be used by other setup scripts.
> 
> 
> I'm in the minority, apparently,

I hope so. :)

 > but I like having a single, top-level
> setup script for ZODB.  It's a central point of control. 

It's probably OK for ZODB, but I think it really sucks for Zope.

 > There's only
> one place to look when a module isn't getting compiled or installed, and
> there's a single list of all the software that should be installed.
> 
> The ZODB setup.py isn't all that big. 

I find it big and complex.

 > It's mostly just listings of
> files, and it would be even smaller if distutils had better support for
> data files.
> 
> Zope3 is a bit bigger -- it still feels small to me :-) -- because it
> doesn't explicitly list packages (so there's Finder code) and because it
> has a lot of C extensions.  Each C extension is only a few lines of
> code, though, and mostly declarative at that.  It would be a little
> smaller of distutils had built-in dependency support, which I've
> threatened to add in the past.

I find it pretty complex.  I was annoyed that I had to change it and ZODB's
when working on ZODB 3.3 integration.

> At any rate, I think there's a lot of mileage to be had in building a
> layer of on top of distutils to do what you want.

Of course.

Jim

-- 
Jim Fulton           mailto:jim at zope.com       Python Powered!
CTO                  (540) 361-1714            http://www.python.org
Zope Corporation     http://www.zope.com       http://www.zope.org




More information about the Zope3-dev mailing list