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

Leonardo Rochael Almeida leorochael at gmail.com
Tue Jan 15 14:03:22 CET 2013


On Tue, Jan 15, 2013 at 10:21 AM, Eric V. Smith <eric at trueblade.com> wrote:
>> [...]
>> I guess I don't understand: "I don't know how hard it'd be top
>> implement but in an ideal world I'd prefer to see develop eggs trump
>> any other sources but still have version requirements checked."
> I think it means that the develop egg is the only version that's
> considered. If it doesn't match the version requirement, it's an error.


"In the face of ambiguity, refuse the temptation to guess."

It seems most people is in agreement with:

 * If there is a "develop" distribution, no other version of that
distribution should be fetched and used.

I imagine this could translate to:

 * The version from the "develop" distro should override the any
"[versions]" definition

 * If the "develop" distro version conflicts with required versions
from other distros, (but not with the [versions] specification) then
fail w/ a clear message instead of fetching a non-develop distro:

    - "distribution foo.bar 0.5.3 requires baz.fred <= 0.17.0, but
development distribution at 'src/baz.fred' has version 0.18.0"

(The case where the a version conflict with [versions] already fails).

BTW, the "mr.developer" extension does the above partially, by
blanking any [versions] definition of a package in development.

I guess the behaviour above could be achieved if mr.develop
effectively put the version of development distro into the [version]
section, instead of just blanking it.



More information about the Distutils-SIG mailing list