Skip to content

Python 3.14 compatibility #23

@tconbeer

Description

@tconbeer

Documenting this here, although I don't think there is anything you can really do to fix this at the moment, Alex.

tconbeer/harlequin#880 allows Harlequin to be installed in Python 3.14. But:

  1. Pandas 2.2 doesn't build wheels for Python 3.14; you need Pandas 2.3 for that. Harlequin needs Pandas for its data table widget.
  2. databricks-sql-python pins Pandas to < 2.3. There is an issue to relax the pin, and also a stalled PR to make the pandas dependency optional; but without those, including harlequin-databricks as an extra forces all Harlequin users to use Pandas < 2.3. That means that all Harlequin users on 3.14 would have to build Pandas from source, which takes several minutes (if they even have the build dependencies installed).

My solution to this, which is the least-bad thing I could come up with, is to force Pandas >= 2.3 for 3.14 users, which requires removing the harlequin-databricks dependency for 3.14 users.

The upshot is that most users get fast installs on 3.14, but Databricks users on Python 3.14 will get a runtime error that the adapter can't be found. I've updated the Harlequin docs to warn against this; you may want to update the README here accordingly. My recommended install command is: uv tool install --python 3.13 'harlequin[databricks]'

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions