I updated pipenv
to version 2018.10.9 using brew
, and I am getting the following error when I try to run a command:
Error %s while executing command %s name 'WindowsError' is not defined /usr/local/bin/pythonz -c import sys; print(sys.version.split()[0])
Traceback (most recent call last):
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/vistir/misc.py", line 103, in _spawn_subprocess
return subprocess.Popen(cmd, **options)
File "/usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/lib/python3.7/subprocess.py", line 756, in __init__
restore_signals, start_new_session)
File "/usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/lib/python3.7/subprocess.py", line 1499, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: '/usr/local/bin/pythonz': '/usr/local/bin/pythonz'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/bin/pipenv", line 11, in <module>
load_entry_point('pipenv==2018.10.9', 'console_scripts', 'pipenv')()
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 764, in __call__
return self.main(*args, **kwargs)
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 717, in main
rv = self.invoke(ctx)
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 1114, in invoke
return Command.invoke(self, ctx)
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 555, in invoke
return callback(*args, **kwargs)
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/click/decorators.py", line 64, in new_func
return ctx.invoke(f, obj, *args, **kwargs)
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 555, in invoke
return callback(*args, **kwargs)
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/click/decorators.py", line 17, in new_func
return f(get_current_context(), *args, **kwargs)
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/cli/command.py", line 203, in cli
clear=state.clear,
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/core.py", line 561, in ensure_project
pypi_mirror=pypi_mirror,
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/core.py", line 484, in ensure_virtualenv
python = ensure_python(three=three, python=python)
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/core.py", line 397, in ensure_python
path_to_python = find_a_system_python(python)
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/core.py", line 360, in find_a_system_python
python_entry = finder.find_python_version(line)
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/pythonfinder/pythonfinder.py", line 87, in find_python_version
major=major, minor=minor, patch=patch, pre=pre, dev=dev, arch=arch
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/pythonfinder/models/path.py", line 261, in find_python_version
(c for c in sorted(path_filter, key=version_sort, reverse=True)), None
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/pythonfinder/models/path.py", line 258, in <genexpr>
path_filter = filter(None, (sub_finder(p) for p in paths if p is not None))
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/pythonfinder/models/mixins.py", line 106, in find_python_version
py_filter, key=lambda child: child[1].version_sort, reverse=True
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/pythonfinder/models/mixins.py", line 96, in <genexpr>
if child.as_python
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/cached_property.py", line 35, in __get__
value = obj.__dict__[self.func.__name__] = self.func(obj)
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/pythonfinder/models/path.py", line 360, in as_python
self.py_version = PythonVersion.from_path(self.path)
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/pythonfinder/models/python.py", line 152, in from_path
py_version = get_python_version(str(path.path))
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/pythonfinder/utils.py", line 32, in get_python_version
out, _ = vistir.misc.run(version_cmd, block=True, nospin=True)
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/vistir/misc.py", line 236, in run
spinner=sp,
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/vistir/misc.py", line 122, in _create_subprocess
c = _spawn_subprocess(cmd, env=env, block=block, cwd=cwd)
File "/usr/local/Cellar/pipenv/2018.10.9/libexec/lib/python3.7/site-packages/pipenv/vendor/vistir/misc.py", line 104, in _spawn_subprocess
except WindowsError as e:
NameError: name 'WindowsError' is not defined
I am not sure why I am getting this error. It seems I am getting an OSError related to Windows, but I am on macOS High Sierra 10.13.6. It also seems to be an error related to pythonz.
I am having the same issue under:
I get the WindowsError when running pipenv --three
but not pipenv install
.
This will be fixed in the next release, sorry for the trouble!
@techalchemy Do you know of any workarounds until the new version is available?
Yes, wait 20 mins for the release!
@techalchemy Ah cool, thanks! I assumed it would take at least a couple of days.
Still getting this error on 2018.10.13
, running MacOS 10.13.6, for some reason. Tried installing both via brew
and pip
.
$pipenv install
Error %s while executing command %s name 'WindowsError' is not defined /usr/local/bin/pythonz -c import sys; print(sys.version.split()[0])
Traceback (most recent call last):
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/vistir/misc.py", line 103, in _spawn_subprocess
return subprocess.Popen(cmd, **options)
File "/usr/local/Cellar/python/3.6.5/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py", line 709, in __init__
restore_signals, start_new_session)
File "/usr/local/Cellar/python/3.6.5/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py", line 1344, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: '/usr/local/bin/pythonz': '/usr/local/bin/pythonz'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "~/Library/Python/3.6/bin/pipenv", line 11, in <module>
sys.exit(cli())
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/click/core.py", line 764, in __call__
return self.main(*args, **kwargs)
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/click/core.py", line 717, in main
rv = self.invoke(ctx)
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/click/core.py", line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/click/core.py", line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/click/core.py", line 555, in invoke
return callback(*args, **kwargs)
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/click/decorators.py", line 64, in new_func
return ctx.invoke(f, obj, *args, **kwargs)
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/click/core.py", line 555, in invoke
return callback(*args, **kwargs)
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/click/decorators.py", line 17, in new_func
return f(get_current_context(), *args, **kwargs)
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/cli/command.py", line 249, in install
editable_packages=state.installstate.editables,
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/core.py", line 1724, in do_install
pypi_mirror=pypi_mirror,
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/core.py", line 565, in ensure_project
pypi_mirror=pypi_mirror,
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/core.py", line 488, in ensure_virtualenv
python = ensure_python(three=three, python=python)
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/core.py", line 401, in ensure_python
path_to_python = find_a_system_python(python)
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/core.py", line 364, in find_a_system_python
python_entry = finder.find_python_version(line)
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/pythonfinder/pythonfinder.py", line 91, in find_python_version
major=major, minor=minor, patch=patch, pre=pre, dev=dev, arch=arch
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/pythonfinder/models/path.py", line 262, in find_python_version
(c for c in sorted(path_filter, key=version_sort, reverse=True)), None
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/pythonfinder/models/path.py", line 259, in <genexpr>
path_filter = filter(None, (sub_finder(p) for p in paths if p is not None))
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/pythonfinder/models/mixins.py", line 106, in find_python_version
py_filter, key=lambda child: child[1].version_sort, reverse=True
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/pythonfinder/models/mixins.py", line 96, in <genexpr>
if child.as_python
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/cached_property.py", line 35, in __get__
value = obj.__dict__[self.func.__name__] = self.func(obj)
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/pythonfinder/models/path.py", line 364, in as_python
self.py_version = PythonVersion.from_path(self.path)
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/pythonfinder/models/python.py", line 162, in from_path
py_version = get_python_version(str(path.path))
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/pythonfinder/utils.py", line 37, in get_python_version
out, _ = vistir.misc.run(version_cmd, block=True, nospin=True)
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/vistir/misc.py", line 294, in run
combine_stderr=combine_stderr
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/vistir/misc.py", line 125, in _create_subprocess
combine_stderr=combine_stderr)
File "~/Library/Python/3.6/lib/python/site-packages/pipenv/vendor/vistir/misc.py", line 104, in _spawn_subprocess
except WindowsError as e:
NameError: name 'WindowsError' is not defined
md5-0d61cfe55e82c8e40f541de1ee6739a7
$pipenv --version
pipenv, version 2018.10.13
hrm ok, this is still an issue then, thanks for persisting & sorry for that!
@techalchemy No problem, thank you for your help!
Same thing on Ubuntu 18.04 with pipenv installed in a venv with:
pip: 18.1
python: 3.6.5
pipenv: 2018.10.13
Found a hacky workaround:
Modify:
.../site-packages/pipenv/vendor/pythonfinder/utils.py
Change the except clause on line 38 to be broader, e.g. except Exception
For me the fix needs to be in the vistir dependency and relates to https://github.com/sarugaku/vistir/issues/18
The root cause seems to be that when pythonfinder tries to find a Python interpreter for the project, it executes prominent Python executables as it goes. If it hits a file that looks like a Python interpreter, but doesn't execute properly, the vistir dependency it uses for executing processes raises NameError as it tries to reference WindowsError on a non-Windows environment.
A workaround is to remove such files from your PATH. In my case, I had a leftover pythonz somewhere that tried to use Python 3.6 which I had already removed when upgrading to 3.7.
That is a good diagnosis of the problem, but IMHO it's not an optimal solution. Telling the user to go fishing around for rogue pythonz files in their PATH is not something a pipenv user should have to navigate.
For the record, this bit me tonight, too. 馃檨
macOS 10.13.3
Had a hiccup, ran brew upgrade pipenv
(which broke some other things; ended up having to brew upgrade zsh
) and now I'm here... hopefully this is relevant. I think it is?
pipenv --version
pipenv, version 2018.10.13
pipenv --three
Error %s while executing command %s name 'WindowsError' is not defined /usr/local/bin/pythonz -c import sys; print(sys.version.split()[0])
Traceback (most recent call last):
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/vistir/misc.py", line 103, in _spawn_subprocess
return subprocess.Popen(cmd, **options)
File "/usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/lib/python3.7/subprocess.py", line 756, in __init__
restore_signals, start_new_session)
File "/usr/local/Cellar/python/3.7.0/Frameworks/Python.framework/Versions/3.7/lib/python3.7/subprocess.py", line 1499, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: '/usr/local/bin/pythonz': '/usr/local/bin/pythonz'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/bin/pipenv", line 11, in <module>
load_entry_point('pipenv==2018.10.13', 'console_scripts', 'pipenv')()
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 764, in __call__
return self.main(*args, **kwargs)
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 717, in main
rv = self.invoke(ctx)
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 1114, in invoke
return Command.invoke(self, ctx)
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 555, in invoke
return callback(*args, **kwargs)
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/click/decorators.py", line 64, in new_func
return ctx.invoke(f, obj, *args, **kwargs)
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/click/core.py", line 555, in invoke
return callback(*args, **kwargs)
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/click/decorators.py", line 17, in new_func
return f(get_current_context(), *args, **kwargs)
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/cli/command.py", line 203, in cli
clear=state.clear,
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/core.py", line 565, in ensure_project
pypi_mirror=pypi_mirror,
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/core.py", line 510, in ensure_virtualenv
ensure_python(three=three, python=python)
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/core.py", line 401, in ensure_python
path_to_python = find_a_system_python(python)
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/core.py", line 364, in find_a_system_python
python_entry = finder.find_python_version(line)
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/pythonfinder/pythonfinder.py", line 91, in find_python_version
major=major, minor=minor, patch=patch, pre=pre, dev=dev, arch=arch
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/pythonfinder/models/path.py", line 262, in find_python_version
(c for c in sorted(path_filter, key=version_sort, reverse=True)), None
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/pythonfinder/models/path.py", line 259, in <genexpr>
path_filter = filter(None, (sub_finder(p) for p in paths if p is not None))
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/pythonfinder/models/mixins.py", line 106, in find_python_version
py_filter, key=lambda child: child[1].version_sort, reverse=True
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/pythonfinder/models/mixins.py", line 96, in <genexpr>
if child.as_python
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/cached_property.py", line 35, in __get__
value = obj.__dict__[self.func.__name__] = self.func(obj)
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/pythonfinder/models/path.py", line 364, in as_python
self.py_version = PythonVersion.from_path(self.path)
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/pythonfinder/models/python.py", line 162, in from_path
py_version = get_python_version(str(path.path))
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/pythonfinder/utils.py", line 37, in get_python_version
out, _ = vistir.misc.run(version_cmd, block=True, nospin=True)
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/vistir/misc.py", line 294, in run
combine_stderr=combine_stderr
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/vistir/misc.py", line 125, in _create_subprocess
combine_stderr=combine_stderr)
File "/usr/local/Cellar/pipenv/2018.10.13/libexec/lib/python3.7/site-packages/pipenv/vendor/vistir/misc.py", line 104, in _spawn_subprocess
except WindowsError as e:
NameError: name 'WindowsError' is not defined
... I've been using Python for a long time, and had no idea what pythonz
is. Running it directly gives me
pythonz
zsh: /usr/local/bin/pythonz: bad interpreter: /usr/local/opt/python/bin/python2.7: no such file or directory
... but I'm not sure why it's there to begin with, and why I'm suddenly having trouble with it. (I feel like I should blame brew
somehow, at the moment).
fix will be out shortly, we are aware of the issue
thanks @techalchemy!
for everyone else, you can use full path for now to get around the error.
some examples:
pipenv install --python=python
pipenv install --python=/usr/local/bin/python3
pipenv install --python=$HOME/.asdf/installs/python/3.6.7/bin/python
pipenv install --python=$HOME/.pyenv/versions/3.7.0/bin/python
I was having this exception because I had a python3.7
executable script in my PATH that was actually running python through a Docker container (docker run ...
). Removing/renaming the script solved the problem.
Sorry for the trouble, we are finalizing some merges and then cutting the release
Any updates for this? I'm also having the same issue.
update: it seems to work if I run it pipenv install --python=python --dev
(so with --python=python
)
Most helpful comment
Same thing on Ubuntu 18.04 with pipenv installed in a venv with:
pip: 18.1
python: 3.6.5
pipenv: 2018.10.13
Found a hacky workaround:
Modify:
.../site-packages/pipenv/vendor/pythonfinder/utils.py
Change the except clause on line 38 to be broader, e.g.
except Exception