* feat: support pypa build
fix: update `cibuildwheel.linux.troubleshoot` to know about build
Workaround issue with PyPy venv module by installing build[virtualenv]
fix: test_dependency_constraints_file when using build
fix: test/test_pep518.py
fix: use `strtobool` to parse `CIBW_PYPA_BUILD`
fix: update `cibuildwheel.linux.troubleshoot` to know about `python -m pip wheel`
test: use `build_mode` in `test/test_dependency_versions.py` tests
* refactor: use build-backend instead
* Apply suggestions from code review
Co-authored-by: Joe Rickerby <joerick@mac.com>
* refactor: use literal types for build_frontend
* refactor(tests): build_mode -> build_frontend_env
* Update test/test_before_build.py
Co-authored-by: Joe Rickerby <joerick@mac.com>
* Add a mkdocs extension to generate the --help output
* Add the correct setuptools syntax for relative requirements
* docs: use macro plugin instead
* docs: remove indirection in docs
Co-authored-by: Henry Schreiner <henryschreineriii@gmail.com>
* feat: configuration support
* refactor: include manylinux, minor redesign
* "project global" overrides "default platform"
This allows overriding `repair-wheel-command` in the `[tool.cibuildwheel.global]` section.
* fix: add PyPy images
* refactor: remove global
* fix: support tables and arrays
* docs: add pyproject.toml config to docs
* docs: updates based on feedback
* fix: only join if sensible
* refactor: remove manylinux dict
* docs: examples headers and sections on each
* feat: support changing the config from the command line
* fix: use {package}
* tests: add a few tests and mention config one more place
* Restyle examples tabs to remove indent
* Unrelated docs improvements
* Absorb extra content into the tab
* Make the tabs smaller and to the right
* Copy edits to options
* Fix header ids
* Use fewer [tool.cibuildwheel] headers
* docs: minor additions/fixes
* feat: disallow options on some platforms
* docs: make the examples a tiny bit more tabby
* fix: enforce tables/lists are optionally separate
* Some unrelated fixes to the other tab styling
* Minor fix to tab styling
* Refactor to make code a bit more linear and immutable
* Minor docs changes
Co-authored-by: mayeut <mayeut@users.noreply.github.com>
Co-authored-by: Joe Rickerby <joerick@mac.com>
* Add CPython 3.10 support
* Fix logger displaying CPython 3.1 instead of 3.10
* Fix tests failing with CPython 3.10
* Use pytest instead of nose
* feat: --pre flag
Apply suggestions from code review
Co-authored-by: Matthieu Darbois <mayeut@users.noreply.github.com>
* fix: update Python update script to process beta versions
* refactor: prerelease-pythons
* Use `strtobool` to parse `CIBW_PRERELEASE_PYTHONS` env var
* Update python version filtering for universal2 & arm64
* Filter out CPython 3.10 and above for `test_manylinuxXXXX_only[manylinux1]` test
* Use CIBW_BUILD filtering rather than CIBW_SKIP for test_docker_images
* Use skip_patterns to filter out pre-releases
* Use `prerelease_pythons` instead of `pre`
* Reword `CIBW_PRERELEASE_PYTHONS` doc per review.
* Use `CIBW_PRERELEASE_PYTHONS: True` for usage example.
* Update `cibuildwheel --help` doc
* docs: add note on spec.filter
* Clean up the BuildSelector __repr__ by refactoring
* fix: remove platform variants for CIBW_PRERELEASE_PYTHONS
* docs: mention the flag
Co-authored-by: Henry Schreiner <henryschreineriii@gmail.com>
Co-authored-by: Joe Rickerby <joerick@mac.com>
Using the backtick too much breaks up the flow of the text and makes it
hard to read. Here, I'm deciding that project names are not backtick'd,
unless they're referring to something the user would type. e.g.
❌ the `manylinux` project
✅ the manylinux project
❌ set `CIBW_MANYLINUX_IMAGE` to manylinux2010
✅ set `CIBW_MANYLINUX_IMAGE` to `manylinux2010`
* docs: support tabs
* Get superfences working
* Use an 'admonition' as a tab, add some styling
* docs: reorder tabs and modernize
* docs: tabbed options settings
* docs: reorder to match order in other places
* docs: correct the example
* Apply suggestions from code review (lazy edits in GH :) )
* Update mkdocs-include-markdown-plugin and remove unneeded include option
Co-authored-by: Joe Rickerby <joerick@mac.com>
* fix: support docs/tests extras, simpler RtD install
Use oldest-supported-numpy from SciPy in example
* chore: bump to ubuntu-20.04 images
* fix: move extras to setup so we can do combinations
* feat: requires-python
refactor: updating to current proposal
fix: add tests and fix a few issues
docs: Update mostly from @joerick
docs: update README from readthedocs
* refactor: pull out config file reading
* fix: always assume highest Python patch version
* refactor: try new design
* refactor: function and bump MyPy to 0.800
* fix: tighten AST to call only, add docs
* fix: address review points from @joerick