[Checkins] SVN: zc.buildout/trunk/src/zc/buildout/ Fixed:

Jim Fulton jim at zope.com
Fri Sep 15 17:13:42 EDT 2006


Log message for revision 70196:
  Fixed: 
  https://launchpad.net/products/zc.buildout/+bug/60582
  
  Don't use extensions when bootstrapping.
  

Changed:
  U   zc.buildout/trunk/src/zc/buildout/buildout.py
  U   zc.buildout/trunk/src/zc/buildout/tests.py

-=-
Modified: zc.buildout/trunk/src/zc/buildout/buildout.py
===================================================================
--- zc.buildout/trunk/src/zc/buildout/buildout.py	2006-09-15 15:55:45 UTC (rev 70195)
+++ zc.buildout/trunk/src/zc/buildout/buildout.py	2006-09-15 21:13:41 UTC (rev 70196)
@@ -138,7 +138,6 @@
                                             options['installed'])
 
         self._setup_logging()
-        self._load_extensions()
 
     def _dosubs(self, section, option, value, data, converted, seen):
         key = section, option
@@ -241,6 +240,7 @@
             self['buildout']['bin-directory'])
 
     def install(self, install_parts):
+        self._load_extensions()
         self._setup_directories()
 
         # Add develop-eggs directory to path so that it gets searched
@@ -607,6 +607,10 @@
                 dest = None
             else:
                 dest = self['buildout']['eggs-directory']
+                if not os.path.exists(dest):
+                    self._logger.info('Creating directory %s', dest)
+                    os.mkdir(dest)
+                    
             zc.buildout.easy_install.install(
                 specs, dest,
                 path=[self['buildout']['develop-eggs-directory']],

Modified: zc.buildout/trunk/src/zc/buildout/tests.py
===================================================================
--- zc.buildout/trunk/src/zc/buildout/tests.py	2006-09-15 15:55:45 UTC (rev 70195)
+++ zc.buildout/trunk/src/zc/buildout/tests.py	2006-09-15 21:13:41 UTC (rev 70196)
@@ -356,11 +356,30 @@
 <BLANKLINE>
     """
 
-def linkerSetUp(test):
-    zc.buildout.testing.buildoutSetUp(test, clear_home=False)
-    zc.buildout.testing.multi_python(test)
-    zc.buildout.testing.setUpServer(test, zc.buildout.testing.make_tree(test))
+def test_bootstrap_with_extension():
+    """
+We had a problem running a bootstrap with an extension.  Let's make
+sure it is fixed.  Basically, we don't load extensions when
+bootstrapping.
 
+    >>> d = mkdtemp('sample-bootstrap-2')
+    
+    >>> write(d, 'buildout.cfg',
+    ... '''
+    ... [buildout]
+    ... extensions = some_awsome_extension
+    ... parts = 
+    ... ''')
+
+    >>> os.chdir(d)
+    >>> print system(os.path.join(sample_buildout, 'bin', 'buildout')
+    ...              + ' bootstrap'),
+    buildout: Creating directory /sample-bootstrap-2/bin
+    buildout: Creating directory /sample-bootstrap-2/parts
+    buildout: Creating directory /sample-bootstrap-2/eggs
+    buildout: Creating directory /sample-bootstrap-2/develop-eggs
+    """
+
 def easy_install_SetUp(test):
     zc.buildout.testing.buildoutSetUp(test)
     zc.buildout.testing.multi_python(test)
@@ -562,6 +581,7 @@
                 'zc.buildout.egg'),
                (re.compile('(\n?)-  ([a-zA-Z_.-]+)-script.py\n-  \\2.exe\n'),
                 '\\1-  \\2\n'),
+               (re.compile('\S+sample-(\w+)'), r'/sample-\1'),
                ]),
             )
         ))



More information about the Checkins mailing list