Skip to content

sparsediffpy: add build-sparsediffpy.yml for riscv64 wheels - #920

Merged
luhenry merged 1 commit into
mainfrom
sparsediffpy
Sep 4, 2026
Merged

sparsediffpy: add build-sparsediffpy.yml for riscv64 wheels#920
luhenry merged 1 commit into
mainfrom
sparsediffpy

Conversation

@luhenry

@luhenry luhenry commented Sep 4, 2026

Copy link
Copy Markdown
Member

Compiles SparseDiffEngine, a C library for sparse Jacobians/Hessians, into a Python C extension via scikit-build-core. Upstream publishes no riscv64 wheel, and the 0.3.0 sdist cannot build with any currently-installable scikit-build-core at all (filed as SparseDifferentiation/SparseDiffPy#22) - it's a hard dependency of cvxpy>=1.9.

Mirrors upstream's build-and-publish.yml build_wheels job.

Differs from upstream

  • dnf install openblas-devel before build - equivalent to upstream's own yum/apt before-build.

Matrix: cp312/cp313/cp314 - upstream builds no free-threaded wheel either.

Testing

  • upstream ships no test suite for the wheel (twine check only); builds one C node as a smoke check.

License: Apache-2.0. Wheel also bundles OpenBLAS (BSD-3-Clause) and, transitively via auditwheel, libgfortran (GPL-3.0-with-GCC-exception); licence texts and GPL sources are collected and published.

Built on cp312; extension imports and the smoke node builds cleanly.

sparsediffpy is a hard runtime dependency of cvxpy>=1.9 (pinned
>=0.3.0,<0.4.0) and has no riscv64 wheel anywhere. Its 0.3.0 sdist also
cannot build with any currently-installable scikit-build-core (the
pyproject.toml pins scikit-build-core>=0.10 but uses the cmake.minimum-version
key, which scikit-build-core>=0.8 rejects outright) -- filed upstream at
SparseDifferentiation/SparseDiffPy#22, patched here in the meantime.
@luhenry
luhenry merged commit 669301a into main Sep 4, 2026
9 checks passed
@luhenry
luhenry deleted the sparsediffpy branch September 4, 2026 10:23
@luhenry luhenry linked an issue Sep 4, 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.

sparsediffpy riscv64 support

1 participant