I have found that running
pip install fbprophet --target=/tmp/foo --no-cache-dir
gives the following error: ImportError: No module named pystan
However if I remove either --target
or --no-cache-dir
options then it installs successfully. i.e. both of the following commands are successful:
pip install fbprophet --no-cache-dir
pip install fbprophet --target=/tmp/foo
Does anybody know why that's the case?
I'm sure the problem is neither in --target
nor in --no-cache-dir
. I tried both command in transient empty virtual environments (recreating a venv after every command) and got the error with pip install fbprophet --target=/tmp/foo
.
I believe the problem is in fbprophet's setup.py
: it imports pystan during build process without checking that it's available or installing it. I think it could be fixed by copying or moving pystan
from requirements.txt to setup_requires
.
I suspect you didn't get the problem because after pip install fbprophet --no-cache-dir
you have pystan
installed globally. Remove everything installed with the 1st command and retry the second one. Or try them in new empty virtual environments.
Send a pull request to fix the problem.
I also think you can install in 2 steps:
pip install --target=/tmp/foo --no-cache-dir pystan
PYTHONPATH=/tmp/foo pip install --target=/tmp/foo --no-cache-dir fbprophet