On Tue, Sep 8, 2009 at 12:04 PM, Chris Witherschris@simplistix.co.uk wrote:
I've been working on a branch of zc.buildout that uses distribute instead of setuptools:
...and I've hit a problem at the first hurdle. I've changed dev.py to use distribute, but by the time the subprocess call is made to setup.py, even though .../eggs/distribute-0.6-py2.6.egg is on PYTHONPATH, I get:
File ".../setup.py", line 20, in <module> from distribute import setup, find_packages ImportError: No module named distribute
The 0.6 version of Distribute does not contain any "distribute" package. It contains a "setuptools" packages.
If you want to change zc.buildout in order to use distribute, you have to change the parts of zc.buildout that works with the "setuptools" distribution and change them so they work with the "distribute" distribution
So the change doesn't really concerns zc.buildout code, but all of its bootstraping code
This is basically what I have done in this version of the boostrap.py script:
It patches a few functions in zc.buildout that harcode the usage of setuptools distribution.
Now, as Jim said last month, the best way would be to change zc.buildout so it uses any one of them (setuptools or distribute), by beaing able to configure this dependency instead of having it harcoded in the code.
Now for the next version of distribute (0.7) the current default branch, it's another story : everything is being renamed so Distribute doesn't compete anymor with Setuptools namespace.
-- Tarek Ziadé | http://ziade.org | オープンソースの岩！