Repository navigation
tblite: Add version 0.7.0 - #3215
Merged
Merged
Conversation
luhenry
added a commit
that referenced
this pull request
Oct 14, 2026
luhenry
marked this pull request as draft
October 14, 2026 11:30
Every riscv64 wheel test segfaulted in the first singlepoint, inside libgomp's gomp_iter_dynamic_next() called from tblite_scf_iterator::get_qat_from_qsh's parallel region. That is the riscv64 runners' libgomp fault on dynamic schedules (#617); tblite's schedule(runtime) loops default to dynamic. -Dtblite:openmp=false never reached those loops: dftd4, multicharge, s-dftd3 and ddX declare their openmp options with yield: true, which yields to the top-level python/ project, and it has none. They stay on and their dependencies propagate -fopenmp into tblite's own sources. Turn each one off so nothing is compiled with -fopenmp, as in a top-level tblite build with openmp=false. ddX calls omp_get_wtime and friends regardless of its option, so link with -fopenmp to keep libgomp for those runtime calls; the wheel then imports no GOMP_* work-sharing entry points at all.
ase's matplotlib dependency (and matplotlib's own pillow dependency) have newer releases on PyPI than our registry has riscv64 wheels for, so pip picked PyPI's sdist-only releases over ours. pillow's sdist build then failed with RequiredDependencyException: jpeg, since the manylinux_riscv64 image carries no libjpeg headers. All four build legs (cp312/cp313/cp314/ cp314t) failed identically at the CIBW_TEST_REQUIRES install step. Add pillow and matplotlib to PIP_ONLY_BINARY so pip prefers our riscv64 wheels for them instead.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
tblite0.7.0Compiles the tblite Fortran library and its meson subprojects (dftd4, s-dftd3, mctc-lib, ...) into a CFFI extension linked against LAPACK. Upstream publishes no riscv64 wheel.
Mirrors upstream's
wheel.ymlsdistandwheelsjobs.Differs from upstream
Testing
pytest --pyargs tblite(upstream'sbuild.ymlPython test) withase;qcelementaldropped, its QCSchema tests skip.License: Wheel bundles reference LAPACK/BLAS (BSD-3-Clause) and libgfortran (GPL-3.0-or-later WITH GCC-exception-3.1); the patch adds the LAPACK licence, and the gcc sources are published.
Patches
0001-Ship-tblite-s-and-its-bundled-dependencies-licences-.patch- To upstream. Upstream wheels ship no licence files (legacylicense.textunder meson-python); lists tblite's, its subprojects' and LAPACK's. Reproduces on x86.Patched sdist builds under QEMU riscv64; wheel results from CI.