Skip to content

deltalite: add build-deltalite.yml for riscv64 wheels - #1805

Open
luhenry wants to merge 1 commit into
mainfrom
deltalite
Open

deltalite: add build-deltalite.yml for riscv64 wheels#1805
luhenry wants to merge 1 commit into
mainfrom
deltalite

Conversation

@luhenry

@luhenry luhenry commented Sep 12, 2026

Copy link
Copy Markdown
Member

Compiles deltalite, a pyo3/maturin streaming partition-upsert engine for Delta Lake tables built on the deltalake (delta-rs) crate, into an abi3 wheel. Upstream publishes no riscv64 wheel.

Mirrors upstream's build-deltalite.yml.

Differs from upstream

  • Sparse-checks-out rust/ + LICENSE instead of the full posthog monorepo - the Cargo workspace only needs that slice.
  • Copies LICENSE into rust/deltalite/python/ - maturin globs licence files next to pyproject.toml, which sits below the repo root.
  • Builds via PyO3/maturin-action targeting riscv64gc-unknown-linux-gnu - upstream's matrix has no riscv64 entry.
  • Does not run upstream's own differential parity suite: ci-deltalite-python.yml pins deltalake/pyarrow/duckdb and runs it against them, but uv (0.12.13, riscv64) rejects deltalake==1.6.3's only wheel (cp310-abi3-manylinux_2_39_riscv64, correctly served with data-requires-python: >=3.10) as having "no usable wheels" whenever it's resolved by name from an index - reproduced with our registry as both the extra index and, separately, the default index, ruling out an index-priority cause. duckdb/pyarrow (exact cp312-cp312 tags, no abi3) and deltalite's own local-file wheel install both succeed under the same job, isolating the break to uv's abi3-forward-compatibility tag check specifically for a registry-resolved wheel. Of the 8 files under rust/deltalite/python/tests, 7 import deltalake/pyarrow/duckdb (directly or via harness/common.py) and can't run without them; only test_planner.py is self-contained, so it's the one upstream test kept.

Matrix: cp312-abi3 (built once) - pyo3's abi3-py312 feature is unconditional in Cargo.toml.

Testing

  • test_planner.py (the one upstream test file with no external deltalake/pyarrow/duckdb dependency).
  • Wheel-level: licence-file check.

License: OK

Built on cp312-abi3-manylinux_riscv64; results pending CI.

luhenry added a commit that referenced this pull request Sep 12, 2026
@luhenry
luhenry force-pushed the deltalite branch 3 times, most recently from 48a3d7b to 1bb8e55 Compare September 12, 2026 20:51
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.

1 participant