Skip to content

pyxirr: add build-pyxirr.yml for riscv64 wheels - #1203

Merged
luhenry merged 2 commits into
mainfrom
pyxirr
Sep 7, 2026
Merged

pyxirr: add build-pyxirr.yml for riscv64 wheels#1203
luhenry merged 2 commits into
mainfrom
pyxirr

Conversation

@luhenry

@luhenry luhenry commented Sep 6, 2026

Copy link
Copy Markdown
Member

Compiles a PyO3/maturin extension of financial functions (XIRR/IRR/NPV/day-count conventions). Upstream publishes no riscv64 wheel.

Mirrors the linux job of upstream's ci.yaml.

Differs from upstream

  • Builds only the cp37-abi3 wheel, not upstream's extra per-interpreter set - redundant once one abi3 wheel covers our whole matrix.

Matrix: single cp37-abi3 wheel, built once and reused across cp312/cp313/cp314; no cp314t - upstream ships no free-threaded wheel.

Testing

  • Upstream ships only Rust cargo test integration tests, no Python suite; added a smoke test covering xirr/irr/npv/fv/day-count/numpy-broadcasting from the README examples.

License: OK

Built and verified locally: cargo build --release --features extension,abi compiles cleanly with no Python numpy needed at build time, and the resulting extension loads and matches every value asserted in the smoke test.

luhenry added a commit that referenced this pull request Sep 6, 2026
pip install pytest numpy in the CIBW test-requires step had no
PIP_EXTRA_INDEX_URL, so it fell back to PyPI (no riscv64 numpy wheel)
and tried building numpy from source, hanging for 10+ minutes before
the job was cancelled.
@luhenry
luhenry merged commit 8a70207 into main Sep 7, 2026
6 checks passed
@luhenry
luhenry deleted the pyxirr branch September 7, 2026 18:09
@luhenry luhenry linked an issue Sep 8, 2026 that may be closed by this pull request
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.

pyxirr riscv64 support

1 participant