Michael created AIRFLOW-4903:
--------------------------------

             Summary: Unpinned Flask version causes dependency conflicts
                 Key: AIRFLOW-4903
                 URL: https://issues.apache.org/jira/browse/AIRFLOW-4903
             Project: Apache Airflow
          Issue Type: Bug
          Components: dependencies
    Affects Versions: 1.10.3
            Reporter: Michael


Background: Our build process includes a Dockerfile which installs a specific 
Airflow version, in our case 1.10.3. When running Airflow jobs, we have a 
python package with its own requirements.txt.

Yesterday (July 4, 2019), Flask released 1.1.0, which upgraded its own 
dependencies, which caused dependency conflicts with our python package and its 
requirements.txt, as we saw this when starting Airflow:

 
{{ModuleNotFoundError: No module named 'werkzeug.wrappers.json'; 
'werkzeug.wrappers' is not a package}}
 
And inspecting the pip install logs shows:
 
{{ERROR: flask 1.1.0 has requirement Jinja2>=2.10.1, but you'll have jinja2 
2.9.6 which is incompatible.}}
{{ERROR: flask 1.1.0 has requirement Werkzeug>=0.15, but you'll have werkzeug 
0.14.1 which is incompatible.}}
 
*Workaround:* In our Dockerfile we added a "RUN pip install Flask==1.0.3" 
command to downgrade to the previous Flask version which fixed the issue.
 
*Suggested fix:* Explicitly pin versions of dependencies in setup.py rather 
than use version ranges.
 
 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to