alteryx / evalml

EvalML is an AutoML library written in python.
https://evalml.alteryx.com
BSD 3-Clause "New" or "Revised" License
755 stars 85 forks source link

Re-evaluate pandas and Python versions #4314

Open eccabay opened 11 months ago

eccabay commented 11 months ago

With Pandas version 2.1.0 released on August 30th, the package no longer supports Python versions below 3.9.

We missed this for a long time because the majority of our testing (including all tests that run for PRs, as well as the latest dependency checker) only runs on Python 3.8. This was only discovered now because the pandas upgrade happened on our nightly 3.9 tests after sktime upgraded to version 0.23.0.

Our current plan is to pin pandas under version 2.1.0, but this is not a good long term solution. This issue tracks the discussion around what to do with our Python and pandas versioning in the longer term, as this will only become more of a problem as time goes on and Python 3.8 becomes more out of date.

eccabay commented 10 months ago

The same issue has come up with the networkx package bumping their minimum version to Python 3.9, with the version bumping again to 3.10 in the next release. We have pinned networkx in the meantime, see #4350

eccabay commented 7 months ago

Scipy has not supported < Python 3.9 since v1.10, their newest release of v1.12 has breaking changes with evalml.

eccabay commented 7 months ago

Dependencies which have dropped support for Python 3.8 at this point (3/22/24) are:

eccabay commented 3 months ago

After the merge of #4414, we have unpinned a number of the dependencies above. Those that remain pinned are: