Closed daxpryce closed 3 years ago
An argument can be made that since this is an easy trap to fall into, we should do something to alert our users that their environment isn't what we (or possibly they) expected.
Another argument could be that we should create an FAQ wiki page about problems just like this so we can tell people how to fix them going forward.
I'm not convinced we want a coding solution, but I wanted to spur a discussion about this.
This unfortunately is a common problem in Python - for instance, pip install sklearn doesn't work, which I always try to do and remember right after that it's scikit-learn
. So I agree that there is no code fix we should do, but more than happy to have a FAQ page (especially for install issues) if someone wants to make one.
Agreed, some problems aren't super easy to fix and I would assert shouldn't be fixed via code.
For instance, one of the users in our office tried to install everything with a brand new Python 3.9 on windows. In theory most of our stuff should work, but llvmlite
that numba
uses doesn't have a 3.9 wheel. Then it jumped to trying to use sdist (which is fine!), but wouldn't build, because building native libraries for Python in windows is always just a bit more special than doing it on a unix variant (admittedly, I may be more negative on this than others because I know exactly what to do in Ubuntu and am reasonably confident in OSX, but in Windows I just have a sort of golden-retriever-doing-science look on my face when anything comes up).
So... that's a long winded way of saying "I should just create the FAQ page"
FAQ page created, entry added.
Apparently there are multiple libraries that use
umap
as their namespace. If the user hasumap
installed instead of our requiredumap-learn
, environments can have unexpected results.The actual fix for this is to
pip uninstall umap umap-learn && pip install umap-learn
to purge umap from your environment.An argument can be made that since this is an easy trap to fall into, we should do something to alert our users that their environment isn't what we (or possibly they) expected.
Another argument could be that we should create an FAQ wiki page about problems just like this so we can tell people how to fix them going forward.
I'm not convinced we want a coding solution, but I wanted to spur a discussion about this.
Expected Behavior
import graspologic
should succeedActual Behavior
import graspologic
fails whenumap
is installed instead ofumap-learn
.Full Traceback
@alyakin314 was the one who found this and I'm sure he has some thoughts on which direction we should go with this.