[Distutils] [buildout] buildout 1.5 sometime ever please?

Gary Poster gary.poster at canonical.com
Thu Jul 8 17:58:34 CEST 2010

My apologies.

There is a branch that addresses all reported issues (as reported here and in Launchpad) except one: svn+ssh://svn.zope.org/repos/main/zc.buildout/branches/gary-betafix/ (or browse in http://svn.zope.org/zc.buildout/branches/gary-betafix/).

Most notably, virtualenv users will have the pre-1.5 behavior.  The automated tests for this are ugly, but exist.

The remaining reported bug is from Lennart Regebro.  I will include his original message at the end of the email.

Once that is done, I would prefer another beta release.  The problems after the last beta release affected many people.  As Tarek mentioned, we do not have a real way to make a beta release, given the current bootstrap.py *and* how it is often used as an svn external.  Some people also do not specify a buildout version, so changing PyPI will immediately affect them.  I have not seen a solution that I believe will actually both provide isolation and encourage people to try the beta out easily.

This situation has been a demotivator for me.  I can't even merge my branch without effect, because it will force some people to change their bootstrap.py scripts.  I don't want to do that until I have some time in my schedule cleared out to deal with possible fallout.

That, combined with being very busy, is all my excuse, for what it is worth.

In any case, to repeat and sum, the following remains:

- Identify and fix the problem reported by Lennart (below).
- Ideally, encourage people to try out the code in a controlled environment.  In order for this to not be a "release" in any way, people will have to manually use the new bootstrap if they want the new isolation, because I can't merge to trunk without effect; and will have to somehow get a new buildout distribution.  I've toyed with allowing it for download on Launchpad, or with putting it in PyPI with a b0 designation.
- Make a release
- (Deal with any remaining fallout)

If someone helped with Lennart's bug, that would be great.

If several someones volunteered to help test some kind of manual "beta" release, that would be great.


On Apr 30, 2010, at 3:46 PM, Lennart Regebro wrote:

Another bug:

In code like this:

def setUp(test):
   zc.buildout.testing.install_develop('zc.recipe.testrunner', test)
   zc.buildout.testing.install_develop('zc.recipe.egg', test)
   zc.buildout.testing.install('zope.testing', test)
   zc.buildout.testing.install('zope.testrunner', test)
   zc.buildout.testing.install('zope.interface', test)
   zc.buildout.testing.install('zope.exceptions', test)

You get the following error:

Traceback (most recent call last):
 File "/opt/python26/lib/python2.6/doctest.py", line 2120, in setUp
 File "/home/projects/zc.recipe.testrunner/trunk/src/zc/recipe/testrunner/tests.py",
line 25, in setUp
 File "/home/projects/zc.recipe.testrunner/trunk/zc.buildout-1.5.0b1-py2.6.egg/zc/buildout/testing.py",
line 332, in buildoutSetUp
 File "/home/projects/zc.recipe.testrunner/trunk/zc.buildout-1.5.0b1-py2.6.egg/zc/buildout/testing.py",
line 272, in make_buildout
 File "/home/projects/zc.recipe.testrunner/trunk/zc.buildout-1.5.0b1-py2.6.egg/zc/buildout/buildout.py",
line 373, in bootstrap
 File "/home/projects/zc.recipe.testrunner/trunk/zc.buildout-1.5.0b1-py2.6.egg/zc/buildout/easy_install.py",
line 1030, in install
   return installer.install(specs, working_set)
 File "/home/projects/zc.recipe.testrunner/trunk/zc.buildout-1.5.0b1-py2.6.egg/zc/buildout/easy_install.py",
line 843, in install
   for dist in self._get_dist(requirement, ws, self._always_unzip):
 File "/home/projects/zc.recipe.testrunner/trunk/zc.buildout-1.5.0b1-py2.6.egg/zc/buildout/easy_install.py",
line 678, in _get_dist
   raise MissingDistribution(requirement, ws)
MissingDistribution: Couldn't find a distribution for 'distribute'.

Going back to 1.4.3 (and zc.recipe.egg 1.2.2 solves the problem.

More information about the Distutils-SIG mailing list