Skip to content
This repository has been archived by the owner on Sep 11, 2020. It is now read-only.

Installation fails due to conflicting grpcio version #2

Open
NeolithEra opened this issue Jun 3, 2020 · 2 comments
Open

Installation fails due to conflicting grpcio version #2

NeolithEra opened this issue Jun 3, 2020 · 2 comments

Comments

@NeolithEra
Copy link

Hi, users are unable to run Chaosplatform-auth due to dependency conflict with grpcio package. As shown in the following full dependency graph of Chaosplatform-auth, Chaosplatform-auth requires grpcio>=1.17.1,while chaosplatform-grpc>=0.1.0 requires grpcio==1.17.1.

According to pip’s “first found wins” installation strategy, grpcio 1.29.0 is the actually installed version. However, grpcio 1.29.0 does not satisfy grpcio==1.17.1.

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

chaosplatform-auth - 0.3.0
| +- blinker(install version:1.4 version range:>=1.4)
| +- chaosplatform-grpc(install version:0.3.0 version range:>=0.1.0)
| | +- grpcio(install version:1.17.1 version range:==1.17.1)
| | | +- coverage(install version:5.1 version range:>=4.0)
| | | +- cython(install version:0.28.3 version range:==0.28.3)
| | | +- enum34(install version:1.1.10 version range:>=1.0.4)
| | | +- protobuf(install version:3.6.1 version range:>=3.5.0.post1)
| | | +- six(install version:1.14.0 version range:>=1.10)
| | | +- wheel(install version:0.34.2 version range:>=0.29)
| | +- protobuf(install version:3.6.1 version range:==3.6.1)
| | +- simplejson(install version:3.15.0 version range:==3.15.0)
| +- chaosplatform-relational-storage(install version:0.2.2 version range:>=0.2.0)
| +- cherrypy(install version:18.5.0 version range:>=18.0.1)
| +- click(install version:7.1.1 version range:>=7.0)
| +- cryptography(install version:2.9 version range:>=2.3.1)
| | +- cffi(install version:1.14.0 version range:>=1.8)
| | +- six (install version:1.14.0 version range:>=1.4.1)
| +- flask(install version:1.1.2 version range:>=1.0.2)
| | +- 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)
| +- flask-caching(install version:1.8.0 version range:>=1.4.0)
| | +- flask(install version:1.1.2 version range:*)
| | | +- 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)
| +- flask-dance(install version:3.0.0 version range:>=1.2.0)
| +- flask-jwt-extended(install version:3.24.1 version range:>=3.14.0)
| | +- flask(install version:1.1.2 version range:>=1.0)
| | | +- 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)
| | +- pyjwt(install version:1.7.1 version range:>=1.6.4)
| | +- six(install version:1.14.0 version range:*)
| | +- werkzeug(install version:1.0.1 version range:>=0.14)
| +- flask-login(install version:0.5.0 version range:>=0.4.1)
| | +- Flask(install version:1.1.2 version range:*)
| | | +- 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)
| +- flask-marshmallow(install version:0.11.0 version range:>=0.9.0)
| | +- Flask(install version:1.1.2 version range:*)
| | | +- 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)
| | +- marshmallow(install version:3.5.1 version range:>=2.0.0)
| | +- six(install version:1.14.0 version range:>=1.9.0)
| +- flask-sqlalchemy(install version:2.4.1 version range:>=2.3.2)
| | +- flask(install version:1.1.2 version range:>=0.10)
| | | +- 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)
| | +- sqlalchemy(install version:1.3.16 version range:>=0.8.0)
| +- grpcio(install version:1.28.1 version range:>=1.17.1)
| | +- coverage(install version:5.1 version range:>=4.0)
| | +- cython(install version:3.0a1 version range:>=0.29.8)
| | +- enum34(install version:1.1.10 version range:>=1.0.4)
| | +- protobuf(install version:3.6.1 version range:>=3.5.0.post1)
| | +- six(install version:1.14.0 version range:>=1.10)
| | +- wheel(install version:0.34.2 version range:>=0.29)
| +- itsdangerous(install version:1.1.0 version range:>=0.24)
| +- simplejson(install version:3.17.0 version range:>=3.15.0)
| +- sqlalchemy(install version:1.3.16 version range:>=1.2.15)
| +- sqlalchemy-json(install version:0.4.0 version range:>=0.2.1)
| | +- six(install version:1.14.0 version range:*)
| | +- sqlalchemy(install version:1.3.16 version range:>=0.7)
| +- sqlalchemy-utils(install version:0.36.3 version range:>=0.33.9)
| | +- six(install version:1.14.0 version range:*)
| | +- SQLAlchemy(install version:1.3.16 version range:>=1.0)
| +- toml(install version:0.10.0 version range:>=0.10.0)
| +- wsgi-request-logger(install version:0.4.6 version range:>=0.4.6)

Thanks for your help.
Best,
Neolith

@NeolithEra
Copy link
Author

Solution

  1. Loosen the version range of grpcio to be <=1.17.1.
  2. Remove your direct dependency grpcio, and use the grpcio transitively introduced by chaosplatform-grpc.
  3. Ask your direct dependency chaosplatform-grpc to loosen the version range of grpcio to be >=1.17.1.
    @Lawouach Which solution do you prefer, 1 ,2 or 3?
    Please let me know your choice. May I pull a request to solve this issue?

@NeolithEra
Copy link
Author

@Lawouach , Could you help me review this issue? Thx :p

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant