Open whart222 opened 8 years ago
The problem here is that conda packages don't have the notion of optional dependencies (see for instance https://github.com/conda/conda/issues/793 and https://github.com/conda/conda/issues/1696). There are a couple of alternatives:
blaze
and blaze_core
already follow this approach) at the cost of increasing the number of packages.As you can see there's no perfect solution here, but setuptools extras
are not perfect either so I guess it's up to us :)
In Pyomo, we treat Pyro4 as an optional dependency that is installed with pyomo.extras, but in CAChemE it is treated as a required dependency for the pyomo package.
I'd like to understand this difference. We treat Pyro4 as an optional dependency since core Pyomo functionality doesn't depend on this package. Additionally, the installation of Pyro (and the other optional dependencies) has proven fragile using PyPI. For example, PyYAML and suds-jurko installations have failed due to external dependencies on their PyPI sites.
But perhaps things are different using conda, and it may make sense to install all/most of pyomo.extras as dependencies when Pyomo is installed with conda.