Skip to content
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

[AIRFLOW-3923] Update flask-admin dependency to 1.5.3 #4739

Merged

Conversation

suburbanmtman
Copy link
Contributor

@suburbanmtman suburbanmtman commented Feb 19, 2019

Jira

  • My PR addresses the following AIRFLOW-3923 issues and references them in the PR title.

Description

  • Here are some details about my PR, including screenshots of any UI changes:
  • Resolves security vulnerabilities detected in safety for flask-admin 1.5.2:
    36746
    36437

Release notes for 1.5.3:

  • Fixed XSS vulnerability
  • Support nested categories in the navbar menu
  • SQLAlchemy
    -- sort on multiple columns with column_default_sort
    -- sort on related models in column_sortable_list
    -- fix: inline model forms can now also be used for models with multiple primary keys
    -- support for using mapped column_property
  • Upgrade Leaflet and Leaflet.draw plugins, used for geoalchemy integration
  • Specify minimum_input_length for ajax widget
  • Peewee: support composite keys
  • MongoEngine: when searching/filtering the input is now regarded as case-insensitive by default
  • FileAdmin
    -- handle special characters in filename
    -- fix a bug with listing directories on Windows
    -- avoid raising an exception when unknown sort parameter is encountered
    -- WTForms 3 support

Tests

  • My PR adds the following unit tests OR does not need testing for this extremely good reason:

Airflow usage of flask-admin does not appear to touch any of the changes introduced by 1.5.3

Commits

  • My commits all reference Jira issues in their subject lines, and I have squashed multiple commits if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":
    1. Subject is separated from body by a blank line
    2. Subject is limited to 50 characters (not including Jira issue reference)
    3. Subject does not end with a period
    4. Subject uses the imperative mood ("add", not "adding")
    5. Body wraps at 72 characters
    6. Body explains "what" and "why", not "how"

Documentation

  • In case of new functionality, my PR adds documentation that describes how to use it.
    • When adding new operators/hooks/sensors, the autoclass documentation generation needs to be added.
    • All the public functions and the classes in the PR contain docstrings that explain what it does

Code Quality

  • Passes flake8

@codecov-io
Copy link

Codecov Report

Merging #4739 into master will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff           @@
##           master    #4739   +/-   ##
=======================================
  Coverage   74.61%   74.61%           
=======================================
  Files         430      430           
  Lines       28002    28002           
=======================================
  Hits        20893    20893           
  Misses       7109     7109

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6bfa0ba...86c0d7e. Read the comment docs.

@feng-tao
Copy link
Member

feng-tao commented Feb 20, 2019

Actually given we remove the old UI which should be the sole place that used flask-admin, do we still need this dependency?

@suburbanmtman
Copy link
Contributor Author

suburbanmtman commented Feb 20, 2019

flask-admin is still referenced in a few areas but I'm not sure if those components are still necessary given the UI rewrite:

AirflowViewPlugin - not referenced anywhere in project: https://github.com/apache/airflow/blob/master/airflow/__init__.py#L75

Hive Metastore Browser: https://github.com/apache/airflow/blame/master/airflow/contrib/plugins/metastore_browser/main.py#L48

unit test for plugins, uses BaseView and Menu Link: https://github.com/apache/airflow/blob/master/tests/plugins/test_plugin.py#L101

@feng-tao
Copy link
Member

I see. Let's merge your change and then remove the dependency later.

@feng-tao feng-tao merged commit de75b7a into apache:master Feb 20, 2019
@ashb
Copy link
Member

ashb commented Feb 21, 2019

@feng-tao Until we are done with releases on 1.10 we need to keep up to date there anyway (though perhaps on the v1-10-stable branch for things like this in the future)

ashb pushed a commit that referenced this pull request Feb 21, 2019
antonimaciej pushed a commit to PolideaInternal/airflow that referenced this pull request Feb 26, 2019
wmorris75 pushed a commit to modmed/incubator-airflow that referenced this pull request Jul 29, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants