<div><span style="color: rgb(160, 160, 168); ">On Tuesday, February 19, 2013 at 3:25 PM, Paul Moore wrote:</span></div>
                <blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;">
                    <span><div><div><div>On 19 February 2013 13:40, Nick Coghlan <<a href="mailto:ncoghlan@gmail.com">ncoghlan@gmail.com</a>> wrote:</div><blockquote type="cite"><div><blockquote type="cite"><div><div>If a tools wants to support metadata 2.0, it has to support all</div><div>the complicated stuff as well, i.e. handle the requires fields,</div><div>the environment markers and version comparisons/sorting.</div></div></blockquote><div><br></div><div>Which is what distutils2 can be used for now, and what distlib will</div><div>provide without the unwanted build system infrastructure in</div><div>distutils2.</div></div></blockquote><div><br></div><div>One particular item in Metadata 2.0 which needs to be addressed is</div><div>requirements specifiers, as used in (for example) Requires-Dist. These</div><div>take forms like "DistName (>= ver)". There are a number of potential</div><div>issues here:</div><div><br></div><div>1. This differs from the pkg_resources format (which omits the</div><div>parentheses). Having 2 subtly different formats is not a good idea in</div><div>the long term. At the moment, pkg_resources format is used in pip</div><div>requirements (on the command line and in requirement files) as well as</div><div>in setuptools/distribute and possibly elsewhere.</div><div>2. There is currently no code that I am aware of that implements this</div><div>spec. I don't believe distlib does (yet - give Vinay 5 minutes and who</div><div>knows? :-)), pkg_resources as I said implements a different format,</div><div>and distutils2, apart from being a big dependency to cover just this</div><div>point, only matches the version (not the project name) and presumably</div><div>does so using the distutils2 version ordering (which is incompatible</div><div>with Metadata 2.0).</div></div></div></span></blockquote><div>It should be alongside the version stuff, atleast it was in distutils2. </div><blockquote type="cite" style="border-left-style:solid;border-width:1px;margin-left:0px;padding-left:10px;"><span><div><div><div>3. The format is fiddly to parse and process - nobody is likely to</div><div>implement it for themselves without a library that does it (especially</div><div>not when using pkg_resources is so easy).</div><div><br></div><div>The PEP needs a rationale as to why the pkg_resources format wasn't</div><div>used, and should suggest a migration path for projects which currently</div><div>use the pkg_resources style (such as pip's requirements files).</div><div><br></div><div>Paul</div><div>_______________________________________________</div><div>Python-Dev mailing list</div><div><a href="mailto:Python-Dev@python.org">Python-Dev@python.org</a></div><div><a href="http://mail.python.org/mailman/listinfo/python-dev">http://mail.python.org/mailman/listinfo/python-dev</a></div><div>Unsubscribe: <a href="http://mail.python.org/mailman/options/python-dev/donald.stufft%40gmail.com">http://mail.python.org/mailman/options/python-dev/donald.stufft%40gmail.com</a></div></div></div></span>
                 
                 
                 
                 
                </blockquote>
                 
                <div>
                    <br>
                </div>