[Zope3-dev] Lets replace lib/python with python in CVS

Guido van Rossum guido@python.org
Mon, 16 Dec 2002 11:05:05 -0500


>     JF> As part of the package move, lets's get rid of lib.  So, the
>     JF> Zope CVS will have a top-level python directory that contains
>     JF> the included package. When running from a CVS checkout, which
>     JF> I want to be able to do, we will add python, ratyher than
>     JF> lib/python to the Python path.

[BAW]
> There's one use case to consider to the contrary.  I often have a
> development tree of ZODB and a development tree of Zope2, and I want
> to run Zope with my ZODB development tree, without having to pollute
> my site-packages or play twisty games with PYTHONPATH.  Distutils
> makes this really nice because I can just do something like:
> 
>     python setup.py install --home=/path/to/zope2
> 
> in ZODB and all the relevant files get installed in
> /path/to/zope2/lib/python.  I initially disliked Zope's lib/python but
> this does make things very convenient.
> 
> There are other distutils switches that can be used to install
> packages into specific directories, but unlike with --home, there' sno
> one that works for all files.  E.g. you can use --install-lib, but
> there are certain things that won't install in the correct location.
> I've found I've also had to use --install-purelib and --install-data
> in some situations.
> 
> Please consider this use case when making the decision to get rid of
> lib/python (or some part thereof).

But isn't it just as easy to create a symlink to (or a separate
checkout of) ZODB in your Zope2 development tree, rather than doing an
install?  (In either case, there are some conflicts because Zope2's
lib/python contains some directories with the same name as those that
ZODB would install; I think the CVS route make this slightly less
confusing than the install.)

--Guido van Rossum (home page: http://www.python.org/~guido/)