-
-
Notifications
You must be signed in to change notification settings - Fork 48
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
django-redshift-backend depends directly on psycopg2. #149 #150
base: master
Are you sure you want to change the base?
Conversation
10c8c3d
to
d7be65e
Compare
d7be65e
to
02e1ab8
Compare
02e1ab8
to
e04bce2
Compare
this commit works fine with uv-0.4.17, but not fine with pip-24.2 refs: - pypa/pip#8686 - https://discuss.python.org/t/adding-a-default-extra-require-environment/4898 - https://discuss.python.org/t/the-extra-environment-marker-and-its-operators/4976
This PR code works fine with The Problem Addressed in This PR:
Purpose of this PR:
The Attempted Solution:To achieve this, I tried using environment markers to conditionally manage dependencies by specifying note:
However, this approach still resulted in the
Below log says:
Upon further investigation, I found discussions indicating that this behavior is "undefined for extras" and that resolving the issue requires changes to PEP rather than pip itself. However, there seems to be no progress on creating the necessary PEP.
Conclusion:Although this approach works as expected with |
for #149.
Previously, django-redshift-backend would let the user choose whether to use psycopg2 or psycopg2-binary.
django-redshift-backend relies on psycopg2, so either one is required. However, if they were unaware of the option, they could create an environment where psycopg2 was not installed.
So I changed the method to change psycopg2 to a direct dependency, and if you want to select psycopg2-binary additionally, install it with
pip install django-redshift-backend[psycopg2-binary]
.