Dear Airflow community,

This email calls for a vote to accept Airflow Improvement Proposal 3: Drop
support for Python 2

The vote will last for at least 1 week until Midnight Sunday 31th of March,
and until three +1 (binding) votes have been cast

This vote is on the proposal itself, not any specific code or pull request.
A failed vote does not mean the proposal is rejected, just not accepted at
this time. (To reject a proposal entirely is its own vote)

This is my +1 (binding) vote.

Having to support Python 2 and 3 concurrently causes some maintenance and
development burden (which is lessened a bit by six and backports modules),
significant extra test time on Travis, and more complexity on the CI
process to also have Python 2 images.

Python 2 is reaching End of Life in January 1, 2020 and will receive zero
updates, even security ones past this date.

Django dropped support for Python 2 with their 2.0 release in December
2017, and this proposal has us follow suit. Airflow 2.0 is already a fairly
major breaking change, so this could be an opportune time to do this. There
is already a significant list of projects which are dropping support for
Python2: https://python3statement.org/
Furthermore, the community started recently adding types to the code of
Airflow to help new contributors, and make the code more
readable/maintainable: https://github.com/apache/airflow/pull/4926/files
Right now we're limited to setting these types in the comments, to maintain
Airflow 2.7 compatibility, which is a pity.

For discussing the proposal in depth, please refer to the Wiki to keep all
the communication in a single place:
https://cwiki.apache.org/confluence/display/AIRFLOW/AIP-3+Drop+support+for+Python+2

Thanks,
Fokko

Reply via email to