vscode-python: Conda activation is failing
Environment data
- VS Code version: 1.3.1
- Extension version (available under the Extensions sidebar): 2019.1.0
- OS and version: Windows 10
- Python version (& distribution if applicable, e.g. Anaconda): Miniconda 3.6.6 64-bit (‘py36’: conda)
- Type of virtual environment used (N/A | venv | virtualenv | conda | …): conda
- Relevant/affected Python packages and their versions:
Expected behaviour
VSC opens interactive python using active py36 environment
Actual behaviour
- VSC is open with active (‘py36’: conda) environment
- Python: Show Python Interactive window
- Error message:
Jupyter kernel cannot be started from 'Python 3.6.6 64-bit ('py36': conda)'. Using closest match Python 3.6.6 64-bit ('mro': conda) instead.
Steps to reproduce:
- Open VSC in empty directory
- Python: Select Interpreter
- select ‘py36’
- Python: Show Python Interactive window
Logs
Relevant Part from Developer Tools > Console Log:
Python Extension: Python Extension (Error in getActivatedEnvironmentVariables, method:getActivatedEnvironmentVariables):
Error: Command failed:
C:/Users/marek.ozana.XCF/AppData/Local/Continuum/miniconda3/envs/py36/Scripts/activate && conda activate py36 && echo 'e8b39361-0157-4923-80e1-22d70d46dee6' && python C:/Users/marek.ozana.XCF/.vscode/extensions/ms-python.python-2019.1.0/pythonFiles/printEnvVariables.py
Could not find conda environment: py36
You can list all discoverable environments with `conda info --envs`.
at ChildProcess.exithandler (child_process.js:303:12)
at ChildProcess.emit (events.js:182:13)
at maybeClose (internal/child_process.js:961:16)
at Process.ChildProcess._handle.onexit (internal/child_process.js:248:5)
t.log @ console.ts:134
The problem seems to be that process is already in ‘py36’ environment and thus fails when trying to activate py36 again:
C:/Users/marek.ozana.XCF/AppData/Local/Continuum/miniconda3/envs/py36/Scripts/activate && conda activate py36
About this issue
- Original URL
- State: closed
- Created 5 years ago
- Comments: 30
Commits related to this issue
- Don't use activate from inside conda environments In contrast to virtualenv-created environments, conda environments are not activated from the inside. In constrast, the environment activation is don... — committed to xhochy/vscode-python by xhochy 5 years ago
- Don't use activate from inside conda environments In contrast to virtualenv-created environments, conda environments are not activated from the inside. In constrast, the environment activation is don... — committed to xhochy/vscode-python by xhochy 5 years ago
- Don't use activate from inside conda environments In contrast to virtualenv-created environments, conda environments are not activated from the inside. In constrast, the environment activation is don... — committed to xhochy/vscode-python by xhochy 5 years ago
- Don't use activate from inside conda environments (#5516) * Don't use activate from inside conda environments In contrast to virtualenv-created environments, conda environments are not activated f... — committed to microsoft/vscode-python by xhochy 5 years ago
Hi Don,Yes activation of the environment form console works fine.
Comment whether or not this issue is another bug
I think this issue is the same as reported above:
C:/Users/mare.../envs/bug_env/Scripts/activate
conda activate bug_env
See the full log file in the attachment: VSCode-bug_env_log.log
Also if one tries to start python terminal from bug_env one gets familiar error:
and when listing conda environments in this terminal window one gets:
so bug_env is activated and fails to activate itself again.
All of the above works fine in ok_env which differs just by not having conda-build:
I think you can disable the Interactive Editor from the settings:
python.dataScience.enabled
is the key.Don, does my comment above give you all the info you need?