At 02:27 AM 7/13/2005 -0500, Ian Bicking wrote:
I can't see any way to get extras_require to be installed, unless some other package indicates an extra feature in the package that needs to be supported.
For example, if you want HTTP support in Paste, you can install WSGIUtils. But this isn't required. How can I get WSGIUtils installed?
Assuming the "extra" in Paste is "HTTP", you would use:
Even if Paste itself is already installed, this will ensure that anything in extras_require['HTTP'] gets installed too.
Or, more specifically, there's a bunch of examples distributed in the Paste source distribution; these examples require lots of extra software, even if Paste doesn't. How can I easily get all the examples working?
Define an "examples" extra, then use:
Note, by the way, that if the examples need the HTTP extra, then you can specify that like this:
setup( ... extras_require = dict( HTTP = ['WSGIUtils'], examples = ['Paste[HTTP]', ...other stuff here...], ) )
That is, it's okay to have cyclical dependencies; the dependency resolution mechanism is smart enough to figure out what to do.