[Distutils] buildout 1.5.0b2 problems

Gary Poster gary.poster at canonical.com
Fri May 7 17:40:28 CEST 2010


On May 6, 2010, at 4:38 PM, Alex Clark wrote:

> Hi all,
> 
> Is it me or is there trouble with the latest Buildout bootstrap file: 
> svn://svn.zope.org/repos/main/zc.buildout/trunk/bootstrap/bootstrap.py
> 
> I get this on the latest Ubuntu when trying to run it: 
> 
>    aclark at ubuntu:~/Developer/plone-site-admin/buildout$ src/python-buildout/python-2.4/bin/python2.4 bootstrap.py 
>> /home/aclark/Developer/plone-site-admin/buildout/bootstrap.py(25)?()
>    -> from optparse import OptionParser
>    (Pdb) l
>     20     $Id$
>     21     """
>     22     
>     23     import os, shutil, sys, tempfile, textwrap, urllib, urllib2
>     24     import pdb ; pdb.set_trace()
>     25  -> from optparse import OptionParser
>     26     
>     27     if sys.platform == 'win32':
>     28         def quote(c):
>     29             if ' ' in c:
>     30                 return '"%s"' % c # work around spawn lamosity on windows
>    (Pdb) 
>     31             else:
>     32                 return c
>     33     else:
>     34         quote = str
>     35     
>     36     # In order to be more robust in the face of system Pythons, we want to
>     37     # run without site-packages loaded.  This is somewhat tricky, in
>     38     # particular because Python 2.6's distutils imports site, so starting
>     39     # with the -S flag is not sufficient.  However, we'll start with that:
>     40     if 'site' in sys.modules:
>     41         # We will restart with python -S.
>    (Pdb) n
>> /home/aclark/Developer/plone-site-admin/buildout/bootstrap.py(27)?()
>    -> if sys.platform == 'win32':
>    (Pdb) 
>> /home/aclark/Developer/plone-site-admin/buildout/bootstrap.py(34)?()
>    -> quote = str
>    (Pdb) 
>> /home/aclark/Developer/plone-site-admin/buildout/bootstrap.py(40)?()
>    -> if 'site' in sys.modules:
>    (Pdb) 
>> /home/aclark/Developer/plone-site-admin/buildout/bootstrap.py(42)?()
>    -> args = sys.argv[:]
>    (Pdb) 
>> /home/aclark/Developer/plone-site-admin/buildout/bootstrap.py(43)?()
>    -> args[0:0] = [sys.executable, '-S']
>    (Pdb) 
>> /home/aclark/Developer/plone-site-admin/buildout/bootstrap.py(44)?()
>    -> args = map(quote, args)
>    (Pdb) 
>> /home/aclark/Developer/plone-site-admin/buildout/bootstrap.py(45)?()
>    -> os.execv(sys.executable, args)
>    (Pdb) 
>    Traceback (most recent call last):
>      File "bootstrap.py", line 23, in ?
>        import os, shutil, sys, tempfile, textwrap, urllib, urllib2
>    ImportError: No module named shutil
> 
> But if I revert an older bootstrap.py, the problem goes away.

Hi.  Sorry for the late reply: I had some dental surgery this week that put me out of commission for a couple of days.

This does not make immediate sense to me, and I can't dupe, trying with Python 2.4, buildout 1.5.0b2, and the trunk bootstrap.py, as shown above.  Alex and I are exploring this on IRC.  I'll report back if we have a resolution.

Thanks

Gary



More information about the Distutils-SIG mailing list