-
Notifications
You must be signed in to change notification settings - Fork 416
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
build.py passes invalid arguments to subprocess.Popen #68
Comments
Are you in Python 3? |
My root environment is python 2.7-based (full anaconda, i.e. not miniconda). This bug is reproducible with either value of %CONDA_PY% (33 and 27). |
Here is a simple test case: >>> import subprocess
>>> subprocess.Popen(["cmd.exe"], env={u"TEST": ""})
File "C:\Anaconda\envs\py27\lib\subprocess.py", line 957, in _execute_child
startupinfo)
TypeError: environment can only contain strings
>>> subprocess.Popen(["cmd.exe"], env={"TEST": ""})
<subprocess.Popen object at 0x0000000002A37748> Note that this is an issue on Python 2 only, because in Python 3 |
The important thing is the version of Python that conda itself is running in. Python 3 has no "unicode strings". |
I guess an easy fix would be to call |
There is a similar problem with "conda skeleton pypi" for 2.7 on win-64.
|
This should be fixed in the latest version of conda-build. |
Yes, thanks. I was using 1.3.1. Perhaps worth including this update in the anaconda package? I updated anaconda to 2.0.1 yesterday. |
Hi there, thank you for your contribution! This issue has been automatically locked because it has not had recent activity after being closed. Please open a new issue if needed. Thanks! |
Since I upgraded to the latest version of conda (3.2.1) and conda-build (1.3.0), the following commands fail:
The problem is that
conda_build/conda.py
passes anenv
argument tosubprocess.Popen
, containing entries of invalid data types (e.g. unicode strings). Full stack trace:The text was updated successfully, but these errors were encountered: