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

Daniel Holth dholth at gmail.com
Mon Jan 28 14:26:17 CET 2013

On Mon, Jan 28, 2013 at 2:56 AM, Nick Coghlan <ncoghlan at gmail.com> wrote:

> 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.

We had a discussion about version schemes a while back along with Vinay. It
seems to me that the Major.Minor.Micro sorting is pretty much universal,
but when you want to compare alphanumeric patch / rc versions within the
same Major.Minor.Micro release you need to know which scheme you are using.
In other words you can probably still sort all the versions unless someone
changes version schemes without incrementing Major.Minor.Micro.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20130128/5bf58ad3/attachment-0001.html>

More information about the Distutils-SIG mailing list