Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pinned versions in requirements.txt are too restrictive #39

Open
ehtec opened this issue Aug 21, 2023 · 4 comments
Open

Pinned versions in requirements.txt are too restrictive #39

ehtec opened this issue Aug 21, 2023 · 4 comments

Comments

@ehtec
Copy link

ehtec commented Aug 21, 2023

New Feature Request

Checklist

Current Limitation

The requirements in the requirements.txt file are too restrictive, because they pin exact package versions. They make it impossible to install moralis in my environment together with other packages.

Feature / Enhancement Description

Please don't make such restrictive dependency requirements, I don't think they are necessary for proper operation. For example only specify a minimum version.

Alternatives / Workarounds

Currently I need to bypass the dependency checks and install dependencies manually to get it work.

@mikulas-mrva
Copy link

I don't think you should be using requirements.txt, those are just for development of the package. If you install it, I think you're using the dependencies listed in setup.py.
I agree that the dependencies are still a bit too narrow for a package that should be useable in a wide range of massive projects, but that's probably for a different ticket.

@ehtec
Copy link
Author

ehtec commented Sep 8, 2023

This is correct, but doesn't change the issue I am facing. I'm actually not using requirements.txt, I just install it via Pip from PyPi. After getting the dependency conflicts, I looked into requirements.txt, noticed the pinned versions, and submitted this issue, assuming this is what gets installed when I install from PyPi. That's not the case, you are right the setup.py dependencies are what actually gets installed, and this is what causes my issue. They are still too narrow, especially as strict requirements on very basic commonly used libraries are made, not only on exotic ones.

@mikulas-mrva
Copy link

mikulas-mrva commented Sep 15, 2023

In that case the issue shouldn't be mentioning requirements.txt, but setup.py.
see https://github.com/MoralisWeb3/Moralis-Python-SDK/blob/main/setup.py

Either way @ehtec, I think you'll love version 0.1.39 released a few days ago. It solves the problem for me, so chances are it would work for you also.
See also: https://forum.moralis.io/t/python-sdk-bump-up-version-of-python-dateutil-dependency/23981/5

@lalawila
Copy link

lalawila commented Nov 6, 2023

same as me.

Because no versions of moralis match >0.1.41,<0.2.0
 and moralis (0.1.41) depends on typing-extensions (>=4.3.0,<4.4.0), moralis (>=0.1.41,<0.2.0) requires typing-extensions (>=4.3.0,<4.4.0).
And because redis-om (0.2.1) depends on typing-extensions (>=4.4.0,<5.0.0)
 and no versions of redis-om match >0.2.1,<0.3.0, moralis (>=0.1.41,<0.2.0) is incompatible with redis-om (>=0.2.1,<0.3.0).
So, because betdog-backend depends on both redis-om (^0.2.1) and moralis (^0.1.41), version solving failed.

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

No branches or pull requests

3 participants