Игнорировать конфликты, возникающие при установке setuptools

TL;DR

Как я могу наставлять setuptools игнорировать конфликты зависимостей и вести себя нормально?

Фон

Мой проект Python имеет набор зависимостей Google Cloud, объявленных в requirements.txt файл. Эти зависимости Google Cloud имеют транзитивный конфликт зависимостей, который в конечном итоге разрешается, и, похоже, приложение работает нормально.

проведение pip install -r requirements.txt завершается успешно и pipdeptree сообщает об этих конфликтах, но python setup.py install терпит неудачу из-за этих конфликтов.

Предупреждения, произведенные pipdeptree

Warning!!! Possibly conflicting dependencies found:
* gapic-google-cloud-pubsub-v1==0.15.3
- oauth2client [required: >=2.0.0,<4.0dev, installed: 4.0.0]
* google-gax==0.15.8
- oauth2client [required: >=2.0.0,<4.0dev, installed: 4.0.0]
* grpc-google-cloud-pubsub-v1==0.14.0
- oauth2client [required: >=2.0.0,<4.0dev, installed: 4.0.0]
* proto-google-cloud-pubsub-v1==0.15.3
- oauth2client [required: >=2.0.0,<4.0dev, installed: 4.0.0]
* grpc-google-iam-v1==0.11.1
- oauth2client [required: <4.0.0dev,>=2.0.0, installed: 4.0.0]

Ошибки произведены python setup.py install

error: oauth2client 4.0.0 is installed but oauth2client<4.0dev,>=2.0.0 is required by set(['proto-google-cloud-pubsub-v1', 'gapic-google-cloud-pubsub-v1', 'google-gax'])
;

1 ответ

Решение

Это невозможно. setuptools Строго в этом смысле, и конфликты должны быть разрешены.

Другие вопросы по тегам