<div><span style="color: rgb(160, 160, 168); ">On Tuesday, February 26, 2013 at 11:07 AM, Daniel Holth wrote:</span></div>
<blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;">
<span><div><div><div dir="ltr">On Tue, Feb 26, 2013 at 11:01 AM, Donald Stufft <span dir="ltr"><<a href="mailto:donald.stufft@gmail.com" target="_blank">donald.stufft@gmail.com</a>></span> wrote:<br><div><div><blockquote type="cite"><div><div>
<div><span style="color:rgb(160,160,168)">On Tuesday, February 26, 2013 at 10:10 AM, Nick Coghlan wrote:</span></div><blockquote type="cite"><div>
<span><div><div><div>Remember, part of the goals of both PEP 386 and PEP 426 is to tighten</div><div>up cases where setuptools is considered too permissive, because it's</div><div>guessing in the face of ambiguity. "Trailing zeroes should be</div>
<div>considered implied" when comparing versions is one such guess.</div></div></div></span></div></blockquote></div><div><div>It goes against the common usage in the Python community.</div><div><br></div><div>* 135869 total releases</div>
<div>* 66528 total releases that have at least 3 version levels (A.B.C)</div><div>* 20244 total releases that have at least 3 version levels where A.B and</div><div> A.B.0 appear to be equivalent[1].</div><div>* 86 total releases using at least 3 version levels where A.B and A.B.0 appear</div>
<div> to be different[2].</div><div><br></div><div>Would break the assumptions made in ~30% of the releases using at least 3</div><div>version levels, or 15% of all releases. Furthermore A.B == A.B.0 being</div><div>equivalent is a matter of opinion with no clear answer. I would be inclined</div>
<div>to say that not breaking it for the 15% of all releases is a greater net</div><div>benefit here then anyones notion of "right" unless there is a clear benefit.</div><div><br></div><div>For what it's worth, the implementation of PEP386 treats them as equal as well,</div>
<div>choosing to pad the shorter one out to whatever the requisite number of 0's</div><div>is required to make the number of components equal.</div><div><br></div><div>On a tangential note PyPI should probably not be allowing you to upload both</div>
<div>a A.B and an A.B.0, or at the very least if we want PyPI to continue allowing</div><div>it then we need to be explicit about how that should be handled in either scheme.</div></div></div></blockquote><div><br></div><div style="">
With "prefix equals" would the following evaluate to true?</div><div style=""><br></div><div style="">1.4 == 1 == 1.3.1</div><div style=""><br></div><div style=""><br></div></div></div></div>
</div></div></span>
</blockquote>
<div>
Not sure if you meant to direct that to me, but with what I'm proposing (e.g. the
</div><div>existing) then no. That would expand out to be:</div><div><br></div><div> 1.4.0 == 1.0.0 == 1.3.1</div><div><br></div><div>which would be false.</div>