I’ve read the conda-forge documentation about depending on matplotlib
vs matplotlib-base
that states:
matplotlib
onconda-forge
comes in two parts. The core library is inmatplotlib-base
. The actualmatplotlib
package is this core library pluspyqt
. Most, if not all, packages that have dependence at runtime onmatplotlib
should list this dependence asmatplotlib-base
unless they explicitly needpyqt
. The idea is that a user installingmatplotlib
explicitly would get a full featured installation withpyqt
. However,pyqt
is a rather large package, so not requiring it indirectly is better for performance. Note that you may need to include ayum_requirements.txt
file in your recipe with
I don’t feel like this helped me understand when to depend on matplotlib
instead of matplotlib-base
. That is: how do you know when you explicitly need pyqt
?
If a user does conda install -n clean-environment -c conda-forge mypackage
and the entire dependency tree for mypackage
only depends on matplotlib-base
(i.e. pyqt
is not installed), will users of mypackage
still be able to use matplotlib?