revdotcom/revai-python-sdk

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!

@dbader thank you for bringing this up! We have now addressed this in the linked PR.