superdesk/superdesk-core

Installation fails due to conflicting oauthlib version

NeolithEra opened this issue · 3 comments

Hi, users are unable to run Superdesk-core due to dependency conflict with oauthlib package. As shown in the following full dependency graph of Superdesk-core, flask-oauthlib requires oauthlib >=1.1.2,<3.0.0which is incompatible.
14
,while requests-oauthlib requires ** oauthlib>=3.0.0**.

According to pip’s “first found wins” installation strategy, oauthlib 2.10 is the actually installed version. However, oauthlib 2.10 does not satisfy ** oauthlib>=3.0.0**.

Dependency tree-----------

superdesk-core - 1.33.1
| +- arrow(install version:0.13 version range:<=0.13,>=0.4)
| +- arrow(install version:0.13 version range:>=0.4,<=0.13)
| +- asyncio(install version:3.4.3 version range:>=3.4,<3.5)
| +- asyncio(install version:3.4.3 version range:<3.5,>=3.4)
| +- bcrypt(install version:3.1.7 version range:>=3.1.1,<3.2)
| +- blinker(install version:1.4 version range:>=1.3,<1.5)
| +- blinker(install version:1.4 version range:<1.5,>=1.3)
| +- boto3(install version:1.5.36 version range:<1.6,>=1.1.4)
| | +- botocore(install version:1.8.50 version range:<1.9.0,>=1.8.50)
| | | +- docutils(install version:0.16 version range:>=0.10)
| | | +- jmespath(install version:0.10.0 version range:<1.0.0,>=0.7.1)
| | | +- python-dateutil(install version:2.7.5 version range:>=2.1,<3.0.0)
| | | | +- six(install version:1.14.0 version range:*)
| | | | +- six(install version:1.14.0 version range:>=1.5)
| | +- jmespath(install version:0.10.0 version range:<1.0.0,>=0.7.1)
| | +- s3transfer(install version:0.1.13 version range:>=0.1.10,<0.2.0)
| | | +- botocore(install version:1.16.18 version range:>=1.3.0,<2.0.0)
| +- celery(install version:4.3.0 version range:>=4.3.0,<4.4)
| | +- anyjson(install version:0.3.3 version range:*)
| | +- anyjson(install version:0.3.3 version range:>=0.3.1)
| | +- billiard(install version:3.6.3.0 version range:>=0.2.1)
| | | +- case(install version:1.5.3 version range:>=1.3.1)
| | | +- flake8(install version:3.7.9 version range:>=2.5.4)
| | | +- flakeplus(install version:1.1.0 version range:>=1.1)
| | | | +- unipath(install version:1.1 version range:*)
| | | +- psutil(install version:5.7.0 version range:*)
| | | +- pytest(install version:5.4.2 version range:<6)
| | | +- pytest-cov(install version:2.8.1 version range:*)
| | | | +- coverage(install version:5.1 version range:>=4.4)
| | | | +- pytest(install version:5.4.1 version range:>=3.6)
| | | +- setuptools(install version:46.1.3 version range:>=40.0.0)
| | | +- tox(install version:3.14.6 version range:>=2.3.1)
| | | +- wheel(install version:0.34.2 version range:>=0.29.0)
| | +- billiard(install version:3.6.3.0 version range:>=0.3.0)
| | | +- case(install version:1.5.3 version range:>=1.3.1)
| | | +- flake8(install version:3.7.9 version range:>=2.5.4)
| | | +- flakeplus(install version:1.1.0 version range:>=1.1)
| | | | +- unipath(install version:1.1 version range:*)
| | | +- psutil(install version:5.7.0 version range:*)
| | | +- pytest(install version:5.4.2 version range:<6)
| | | +- pytest-cov(install version:2.8.1 version range:*)
| | | | +- coverage(install version:5.1 version range:>=4.4)
| | | | +- pytest(install version:5.4.1 version range:>=3.6)
| | | +- setuptools(install version:46.1.3 version range:>=40.0.0)
| | | +- tox(install version:3.14.6 version range:>=2.3.1)
| | | +- wheel(install version:0.34.2 version range:>=0.29.0)
| | +- billiard(install version:3.6.3.0 version range:>=0.3.1)
| | | +- case(install version:1.5.3 version range:>=1.3.1)
| | | +- flake8(install version:3.7.9 version range:>=2.5.4)
| | | +- flakeplus(install version:1.1.0 version range:>=1.1)
| | | | +- unipath(install version:1.1 version range:*)
| | | +- psutil(install version:5.7.0 version range:*)
| | | +- pytest(install version:5.4.2 version range:<6)
| | | +- pytest-cov(install version:2.8.1 version range:*)
| | | | +- coverage(install version:5.1 version range:>=4.4)
| | | | +- pytest(install version:5.4.1 version range:>=3.6)
| | | +- setuptools(install version:46.1.3 version range:>=40.0.0)
| | | +- tox(install version:3.14.6 version range:>=2.3.1)
| | | +- wheel(install version:0.34.2 version range:>=0.29.0)
| | +- carrot(install version:0.10.7 version range:>=0.10.0)
| | | +- amqplib(install version:1.0.2 version range:>=0.6)
| | | +- anyjson(install version:0.3.3 version range:*)
| | +- carrot(install version:0.10.7 version range:>=0.10.3)
| | | +- amqplib(install version:1.0.2 version range:>=0.6)
| | | +- anyjson(install version:0.3.3 version range:*)
| | +- carrot(install version:0.10.7 version range:>=0.10.4)
| | | +- amqplib(install version:1.0.2 version range:>=0.6)
| | | +- anyjson(install version:0.3.3 version range:*)
| | +- carrot(install version:0.10.7 version range:>=0.10.5)
| | | +- amqplib(install version:1.0.2 version range:>=0.6)
| | | +- anyjson(install version:0.3.3 version range:*)
| | +- carrot(install version:0.10.7 version range:>=0.4.5)
| | | +- amqplib(install version:1.0.2 version range:>=0.6)
| | | +- anyjson(install version:0.3.3 version range:*)
| | +- carrot(install version:0.10.7 version range:>=0.5.0)
| | | +- amqplib(install version:1.0.2 version range:>=0.6)
| | | +- anyjson(install version:0.3.3 version range:*)
| | +- django(install version:3.0.5 version range:*)
| | | +- asgiref (install version: version range:=3.2)
| | | +- pytz(install version:2019.3 version range:*)
| | | +- sqlparse (install version:0.3.1 version range:>=0.2.2)
| | +- django-picklefield(install version:2.1.1 version range:*)
| | | +- django(install version:3.0.5 version range:>=1.11)
| | | | +- asgiref (install version: version range:=3.2)
| | | | +- pytz(install version:2019.3 version range:*)
| | | | +- sqlparse (install version:0.3.1 version range:>=0.2.2)
| | +- django-unittest-depth(install version:0.6 version range:*)
| | +- kombu(install version:4.5.0 version range:>=1.0.3)
| | +- kombu(install version:1.5.1 version range:>=1.0.7,<2.0.0)
| | +- kombu(install version:1.5.1 version range:>=1.1.2,<2.0.0)
| | +- kombu(install version:1.5.1 version range:>=1.2.1,<2.0.0)
| | +- kombu(install version:1.5.1 version range:>=1.3.1,<2.0.0)
| | +- kombu(install version:2.5.16 version range:>=1.4.3,<3.0.0)
| | +- mailer(install version:0.8.1 version range:*)
| | +- pyparsing(install version:3.0.0a1 version range:*)
| | +- pyparsing(install version:1.5.7 version range:>=1.5.0,<2.0.0)
| | +- python-daemon(install version:2.2.4 version range:*)
| | +- python-dateutil(install version:2.7.5 version range:*)
| | | +- six(install version:1.14.0 version range:*)
| | | +- six(install version:1.14.0 version range:>=1.5)
| | +- python-dateutil(install version:1.5 version range:>=1.5.0,<2.0.0)
| | +- python-dateutil(install version:2.7.5 version range:>2.0.0)
| | | +- six(install version:1.14.0 version range:*)
| | | +- six(install version:1.14.0 version range:>=1.5)
| | +- sqlalchemy(install version:1.3.16 version range:*)
| +- chardet(install version:3.0.4 version range:<4.0)
| +- croniter(install version:0.3.32 version range:<0.4)
| +- eve(install version:0.7.8 version range:>=0.6,<=0.7.8)
| | +- cerberus(install version:0.9.2 version range:<0.10,>=0.9.2)
| | +- events(install version:0.2.2 version range:<0.3,>=0.2.1)
| | +- flask(install version:0.12 version range:>=0.10.1,<=0.12)
| | | +- click(install version:7.1.1 version range:>=2.0)
| | | +- itsdangerous(install version:1.1.0 version range:>=0.21)
| | | +- jinja2(install version:2.11.2 version range:>=2.4)
| | | | +- MarkupSafe(install version:2.0.0a1 version range:>=0.23)
| | | +- werkzeug(install version:0.16.1 version range:>=0.7)
| | +- flask-pymongo(install version:0.5.2 version range:>=0.4)
| | | +- flask (install version:1.1.2 version range:>=0.8)
| | | | +- click(install version:7.1.1 version range:>=5.1)
| | | | +- itsdangerous(install version:1.1.0 version range:>=0.24)
| | | | +- Jinja2(install version:2.11.2 version range:>=2.10.1)
| | | | +- Werkzeug(install version:1.0.1 version range:>=0.15)
| | | +- pymongo (install version:3.10.1 version range:>=2.5)
| | +- itsdangerous(install version:0.24 version range:<1.0,>=0.24)
| | +- jinja2(install version:2.11.2 version range:>=2.8,<3.0)
| | | +- MarkupSafe(install version:2.0.0a1 version range:>=0.23)
| | +- markupsafe(install version:0.23 version range:>=0.23,<1.0)
| | +- pymongo(install version:3.8.0 version range:>=3.4)
| | +- simplejson(install version:3.17.0 version range:>=3.3.0,<4.0)
| | +- werkzeug(install version:0.11.15 version range:>=0.9.4,<=0.11.15)
| +- eve(install version:0.7.8 version range:<=0.7.8,>=0.6)
| | +- cerberus(install version:0.9.2 version range:<0.10,>=0.9.2)
| | +- events(install version:0.2.2 version range:<0.3,>=0.2.1)
| | +- flask(install version:0.12 version range:>=0.10.1,<=0.12)
| | | +- click(install version:7.1.1 version range:>=2.0)
| | | +- itsdangerous(install version:1.1.0 version range:>=0.21)
| | | +- jinja2(install version:2.11.2 version range:>=2.4)
| | | | +- MarkupSafe(install version:2.0.0a1 version range:>=0.23)
| | | +- werkzeug(install version:0.16.1 version range:>=0.7)
| | +- flask-pymongo(install version:0.5.2 version range:>=0.4)
| | | +- flask (install version:1.1.2 version range:>=0.8)
| | | | +- click(install version:7.1.1 version range:>=5.1)
| | | | +- itsdangerous(install version:1.1.0 version range:>=0.24)
| | | | +- Jinja2(install version:2.11.2 version range:>=2.10.1)
| | | | +- Werkzeug(install version:1.0.1 version range:>=0.15)
| | | +- pymongo (install version:3.10.1 version range:>=2.5)
| | +- itsdangerous(install version:0.24 version range:<1.0,>=0.24)
| | +- jinja2(install version:2.11.2 version range:>=2.8,<3.0)
| | | +- MarkupSafe(install version:2.0.0a1 version range:>=0.23)
| | +- markupsafe(install version:0.23 version range:>=0.23,<1.0)
| | +- pymongo(install version:3.8.0 version range:>=3.4)
| | +- simplejson(install version:3.17.0 version range:>=3.3.0,<4.0)
| | +- werkzeug(install version:0.11.15 version range:>=0.9.4,<=0.11.15)
| +- eve-elastic(install version:2.5.0 version range:==2.5.0)
| | +- arrow(install version:0.13 version range:>=0.4.2)
| | +- ciso8601(install version:1.0.8 version range:>=1.0.2,<2)
| | +- elasticsearch(install version:2.4.1 version range:>=2.0.0,<3.0.0)
| | | +- urllib3(install version:1.25.9 version range:>=1.8,<2.0)
| | +- eve(install version:0.7.8 version range:>=0.4)
| | | +- cerberus(install version:0.9.2 version range:<0.10,>=0.9.2)
| | | +- events(install version:0.2.2 version range:<0.3,>=0.2.1)
| | | +- flask(install version:0.12 version range:>=0.10.1,<=0.12)
| | | | +- click(install version:7.1.1 version range:>=2.0)
| | | | +- itsdangerous(install version:1.1.0 version range:>=0.21)
| | | | +- jinja2(install version:2.11.2 version range:>=2.4)
| | | | +- werkzeug(install version:0.16.1 version range:>=0.7)
| | | +- flask-pymongo(install version:0.5.2 version range:>=0.4)
| | | | +- flask (install version:1.1.2 version range:>=0.8)
| | | | +- pymongo (install version:3.10.1 version range:>=2.5)
| | | +- itsdangerous(install version:0.24 version range:<1.0,>=0.24)
| | | +- jinja2(install version:2.11.2 version range:>=2.8,<3.0)
| | | | +- MarkupSafe(install version:2.0.0a1 version range:>=0.23)
| | | +- markupsafe(install version:0.23 version range:>=0.23,<1.0)
| | | +- pymongo(install version:3.8.0 version range:>=3.4)
| | | +- simplejson(install version:3.17.0 version range:>=3.3.0,<4.0)
| | | +- werkzeug(install version:0.11.15 version range:>=0.9.4,<=0.11.15)
| | +- pytz(install version:2019.3 version range:>=2015.4)
| +- feedparser(install version:5.2.1 version range:<5.3,>=5.2)
| +- flask(install version:0.12 version range:>=0.10.1,<=0.12)
| | +- click(install version:7.1.1 version range:>=2.0)
| | +- itsdangerous(install version:1.1.0 version range:>=0.21)
| | +- jinja2(install version:2.11.2 version range:>=2.4)
| | | +- MarkupSafe(install version:2.0.0a1 version range:>=0.23)
| | +- werkzeug(install version:0.16.1 version range:>=0.7)
| +- flask-babel(install version:0.12.2 version range:==0.12.2)
| | +- babel(install version:2.8.0 version range:>=2.3)
| | | +- pytz(install version:2019.3 version range:>=2015.7)
| | +- flask(install version:0.12 version range:*)
| | | +- click(install version:7.1.1 version range:>=2.0)
| | | +- itsdangerous(install version:1.1.0 version range:>=0.21)
| | | +- jinja2(install version:2.11.2 version range:>=2.4)
| | | | +- MarkupSafe(install version:2.0.0a1 version range:>=0.23)
| | | +- werkzeug(install version:0.16.1 version range:>=0.7)
| | +- jinja2(install version:2.11.2 version range:>=2.5)
| | | +- MarkupSafe(install version:2.0.0a1 version range:>=0.23)
| +- flask-mail(install version:0.9.1 version range:<0.10,>=0.9)
| | +- blinker(install version:1.4 version range:*)
| | +- flask(install version:0.12 version range:*)
| | | +- click(install version:7.1.1 version range:>=2.0)
| | | +- itsdangerous(install version:1.1.0 version range:>=0.21)
| | | +- jinja2(install version:2.11.2 version range:>=2.4)
| | | | +- MarkupSafe(install version:2.0.0a1 version range:>=0.23)
| | | +- werkzeug(install version:0.16.1 version range:>=0.7)
| +- flask-mail(install version:0.9.1 version range:>=0.9,<0.10)
| | +- blinker(install version:1.4 version range:*)
| | +- flask(install version:0.12 version range:*)
| | | +- click(install version:7.1.1 version range:>=2.0)
| | | +- itsdangerous(install version:1.1.0 version range:>=0.21)
| | | +- jinja2(install version:2.11.2 version range:>=2.4)
| | | | +- MarkupSafe(install version:2.0.0a1 version range:>=0.23)
| | | +- werkzeug(install version:0.16.1 version range:>=0.7)
| +- flask-oauthlib(install version:0.9.5 version range:<0.10,>=0.9.3)
| | +- flask(install version:0.12 version range:*)
| | | +- click(install version:7.1.1 version range:>=2.0)
| | | +- itsdangerous(install version:1.1.0 version range:>=0.21)
| | | +- jinja2(install version:2.11.2 version range:>=2.4)
| | | | +- MarkupSafe(install version:2.0.0a1 version range:>=0.23)
| | | +- werkzeug(install version:0.16.1 version range:>=0.7)
| | +- oauthlib(install version:2.1.0 version range:>=1.1.2,<3.0.0)
| | +- requests-oauthlib(install version:1.3.0 version range:>=0.6.2)
| | | +- oauthlib(install version:3.1.0 version range:>=3.0.0)
| +- flask-oauthlib(install version:0.9.5 version range:>=0.9.3,<0.10)
| | +- flask(install version:0.12 version range:*)
| | | +- click(install version:7.1.1 version range:>=2.0)
| | | +- itsdangerous(install version:1.1.0 version range:>=0.21)
| | | +- jinja2(install version:2.11.2 version range:>=2.4)
| | | | +- MarkupSafe(install version:2.0.0a1 version range:>=0.23)
| | | +- werkzeug(install version:0.16.1 version range:>=0.7)
| | +- oauthlib(install version:2.1.0 version range:>=1.1.2,<3.0.0)
| | +- requests-oauthlib(install version:1.3.0 version range:>=0.6.2)
| | | +- oauthlib(install version:3.1.0 version range:>=3.0.0)
| +- flask-pymongo(install version:0.5.2 version range:<1.0,>=0.5.2)
| | +- flask (install version:1.1.2 version range:>=0.8)
| | | +- click(install version:7.1.1 version range:>=5.1)
| | | +- itsdangerous(install version:1.1.0 version range:>=0.24)
| | | +- Jinja2(install version:2.11.2 version range:>=2.10.1)
| | | | +- MarkupSafe(install version:2.0.0a1 version range:>=0.23)
| | | +- Werkzeug(install version:1.0.1 version range:>=0.15)
| | +- pymongo (install version:3.10.1 version range:>=2.5)
| +- flask-script(install version:2.0.6 version range:>=2.0.5,<3.0)
| | +- flask(install version:0.12 version range:*)
| | | +- click(install version:7.1.1 version range:>=2.0)
| | | +- itsdangerous(install version:1.1.0 version range:>=0.21)
| | | +- jinja2(install version:2.11.2 version range:>=2.4)
| | | | +- MarkupSafe(install version:2.0.0a1 version range:>=0.23)
| | | +- werkzeug(install version:0.16.1 version range:>=0.7)
| +- flask_pymongo(install version:0.5.2 version range:>=0.5.2,<1.0)
| +- hachoir(install version:3.0a3 version range:<=3.0a3)
| +- hermescache(install version:0.7.2 version range:<0.8.0,>=0.6.0)
| +- kombu(install version:4.5.0 version range:>=4.5,<4.6)
| +- ldap3(install version:2.5.2 version range:<2.6,>=2.2.4)
| +- lxml(install version:4.1.1 version range:<4.2,>=3.8)
| | +- cython(install version:3.0a1 version range:>=0.26.1)
| +- mongolock(install version:1.3.4 version range:>=1.3.4,<1.4)
| | +- pymongo(install version:3.8.0 version range:>=2.6.0)
| +- pillow(install version:5.0 version range:>=3.0,<=5.0)
| +- pillow(install version:5.0 version range:<=5.0,>=3.0)
| +- pymongo(install version:3.8.0 version range:<3.9,>=3.8)
| +- python-dateutil(install version:2.7.5 version range:<2.8)
| | +- six(install version:1.14.0 version range:*)
| | +- six(install version:1.14.0 version range:>=1.5)
| +- python-magic(install version:0.4.18 version range:<0.5,>=0.4)
| +- python-twitter(install version:3.3 version range:==3.3)
| | +- future(install version:0.18.2 version range:*)
| | +- requests(install version:2.23.0 version range:*)
| | | +- certifi(install version:2020.4.5.1 version range:>=2017.4.17)
| | | +- chardet(install version:3.0.4 version range:>=3.0.2,<4)
| | | +- idna(install version:2.9 version range:>=2.5,<3)
| | | +- urllib3(install version:1.25.9 version range:>=1.21.1,<1.26)
| | +- requests-oauthlib(install version:1.3.0 version range:*)
| | | +- oauthlib(install version:3.1.0 version range:>=3.0.0)
| +- pytz(install version:2019.3 version range:>=2015.4)
| +- pyyaml(install version:4.2b4 version range:<5.0,>=4.2b1)
| +- raven(install version:6.10.0 version range:<7.0,>=5.10)
| +- redis(install version:3.2.1 version range:>=3.2.0,<3.3)
| +- requests(install version:2.23.0 version range:>=2.7.0,<3.0)
| | +- certifi(install version:2020.4.5.1 version range:>=2017.4.17)
| | +- chardet(install version:3.0.4 version range:>=3.0.2,<4)
| | +- idna(install version:2.9 version range:>=2.5,<3)
| | +- urllib3(install version:1.25.9 version range:>=1.21.1,<1.26)
| +- tzlocal(install version:1.5.1 version range:>=1.2.2,<2.0)
| | +- pytz(install version:2019.3 version range:*)
| +- unidecode(install version:0.04.21 version range:==0.04.21)
| +- websockets(install version:6.0 version range:<7.0,>=3.0)
| +- werkzeug(install version:0.16.1 version range:<1.0)

Thanks for your help.
Best,
Neolith

Solution

  1. Ask your direct dependency flask-oauthlib to loosen the version range of oauthlib to be >=1.1.2.
    @petrjasek
    May I pull a request to solve this issue?

@jerome-poisson,Could you help me review this issue? Thx :p

stale commented

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.