Skip to content

hmmlearn: add build-hmmlearn.yml for riscv64 wheels - #1494

Merged
luhenry merged 3 commits into
mainfrom
hmmlearn
Sep 8, 2026
Merged

luhenry merged 3 commits into
mainfrom
hmmlearn

Conversation

@luhenry

@luhenry luhenry commented Sep 8, 2026

Copy link
Copy Markdown
Member

Builds the hmmlearn._hmmc pybind11 C++ extension (Hidden Markov Models with a scikit-learn-like API). Upstream publishes no riscv64 wheel.

Mirrors upstream's build.yml.

Differs from upstream

  • Pins SETUPTOOLS_SCM_PRETEND_VERSION_FOR_HMMLEARN - the tag checkout has no history for setuptools_scm to derive a version from.

Matrix: cp312/cp313/cp314/cp314t only - hard runtime dependency scikit-learn>=0.16 only has riscv64 wheels on pypi.riseproject.dev for those interpreters.

Testing

  • same as upstream

License: OK

Built on cp312 equivalent (macOS/cp39, local); 295 passed, 21 xfailed, 5 xpassed.

luhenry added a commit that referenced this pull request Sep 8, 2026
…y 2.5

hmmlearn 0.3.3's own hmm.py/utils.py assign a.shape in place, which
numpy 2.5 deprecates; this project's pytest config promotes that
DeprecationWarning to a hard error, failing nearly every test.
Reproduces with numpy>=2.5 on any architecture, not just riscv64.
_hmmc has no Py_mod_gil slot, so cp314t re-enables the GIL at import and
warns; hmmlearn's own filterwarnings=["error", ...] turns that into a
collection error. -X gil=1 rather than PYTHON_GIL=1, since -I (already
in the test command) ignores PYTHON* env vars.
@luhenry
luhenry merged commit 304afe1 into main Sep 8, 2026
9 checks passed
@luhenry
luhenry deleted the hmmlearn branch September 8, 2026 08:44
@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.

hmmlearn riscv64 support

1 participant