question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

21.3: Breaking editable installation with `No module named pip` error

See original GitHub issue

Description

Our CI is failing due to version 21.3 release, in the pip wheel subprocess call during installation, with seemingly random packages being the culprit.

E.g.

  subprocess.CalledProcessError: Command '['/opt/hostedtoolcache/Python/3.7.12/x64/bin/python', '-m', 'pip', '--disable-pip-version-check', 'wheel', '--no-deps', '-w', '/tmp/tmpiq0bznxg', '--quiet', 'cryptography<3.5,>=3.4.1']' returned non-zero exit status 1.

Full Log attached below

The specific dependency it fails for seems completely random, in 5 subsequent runs it’s been pathspec, cryptography, tabulate, rdflib and pyasn1.

I can reproduce the issue locally as well with Arch Linux, 21.3 fails, 21.2.4 works. This only happens in editable mode (using -e flag), without it everything install fine.

Expected behavior

Renku Package to be installed without problem

pip version

21.3

Python version

3.7.8

OS

Arch Linux/Github Actions(Ubuntu)

How to Reproduce

  1. clone https://github.com/SwissDataScienceCenter/renku-python
  2. upgrade to pip 21.3
  3. do pip install -e .[all]

Output

$ python -m pip install -e .[all]
/home/user/.pyenv/versions/renku-python/lib/python3.7/site-packages/secretstorage/dhcrypto.py:16: CryptographyDeprecationWarning: int_from_bytes is deprecated, use int.from_bytes instead
  from cryptography.utils import int_from_bytes
/home/user/.pyenv/versions/renku-python/lib/python3.7/site-packages/secretstorage/util.py:25: CryptographyDeprecationWarning: int_from_bytes is deprecated, use int.from_bytes instead
  from cryptography.utils import int_from_bytes
Obtaining file:///home/user/DEV/ETH/renku-python
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build editable: started
  Getting requirements to build editable: finished with status 'done'
  Preparing editable metadata (pyproject.toml): started
  Preparing editable metadata (pyproject.toml): finished with status 'done'
  Build backend does not support editables, falling back to setup.py egg_info.
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'error'
  ERROR: Command errored out with exit status 1:
   command: /home/user/.pyenv/versions/renku-python/bin/python -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/home/user/DEV/ETH/renku-python/setup.py'"'"'; __file__='"'"'/home/user/DEV/ETH/renku-python/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-0jfl5x91
       cwd: /home/user/DEV/ETH/renku-python/
  Complete output (31 lines):
  /home/user/.pyenv/versions/renku-python/bin/python: No module named pip
  Traceback (most recent call last):
    File "/tmp/pip-build-env-gh6wm4a4/overlay/lib/python3.7/site-packages/setuptools/installer.py", line 75, in fetch_build_egg
      subprocess.check_call(cmd)
    File "/home/user/.pyenv/versions/3.7.8/lib/python3.7/subprocess.py", line 363, in check_call
      raise CalledProcessError(retcode, cmd)
  subprocess.CalledProcessError: Command '['/home/user/.pyenv/versions/renku-python/bin/python', '-m', 'pip', '--disable-pip-version-check', 'wheel', '--no-deps', '-w', '/tmp/tmpppr5o_gk', '--quiet', 'zc.relation<1.2,>=1.1']' returned non-zero exit status 1.
  
  The above exception was the direct cause of the following exception:
  
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/home/user/DEV/ETH/renku-python/setup.py", line 266, in <module>
      "Development Status :: 4 - Beta",
    File "/tmp/pip-build-env-gh6wm4a4/overlay/lib/python3.7/site-packages/setuptools/__init__.py", line 152, in setup
      _install_setup_requires(attrs)
    File "/tmp/pip-build-env-gh6wm4a4/overlay/lib/python3.7/site-packages/setuptools/__init__.py", line 147, in _install_setup_requires
      dist.fetch_build_eggs(dist.setup_requires)
    File "/tmp/pip-build-env-gh6wm4a4/overlay/lib/python3.7/site-packages/setuptools/dist.py", line 809, in fetch_build_eggs
      replace_conflicting=True,
    File "/tmp/pip-build-env-gh6wm4a4/overlay/lib/python3.7/site-packages/pkg_resources/__init__.py", line 768, in resolve
      replace_conflicting=replace_conflicting
    File "/tmp/pip-build-env-gh6wm4a4/overlay/lib/python3.7/site-packages/pkg_resources/__init__.py", line 1051, in best_match
      return self.obtain(req, installer)
    File "/tmp/pip-build-env-gh6wm4a4/overlay/lib/python3.7/site-packages/pkg_resources/__init__.py", line 1063, in obtain
      return installer(requirement)
    File "/tmp/pip-build-env-gh6wm4a4/overlay/lib/python3.7/site-packages/setuptools/dist.py", line 877, in fetch_build_egg
      return fetch_build_egg(self, req)
    File "/tmp/pip-build-env-gh6wm4a4/overlay/lib/python3.7/site-packages/setuptools/installer.py", line 77, in fetch_build_egg
      raise DistutilsError(str(e)) from e
  distutils.errors.DistutilsError: Command '['/home/user/.pyenv/versions/renku-python/bin/python', '-m', 'pip', '--disable-pip-version-check', 'wheel', '--no-deps', '-w', '/tmp/tmpppr5o_gk', '--quiet', 'zc.relation<1.2,>=1.1']' returned non-zero exit status 1.
  ----------------------------------------
WARNING: Discarding file:///home/user/DEV/ETH/renku-python. Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

Code of Conduct

Issue Analytics

  • State:closed
  • Created 2 years ago
  • Reactions:19
  • Comments:28 (15 by maintainers)

github_iconTop GitHub Comments

8reactions
laydaycommented, Oct 16, 2021

I guess you could create a tracking issue on your bug tracker and link to the pip issue there to reduce flooding - people shouldn’t be discouraged from adding context to their commits because of how GH does references.

3reactions
uranusjrcommented, Oct 16, 2021

@zklaus @swhmirror @istankovic Please avoid mentioning issues repeatedly from another repository, these messages are spamming the issue.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Why am I getting ImportError: No module named pip ' right ...
1) Go to your paython package and rename "python37._pth" to python37._pth.save · 2) curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py · 3) then run python ...
Read more >
Changelog - pip documentation v22.3.1
When installing projects with a pyproject.toml in editable mode, and the build backend does not support PEP 660, prepare metadata using ...
Read more >
Help testing PEP 660 support in setuptools - Packaging
Hello all, We have been working for some time with the editable installs according to PEP 660 in setuptools, and I think we...
Read more >
[solved]python pip no longer installing packages
edit : tl;dr-- manually removing the pip package 'packaging' from my local pip stuff got it to work again. Last edited by shoelesshunter...
Read more >
pip 1.0
If you've ever used python setup.py develop, you can do something like that with pip install -e ./ – this works with packages...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found