Thanks for your work on pipenv!
I have some question as I'm struggling to understand if I can use pipenv in my workflow. I am a conda user and I am pretty familiar with conda environments but I have rarely used virtualenvs.
Can pipenv be used together within a conda/anaconda installation?
I tried to install pipenv but I get an error about virtualenvs:
â ‹Using base prefix '/Users/anto/miniconda3'
New python executable in /Users/anto/.local/share/virtualenvs/phconvert-LTUxcv-Y/bin/python
ERROR: The executable /Users/anto/.local/share/virtualenvs/phconvert-LTUxcv-Y/bin/python is not functioning
ERROR: It thinks sys.prefix is '/Users/anto/.local/share/virtualenvs' (should be '/Users/anto/.local/share/virtualenvs/phconvert-LTUxcv-Y')
ERROR: virtualenv is not compatible with this system or executable
EDIT: typos
use pipenv outside of conda, but you can use it to create virtualenvs with an anaconda python.
For example:
$ pipenv --python path/to/anaconda/bin/python
Can confirm that this works.
@kennethreitz, do I need to install pipenv using another python, then point it to the conda installed one?
yes
This issue is related to #288
I have been seeing some weird issues with pipenv and conda. I am posting this issue here, but it may be an issue for elsewhere, but your help in working this out is greatly appreciated.
What i am seeing is some dependency issues where it seems that although i have specified my python3 path one of my packages wants to use my anaconda path, even through its been installed via pipenv install
Does anyone know how to fix this? Answers much appreciated
I am wanting to build a flask app using zappa to put it on AWS. So i am using pipenv to create a new python3 env that i specify then i install the rele
source activate fastai
pipenv --python /usr/local/bin/python3
pipenv shell
check the env
pipenv --venv  ✔  2744  10:06:53
/Users/me/.local/share/virtualenvs/Tpipenv-kxwN0b39
install zappa and flask
pipenv install zappa and flask
check zappa
zappa update  ✔  2738  10:02:59
(botocore 1.8.36 (/Users/me/Library/anaconda3/envs/fastai/lib/python3.6/site-packages), Requirement.parse('botocore<1.10.0,>=1.9.14'), {'boto3'})
Calling update for stage dev..
You can see that for some reason it wants to use the python that is associated with anaconda (i think). The pipenv graph looks ok (??)
pipenv graph  ✔  2730  09:57:05
Flask==0.12.2
- click [required: >=2.0, installed: 6.7]
- itsdangerous [required: >=0.21, installed: 0.24]
- Jinja2 [required: >=2.4, installed: 2.10]
- MarkupSafe [required: >=0.23, installed: 1.0]
- Werkzeug [required: >=0.7, installed: 0.12]
Pillow==5.0.0
pybase64==0.2.1
- parameterized [required: >=0.6.1, installed: 0.6.1]
- six [required: >=1.10.0, installed: 1.11.0]
zappa==0.45.1
- argcomplete [required: ==1.9.2, installed: 1.9.2]
- base58 [required: ==0.2.4, installed: 0.2.4]
- boto3 [required: >=1.4.7, installed: 1.6.16]
- botocore [required: >=1.9.16,<1.10.0, installed: 1.9.16]
- docutils [required: >=0.10, installed: 0.14]
- jmespath [required: >=0.7.1,<1.0.0, installed: 0.9.3]
- python-dateutil [required: >=2.1,<2.7.0, installed: 2.6.1]
- six [required: >=1.5, installed: 1.11.0]
- jmespath [required: >=0.7.1,<1.0.0, installed: 0.9.3]
- s3transfer [required: >=0.1.10,<0.2.0, installed: 0.1.13]
- botocore [required: >=1.3.0,<2.0.0, installed: 1.9.16]
- docutils [required: >=0.10, installed: 0.14]
- jmespath [required: >=0.7.1,<1.0.0, installed: 0.9.3]
- python-dateutil [required: >=2.1,<2.7.0, installed: 2.6.1]
- six [required: >=1.5, installed: 1.11.0]
- botocore [required: >=1.7.19, installed: 1.9.16]
- docutils [required: >=0.10, installed: 0.14]
- jmespath [required: >=0.7.1,<1.0.0, installed: 0.9.3]
- python-dateutil [required: >=2.1,<2.7.0, installed: 2.6.1]
- six [required: >=1.5, installed: 1.11.0]
- docutils [required: >=0.12, installed: 0.14]
- durationpy [required: ==0.5, installed: 0.5]
- future [required: ==0.16.0, installed: 0.16.0]
- hjson [required: ==3.0.1, installed: 3.0.1]
- jmespath [required: ==0.9.3, installed: 0.9.3]
- kappa [required: ==0.6.0, installed: 0.6.0]
- boto3 [required: >=1.2.3, installed: 1.6.16]
- botocore [required: >=1.9.16,<1.10.0, installed: 1.9.16]
- docutils [required: >=0.10, installed: 0.14]
- jmespath [required: >=0.7.1,<1.0.0, installed: 0.9.3]
- python-dateutil [required: >=2.1,<2.7.0, installed: 2.6.1]
- six [required: >=1.5, installed: 1.11.0]
- jmespath [required: >=0.7.1,<1.0.0, installed: 0.9.3]
- s3transfer [required: >=0.1.10,<0.2.0, installed: 0.1.13]
- botocore [required: >=1.3.0,<2.0.0, installed: 1.9.16]
- docutils [required: >=0.10, installed: 0.14]
- jmespath [required: >=0.7.1,<1.0.0, installed: 0.9.3]
- python-dateutil [required: >=2.1,<2.7.0, installed: 2.6.1]
- six [required: >=1.5, installed: 1.11.0]
- click [required: >=5.1, installed: 6.7]
- placebo [required: >=0.8.1, installed: 0.8.1]
- PyYAML [required: >=3.11, installed: 3.12]
- lambda-packages [required: ==0.19.0, installed: 0.19.0]
- python-dateutil [required: ==2.6.1, installed: 2.6.1]
- six [required: >=1.5, installed: 1.11.0]
- python-slugify [required: ==1.2.4, installed: 1.2.4]
- Unidecode [required: >=0.04.16, installed: 1.0.22]
- PyYAML [required: ==3.12, installed: 3.12]
- requests [required: >=2.10.0, installed: 2.18.4]
- certifi [required: >=2017.4.17, installed: 2018.1.18]
- chardet [required: >=3.0.2,<3.1.0, installed: 3.0.4]
- idna [required: <2.7,>=2.5, installed: 2.6]
- urllib3 [required: <1.23,>=1.21.1, installed: 1.22]
- six [required: >=1.11.0, installed: 1.11.0]
- toml [required: >=0.9.3, installed: 0.9.4]
- tqdm [required: ==4.19.1, installed: 4.19.1]
- troposphere [required: >=1.9.0, installed: 2.2.1]
- cfn-flip [required: >=0.2.5, installed: 1.0.3]
- Click [required: Any, installed: 6.7]
- PyYAML [required: Any, installed: 3.12]
- six [required: Any, installed: 1.11.0]
- Werkzeug [required: ==0.12, installed: 0.12]
- wheel [required: >=0.30.0, installed: 0.30.0]
- wsgi-request-logger [required: ==0.4.6, installed: 0.4.6]
Most helpful comment
use pipenv outside of conda, but you can use it to create virtualenvs with an anaconda python.
For example: