[Checkins] SVN: zc.buildout/trunk/ Bug 92891: bootstrap crashes with recipe option in buildout section.

Jim Fulton jim at zope.com
Mon May 7 03:11:16 EDT 2007


Log message for revision 75601:
  Bug 92891: bootstrap crashes with recipe option in buildout section.
  

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

-=-
Modified: zc.buildout/trunk/CHANGES.txt
===================================================================
--- zc.buildout/trunk/CHANGES.txt	2007-05-07 06:41:36 UTC (rev 75600)
+++ zc.buildout/trunk/CHANGES.txt	2007-05-07 07:11:15 UTC (rev 75601)
@@ -20,7 +20,11 @@
 - Improved error reporting by showing which packages require other
   packages that can't be found or that cause version conflicts.
 
+Bugs Fixed
+----------
 
+- 92891: bootstrap crashes with recipe option in buildout section.
+
 1.0.0b23 (2007-03-19)
 =====================
 

Modified: zc.buildout/trunk/src/zc/buildout/buildout.py
===================================================================
--- zc.buildout/trunk/src/zc/buildout/buildout.py	2007-05-07 06:41:36 UTC (rev 75600)
+++ zc.buildout/trunk/src/zc/buildout/buildout.py	2007-05-07 07:11:15 UTC (rev 75601)
@@ -797,6 +797,9 @@
             if '${' in v:
                 self._dosub(k, v)
 
+        if self.name == 'buildout':
+            return # buildout section can never be a part
+        
         recipe = self.get('recipe')
         if not recipe:
             return

Modified: zc.buildout/trunk/src/zc/buildout/tests.py
===================================================================
--- zc.buildout/trunk/src/zc/buildout/tests.py	2007-05-07 06:41:36 UTC (rev 75600)
+++ zc.buildout/trunk/src/zc/buildout/tests.py	2007-05-07 07:11:15 UTC (rev 75601)
@@ -796,6 +796,37 @@
     zc.buildout.easy_install: Generated script /sample-bootstrap/bin/buildout.
     """
 
+
+def bug_92891_bootstrap_crashes_with_egg_recipe_in_buildout_section():
+    """
+    >>> d = tmpdir('sample-bootstrap')
+    
+    >>> write(d, 'buildout.cfg',
+    ... '''
+    ... [buildout]
+    ... parts = buildout
+    ... eggs-directory = eggs
+    ...
+    ... [buildout]
+    ... recipe = zc.recipe.egg
+    ... eggs = zc.buildout
+    ... scripts = buildout=buildout
+    ... ''')
+
+    >>> os.chdir(d)
+    >>> print system(os.path.join(sample_buildout, 'bin', 'buildout')
+    ...              + ' bootstrap'),
+    buildout: Creating directory /sample-bootstrap/bin
+    buildout: Creating directory /sample-bootstrap/parts
+    buildout: Creating directory /sample-bootstrap/eggs
+    buildout: Creating directory /sample-bootstrap/develop-eggs
+    zc.buildout.easy_install: Generated script /sample-bootstrap/bin/buildout.
+
+    >>> print system(os.path.join('bin', 'buildout')),
+    buildout: Unused options for buildout: 'scripts' 'eggs'
+
+    """
+
 def removing_eggs_from_develop_section_causes_egg_link_to_be_removed():
     '''
     >>> cd(sample_buildout)



More information about the Checkins mailing list