2017-09-12 2 views
1

J'essaye d'installer un paquet avec pip à l'intérieur d'un conda env. J'ai un fichier environment.yml comme suit:pip et conda environment.yml: type (s) d'opérande non supporté (s) pour +: 'NoneType' et 'list'

name: test-env 

dependencies: 
    - pip: 
     - "git+https://github.com/choldgraf/download" 

Mais quand je lance conda env update --file environment.yml, je reçois:

Using Anaconda API: https://api.anaconda.org 
Fetching package metadata ............. 
Solving package specifications: An unexpected error has occurred. 
Please consider posting the following information to the 
conda GitHub issue tracker at: 

# Here some configuration that I omit  

Traceback (most recent call last): 
    File "/home/mathurin/anaconda3/lib/python3.5/site-packages/conda/exceptions.py", line 634, in conda_exception_handler 
    return_value = func(*args, **kwargs) 
    File "/home/mathurin/anaconda3/lib/python3.5/site-packages/conda_env/cli/main_update.py", line 106, in execute 
    installer.install(prefix, specs, args, env, prune=args.prune) 
    File "/home/mathurin/anaconda3/lib/python3.5/site-packages/conda_env/installers/pip.py", line 8, in install 
    pip_cmd = pip_args(prefix) + ['install', ] + specs 
TypeError: unsupported operand type(s) for +: 'NoneType' and 'list' 

Cependant, juste en tapant pip install git+https://github.com/choldgraf/download dans ma console bash fonctionne très bien. Qu'est-ce que je fais mal ?

EDIT: ma première pensée était de mettre à jour la conda. Je suis maintenant à la version 4.3.23, et en essayant de conda update conda rendements:

# All requested packages already installed. 
# packages in environment at ~/anaconda3: 
# 
conda      4.3.23     py35_0 conda-forge 
+0

Quelle version de 'conda' avez-vous? – darthbith

+0

Et si vous mettez à jour la conda? La version que j'ai est 4.3.25 – darthbith

+1

Ah, vous avez installé 'conda-forge'. Si vous voulez mettre à jour cela, vous pouvez taper 'conda install conda = 4.3.25' et voir si cela résout le problème, bien qu'il ne le soit pas ... – darthbith

Répondre

0

J'ai eu le même problème. J'ai trouvé une solution. Vous devez ajouter au moins une dépendance à votre configuration (je ne suis pas sûr si cela doit être pip). Dans ma configuration, j'ai ajouté pip=9.0.1=py35_1

name: myenv 
channels: 
- defaults 
dependencies: 
- pip=9.0.1=py35_1 
- pip: 
    - tqdm==4.19.5 

Je pense donc que dans votre cas, il serait quelque chose comme:

name: test-env 
dependencies: 
- pip=9.0.1=py35_1 
- pip: 
    - "git+https://github.com/choldgraf/download"