Pip version conflicts due to pinned requirements
dbader opened this issue · 2 comments
Hi there, something I wanted to flag real quick because I'm bumping into it right now as a paying customer :-)
The revai-python-sdk
library specifies exact (==
) version matches in it's setup.py
dependencies via requirements.txt
:
requests==2.21.0
enum34==1.1.6
six==1.12.0
websocket-client==0.56.0
mock==3.0.5
(Source)
Since many other libraries depend on commonly used dependencies like six
it's easy to run into version conflicts in larger projects with six
(and other dependencies) pinned to exact version numbers with the ==
version specifier.
It would be preferable if the dependencies for revai-python-sdk
could be made more flexible.
For example, see how Google handle this in their Python API SDK: https://github.com/googleapis/google-api-python-client/blob/a527de24cda7c7d62a371203158fd5f617a1c08c/setup.py#L37-L44
(Also, it looks like mock
should be moved to requirements_dev.txt
since it's only used in the tests as far as I can tell.)
Thanks for looking into it!
Another example: https://github.com/waveaccounting/vero-python/issues/26