Hello,

Is it possible to force bootstrap.py to download the setuptools or
distribute egg even though it can be found on the system? Not
downloading a fresh copy will cause issues in some edge cases, for
example take the following situation:

Say my site-packages are located in /usr/lib/python2.6/site-packages/.

Then, I set my PYTHONPATH to contain
/usr/local/lib/python2.6/site-packages/ (note *local*).

Then, I install distribute or setuptools into
/usr/local/lib/python2.6/site-packages/.

Then, I install a third party package, say lxml, also to
/usr/local/lib/python2.6/site-packages/.

Then, in my project, I run python bootstrap.py (with or without the
--distribute flag, depending on which package I have in
/usr/local/lib/python2.6/site-packages/).

Then, bootstrap.py will not download a fresh copy, instead it will add
/usr/local/lib/python2.6/site-packages/ to sys.path so that it can use
the existing one.

Then, say I have the following buildout.cfg:


buildout]
develop = .
parts =
    eggs

[eggs]
zc.recipe.egg
include-site-packages = false
allowed-eggs-from-site-packages =
eggs =
    lxml

I would now expect buildout to not include lxml from my PYTHONPATH,
but build it instead and put it in my eggs-dir. However, it's not the
case: adding /usr/local/lib/python2.6/site-packages/ to sys.path will
make lxml available so buildout will not build it.

My question is, how can I force buildout to build its own lxml, or
better yet, force it to download a fresh setuptools or distribute egg,
avoiding adding extra stuff to sys.path, thus making unnecessary
system packages available and, thus, not putting them in the eggs-dir.

Note, this is zc.buildout 1.5.0. I hope I gave enough details.

Attila
_______________________________________________
Distutils-SIG maillist  -  [email protected]
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to