-
Notifications
You must be signed in to change notification settings - Fork 4.1k
Description
Describe the enhancement requested
Add linux/riscv64 to the PyArrow wheel build pipeline so that pre-built wheels are available on PyPI for RISC-V 64-bit users.
Current state: Arrow C++ has riscv64 support (merged in PR #13902, 2022). PyArrow builds and imports successfully on native riscv64 hardware. But no riscv64 wheels are published on PyPI, forcing users to build from source (~1h on current hardware).
Evidence:
- Arrow C++ native build on BananaPi F3 (SpacemiT K1, rv64gc, GCC 14.2.0): SUCCESS (1h13m)
- PyArrow install from source with Parquet, CSV, JSON, Compute, Filesystem: SUCCESS
import pyarrow; print(pyarrow.__version__)→24.0.0a1.dev1
Proposed approach (following the aarch64 pattern from PR #9285):
- Create
manylinux_2_39Docker image for riscv64 (base:quay.io/pypa/manylinux_2_39_riscv64) - Add riscv64 entries to Crossbow tasks in
dev/tasks/tasks.yml - Add CI workflow
.github/workflows/python_wheel_linux_riscv64.yml
CI runners: Native riscv64 runners are available for free via RISE RISC-V runners (used by numpy, llama.cpp, pytorch).
Ecosystem context: 275M monthly PyPI downloads. Key dependency for pandas, polars, and the broader data science stack on RISC-V.
Note: this work is part of the RISE Project effort to improve Python ecosystem support on riscv64 platforms.