Skip to content

ci: update to cibuildwheel 3.0 #345

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Jun 11, 2025
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,7 @@ jobs:
make --jobs
make install

- uses: pypa/cibuildwheel@v2.23
- uses: pypa/cibuildwheel@v3.0
env:
CIBW_ARCHS: ${{ matrix.arch }}
CIBW_BUILD: cp${{ matrix.python }}-*
Expand Down
3 changes: 1 addition & 2 deletions .github/workflows/wheels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -103,11 +103,10 @@ jobs:
make --jobs
make install

- uses: pypa/cibuildwheel@v2.23
- uses: pypa/cibuildwheel@v3.0
env:
CIBW_ARCHS: ${{ matrix.arch }}
CIBW_BUILD: cp${{ matrix.python }}-*
CIBW_BUILD_VERBOSITY: 1
CIBW_CONFIG_SETTINGS_WINDOWS: >
"cmake.define.GMP_DLL_TO_COPY"="C:\\\\a\\\\fastjet\\\\fastjet\\\\cgal_auxlibs\\\\auxiliary\\\\gmp\\\\bin\\\\gmp-10.dll"
"cmake.define.Boost_INCLUDE_DIR"="C:\a\fastjet\fastjet\boost_1_88_0\boost_1_88_0"
Expand Down
6 changes: 2 additions & 4 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -90,11 +90,11 @@ strict_equality = true
ignore_missing_imports = true

[tool.cibuildwheel]
skip = "pp*"
# Skip musllinux builds for the moment
skip = "*-musllinux_*"
test-extras = "test"
test-command = "pytest {project}/tests"
manylinux-x86_64-image = "manylinux2014"
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why are you pinning an old version here? We've moved to manylinux_2_28, and numpy 2.3 only ships 2_28 wheels. Why no numpy 2.3, by the way?

Copy link
Collaborator

@lgray lgray Jun 11, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's a bug in awkward array that makes it incompatible with 2.3 for the time being. The fix is in progress.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So long as python 3.9 is supported in manylinux_2_28 I'm fine to use the default. But let's do that in another PR since this is just a CI tool update.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can leave 3.9 and 3.10 as manylinux 2014 if you want, that's also an option with overrides.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think there's a very good reason to.

manylinux-i686-image = "manylinux2014"
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you need 32-bit linux? We've removed it from "auto", so you need to add "auto32" for it. I don't think numpy ships 32-bit linux wheels?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We don't build them those wheels either. So this is fine.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can also now try building the musl linux variant FWIW


[tool.cibuildwheel.linux]
before-all = [
Expand All @@ -111,8 +111,6 @@ before-all = [
"cmake --install CGAL-5.6/build",
"rm -r CGAL-5.6 CGAL-5.6-library.zip",
]
# Skip musllinux builds for the moment
skip = "*-musllinux_*"

[tool.scikit-build]
minimum-version = "build-system.requires"
Expand Down
Loading