Skip to content

Conversation

amotl
Copy link
Contributor

@amotl amotl commented Apr 13, 2024

Problem

The recent release of Python 3.11.9 introduced an incompatibility with current versions of Dask.

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.

Solution

In order to fix the problem without much efforts, this patch updates to a recent version of Dask>=2024.4.1, which includes a corresponding fix.

Evaluation

It is advisable to release this update on behalf of a bugfix release, so that downstream users will get this issue resolved quickly.

References

Comment on lines 38 to 43
# Parallel
dask>=2024.4.1 # Python 3.11.9 breaks Dask (https://github.com/dask/dask/issues/11038)
distributed>=2024.4.1 # Python 3.11.9 breaks Dask (https://github.com/dask/dask/issues/11038)
fugue
flask
Werkzeug>=2.2,<3.0
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Of course, this should actually go into Fugue, but can also be fixed on both projects, depending on how fast this would converge into corresponding bugfix releases on the one project, or the other, and how convenient package maintainers would like to have the installation process for their users.

So, in the same spirit, that patch submits the same updates to the Fugue project.

@amotl amotl changed the title Fix dependencies: Joblib 1.4.0 breaks PyCaret. Python 3.11.9 breaks Dask. Fix dependency: Python 3.11.9 breaks Dask Apr 13, 2024
Python 3.11.9 started to employ a different behaviour when raising
`TypeError`s when reflecting docstrings, which leads to that error when
importing `dask.dataframe`.

  TypeError: descriptor '__call__' for 'type' objects doesn't apply to
  a 'property' object

The solution is either to limit execution to Python <3.11.9, or to
upgrade the `dask` and `distributed` packages to their most recent
versions.

Because PyCaret can't control on which Python versions it is
used downstream, this patch uses the option to upgrade Dask.

Because GitHub recently rolled out Python 3.11.9 on their runners, and
other downstream users may also upgrade soon, it is advisable to release
this update on behalf of a bugfix release.
@Yard1
Copy link
Member

Yard1 commented Apr 14, 2024

Thanks for the PR, this will be included in #3968

@Yard1 Yard1 closed this Apr 14, 2024
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.

2 participants