Commit Graph
208 Commits
Author SHA1 Message Date
Henry Schreiner 1828c10ab3 Bump version: v4.2.0 2026-08-04 22:23:12 -04:00
Henry Schreiner 4726cd35bb Bump version: v4.1.1 2026-07-24 16:31:06 -04:00
Joe Rickerby 2947353127 Bump version: v4.1.0 2026-06-12 17:02:22 +01:00
Mike Evdokimov f4afd95cbc Add FAQ section on caching cibuildwheel's downloaded tools (#2842)
* Add FAQ section on caching cibuildwheel's downloaded tools

Adds a Tips entry covering:

- What cibuildwheel caches (CPython/PyPy installers, virtualenv,
  python-build-standalone archives) and the default per-OS cache folder.
- How to override the cache location with ``CIBW_CACHE_PATH``.
- A worked GitHub Actions example pairing ``actions/cache`` with
  ``CIBW_CACHE_PATH`` so the cache survives between runs.
- A pointer to ``--clean-cache`` for invalidating stale entries.

Closes #1585.

Per @joerick's request in the issue ("a caching section in the FAQ
would be great, if you can contribute it") the scope is intentionally
narrow — just FAQ-level guidance. Platform-specific caching (e.g.
Windows NuGet, addressed in #2839) lives in the platforms doc.

* docs: bump actions/cache v4 to v5

* docs: move cache to runner.temp, add cache poisoning warning (review feedback)
2026-06-12 14:02:09 +01:00
Henry Schreiner f03ac7617d Bump version: v4.0.0 2026-06-07 14:53:57 -04:00
Henry Schreiner 866ae74781 docs: fix CUDA manylinux container references in FAQ (#2900)
Noticed by Claude when doing something else.
2026-06-06 10:32:03 -04:00
Philip Hyunsu Cho 785d812a47 docs: add instructions for building CUDA wheels (#2896)
* Add documentation for building CUDA wheels

* Move to Tips section
2026-06-06 08:18:02 -04:00
Henry Schreiner f6bd0477cc Bump version: v4.0.0rc2 2026-06-05 09:26:48 -04:00
Henry Schreiner 2f49f9a050 fix: minor 4.0 issues in Android validation, docs, and docstring (#2891)
* fix: minor 4.0 issues in android validation, docs, and docstring

- android: raise a clear FatalError when ANDROID_API_LEVEL is not an
  integer, instead of an uncaught ValueError deep in localized_vars
- docs: note that delvewheel is the default Windows repair-wheel-command
  since 4.0 and how to skip it for platform-tagged wheels with no
  extension module; update the now-outdated FAQ wording
- venv: fix _parse_pip_constraint_for_virtualenv docstring to say
  marker-bearing constraints are evaluated against the host's default
  environment (not skipped) when marker_env is None

Assisted-by: ClaudeCode:claude-opus-4.8

* fix: use int() with original error for ANDROID_API_LEVEL validation

Handle ANDROID_API_LEVEL validation via try/except around int() so the
original exception message is surfaced, and so non-ASCII Unicode digits
(which isdigit() accepts but int() may reject) are handled correctly.

Assisted-by: ClaudeCode:claude-opus-4.8

* refactor: address reivew by moving error catch

Assisted-by: ClaudeCode:claude-opus-4.8
Signed-off-by: Henry Schreiner <henryfs@princeton.edu>

---------

Signed-off-by: Henry Schreiner <henryfs@princeton.edu>
2026-06-03 15:23:06 -04:00
CopilothenryiiiHenry Schreinercopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
b84dd90062 docs: support intersphinx (#2871)
* Initial plan

* Add mkdocs-intersphinx plugin to generate objects.inv for intersphinx linking

Co-authored-by: henryiii <4616906+henryiii@users.noreply.github.com>

* Add options.md comments to schema generator

Co-authored-by: henryiii <4616906+henryiii@users.noreply.github.com>

* Plan intersphinx marker fix

Co-authored-by: henryiii <4616906+henryiii@users.noreply.github.com>

* Add Python 3.12 marker to mkdocs-intersphinx

Co-authored-by: henryiii <4616906+henryiii@users.noreply.github.com>

* Revert schema comment metadata changes

Co-authored-by: henryiii <4616906+henryiii@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: henryiii <4616906+henryiii@users.noreply.github.com>
Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2026-05-29 13:22:53 -04:00
Henry Schreiner 02b64875a0 docs: remove outdated numpy info (#2855)
Signed-off-by: Henry Schreiner <henryfs@princeton.edu>
2026-05-15 16:08:44 +05:30
Henry Schreiner 54327ab9d3 Bump version: v4.0.0rc1 2026-05-14 08:58:13 -07:00
79244d366c feet: general approach to auditing wheels with abi3audit default (#2805)
* WIP - initial punt at audit command

* Add `abi3audit` as a dependency

* Add helper functions to check stable ABI wheels

* Run `abi3audit` for macOS and Windows wheels

* Copy out of container for repairing?

* Add some notes that `cibuildwheel` runs `abi3audit`

* Add basic unit tests

* Add a basic C extension with `Py_LIMITED_API`

* Add a test project that violates Stable ABI

* Fix linux test

* Skip abi3 wheel tests for Pyodide

* Patch the correct subprocess module

* wrap cleanup of abi3audit dir

* Write the docs for the new options

* Move to above testing in docs

* Implement audit-requires and audit-command

* Some cleanups after self-review

* Add default value

* fix type errors

* the key is `audit-command`, not `audit`

* Add a variety of tests for audit requires options

* Add `test_audit_requires` similar to `test_test_requires`

* Add some configurability-related audit tests

* Fix parsing error with options docs leaving out commands

* Better way to extract version (maybe helps Pyodide?)

* Fix a case of unbound `use_uv`

* Standardise: rename to `abi3_wheel`

* Fix audit command run message

* Simplify custom audit command a bit

* Remove unnecessary skip for Pyodide

* Pyodide should have no default audit command

* More accurate skip messages for Pyodide skips

* Wheels are audited after they are repaired

* Regenerate constraints to include `abi3audit`

* Fix typos

* Some attempts for Windows fixes

* Check `pyvenv.cfg` instead of directory existence

* Add validation for lack of wheel placeholders

* Try yet another Windows `uv` fix

* Regenerate diagram and re-trigger Azure CI

* Add missing `import sys` for abi3 C extension tests

* Remove audit-command at the global level

* Clarify `abi3audit` pinning a little bit

* Regen constraints

* Discard changes to cibuildwheel/resources/constraints-pyodide312.txt

* Discard changes to cibuildwheel/resources/constraints-pyodide313.txt

* try opt-in uv again

* fix issue on windows on Python 3.13 related to nested venvs

On win / python 3.13, virtualenv creates a venv where the 'home'
points back to the venv that sys.executable was running in, rather
than the root install. that seemingly leads to problems with package
resolution, where pip.exe couldn't find the pip python package.
this appears to fix it!

* Update constraints

* chore: revert python-discovery bump

Assisted-by: OpenCode:glm-5.1
Signed-off-by: Henry Schreiner <henryfs@princeton.edu>

* fix: restore workaround for graalpy

Assisted-by: OpenCode:glm-5.1
Signed-off-by: Henry Schreiner <henryfs@princeton.edu>

---------

Signed-off-by: Henry Schreiner <henryfs@princeton.edu>
Co-authored-by: Agriya Khetarpal <74401230+agriyakhetarpal@users.noreply.github.com>
Co-authored-by: Henry Schreiner <henryfs@princeton.edu>
2026-05-14 07:41:14 -07:00
Matthieu Darbois 8bdb703302 break: drop Python 3.8 (#2686) 2026-05-10 21:19:36 -04:00
Joe Rickerby 8d2b08b684 Bump version: v3.4.1 2026-04-02 14:57:41 +01:00
sedat4ras 8a2ca0ce78 docs: clarify that v3 major tag doesn't exist, minor version tags do (#2790) 2026-03-23 11:43:29 -04:00
Joe Rickerby ee02a1537c Bump version: v3.4.0 2026-03-05 09:00:28 +00:00
Joe RickerbyandHenry Schreiner a2f965f62f Add an integration test and debug issues with the meson backend (#2718)
* Add an integration test with the meson backend

* Modify script to allow testing of the GHA action on a PR

* Try adding cython to languages in meson config

* Revert "Try adding cython to languages in meson config"

This reverts commit 50378a1c7e38665492ad0c683b178e4d96928e1e.

* Pass --vsenv to meson on windows

As seen here https://github.com/matplotlib/matplotlib/blob/9957c394bd01deb7a9bd9cb27804f447a52dc522/.github/workflows/cibuildwheel.yml#L114

* Disable win32 builds for the meson test

* Move the windows-specific config into the test project definition

This is so it can be tested with bin/run_example_ci_configs.py

* Add some docs to the FAQ about meson on windows

* Update bin/run_example_ci_configs.py

Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>

---------

Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
2026-02-08 10:36:47 +00:00
Joe Rickerby 298ed2fb2c Bump version: v3.3.1 2026-01-05 19:57:01 +00:00
Joe Rickerby 63fd63b352 Bump version: v3.3.0 2025-11-12 19:27:31 +00:00
Joe Rickerby 9c00cb4f6b Bump version: v3.2.1 2025-10-12 09:23:50 +01:00
Joe Rickerby 7c619efba9 Bump version: v3.2.0 2025-09-22 21:44:26 +01:00
Henry Schreiner c923d83ad9 Bump version: v3.1.4 2025-08-19 14:16:52 -04:00
Henry Schreiner 352e01339f Bump version: v3.1.3 2025-08-01 12:38:46 -04:00
Henry Schreiner 9e4e50bd76 Bump version: v3.1.2 2025-07-29 09:12:51 -06:00
Joe Rickerby e6de07ed39 Bump version: v3.1.1 2025-07-24 19:14:08 +01:00
Henry Schreiner ffd835cef1 Bump version: v3.1.0 2025-07-23 23:23:06 -04:00
Joe Rickerby 95d2f3a92f Bump version: v3.0.1 2025-07-05 19:03:42 +01:00
Joe Rickerby 5f22145df4 Bump version: v3.0.0 2025-06-11 14:02:58 +01:00
Henry Schreiner ff86a64577 docs: add tips for numpy (#2465)
* docs: add tips for numpy

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>

* docs: update example for numpy 2.3.0

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>

* Update docs/faq.md

---------

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
2025-06-11 08:57:24 +01:00
Henry Schreiner 3c5ff09888 Bump version: v3.0.0rc3 2025-06-11 00:57:01 -04:00
Henry Schreiner 2edf578499 Bump version: v3.0.0rc2 2025-06-06 00:05:23 -04:00
Joe Rickerby 31f536bdf3 Bump version: v3.0.0rc1 2025-06-05 11:39:19 +00:00
Henry Schreiner a76b6fc338 Bump version: v3.0.0b5 2025-06-03 02:49:08 -04:00
Henry SchreinerandMatthieu Darbois f8168e2a89 docs: found more to convert to toml (#2430)
* docs: found more to convert to toml

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>

* Apply suggestions from code review

Co-authored-by: Matthieu Darbois <mayeut@users.noreply.github.com>

---------

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
Co-authored-by: Matthieu Darbois <mayeut@users.noreply.github.com>
2025-05-29 19:54:00 -04:00
Henry Schreiner cf078b0954 Bump version: v3.0.0b4 2025-05-29 00:27:20 -04:00
Joe Rickerby c41b47f7c2 Bump version: v3.0.0b3 2025-05-28 20:07:38 +01:00
Joe Rickerby 7298563b25 docs: fix many/musllinux option names and values and other broken links (#2425) 2025-05-28 16:04:55 +01:00
Joe Rickerby dded469d60 Bump version: v3.0.0b2 2025-05-25 13:02:14 +01:00
Joe Rickerby 90a0ddeff0 Bump version: v3.0.0b1 2025-05-19 09:29:14 +01:00
Joe Rickerby e9a8781000 Merge branch '2.x' 2025-04-26 11:46:15 +01:00
Joe Rickerby faf86a6ed7 Bump version: v2.23.3 2025-04-26 11:39:25 +01:00
Joe RickerbyandHenry Schreiner 1d34f85c63 General docs improvements for v3.0 (#2280)
* Split the docs into sections

* Split the options page into two pages - so the reference is more clean

* Reorder/Tidy up this 'deliver' page to make auto-deploy more obvious

* Fix up some links

* Merge the platform docs into a single page to clean up the navbar.

* Split the setup page to make a page dedicated to CI setup

* Move general platform-specific information into the platforms page

* Tidy up the platforms page

* Remove some redundancy in the cpp/platforms docs

* Clarify this section

* Move another FAQ entry to the platforms page

* Remove some out-of-date entries from the FAQ

* A few corrections to the options page

* Fix some broken links

* Improve the Docker references

* Update bump version filename

* Improve options TOC information density

* whitespace

Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>

* Convert the normal test invocation to `pytest ./tests`, not placeholder

---------

Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
2025-04-13 08:16:55 +02:00
Joe Rickerby 094782a41d Merge branch '2.x' 2025-03-24 21:30:34 +00:00
Joe Rickerby d04cacbc98 Bump version: v2.23.2 2025-03-24 21:25:38 +00:00
Matthieu DarboisandJoe Rickerby 059d8ea25a feat: drop EOL manylinux images (#2316)
* drop EOL manylinux images

* chore: use multi-arch manylinux images as a source for image tag

Using multi-arch images directly messes with parallel tests for now.
Using them as a source for image tag ensures that all architecture specific tags are pointing to the same tag for a given manylinux / musllinux policy.

* Apply review suggestion

Co-authored-by: Joe Rickerby <joerick@mac.com>

---------

Co-authored-by: Joe Rickerby <joerick@mac.com>
2025-03-22 12:26:38 -04:00
Hadi AlqattanandHenry Schreiner fccd32f9b2 Doc: add a note about Rustc's minimum MACOSX_DEPLOYMENT_TARGET requirement (#2326)
* doc: add a note about rustc's minimum MACOSX_DEPLOYMENT_TARGET requirement

* Update docs/platforms/macos.md

* Update faq.md

---------

Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
2025-03-22 07:29:45 +01:00
Joe Rickerby 42728e866b Bump version: v2.23.1 2025-03-15 17:58:14 +00:00
Joe Rickerby 6cccd09a31 Bump version: v2.23.0 2025-03-01 13:27:50 +00:00
Henry Schreiner ee63bf16da Bump version: v2.22.0 2024-11-23 01:44:09 -05:00