Changeset - 3521120e72bc
[Not reviewed]
default
0 2 0
Dominik Ruf (domruf) - 9 years ago 2016-08-03 16:26:33
dominikruf@gmail.com
setup: limit WebTest version to <2.0

Running
pip install -e .
in a clean environment (or --upgrade), would cause:
"ContextualVersionConflict: (WebOb 1.1.1 (.../lib/python2.7/site-packages), Requirement.parse('WebOb>=1.2'), set(['WebTest']))"

setup.py required webob>=1.0.8,<=1.1.1 which pip resolved as WebOb==1.1.1.
setup.py required Pylons which requires WebTest>=1.3.1. Pip would thus install
the latest WebTest-2.0.23 ... which however has a WebOb>=1.2 dependency.
Pip only makes one pass at resolving dependencies and it would not resolve or
notice this inconsistency.

This problem came with dd676fdeda0f which moved pinning of WebTest 1.4.3 out of
setup.py.

Since Pylons require webtest anyway, there is no point in having it as a dev
requirement only - put it back in setup.py.

This might just be a temporary workaround until the WebOb version is updated.

Original patch by Dominik has been rewritten by Mads.
2 files changed with 2 insertions and 1 deletions:
0 comments (0 inline, 0 general) First comment
dev_requirements.txt
Show inline comments
 
@@ -2,6 +2,6 @@ pytest>=2.7.0,<3.0
 
pytest-runner
 
pytest-sugar>=0.7.0,<1.0.0
 
pytest-catchlog
 
webtest==1.4.3
 
WebTest<2 # this is also a Pylons dependency and pinned in setup.py to avoid version conflicts for WebOb
 
mock
 
sphinx
setup.py
Show inline comments
 
@@ -39,6 +39,7 @@ requirements = [
 
    "waitress>=0.8.8,<1.0",
 
    "webob>=1.0.8,<=1.1.1",
 
    "Pylons>=1.0.0,<=1.0.2",
 
    "WebTest<2.0", # make the Pylons dependency pick a version that supports our WebOb version
 
    "Beaker==1.6.4",
 
    "WebHelpers==1.3",
 
    "formencode>=1.2.4,<=1.2.6",
0 comments (0 inline, 0 general) First comment
You need to be logged in to comment. Login now