Move cibuildwheel configuration to pyproject.toml#30252
Conversation
|
Here for example, Pillow 11.2 (instead of the latest 11.3) was installed because of the missing manylinux2014 wheels: https://github.com/matplotlib/matplotlib/actions/runs/16042179733/job/45265805907?pr=30252#step:4:1161 |
2e8c446 to
c4941bb
Compare
This allows developers to test out the build locally. With this, I was able to fix the test command by setting `PIP_PREFER_BINARY` to avoid re-building Pillow, which accidentally dropped manylinux2014 wheels in the latest release: python-pillow/Pillow#9057 Note also that we previously set `CIBW_AFTER_BUILD`, but this doesn't seem to be a valid setting. Thus I have dropped the `twine check`, which only tests the `README` rendering and so checking the sdist is sufficient. Additionally, I have commented out the license check, as we cannot do multiple licenses with meson-python without PEP639 (matplotlib#28982). I have also removed the cpython-freedthreading and cpython-prelease experimental options, as Python 3.13 free-threading is no longer supported in cibuildwheel 4 and Python 3.14 is no longer a prerelease.
|
This has become relevant again since some of our dependencies no longer have wheels for the test command. Note, I also dropped the |
|
How does this interact with running the "real" cibuildwheel in the release repo? |
|
Environment variables should take precedence, so whatever's in the release repo should override, but we can probably drop common stuff like the Windows flags, thus simplifying the release repo a bit. |
PR summary
This allows developers to test out the build locally. With this, I was able to fix the test command by setting
PIP_PREFER_BINARYto avoid re-building Pillow, which accidentally dropped manylinux2014 wheels in the latest release: python-pillow/Pillow#9057Note also that we previously set
CIBW_AFTER_BUILD, but this doesn't seem to be a valid setting. Thus I have dropped thetwine check, which only tests theREADMErendering and so checking the sdist is sufficient. Additionally, I have commented out the license check, as we cannot do multiple licenses with meson-python without PEP639 (#28982).PR checklist