pipenv: pipenv cannot install pyautogui module, but pip can

I tried to install pyautogui in Python 3.6 using “pipenv install” and received the below error message. I proceeded to enter the bash shell, and used pip3 to install the module to my virtualenv without issue. I’m not sure why pip would work and pipenv wouldn’t.

“pipenv run pip3 install pyautogui” installs the module as well.

Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.6/bin/pipenv", line 11, in <module>
    load_entry_point('pipenv==7.6.3', 'console_scripts', 'pipenv')()
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pipenv/vendor/click/core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pipenv/vendor/click/core.py", line 697, in main
    rv = self.invoke(ctx)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pipenv/vendor/click/core.py", line 1066, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pipenv/vendor/click/core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pipenv/vendor/click/core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pipenv/cli.py", line 1682, in install
    do_lock(system=system, pre=pre)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pipenv/cli.py", line 1044, in do_lock
    pre=pre
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pipenv/utils.py", line 468, in resolve_deps
    resolved_tree.update(resolver.resolve())
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/piptools/resolver.py", line 107, in resolve
    has_changed, best_matches = self._resolve_one_round()
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/piptools/resolver.py", line 195, in _resolve_one_round
    for dep in self._iter_dependencies(best_match):
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/piptools/resolver.py", line 274, in _iter_dependencies
    dependencies = self.repository.get_dependencies(ireq)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/piptools/repositories/pypi.py", line 145, in get_dependencies
    self._dependencies_cache[ireq] = reqset._prepare_file(self.finder, ireq)
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pipenv/patched/pip/req/req_set.py", line 634, in _prepare_file
    abstract_dist.prep_for_dist()
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pipenv/patched/pip/req/req_set.py", line 129, in prep_for_dist
    self.req_to_install.run_egg_info()
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pipenv/patched/pip/req/req_install.py", line 439, in run_egg_info
    command_desc='python setup.py egg_info')
  File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/pipenv/patched/pip/utils/__init__.py", line 707, in call_subprocess
    % (command_desc, proc.returncode, cwd))
pip.exceptions.InstallationError: Command "python setup.py egg_info" failed with error code 1 in /var/folders/2c/yc22p1pn5f1_s45vw6czf_l80000gn/T/tmpebjrqo_ybuild/pyautogui/

About this issue

  • Original URL
  • State: closed
  • Created 7 years ago
  • Comments: 16 (14 by maintainers)

Most upvoted comments

The issue is hard to explain, but pip-tools is running ‘setup.py egg_info’ against your dependency, which is likely using a different version of python (the one you installed pipenv with) than the one you’re using in your virtualenv).

This is causing your setup.py egg_info call to fail, because this package has a poorly written setup.py file that either isn’t compatible with 2/3 or has some other weirdness going on.