[Distutils] RFC: Updating PEP 345

Jim Fulton jim at zope.com
Fri Apr 10 14:30:33 CEST 2009


On Apr 9, 2009, at 6:40 PM, Tres Seaver wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Jim Fulton wrote:
>> On Apr 9, 2009, at 12:55 PM, Tres Seaver wrote:
>> ...
>>> I have backed off on the notion of overloading 'Requires:' /
>>> 'Provides:'
>>> / 'Obsoletes:', following Jim's notion of deprecating them in  
>>> favor of
>>> new fields.  I named them 'Requires-Dist:', 'Provides-Dist:', and
>>> 'Obsoletes-Dist'.
>>>
>>> "Stock" distutils should probably spell the arguments to
>>> distutils.core.setup predictably:  'requires_dist', 'provides_dist',
>>> 'obsoletes_dist'.  setuptools can treat 'install_requires' as an
>>> undeprecated alias for 'requires_dist'.
>>
>>
>> What is the rational for this?  I'd strongly prefer the "requires"
>> argument name to be compatible with setuptools.  Otherwise, I think
>> we'll introduce needless confusion.
>
> I'm aiming for self-consistency within the 'PKG-INFO' field names:
>
> - 'Requires'
> - 'Requires-Python'
> - 'Requires-External'
>
> The 'Obsoletes' and 'Provides' fields also need
> distutils-project-oriented versions, so picking a suffix ('-Dist')  
> which
> matched for them seemed cleanest.
>
> Add that to the fact that setuptools has no way (yet) to spell
> 'provides' or 'obsoletes', and it seemed to me clearer to just make
> setuptools current argument an alias for the "consistent" version to  
> be
> landed in distutils.


I get that. In fact, I already got that. :) I think backward  
compatibility with existing wide usage is more important and not  
incompatible.

So then I suggest we change the field and option names to (adjusting  
capitalization as necessary): install_requires, install_provides, and  
install_obsoletes.

I'm a very strong -1 to requires_dist.

Jim

--
Jim Fulton
Zope Corporation




More information about the Distutils-SIG mailing list