[Distutils] Review of latest draft of PEP 426 (Python package metadata v1.3)

Nick Coghlan ncoghlan at gmail.com
Mon Jan 28 08:56:51 CET 2013


On Mon, Jan 28, 2013 at 5:17 PM, Nick Coghlan <ncoghlan at gmail.com> wrote:
> On Mon, Jan 28, 2013 at 4:58 PM, Tarek Ziadé <tarek at ziade.org> wrote:
>> On 1/28/13 7:17 AM, Nick Coghlan wrote:
>> ...
>>
>>  > 3. There needs to be a mechanism to inform automated tools of the
>>> *right* version ordering to use, with PEP 386 being the default.
>>
>> what happens when you compare two versions from two different schemes ?
>
> When would you ever do that? If a project *changes* schemes, then all
> previously published versions would be reinterpreted in accordance
> with the new scheme.

I realised you might want to do this if you were trying to produce an
ordered list of all versions, and the distribution changed their
versioning scheme somewhere along the line. (Note that this problem
exists implicitly now, a Version-Scheme field would just make it
explicit).

I don't think this is a decision that actually needs to be made in the
metadata PEP - there are multiple strategies that may make sense when
attempting to straddle a change in versioning scheme (e.g. list using
both schemes and complain if they produce different answers, or split
by scheme and present two separate lists, or just complain about the
conflict and ask the user to pick a scheme) depending on what you're
trying to do.

A Version-Scheme field at least acknowledges the existence of multiple
versioning schemes with conflicting edge cases, while still expressing
a preference for a default scheme. Metadata version updates would be
needed only to change the default scheme, rather than to accommodate
existing variants.

Cheers,
Nick.

-- 
Nick Coghlan   |   ncoghlan at gmail.com   |   Brisbane, Australia


More information about the Distutils-SIG mailing list