-
Notifications
You must be signed in to change notification settings - Fork 557
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
Not sure about psycopg2-wheels dependency #849
Comments
@dbcli/pgcli-core @dbcli/mycli-core What do you think? (Related issue: #844.) |
If your userbase is already used to installing psycopg from source is maybe better to specify the dependency on the source package. Here is how to do it in a requirements.txt file but I'm not sure it works in |
@dvarrazzo how do you manage a |
This is a bit annoying .. I install pgcli into a django docker container that runs in aws to use it as the "manage.py dbshell" program so I don't need to install the postgres client itself. Now, both.. psycopg2 and psycopg-binary get installed .. but it looks like it still prefers the non-binary version so I now get the warning also for the django and celery processes that also run in the container. |
@dvarrazzo I think the irritation on my side is that every time I run a cli command, I actually have the warning pop up. It's not limited to just pgcli, but that is the primary use-case I do have. So I probably see this warning more than a few dozen times in a day. It gets old after the first 3 on the first day... it's to the point now that I want to patch psycopg2 every time its installed. In the future, please consider handling something like this in a different way (perhaps just as a documentation notice). |
@brianbruggeman we suppressed this warning in pgcli a version or two ago. Do you keep seeing it? |
@j-bennet I do.
We instruct our developers to run
|
I think your hitting the limits of |
I have a Flask project where we use the psycopg2 driver and we simply use psycopg2-binary, it works well enough for our case and makes life simpler. But if I want to install pgcli , now everywhere I start seeing :
And this is very annoying. |
I didn't get it. Why we can't just do the following? diff --git a/setup.py b/setup.py
index 13c76c02..f4f11921 100644
--- a/setup.py
+++ b/setup.py
@@ -16,7 +16,7 @@ install_requirements = [
'click >= 4.1',
'Pygments >= 2.0', # Pygments has to be Capitalcased. WTF?
'prompt_toolkit>=2.0.6,<2.1.0',
- 'psycopg2 >= 2.7.4,<2.8',
+ 'psycopg2 >= 2.7.4',
'sqlparse >=0.2.2,<0.3.0',
'configobj >= 5.0.6',
'humanize >= 0.5.1', I haven't noticed any problems with the latest |
Hello, I'm psycopg2 maintainer.
I have developed wheel package of psycopg as a way to make tools like yours easier to install, but unfortunately the psycopg2 wheels has complex problems hard or impossible to eliminate, which forced us, in order to not get rid altogether of the wheel, to deploy them under a different pip name, as you have found seeing the requirements in your
setup.py
.In psycopg/psycopg2#674 someone has reported though that the dependencies of pgcli cause problems to shared virtual envs. My suggestion would be to not have pgcli installed in the share virtualenv of other projects as it's a standalone executable, not a library. However I'm not sure about that. The existence of a -wheel package is a new strategy for us so I'd like to find the best way to tackle the problem.
Do you think there are scenarios where
pgcli
is meant to be installed as a Python library for other projects? If so how can we solve conflicts where other projects depend on the nakedpsycopg2
? Glad to know your opinion.The text was updated successfully, but these errors were encountered: