Skip to content

Commit

Permalink
βš‘πŸ”§ Faster cibuildwheel and better Windows wheel repair (#475)
Browse files Browse the repository at this point in the history
## Description

This PR makes use of `cibuildwheel`'s latest addition of a `build[uv]`
build frontend option that uses `uv` under the hood to speed up the
build process.
Furthermore, it adjusts the Windows repair command to respect namespace
packages.

## Checklist:

<!---
This checklist serves as a reminder of a couple of things that ensure
your pull request will be merged swiftly.
-->

- [x] The pull request only contains commits that are related to it.
- [x] I have added appropriate tests and documentation.
- [x] I have made sure that all CI jobs on GitHub pass.
- [x] The pull request introduces no new warnings and follows the
project's style guidelines.

---------

Signed-off-by: burgholzer <burgholzer@me.com>
  • Loading branch information
burgholzer authored Jun 19, 2024
1 parent 06a0c22 commit b27c790
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 9 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/cd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ on:
jobs:
python-packaging:
name: 🐍 Packaging
uses: cda-tum/mqt-workflows/.github/workflows/reusable-python-packaging.yml@v1.0.1
uses: cda-tum/mqt-workflows/.github/workflows/reusable-python-packaging.yml@v1.1.0
with:
setup-z3: true
z3-version: 4.12.6 # 4.13.0 has incorrectly tagged manylinux wheels
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,37 +14,37 @@ concurrency:
jobs:
change-detection:
name: πŸ” Change
uses: cda-tum/mqt-workflows/.github/workflows/reusable-change-detection.yml@v1.0.1
uses: cda-tum/mqt-workflows/.github/workflows/reusable-change-detection.yml@v1.1.0

cpp-tests:
name: πŸ‡¨β€Œ Test
needs: change-detection
if: fromJSON(needs.change-detection.outputs.run-cpp-tests)
uses: cda-tum/mqt-workflows/.github/workflows/reusable-cpp-ci.yml@v1.0.1
uses: cda-tum/mqt-workflows/.github/workflows/reusable-cpp-ci.yml@v1.1.0
with:
setup-z3: true

cpp-linter:
name: πŸ‡¨β€Œ Lint
needs: change-detection
if: fromJSON(needs.change-detection.outputs.run-cpp-linter)
uses: cda-tum/mqt-workflows/.github/workflows/reusable-cpp-linter.yml@v1.0.1
uses: cda-tum/mqt-workflows/.github/workflows/reusable-cpp-linter.yml@v1.1.0
with:
setup-z3: true

python-tests:
name: 🐍 Test
needs: change-detection
if: fromJSON(needs.change-detection.outputs.run-python-tests)
uses: cda-tum/mqt-workflows/.github/workflows/reusable-python-ci.yml@v1.0.1
uses: cda-tum/mqt-workflows/.github/workflows/reusable-python-ci.yml@v1.1.0
with:
setup-z3: true

code-ql:
name: πŸ“ CodeQL
needs: change-detection
if: fromJSON(needs.change-detection.outputs.run-code-ql)
uses: cda-tum/mqt-workflows/.github/workflows/reusable-code-ql.yml@v1.0.1
uses: cda-tum/mqt-workflows/.github/workflows/reusable-code-ql.yml@v1.1.0
with:
setup-z3: true

Expand Down
6 changes: 3 additions & 3 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -256,7 +256,7 @@ skip = "*-musllinux*"
archs = "auto64"
test-command = "python -c \"from mqt import qmap\""
test-skip = "cp38-macosx_arm64"
build-frontend = "build"
build-frontend = "build[uv]"

[tool.cibuildwheel.linux]
environment = { Z3_ROOT="/opt/python/cp311-cp311/lib/python3.11/site-packages/z3", DEPLOY="ON" }
Expand All @@ -270,6 +270,6 @@ repair-wheel-command = [
environment = { MACOSX_DEPLOYMENT_TARGET = "11.0" }

[tool.cibuildwheel.windows]
before-build = "pip install delvewheel"
repair-wheel-command = "delvewheel repair -v -w {dest_dir} {wheel}"
before-build = "pip install delvewheel>=1.4.0"
repair-wheel-command = "delvewheel repair -v -w {dest_dir} {wheel} --namespace-pkg mqt"
environment = { CMAKE_GENERATOR = "Ninja" }

0 comments on commit b27c790

Please sign in to comment.