-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Jim Fulton wrote: > 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.
I think we need to distinguish the spelling of the arguments passed to setup() from the fields written into PKG-INFO. At the moment, there is a very widespread usage of 'install_requires' among setuptools-based packages. How that argument maps onto PKG-INFO fields (which is what PEP 345 is really about) is open to some debate. I think consistency *within* PKG-INFO fieldnames is more important than consistency between setup arguments and the corresponding fieldnames: for instance, distutils.core.setup already defiens a 'url' argument, which maps onto 'Homepage-URL' in PKG-INFO. We could use the names you proposed for arguments to 'setup()', and still use the names I proposed for PKG-INFO. There is one more new argument to setup() we should consider, which might be spelled 'build_requires', and which would map onto the 'Requires-External' PKG-INFO field. Tres. - -- =================================================================== Tres Seaver +1 540-429-0999 tsea...@palladion.com Palladion Software "Excellence by Design" http://palladion.com -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFJ30dR+gerLs4ltQ4RAhYHAKDY971Z0WOVGWMWUaGML42ByTNguwCfb5gX a6/EZb+J/4T+XgtMBSoCgLs= =rhm+ -----END PGP SIGNATURE----- _______________________________________________ Distutils-SIG maillist - Distutils-SIG@python.org http://mail.python.org/mailman/listinfo/distutils-sig