I have stumbled over a behaviour where the versions option is ignored in a particular scenario. I am wondering if this is intended behaviour or not.

The following is a simple example of a not very useful buildout. (this uses setuptools-0.6c8-py2.4 and zc.buildout-1.1.1-py2.4)

--------------

[buildout]
eggs-directory = ${buildout:directory}/eggs
download-cache = ${buildout:directory}/downloads

versions = versions

parts =
    plone

instance-base-eggs =
    ${plone:eggs}


[versions]
plone.recipe.plone = 3.1.4

[plone]
recipe = plone.recipe.plone

------------------------

When we define instance-base-eggs explicitly like this within the buildout section, then when the buildout bootstrap process is run (e.g. python2.4 bootstrap.py), the latest egg for plone.recipe.plone will be pulled and used to satisfy the recipe egg requirement when the buildout is run. The version in the versions section is ignored here. It is not ignored if the version is pinned directly to the plone.recipe.plone i.e. we have

[plone]
recipe = plone.recipe.plone == 3.1.4

If instead we have the following

------------------------

[buildout]
eggs-directory = ${buildout:directory}/eggs
download-cache = ${buildout:directory}/downloads

versions = versions

parts =
    plone

[base]
eggs =
    ${plone:eggs}


[versions]
plone.recipe.plone = 3.1.4

[plone]
recipe = plone.recipe.plone

--------------------------

Then the plone.recipe.plone egg is not pulled during the bootstrap process, but instead during the buildout process at which point the version pinning in the versions section is honored just fine.

Is it intended that the bootstrap process ignores versions in the versions section?

cheers
Matt



_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to