You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by po...@apache.org on 2021/04/05 21:48:10 UTC

[airflow] 11/16: Adds Blinker dependency which is missing after recent changes (#15182)

This is an automated email from the ASF dual-hosted git repository.

potiuk pushed a commit to branch v2-0-test
in repository https://gitbox.apache.org/repos/asf/airflow.git

commit 65c3ecf1f13411091e0bbfa669f69c89fe796964
Author: Jarek Potiuk <ja...@potiuk.com>
AuthorDate: Sun Apr 4 01:57:56 2021 +0200

    Adds Blinker dependency which is missing after recent changes (#15182)
    
    This PR fixes a problem introduced by #14144
    
    This is a very weird and unforeseen issue. The change introduced a
    new import from flask `before_render_template` and this caused
    flask to require `blinker` dependency, even if it was not
    specified before as 'required' by flask. We have not seen it
    before, because changes to this part of the code do not trigger
    K8S tests, however subsequent PRs started to fail because
    the setup.py did not have `blinker` as dependency.
    
    However in CI image `blinker` was installed because it is
    needed by sentry. So the problem was only detectable in the
    production image.
    
    This is an ultimate proof that our test harness is really good in
    catchig this kind of errors.
    
    The root cause for it is described in
    https://stackoverflow.com/questions/38491075/flask-testing-signals-not-supported-error
    
    Flask support for signals is optional and it does not blinker as
    dependency, but importing some parts of flask triggers the need
    for signals.
    
    (cherry picked from commit 437850bd16ea71421613ce9ab361bafec90b7ece)
---
 setup.cfg | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/setup.cfg b/setup.cfg
index ed533ca..9c051af 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -82,7 +82,8 @@ install_requires =
     alembic>=1.2, <2.0
     argcomplete~=1.10
     attrs>=20.0, <21.0
-    cached_property~=1.5
+    blinker
+    cached_property~=1.5;python_version<="3.7"
     # cattrs >= 1.1.0 dropped support for Python 3.6
     cattrs>=1.0, <1.1.0;python_version<="3.6"
     cattrs~=1.1;python_version>"3.6"