-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Description
About
This issue bundles and describes two flaws with dependencies, which have been occurring at the same time, five days ago, but are independent from each other.
What's Inside
Enumerating the incompatibilities with recent releases in Python.
Joblib 1.4.0 incompatibility
PyCaret is incompatible with Joblib 1.4.0, because it uses a private function which is no longer there.
- [BUG]: Can't use RegressionExperiment with the latest version of joblib (1.4.0) #3959
Fix dependency: Joblib 1.4.0 breaks PyCaret, so vendorize compatibility routines #3965- Fix dependency: Joblib 1.4.0 breaks PyCaret, so downgrade to <1.4 #3967
Python 3.11.9 incompatibility
Previous versions of Dask, which is pulled in transitively via Fugue through pycaret[parallel]
, stopped working on Python 3.11.9, so that needs an update.
- Incompatibility with python 3.11.9 dask/dask#11038
- [BUG]: TypeError: descriptor '__call__' for 'type' objects doesn't apply to a 'property' object #3960
- Fix dependency: Python 3.11.9 breaks Dask #3963
Evaluation
It is advisable to release this update on behalf of a bugfix release, because otherwise, on new and fresh installations, pulling in Joblib 1.4.0, or when upgrading to Python 3.11.9 and newer, things will go south.
Trivia
Timeline
Both flaws became visible on downstream CI/GHA jobs effectively at the same time, caused by those events.
-
Joblib 1.4.0 was released on Apr 8, 2024, 15:08 GMT.
https://github.com/joblib/joblib/releases/tag/1.4.0 -
GitHub updated their runners to use Python 3.11.9 on Apr 8, 2024, 15:31 GMT+2.
Ubuntu 22.04 (20240407) Image Update actions/runner-images#9656
Software Versions
pycaret Version
3.3.0
Python Version
Python 3.11