[Distutils] Proposal for incorporating buildout-versions on buildout (Re: Better version pinning in buildout (buildout-versions))

Maurits van Rees m.van.rees at zestsoftware.nl
Sat Jan 12 22:53:07 CET 2013

Op 12-01-13 17:18, Jim Fulton schreef:
> On Sat, Jan 5, 2013 at 5:47 PM, Jim Fulton <jim at zope.com> wrote:
> ....
>> I propose that buildout-versions get incorporated into
>> buildout in the following way:
> OK, proposal 1 wasn't accepted.  Here's another stab:
> Proposal 2
> ----------
> 1. The ``allow-picked-versions`` option gets a new allowed value of
>     ``show``. if there are unpicked versions and this option is set to
>     ``show``, then picked/unpinned versions are reported in a way
>     suitable for copying into a versions section, presumably with the
>     same format used by buildout-versions today.
> 2. New buildout option: ``update-versions-file``.  This takes a path
>     (relative to buildout directory) of a file to update with any
>     unpinned versions (in a manner roughly the same as
>     buildout-versions does today).
> 3. New buildout option: ``python-version`` that restricts the Python
>     version, with the same semantics as buildout-version provides now.
> 4. Change: develop eggs found in the buildout's develop-eggs directory
>     will be used even if their version conflicts with a pinned version.

I'm not sure about this one.  Is the develop-eggs directory always 
cleaned up during a buildout run so only the eggs in the 'develop' 
option are listed there?  If old eggs are kept there, this may lead to 
unexpected results, where old developed eggs are still used even when 
the buildout config does not mention them.

If an egg is explicitly in the 'develop' option, then I would be +1 on 
favouring that over a pinned version.  This indeed trips me up sometimes 
in current buildout 1, so this could help.

> 5. In buildout 2, The default value of the versions option will be
>     "versions", rather than being unset. This will allow users to
>     omit::
>        version = versions
>     from their buildout section.
> 6. To make it a little easier to supply buildout versions on the
>     command line, make buildout the default section for command-line
>     options, so::
>        update-versions-file=versions.cfg
>     or::
>        allow-picked-versions=show
>     would be allowed. (They are rejected now.)
> Thoughts?


Maurits van Rees: http://maurits.vanrees.org/
Zest Software: http://zestsoftware.nl

More information about the Distutils-SIG mailing list