Repository navigation
Cannot install Harlequin on Python 3.14 due to pyarrow dependency #852
Description
Before Proceeding, please acknowledge:
- I have consulted the Troubleshooting guide.
- I have searched Issues and Discussions in this repo.
- Feature requests should be initiated as Discussions. This is a bug report.
Describe the bug
It seems to be an error with the Pyarrow package included in the install, and it till halt the installation from both UV and PIP
To Reproduce
pip install harlequin
or
uv tool install harlequin
Expected behavior
Packages and wheel downloaded / created / built.
Actual behavior
Pyarrow package breaks installation process.
Contributing
Are you interested in contributing a fix?
- Yes
- Maybe
- No
Additional context
Please provide as much as you can, but don't waste your time if it's definitely not relevant or you don't know.
Error message:
/Users//.cache/uv/builds-v0/.tmpQyKeDg/lib/python3.14/site-packages/setuptools/command/build_py.py:212: _Warning: Package 'pyarrow.tests.interchange' is absent from the
packages configuration.
!!
********************************************************************************
############################
# Package would be ignored #
############################
Python recognizes 'pyarrow.vendored' as an importable package[^1],
but it is absent from setuptools' `packages` configuration.
This leads to an ambiguous overall configuration. If you want to distribute this
package, please make sure that 'pyarrow.vendored' is explicitly added
to the `packages` configuration field.
Alternatively, you can also rely on setuptools' discovery methods
(for example by using `find_namespace_packages(...)`/`find_namespace:`
instead of `find_packages(...)`/`find:`).
You can read more about "package discovery" on setuptools documentation page:
- https://setuptools.pypa.io/en/latest/userguide/package_discovery.html
If you don't want 'pyarrow.vendored' to be distributed and are
already explicitly excluding 'pyarrow.vendored' via
`find_namespace_packages(...)/find_namespace` or `find_packages(...)/find`,
you can try to use `exclude_package_data`, or `include-package-data=False` in
combination with a more fine grained `package-data` configuration.
You can read more about "package data files" on setuptools documentation page:
- https://setuptools.pypa.io/en/latest/userguide/datafiles.html
[^1]: For Python, any directory (with suitable naming) can be imported,
even if it does not contain any `.py` files.
On the other hand, currently there is no concept of package data
directory, all directories are treated like packages.
********************************************************************************
!!
check.warn(importable)
error: command 'cmake' failed: No such file or directory
hint: This usually indicates a problem with the package or the build environment.
help: pyarrow (v21.0.0) was included because harlequin (v2.1.3) depends on pyarrow
This repeats for several Pyarrow packages:
_Warning: Package 'pyarrow.tests' is absent from the `packages`
configuration.
_Warning: Package 'pyarrow.src.arrow.python.vendored' is absent
from the `packages` configuration.
_Warning: Package 'pyarrow.src.arrow.python' is absent from the
`packages` configuration.
....and so on
Using UV, there is an error message at the start:
Resolved 43 packages in 127ms
Built tree-sitter==0.24.0 × Failed to build `pyarrow==21.0.0`
├─▶ The build backend returned an error
╰─▶ Call to `setuptools.build_meta.build_wheel` failed (exit status: 1)
[stdout]
running bdist_wheel
and using pip it states this at the end:
note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for pyarrow
Successfully built duckdb
Failed to build pyarrow
error: failed-wheel-build-for-install
× Failed to build installable wheels for some pyproject.toml based projects
╰─> pyarrow
So, all faults seem to point to the Pyarrow packages.
Trying to 'pip install pyarrow' also returns the same error
Can you tell us more about your system?
- Shell: zsh
- Terminal: Ghostty
- OS of the shell: macOS
- OS of the terminal (if different from the shell):
- Default locale / language for your OS/Terminal/Shell: en_US
How did you install Harlequin?
- pipx
- conda/mamba
- pip (global install)
- pip + venv/virtualenv or pipenv
- Poetry
- uv/Rye
- other: _____________
Activity
tconbeer commentedon Oct 9, 2025
Thanks for the report.
Took me a minute to reproduce; the cause is that pyarrow doesn't build wheels for Python 3.14 yet (it's 2 days old); you can fix this by downgrading your python:
[-]Cannot install Harlequin from UV or PIP due to Pyarrow package errors[/-][+]Cannot install Harlequin on Python 3.14 due to pyarrow dependency[/+]tconbeer commentedon Oct 21, 2025
Upstream issue: apache/arrow#47438
Looks like the new PyArrow release is imminent (48 hours or so). Will be interesting to see if that's the last blocker...
smartinussen commentedon Oct 21, 2025
Thanks for replying, I got the same error as before trying your suggestion for the uv command. I saw the comment regarding Python 3.14 afterwards :)
I could however manage to install with
brewinstead. Will re-try with uv to see if that works after new PyArrow is released, as uv would be my preferred method.My sincere thanks for your effort testing this and responding here.
branchv commentedon Oct 25, 2025
FYI, created tconbeer/textual-fastdatatable#146 which will need to be released first to allow latest
pyarrowand then #879 adds support here