At 08:19 PM 10/2/2005 -0500, Matthew Scott wrote:
It does beg the question though, what is the intended use case of 'Feature' if features cannot be selected when installing using easy_install?
"Features" predated even the whisper of a concept of Python eggs by at least 8-10 months, and the idea of having easy_install by about a year and a half. So, they weren't designed together. Features were originally conceived as a way of trimming down mega-distributions like PEAK and especially Zope 3. You'll notice that setuptools' documentation doesn't mention them at all, though, because eggs are more useful. Currently, I'm only using "features" for a few of my packages, mostly to control building of the associated optional C code. However, that feature could be handled using an "optional" extensions ala mxSetup. So, I'd probably say that the "features" facility is kind of deprecated, especially since it has a few quirks that don't work so well. For example, if you build without the feature, and then run "install" or something, the package doesn't "stay configured" for the options you gave it previously. So, it doesn't really work all that well and will probably die out of setuptools as soon as I have a chance to rework my packages that use it. Certainly, I'd like to know if anyone else has found productive uses for it. If there are any, I'd consider keeping it in, but it seems to me like what's really needed is a "configure" command and a way to write the configuration to a file that then is used by subsequent runs to ensure consistency.