Skip to content
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

Latest pip master breaks tox #1448

Closed
atugushev opened this issue Oct 22, 2019 · 4 comments
Closed

Latest pip master breaks tox #1448

atugushev opened this issue Oct 22, 2019 · 4 comments
Labels
bug:normal affects many people or has quite an impact

Comments

@atugushev
Copy link

atugushev commented Oct 22, 2019

Tested with tox==3.14.0 and pypa/pip@c729a84. Related to pypa/pip#7002.

Reproducer

$ cd $(mktemp -d)

$ cat setup.py
from setuptools import setup
setup()

$ cat tox.ini
[tox]
envlist = py37
[testenv]
deps = -e git+https://github.com/pypa/pip.git@ c729a84b4884511912f459f3e340367c2872f495#egg=pip
commands = pip --version

$ tox -rvv
using tox.ini: /Users/albert/Projects/test-package/tox.ini (pid 26185)
  removing /Users/albert/Projects/test-package/.tox/log
using tox-3.14.0 from /usr/local/lib/python2.7/site-packages/tox/__init__.pyc (pid 26185)
GLOB start: packaging 
GLOB sdist-make: /Users/albert/Projects/test-package/setup.py
  removing /Users/albert/Projects/test-package/.tox/dist
[26186] /Users/albert/Projects/test-package$ /usr/local/opt/python@2/bin/python2.7 setup.py sdist --formats=zip --dist-dir .tox/dist >.tox/log/GLOB-0.log
running sdist
running egg_info
writing requirements to atugushev_testpackage.egg-info/requires.txt
writing atugushev_testpackage.egg-info/PKG-INFO
writing top-level names to atugushev_testpackage.egg-info/top_level.txt
writing dependency_links to atugushev_testpackage.egg-info/dependency_links.txt
reading manifest file 'atugushev_testpackage.egg-info/SOURCES.txt'
writing manifest file 'atugushev_testpackage.egg-info/SOURCES.txt'
running check
creating atugushev-testpackage-0.1.12
creating atugushev-testpackage-0.1.12/atugushev_testpackage.egg-info
creating atugushev-testpackage-0.1.12/testpackage
copying files to atugushev-testpackage-0.1.12...
copying README.md -> atugushev-testpackage-0.1.12
copying setup.py -> atugushev-testpackage-0.1.12
copying atugushev_testpackage.egg-info/PKG-INFO -> atugushev-testpackage-0.1.12/atugushev_testpackage.egg-info
copying atugushev_testpackage.egg-info/SOURCES.txt -> atugushev-testpackage-0.1.12/atugushev_testpackage.egg-info
copying atugushev_testpackage.egg-info/dependency_links.txt -> atugushev-testpackage-0.1.12/atugushev_testpackage.egg-info
copying atugushev_testpackage.egg-info/not-zip-safe -> atugushev-testpackage-0.1.12/atugushev_testpackage.egg-info
copying atugushev_testpackage.egg-info/requires.txt -> atugushev-testpackage-0.1.12/atugushev_testpackage.egg-info
copying atugushev_testpackage.egg-info/top_level.txt -> atugushev-testpackage-0.1.12/atugushev_testpackage.egg-info
copying testpackage/__init__.py -> atugushev-testpackage-0.1.12/testpackage
Writing atugushev-testpackage-0.1.12/setup.cfg
creating '.tox/dist/atugushev-testpackage-0.1.12.zip' and adding 'atugushev-testpackage-0.1.12' to it
adding 'atugushev-testpackage-0.1.12/PKG-INFO'
adding 'atugushev-testpackage-0.1.12/README.md'
adding 'atugushev-testpackage-0.1.12/setup.py'
adding 'atugushev-testpackage-0.1.12/setup.cfg'
adding 'atugushev-testpackage-0.1.12/atugushev_testpackage.egg-info/PKG-INFO'
adding 'atugushev-testpackage-0.1.12/atugushev_testpackage.egg-info/not-zip-safe'
adding 'atugushev-testpackage-0.1.12/atugushev_testpackage.egg-info/SOURCES.txt'
adding 'atugushev-testpackage-0.1.12/atugushev_testpackage.egg-info/requires.txt'
adding 'atugushev-testpackage-0.1.12/atugushev_testpackage.egg-info/top_level.txt'
adding 'atugushev-testpackage-0.1.12/atugushev_testpackage.egg-info/dependency_links.txt'
adding 'atugushev-testpackage-0.1.12/testpackage/__init__.py'
removing 'atugushev-testpackage-0.1.12' (and everything under it)

GLOB finish: packaging  after 0.32 seconds
copying new sdistfile to '/Users/albert/.tox/distshare/atugushev-testpackage-0.1.12.zip'
package .tmp/package/1/atugushev-testpackage-0.1.12.zip links to dist/atugushev-testpackage-0.1.12.zip (/Users/albert/Projects/test-package/.tox)
py37 start: getenv /Users/albert/Projects/test-package/.tox/py37
py37 cannot reuse: -r flag
py37 recreate: /Users/albert/Projects/test-package/.tox/py37
python3.7 (/Users/albert/Projects/test-package/.venv/bin/python3.7) is {u'executable': u'/Users/albert/Projects/test-package/.venv/bin/python3.7', u'name': u'python', u'version_info': [3, 7, 3, u'final', 0], u'sysplatform': u'darwin', u'version': u'3.7.3 (default, Mar 27 2019, 09:23:15) \n[Clang 10.0.1 (clang-1001.0.46.3)]', u'is_64': True}
py37 uses /Users/albert/Projects/test-package/.venv/bin/python3.7
  removing /Users/albert/Projects/test-package/.tox/py37
setting PATH=/Users/albert/Projects/test-package/.tox/py37/bin:/Users/albert/Projects/test-package/.venv/bin:/usr/local/opt/node@10/bin:/Users/albert/.gem/bin:/Users/albert/.pyenv/shims:/Users/albert/.pyenv/bin:/usr/local/opt/postgresql@10/bin:/usr/local/opt/gettext/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin
[26194] /Users/albert/Projects/test-package/.tox$ /usr/local/opt/python@2/bin/python2.7 -m virtualenv --no-download --python /Users/albert/Projects/test-package/.venv/bin/python3.7 py37
Running virtualenv with interpreter /Users/albert/Projects/test-package/.venv/bin/python3.7
Already using interpreter /Users/albert/Projects/test-package/.venv/bin/python3.7
Using real prefix '/usr/local/Cellar/python/3.7.3/Frameworks/Python.framework/Versions/3.7'
New python executable in /Users/albert/Projects/test-package/.tox/py37/bin/python3.7
Also creating executable in /Users/albert/Projects/test-package/.tox/py37/bin/python
Installing setuptools, pip, wheel...
done.
py37 installdeps: -egit+https://github.com/pypa/pip.git@c729a84b4884511912f459f3e340367c2872f495#egg=pip
setting PATH=/Users/albert/Projects/test-package/.tox/py37/bin:/Users/albert/Projects/test-package/.venv/bin:/usr/local/opt/node@10/bin:/Users/albert/.gem/bin:/Users/albert/.pyenv/shims:/Users/albert/.pyenv/bin:/usr/local/opt/postgresql@10/bin:/usr/local/opt/gettext/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin
[26215] /Users/albert/Projects/test-package$ /Users/albert/Projects/test-package/.tox/py37/bin/python -m pip install '-egit+https://github.com/pypa/pip.git@c729a84b4884511912f459f3e340367c2872f495#egg=pip'
Obtaining pip from git+https://github.com/pypa/pip.git@c729a84b4884511912f459f3e340367c2872f495#egg=pip
  Cloning https://github.com/pypa/pip.git (to revision c729a84b4884511912f459f3e340367c2872f495) to ./.tox/py37/src/pip
  Running command git clone -q https://github.com/pypa/pip.git /Users/albert/Projects/test-package/.tox/py37/src/pip
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
Installing collected packages: pip
  Found existing installation: pip 19.2.3
    Uninstalling pip-19.2.3:
      Successfully uninstalled pip-19.2.3
  Running setup.py develop for pip
Successfully installed pip
py37 finish: getenv /Users/albert/Projects/test-package/.tox/py37 after 19.67 seconds
py37 start: installpkg /Users/albert/Projects/test-package/.tox/.tmp/package/1/atugushev-testpackage-0.1.12.zip
py37 inst: /Users/albert/Projects/test-package/.tox/.tmp/package/1/atugushev-testpackage-0.1.12.zip
write config to /Users/albert/Projects/test-package/.tox/py37/.tox-config1 as '6ca0676fb0398a654a2483eb31e082f6cfba52beb10b4af1387e8e3741382f9a /Users/albert/Projects/test-package/.venv/bin/python3.7\n3.14.0 0 0 0\n00000000000000000000000000000000 -egit+https://github.com/pypa/pip.git@c729a84b4884511912f459f3e340367c2872f495#egg=pip'
setting PATH=/Users/albert/Projects/test-package/.tox/py37/bin:/Users/albert/Projects/test-package/.venv/bin:/usr/local/opt/node@10/bin:/Users/albert/.gem/bin:/Users/albert/.pyenv/shims:/Users/albert/.pyenv/bin:/usr/local/opt/postgresql@10/bin:/usr/local/opt/gettext/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin
[26282] /Users/albert/Projects/test-package$ /Users/albert/Projects/test-package/.tox/py37/bin/python -m pip install --exists-action w .tox/.tmp/package/1/atugushev-testpackage-0.1.12.zip
ERROR: Exception:
Traceback (most recent call last):
  File "/Users/albert/Projects/test-package/.tox/py37/src/pip/src/pip/_internal/cli/base_command.py", line 153, in _main
    status = self.run(options, args)
  File "/Users/albert/Projects/test-package/.tox/py37/src/pip/src/pip/_internal/commands/install.py", line 302, in run
    isolated_mode=options.isolated_mode,
  File "/Users/albert/Projects/test-package/.tox/py37/src/pip/src/pip/_internal/commands/install.py", line 638, in decide_user_install
    assert use_user_site is None
AssertionError
ERROR: invocation failed (exit code 2)
py37 finish: installpkg /Users/albert/Projects/test-package/.tox/.tmp/package/1/atugushev-testpackage-0.1.12.zip after 0.70 seconds
___________________________________________________ summary ___________________________________________________
ERROR:   py37: InvocationError for command /Users/albert/Projects/test-package/.tox/py37/bin/python -m pip install --exists-action w .tox/.tmp/package/1/atugushev-testpackage-0.1.12.zip (exited with code 2)
cleanup /Users/albert/Projects/test-package/.tox/.tmp/package/1/atugushev-testpackage-0.1.12.zip
@atugushev atugushev added the bug:normal affects many people or has quite an impact label Oct 22, 2019
@atugushev atugushev changed the title Latest pip master might break tox Latest pip master breaks tox Oct 22, 2019
@atugushev
Copy link
Author

Fixed in pypa/pip#7258.

@atugushev
Copy link
Author

@gaborbernat is tox/virtualenv use a separate pip.conf with user=true, because it was the root of the issue? Just out of the curiosity.

@gaborbernat
Copy link
Member

No different configuration file, but we do pass in our own flags. So depends.

@atugushev
Copy link
Author

Yeah, via environment variable:

tox/src/tox/venv.py

Lines 428 to 429 in 3980da7

# installing packages at user level may mean we're not installing inside the venv
env["PIP_USER"] = "0"

@tox-dev tox-dev locked and limited conversation to collaborators Jan 14, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug:normal affects many people or has quite an impact
Projects
None yet
Development

No branches or pull requests

2 participants