Extend Python support in CI matrix and update cibuildwheel version#229
Merged
Conversation
added 3 commits
May 20, 2026 13:51
….14 on Windows Add Python 3.14 to the manylinux/macOS wheel matrix and 3.12, 3.13, 3.14 to the Windows wheel + test matrices. fail-fast: false means any version that doesn't yet have working Boost.Python / eigenpy / conda-forge support will fail in isolation, leaving the rest of the matrix to report cleanly.
v2.23 lacks `cp314` in its build-identifier table, so the Linux/macOS 3.14 jobs in the matrix exited with "No build identifiers selected" before any build attempt. cp314 was added in v2.24+; v3 also includes it and tracks the rolling major tag for ongoing fixes. Windows isn't affected (uses `python -m build` directly).
The previous bump to `@v3` failed every Linux/macOS wheel job at the 'Set up job' step with 'Unable to resolve action ... unable to find version v3'. pypa/cibuildwheel ships rolling minor tags (v3.0, v3.4, ...) but no rolling major. Pinning to the latest stable v3.4.1.
Contributor
|
I have one additional suggestion for this PR: EigenPy at 3.11 is not available in PyPI. But 3.12 is. Can we increase the version of EigenPy to 3.12? |
Contributor
|
Fantastic work, btw. 🚀 |
Updates cache path, both download URLs (release tag + asset name), and both extract/build paths consistently across Linux and macOS cibuildwheel steps. Windows isn't affected (uses conda-forge eigenpy).
Contributor
Author
So the matrix tells us a clear story:
Approach: use eigen-3.4.0 from the source codes for the linux builds. |
manylinux_2_28 ships eigen3-devel 3.3.7, but eigenpy 3.12 needs Eigen 3.4+ for the LeastSquaresConjugateGradient solver (uses innerVector() on Eigen::Ref<const Matrix>, added in 3.4). All 6 Linux wheel jobs were failing inside eigenpy's compile step; macOS works because Homebrew ships Eigen 3.4.x. Drops `eigen3-devel` from yum, downloads + installs Eigen 3.4.0 to /usr/local (header-only, ~2MB). Adds the tarball to the cache.
Contributor
Author
|
@ofloveandhate It's done. Please have a look. ;) |
Contributor
|
this fixes #229 thank you |
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.
This pull request updates the CI workflow in
.github/workflows/build_and_test.ymlto expand Python version support and update a key build dependency. The main changes ensure that the project is tested and built against the latest Python releases, including Python 3.14, and that the build process uses a newer version ofcibuildwheel.Python version support:
Build tool update:
pypa/cibuildwheelaction from versionv2.23tov3.4.1to take advantage of new features and improved compatibility with recent Python versions.