I have a setup.py like this:

   [...]
   extras_require = {'foo': 'pkginfo'},
   [...]
   entry_points = {'console_scripts': [
     'bar=myapp.bar:main',
     'foo=myapp.foo:main [foo]',
   ]}
   [...]

When I do a 'python setup.py install', the package 'pkginfo' is *not* installed as expected. However, the script 'foo' *is* installed. This is somewhat ironic .. because `foo' as per the definition depends on the 'foo' feature; yet installing 'myapp' (without 'foo' feature) installs the script 'foo'.

1) What is the rationale behind this behavior? setuptools documentation reads: "[...] if Project A includes a "rst2pdf" script, it might declare it like this, so that the "PDF" requirements are only resolved if the "rst2pdf" script is run". Why install a script if the user installed a distribution without a particular feature that this script depends on?

2) Is there a workaround to tell setuptools *not* to install scripts depending on features not asked for?

-srid
_______________________________________________
Distutils-SIG maillist  -  [email protected]
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to