-
Notifications
You must be signed in to change notification settings - Fork 14.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
PIP 20.3 might break Airflow installation #12838
Comments
Thanks @potiuk I am really glad you added this to the installation instructions too! |
FYI @vikramkoka (and @eladkal @paolaperaza) the "upgrade to newer dependencies" and "full tests needed" are special labels that can be added to PRs to change the scope of PR builds: See: https://github.com/apache/airflow/blob/master/CONTRIBUTING.rst#step-4-prepare-pr
Maybe we need some special prefixes for those to distinguish from "regular" labels. If we decide to do that, we will have to update our workflows to handle the new names. |
Sorry about that @potiuk . I did not know that. Will avoid using this "upgrade to new dependencies" label in the future. |
No problem :). that was mainly to explain what they are and probably ad them as exclusions in the description of the triage process. |
I confirmed that one problem was solved. |
I tried to install almost all extra packages with the above patch and it worked. I have the impression that when a new version of pip is released the problem will not occur or it will be marginal.
|
Pypi may have problems installing the master version because we have references to an unreleased package - I haven't tested the extras below. They may or may not work.
|
Cool. Good job @mik-laj !. I will take a look tomorrow as well and try to run all the automation we run on CI. Until this gets released in 20.3.2 we still keep the warning in our docs but this looks very promising ! |
I updated the pip version to the newest master and trigger the build on my CI. Cross fingers. 🤞🏻 |
I found the source of the problem. We have a conflicting constraints entry. Line 294 in fbd525a
Without this entry, the Airflow installation works. |
According to this PR, this entry is not needed. |
This piece of code looks interesting to me. Should we also add a similar check to our project? |
Which version and which constraints you are comparing? The constraints are automatically generated after installing the requirements using pip 20.2.4 Do you have any error reported by PIP check? And which installation combination you are testing (which extras etc.?) |
Well, pip's master branch is now 20.3.2, so... test against that! :) |
@pradyunsg I'm not on the Airflow team and I don't have as deep of an understanding as @potiuk but I gave installing Airflow 1.10.14 with all dependencies using the new resolver with pip 20.3.2. I'm not sure how much is Airflow fixes and how much is 20.3.2s improvements but I am able to successfully run |
I also had the "dependency solving" session anda just discussed witth PIP team and experimented a bit and it seems we managed to pin-point the PIP 20.2.4 bug that generated bad pyarrow dependency. I updated it manually and seems that we are able to make it works for 2.0 as well. 🤞 for quick 20.3.3 release (20.3.2 was considered bad and removed in the meantime) |
20.3.3 is out. I think it solves all the issues that broke Airflow's installation mechanisms. If @potiuk can confirm that, I'm guessing we can go ahead and close this. ;) |
Yep. Confirmed it works for 2.0. I need to do a few more checks and verify 1.10.14 as well and I will close that one, Thanks A LOT @pradyunsg -> just in time for 2.0.0 of Airflow ;). |
Hello, does the installation fail with the latest version of pip 21.0.1? |
Can you please try and tell us ? We did not have time to make some checks with it - it is likely that main problems have been solved already and improve upon. |
Hi @potiuk I ran this command
Is there any test that I can run to confirm proper installation? |
Closing based on earlier comments:
|
Oh wait, this isn’t pypa/pip. Nvm me. I blame the lack of a breakfast. :P |
Closing as a new version of pip has been released. |
FWIW I tried |
The initial problem with the new PIP resolved in 20.3 version have been successfully solved. Seems that version 21.* is much more stable and actually works in all cases, so we are switching back to it. Also changed pip and wheel dependencies to ~= (compatible) version hoping that the experience of backwards incomptible release in major version update have been adopted by the PIP team with 21* series release. Closes apache#12838
UPDATE 15.12.2020 6pm CET:
After releasing PIP 20.3.3 today we were able to make 2.0 compatible with the new PIP and 1.10.14 almost works (papermill extra is problematic when installing airflow using the new PIP). We will try to address it in case we release 1.10.15 but if you want to install papermill extra, please downgrade pip or use legacy resolver.
While with 2.0 it seems that airflow can be installed with new PIP following our recommended practice, in case you see any installation problem please report them as issues and downgrade to pip 20.2.4 as a workaround.
Thanks again to the PyPI team for the fast resolution (just in time for the 2.0 release).
We leave the issue open for a while but we updated the description and lowered the priority. We will close it once we have observed installations from our users after 2.0 is released and confirm that the problem is solved for our users.
UPDATE 15.12.2020 11am CET:
Seems that with the latest 20.3.3 release and fishing pyarrow dependency we are back in business with 2.0.0rc3.
Once we confirm it and verify 1.10.14 we will be able to close that one!
Thanks to the PYPI team for quick solving it.
I am adding this issue to keep track of the on-going problems with new PIP 20.3 released 30th of November.
There are multiple issues with the new PIP that makes it breaks with Airflow's dependency set.
The first blocking issue is pypa/pip#9203 and pypa/pip#9232.
The latest version of PIP @master is still not usable with Airflow:
Even when those is solved we already know we are affected by a few other problems:
We've raised the issue to the PIP team and they struggle with fixing a number of other teething problems.
We keep fingers crossed that they will manage to fix the issues promptly and that they will not be overwhelmed with putting out the fire.
There is no resolution yet, so for the time being downgrading PIP to
20.2.4
version is the best thing you can do.We raised the issue pypa/pip#9231 with the proposal of change to PYPI to add an exclusion list to PyPI and we are waiting for their response.
UPDATE! Tested the current master version of PIP (which has been yesterday announced as candidate to 20.3.2) but it still does not solve installation problems with airflow:
Three new issues created:
The text was updated successfully, but these errors were encountered: