[Distutils] Distribution format for Python3 libraries

PJ Eby pje at telecommunity.com
Tue Nov 19 18:33:32 CET 2013


On Tue, Nov 19, 2013 at 6:22 AM, Nick Coghlan <ncoghlan at gmail.com> wrote:
> On 19 November 2013 15:09, PJ Eby <pje at telecommunity.com> wrote:
>> On Sun, Nov 17, 2013 at 8:44 AM, Nick Coghlan <ncoghlan at gmail.com> wrote:
>>> More accurately, it appears setuptools *does* support PEP 345 style
>>> environment markers, it just isn't documented at
>>> http://pythonhosted.org/setuptools/setuptools.html#declaring-dependencies
>>> *sigh*
>>
>> That's because it's technically an experimental feature I hacked into
>> 0.6c12 development shortly before the distribute merge in order to
>> handle setuptools' own requirements for SSL, so that setuptools could
>> ship just one platform-independent egg and still have
>> platform-specific dependencies.  ;-)
>>
>> I think Jason et al may have since upgraded it to a supported feature,
>> but last I looked I think there may have still been issues with Jython
>> support for the feature.
>>
>> So, the lack of documentation may still be a feature rather than a bug ATM.  ;-)
>
> A fair point :)
>
> Regardless, it highlights the fact I need to ensure PEP 426 preserves
> the legacy spellings for the markers that have dots in their names in
> metadata 1.2 (https://bitbucket.org/pypa/pypi-metadata-formats/issue/12).

Eh?  I implemented PEP 426 (draft-at-the-time) markers in the feature
I mentioned above.

Hm.  Actually, looking over it now, I see the real reason it's
experimental: it was implemented based on consensus-in-progress for
PEP 426, so not a finalized PEP.  It also sort-of handles PEP 345.
And the Jython fallback, IIRC, was maybe only doing PEP 345.  (And
setuptools itself only needed the Python version and platform name.)

So it's actually a bit of a mess -- which is why it wasn't documented,
in order to avoid people forcing the new PEP's hand with another de
facto standard.  I just figured it would get us most of the way there
and when the PEP dust settled, the tests and code could be tweaked a
bit to match, then documented with reference to the PEP.


More information about the Distutils-SIG mailing list