Commit 986da3e3 authored by Jim Fulton's avatar Jim Fulton

Bug 92891: bootstrap crashes with recipe option in buildout section.

parent 022bab05
...@@ -20,6 +20,10 @@ Feature Changes ...@@ -20,6 +20,10 @@ Feature Changes
- Improved error reporting by showing which packages require other - Improved error reporting by showing which packages require other
packages that can't be found or that cause version conflicts. 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) 1.0.0b23 (2007-03-19)
===================== =====================
......
...@@ -797,6 +797,9 @@ class Options(UserDict.DictMixin): ...@@ -797,6 +797,9 @@ class Options(UserDict.DictMixin):
if '${' in v: if '${' in v:
self._dosub(k, v) self._dosub(k, v)
if self.name == 'buildout':
return # buildout section can never be a part
recipe = self.get('recipe') recipe = self.get('recipe')
if not recipe: if not recipe:
return return
......
...@@ -796,6 +796,37 @@ bootstrapping. ...@@ -796,6 +796,37 @@ bootstrapping.
zc.buildout.easy_install: Generated script /sample-bootstrap/bin/buildout. 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(): def removing_eggs_from_develop_section_causes_egg_link_to_be_removed():
''' '''
>>> cd(sample_buildout) >>> cd(sample_buildout)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment