* feature: add support for `py3-none-{platform}` wheels
This extends the mechanism introduced in #1091 for `abi3` wheels.
Most of the mentions to `abi3` have been removed and replaced by a more generic `compatible_wheel`.
This allows to build a wheel `foo-0.1-py3-none-win_amd64.whl` only once and still test with every configured python.
* Add integration test for py3-none abi wheels
* Fix expected_wheels for py3-none abi
* Limit test to three pythons and check for certain log messages
* chore: add some comments to explain filter process
Co-authored-by: Joe Rickerby <joerick@mac.com>
Co-authored-by: Henry Schreiner <henryschreineriii@gmail.com>
This extends the mechanism introduced in #1091 for `abi3` wheels.
Most of the mentions to `abi3` have been removed and replaced by a more generic `compatible_wheel`.
This allows to build a wheel `foo-0.1-py3-none-win_amd64.whl` only once and still test with every configured python.
* feature: allow local runs on windows/macOS
Cache python installations to a user cache folder using platformdirs.
The build environment is now a virtual environment to allow proper isolation.
Allows to run tests in parallel.
Co-authored-by: Joe Rickerby <joerick@mac.com>
This fails our CI occasionally, but we don't really care about the
occasional file escaping deletion - this is more about hygene than
anything else, so ignore errors on this step.
* add support for building wheels for windows on arm64
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Fix main_platform_test.py
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Remove unrequired explicit nuget source
* add python arm64 3.9.9 version
* extend update_pythons.py to add win/arm64 support
* update documentation for new win/arm64 platform
* style: include ARM64 in literal
* Fix python 3.9 identifier for win_arm64
* Fix table layout issues in README and add note about arm64 pip issue
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
* Add python3.exe symlink.
* Check if python3.exe already exists and print debug info.
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Raise error.
* Remove error raise and debug output.
* Add comment to symlink creation.
Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Henry Schreiner <HenrySchreinerIII@gmail.com>
* Add test for defaults, fix platform detection
* Improve correctness of reader.identifier with block
* Fix options test to be multiplatform
* 'Refactored by Sourcery'
docs: write a section on overrides
tests: test docker launches
feat: add identifiers to launches
test: add test for correct build step generation
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
* tests: add space in constraints file
* fix: use uri strings in PIP_CONSTRAINTS
* WIP: try using quotes instead of uri
* Update cibuildwheel/windows.py
* Revert "Update cibuildwheel/windows.py"
This reverts commit 0951425524166677fdfd8df7e6bbbc9782ea2fb0.
* Revert "WIP: try using quotes instead of uri"
This reverts commit 5790eda4c6f231d5958f4cbd720683f787eea042.
* fix: work around pip bug with URI handling
* WIP: try biger hack
* fix: try using temporary file
* refactor: use common prefix for install dir on Windows
* Use more flexible type PathOrStr to simplify
* Rename variables to make slightly clearer
Co-authored-by: Joe Rickerby <joerick@mac.com>
* 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>
* chore: rename joerick/cibuildwheel -> pypa/cibuildwheel
* Update Appveyor status badge markup
Note that it still has joerick/cibuildwheel - confusingly it's still within my appveyor account, but this is the new project that points to the pypa github repo
* Update Appveyor badge markup again
I went through a few passes to enable that project, here's the latest.
* Update Azure badge, also
* Update Travis badge to reference the .com
Co-authored-by: Joe Rickerby <joerick@mac.com>
* Try some things to debug Travis failures
* Perhaps there is a config file
* Update .travis.yml
* Update .travis.yml
* Add -FallbackSource to nuget invocation
* Update windows.py
* Tidy things up
* style: second set of updates
* style: more updates from joerick
Co-authored-by: Joe Rickerby <joerick@mac.com>
Co-authored-by: Joe Rickerby <joerick@mac.com>