Preferring final releases
Currently, when looking for a new release, easy_install and buildout look for the newest distributions that satisfy a requirement. They will, for example, prefer a newer development release or preliminary release (dev, alpha, beta, or rc) over a final release. I don't think this is a good default policy. In buildout, I'm going to add an option, prefer-final, to control this. If this option is true, then buildout will prefer final distributions over non-final distributions. It will choose the latest final version that meets a requirement if there is one. Maybe buildout should make this the default. (Thoughts?) In any case, since buildout lets people create their own defaults for buildout options, people will be able to choose any default they wish. With this option enabled, you'll be able to get a non-final distribution by explicitly requiring it. I think easy_install and setuptools should provide a similar option and provide a way (presumably through setup.cfg) to make it the default. For backward compatibility reasons, it may not be possible to make this the default policy for setuptools, although, arguably, it is a better default. Jim Note that for buildout, what I said above isn't accurate. :) Buildout prefers develop distributions over non-develop distributions. It will currently choose a develop distribution that meets a requirement, if there is one. If prefer-final is enabled, then buildout will choose the latest develop distribution that satisfies the requirement, if there is one, otherwise, it will pick the latest final distribution that meets a requirement, if there is one, otherwise, it will pick the latest distribution that meets a requirement. -- Jim Fulton mailto:jim@zope.com Python Powered! CTO (540) 361-1714 http://www.python.org Zope Corporation http://www.zope.com http://www.zope.org
Hey, Jim Fulton wrote:
I think easy_install and setuptools should provide a similar option and provide a way (presumably through setup.cfg) to make it the default. For backward compatibility reasons, it may not be possible to make this the default policy for setuptools, although, arguably, it is a better default.
+1 for adding this option. Without such an option, it's pretty hard to specify you only want actual final releases, unless you tie down the release number entirely. A project has a harder time releasing betas of their next iteration as well, as people might be pulling it in before they are ready. A way to prevent this from happening would be to spell out exact release numbers for all dependencies in all the setup.py's. It's tricky to specify this with <, by the way: foo > 4.0 and foo < 4.1 will still get you 4.1b, which is what you frequently don't want. Regards, Martijn
Am Samstag, den 07.07.2007, 14:22 +0200 schrieb Martijn Faassen:
+1 for adding this option. Without such an option, it's pretty hard to specify you only want actual final releases, unless you tie down the release number entirely. A project has a harder time releasing betas of their next iteration as well, as people might be pulling it in before they are ready. A way to prevent this from happening would be to spell out exact release numbers for all dependencies in all the setup.py's. [...]
Me too. :)
participants (3)
-
Christian Theune
-
Jim Fulton
-
Martijn Faassen