-
Notifications
You must be signed in to change notification settings - Fork 3k
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
Different resolution failure messages on different verbosity #9823
Comments
This prompts me to try the same installation on 3.8, which uncovers another conflict(!)
And 3.6 (against unreleased pip) also presents a different conflict, on |
Edit: I successfully reproduced this different behaviours on Linux. This is really weird. |
EDIT (Apologies for not seeing it first ). I dug a bit deeper, And I think I know where the -storage limitations are coming from (it is in fact in the 1.28.0 version of the bigquery library). Same of pyarrow. This is my bad. I looked at the latest < 3.0.0 version of -biquery not the one from constraints. The -v behaviour is strange one, that it alternates between those. But they are actually right... I still do not know where the old 1.28.0 limitation comes from (but this is a different story). I will close that one and look further to where it is coming from. Apologies for the troubles (but it would be nice to find out the -v behaviour reason :). |
Ah, I think I found the real root of conflict. I get this against the main branch:
So the issue is pyarrow all along, but pip 21.0.1 misidentified the cause to be (p.s. This still does not explain the |
And the issue got closed before I can submit 🤣 Issue tracker race condition. |
But yeah .. the "main" message is much CLEARER. So I re-open it. |
Ok. let me then try to do all my checks with the master version of PIP then |
I hope we will soon be able to close all those and successfully move to 21. line in Airflow :) |
I'll keep this open regardless of the outcome because the |
Above is a snapshot of the |
FYI. Seems that I found the root cause for conflict apache/airflow#15513 🤞 |
So it turns out the different error message is due to I think we should sort the dependencies somehow (maybe just alphabetically), this would be good for debuggability, if nothing else. |
PIP 21.0.1 sometimes produces wrong error about conflicts , and it produces different (correct!) error when
-vvvv
options are added.This problem originated with apache/airflow#15463 (you can see history of it there). We have quite complex dependencies in Airlfow and we are still recommending people to install airflow with PIP 20.2.4, but we are hoping to get rid of that limitation, one problem however was a very strange one and we did not have time to look at it - but when I looked today I realized that the error printed by PIP was misleading (as I could not see the reason for the original error).
I believe PIP instead of
pyarrow
reportsgoogle-cloud-bigquery-storage
as having a problem. Looks like instead of printing the actual dependency that has a problem, it prints the "sibling" of that dependency (or smth like that).It is very easily reproducible:
pip install apache-airflow[google]==2.0.2 --constraint https://raw.githubusercontent.com/apache/airflow/constraints-2.0.2/constraints-3.6.txt
You should get an error:
pip install -vvvv apache-airflow[google]==2.0.2 --constraint https://raw.githubusercontent.com/apache/airflow/constraints-2.0.2/constraints-3.6.txt
You should get an error:
I believe in both cases we ONLY have problem with
pyarrow
, and it is misreported without the-vvvv
flag. Looks like instead of actual dependency that is wrong (pyarrow
), the sibling of that dependency (google-cloud-bigquery-storage
) is printed out by PIP. Note that other than the dependency - those are the very same limits which are problematic (<2.0.0dev,>=1.0.0; extra == "bqstorage").I also could not find any other packages from those being installed where
google-cloud-bigquery-storage
would be limited to<2.0.0dev,>=1.0.0
- that's why I think this is a bug in PIP.Gists with the outputs to compare
pip install apache-airflow[google]==2.0.2 --constraint https://raw.githubusercontent.com/apache/airflow/constraints-2.0.2/constraints-3.6.txt
:Here: https://gist.github.com/potiuk/04f6127469a709e3e47be7585c9a863c
pip install -vvvv apache-airflow[google]==2.0.2 --constraint https://raw.githubusercontent.com/apache/airflow/constraints-2.0.2/constraints-3.6.txt
:https://gist.github.com/potiuk/17a3d591fb091bdd8a0e213f49b6b0af
I might be wrong, of course, but it looks like this.
UPDATE:
I run it with
-vv
and it fails with the 'google-cloud-bigquery-storage` error:https://gist.github.com/potiuk/2f9af6a8eaac7ea393fd1f9fe64361c7
The
-v
and-vvv
both fail withpyarrow
error.In neither of those I can find where the
google-cloud-bigquery-storage<2.0.0dev,>=1.0.0; extra == "bqstorage" (from google-cloud-bigquery[bqstorage,pandas])
comes from :(.The text was updated successfully, but these errors were encountered: