2 min read

Since 2010, NumPy has been supporting both Python 2 and Python 3 in parallel. But now that the Python core team is planning to discontinue Python 2 in 2020, NumPy has announced it will drop Python 2.7 support.

The developers of the Python language extended support of Python 2.7 from 2015 to 2020, recognizing that many people were still using Python 2. But the transition to Python 3 was unavoidable, after all. Sensing the inevitable, NumPy decided to join the league of projects that have pledged to drop support for Python 2.7 no later than 2020.

NumPy team cited “an increasing burden on our limited resources” for deciding to drop Python 2 support. “Now that we’re entering the final years of community-supported Python 2, the NumPy project wants to clarify our plans, with the goal of helping our downstream ecosystem make plans and accomplish the transition with as little disruption as possible,” the project team said.

NumPy’s transition plan to Python 3.x

  • Until Dec. 31, 2018, all NumPy releases will fully support both Python 2 and Python 3.
  • Starting Jan. 1, 2019, any new feature releases will support only Python 3.
  • The last Python 2 supporting release will be designated as a long term support (LTS) release, meaning NumPy will continue to merge bug fixes and make bug fix releases for a longer period than usual. Specifically, it will be supported by the community until Dec. 31, 2019.

“On Jan. 1, 2020, we will raise a toast to Python 2, and community support for the last Python 2 supporting release will come to an end,” NumPy announced. “However, it will continue to be available on PyPI indefinitely, and if any commercial vendors wish to extend the LTS support past this point then we are open to letting them use the LTS branch in the official NumPy repository to coordinate that.”

The above is a graceful way of transition. So even though the extra 5 years were sufficient for a smooth passage, the Python team has decided to live by the core principles of free and open source software, by not obstructing third party paid support.

What next?

“If you are a NumPy user who requires ongoing Python 2 support in 2020 or later, then please contact your vendor. If you are a vendor who wishes to continue to support NumPy on Python 2 in 2020+, please get in touch; ideally we’d like you to get involved in maintaining the LTS before it actually hits end of life so that we can make a clean handoff,” the team said.

To minimize disruption, running pip install numpy on Python 2 will continue to give the last working release in perpetuity, but after Jan. 1, 2019, it may not contain the latest features. After Jan. 1, 2020, it may not contain the latest bug fixes.

Python 2.7 was a major release, and there could be users who may require third party paid support in 2020. But there is nothing like enjoying the free, first party support for any software project. Please start planning to move to Python 3.

Writes and reports on lnformation Technology. Full stack on artificial intelligence, data science, and music.


Please enter your comment!
Please enter your name here