Closed asottile closed 5 years ago
looks like master just needs to be released -- this will restore pip<=18.0
upper bound.
A followup can then be done to restore compatibility with 18.1+
Just released 3.1.1 which should fix this?
Looks good! thanks a ton @chriskuehl <3
h$ tox -e py27 --notest
py27 create: /tmp/h/.tox/py27
py27 bootstrap: venv-update>=2.1.3
py27 installdeps: coverage,mock,pytest,hypothesis,factory-boy,-rrequirements.txt
py27 installed: You are using pip version 18.0, however version 18.1 is available.,You should consider upgrading via the 'pip install --upgrade pip' command.,alembic==0.9.7,amqp==2.2.2,atomicwrites==1.2.1,attrs==18.2.0,backports.functools-lru-cache==1.2.1,bcrypt==3.1.3,billiard==3.5.0.3,bleach==2.1.3,celery==4.2.1,certifi==2016.2.28,cffi==1.7.0,Chameleon==2.24,click==6.6,colander==1.3.1,contextlib2==0.5.4,coverage==4.5.1,deform==0.9.9,deform-jinja2==0.5,elasticsearch==6.2.0,elasticsearch-dsl==6.1.0,enum34==1.1.6,factory-boy==2.11.1,Faker==0.9.1,funcsigs==1.0.2,functools32==3.2.3.post2,gevent==1.3.5,greenlet==0.4.13,gunicorn==19.9.0,hkdf==0.0.3,html5lib==0.999999999,hypothesis==3.74.2,ipaddress==1.0.18,iso8601==0.1.11,itsdangerous==0.24,Jinja2==2.10,jsonpointer==1.0,jsonschema==2.5.1,kombu==4.2.1,Mako==1.0.4,MarkupSafe==0.23,mistune==0.8.3,mock==2.0.0,more-itertools==4.3.0,newrelic==4.2.0.100,oauthlib==2.0.2,passlib==1.7.1,PasteDeploy==1.5.2,pathlib2==2.3.2,pbr==4.3.0,peppercorn==0.5,pluggy==0.7.1,psycogreen==1.0,psycopg2==2.7.3.2,py==1.6.0,pycparser==2.14,PyJWT==1.5.3,pyparsing==2.1.10,pyramid==1.7.3,pyramid-authsanity==1.0.0,pyramid-jinja2==2.6.2,pyramid-layout==1.0,pyramid-mailer==0.15.1,pyramid-services==0.4,pyramid-tm==1.1.1,pytest==3.8.2,python-dateutil==2.5.3,python-editor==1.0.1,python-slugify==1.1.4,pytz==2016.6.1,raven==6.0.0,repoze.lru==0.6,repoze.sendmail==4.3,requests==2.13.0,requests-aws4auth==0.9,scandir==1.9.0,six==1.10.0,SQLAlchemy==1.1.4,statsd==3.2.1,text-unidecode==1.2,transaction==2.1.2,translationstring==1.3,Unidecode==0.4.19,urllib3==1.22,venusian==1.0,venv-update==3.1.1,vine==1.1.4,webencodings==0.5.1,WebOb==1.6.1,ws4py==0.4.2,wsaccel==0.6.2,zope.deprecation==4.1.2,zope.interface==4.3.2,zope.sqlalchemy==1.0
___________________________________ summary ____________________________________
py27: skipped tests
congratulations :)
h$ tox --version
3.3.0 imported from /tmp/h/venv/lib/python3.6/site-packages/tox/__init__.py
registered plugins:
tox-pip-extensions-1.4.0 at /tmp/h/venv/lib/python3.6/site-packages/tox_pip_extensions.py
CC @seanh
\o/
~technically venv-update is still incompatible with 18.1 but at least setup.py limits it now :)
Good point, I'll reopen this so we have some ticket about fixing that eventually.
Holly.... I found this one day after I was happy to find a workaround for https://github.com/tox-dev/tox/issues/149 -- but apparently additing new build dependencies on tox-pip-extensions and venv-update would only create a much worse user experience.
Can we do somethign to fix this in a way that would not require downgrading pip? I know too many places in CI where pip is upgraded to latest.
Lucky for us pip had a good habbit on not breaking thinks, usually fixing things in new version which translated into users wanting to use latest.
Lucky for us pip had a good habbit on not breaking thinks
heh, the exact opposite seems to be true for venv-update 🙃
Can we do somethign to fix this in a way that would not require downgrading pip?
the way pip-faster works is by patching out parts of pip. It's unfortunately fundamentally tied to the internals of pip.
The way out would be upstreaming the interesting bits:
install --prune
: uninstall things which are no longer depended on (there's prior art in npm, shouldn't be too hard to convince pip, though the hard part is finding the right place to inject this feature)==
is used" -- we've tried to upstream this and were told no: https://github.com/pypa/pip/pull/2114 -- it's possible they'll reconsider now that the internals are rearranged and less complicated. though I wouldn't get my hopes uppip-faster
's checking is compatible with pip check
(and/or that there's a pip install --check
)