Well that was something new for me. Having two versions of the same package in<div>the same buildout file. </div><div><br></div><div>Actually I was installing a few distributions in my workplace. So some distros have</div>
<div>version pinned in their setup.py install_requires section, and when I run the buildout</div><div>expecting the versions to be printed, its not printing those alone. So mentioning the version</div><div>was not in the buildout file originally, but I see your point of putting them in [versions] section.</div>
<div>But tell me this. In the above example(pinning a version number in install_requires section of setup.py)</div><div>expecting the version of the package to be printed is a valid usecase right ? Is it not ? I know from the</div>
<div>example which you gave previously there seems to be some ambiguity from which version to pick if</div><div>there are multiple versions. right ? Thats why its left out or ?</div><div><br></div><div>Regards,</div><div>
Nandakishore<br>
<br><br><div class="gmail_quote">On Wed, Aug 17, 2011 at 7:44 AM, Chris Withers <span dir="ltr"><<a href="mailto:chris@simplistix.co.uk">chris@simplistix.co.uk</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="im">On 16/08/2011 18:31, B.Nanda Kishore wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
[buildout]<br>
index=<a href="http://localhost:8000/" target="_blank">http://localhost:8000/</a><br>
parts = deps<br>
extensions = buildout-versions<br>
<br>
[deps]<br>
recipe = zc.recipe.egg<br>
eggs = PkgA<br>
PkgB==0.1.0<br>
<br>
When I ran the buildout, this is the output I got.<br>
<br>
[versions]<br>
PkgA = 0.1.0<br>
buildout-versions = 1.6<br>
distribute = 0.6.19<br>
zc.buildout = 1.5.2<br>
zc.recipe.egg = 1.3.2<br>
<br>
Notice that PkgB's version is not printed.<br>
</blockquote>
<br></div>
Yes, as I said before, this is intended and will not change.<br>
<br>
Here's an example buildout.cfg that shows why:<br>
<br>
[buildout]<br>
parts = part1 part2<div class="im"><br>
extensions = buildout-versions<br>
versions = versions<br>
<br>
[versions]<br></div>
SomePackage = 2.0<br>
<br>
[part1]<div class="im"><br>
recipe = zc.recipe.egg<br>
eggs =<br></div>
SomePackage<br>
<br>
[part2]<div class="im"><br>
recipe = zc.recipe.egg<br>
eggs =<br></div>
SomeOtherPackage<br>
SomePackage==1.0<br>
<br>
To explain, SomeOtherPackage has a dependency on SomePackage, but hasn't been updated to work with version 2.0, so needs to be pinned to 1.0. However, the rest of the buildout is fine to use with the new version 2.0.<br>
<br>
In general, buildout-versions should be used as described in its docs and versions should *only* be pinned in a [versions] section.<br>
<br>
*Why* are you pinning in the eggs line?<div><div></div><div class="h5"><br>
<br>
cheers,<br>
<br>
Chris<br>
<br>
-- <br>
Simplistix - Content Management, Batch Processing & Python Consulting<br>
- <a href="http://www.simplistix.co.uk" target="_blank">http://www.simplistix.co.uk</a><br>
</div></div></blockquote></div><br></div>