From 1246107755ecafef5b98eeb2ce46258eb6306b8b Mon Sep 17 00:00:00 2001 From: Daniel Haag <121057143+denialhaag@users.noreply.github.com> Date: Fri, 17 Apr 2026 00:32:03 +0200 Subject: [PATCH 1/5] Improve prek configuration --- .pre-commit-config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index c66200b22..8f6393452 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -112,7 +112,7 @@ repos: types_or: [c++, c, cuda] priority: 1 - ## CMake format and lint the CMakeLists.txt files + ## Format the CMakeLists.txt files - repo: https://github.com/cheshirekow/cmake-format-precommit rev: v0.6.13 hooks: @@ -127,7 +127,7 @@ repos: rev: v3.8.1 hooks: - id: prettier - types_or: [yaml, markdown, html, css, scss, javascript, json] + types_or: [yaml, markdown, html, css, scss, javascript, json, json5] priority: 1 ## Python linting using ruff From 241d5da90a4e40d8715a1bc1f1feea97ded38fa0 Mon Sep 17 00:00:00 2001 From: Daniel Haag <121057143+denialhaag@users.noreply.github.com> Date: Fri, 17 Apr 2026 00:36:12 +0200 Subject: [PATCH 2/5] Replace blacken-docs with ruff --- .pre-commit-config.yaml | 10 +--------- pyproject.toml | 16 ++++++++-------- 2 files changed, 9 insertions(+), 17 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 8f6393452..f5314ed5f 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -135,6 +135,7 @@ repos: rev: v0.15.9 hooks: - id: ruff-format + types_or: [python, pyi, jupyter, markdown] priority: 1 - id: ruff-check require_serial: true @@ -142,15 +143,6 @@ repos: # Priority 2+: Final checks and fixers - ## Also run Black on examples in the documentation (needs to run after ruff format) - - repo: https://github.com/adamchainz/blacken-docs - rev: 1.20.0 - hooks: - - id: blacken-docs - language: python - additional_dependencies: [black==26.*] - priority: 2 - ## Static type checking using ty (needs to run after lockfile update/ruff format, and ruff lint) - repo: local hooks: diff --git a/pyproject.toml b/pyproject.toml index 13e54d366..2360a046a 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -203,6 +203,7 @@ show-fixes = true src = ["python"] [tool.ruff.format] +preview = true docstring-code-format = true [tool.ruff.lint] @@ -298,14 +299,13 @@ iz = "iz" ket = "ket" -[tool.repo-review] -ignore = [ - "GH200", # We use Renovate instead of Dependabot - "MY100", # We use ty instead of mypy - "PC140", # We use ty instead of mypy - "PC160", # We use a mirror of crate-ci/typos - "PC170", # We do not use rST files anymore -] +[tool.repo-review.ignore] +GH200 = "We use Renovate instead of Dependabot" +MY100 = "We use ty instead of mypy" +PC111 = "We use ruff instead of blacken-docs" +PC140 = "We use ty instead of mypy" +PC160 = "We use a mirror of crate-ci/typos" +PC170 = "We do not use rST files anymore" [tool.cibuildwheel] From c0cd1ce502f70df88eaf3a1eb8b55fcfed7e3689 Mon Sep 17 00:00:00 2001 From: Daniel Haag <121057143+denialhaag@users.noreply.github.com> Date: Fri, 17 Apr 2026 00:38:09 +0200 Subject: [PATCH 3/5] Rename LICENSE.md to LICENSE --- .license-tools-config.json | 2 +- LICENSE.md => LICENSE | 0 pyproject.toml | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename LICENSE.md => LICENSE (100%) diff --git a/.license-tools-config.json b/.license-tools-config.json index 9c7609caf..b8d77c65a 100644 --- a/.license-tools-config.json +++ b/.license-tools-config.json @@ -38,6 +38,6 @@ "uv\\.lock", "py\\.typed", ".*build.*", - "qmap_patterns.txt" + "LICENSE" ] } diff --git a/LICENSE.md b/LICENSE similarity index 100% rename from LICENSE.md rename to LICENSE diff --git a/pyproject.toml b/pyproject.toml index 2360a046a..fb0453557 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -28,7 +28,7 @@ authors = [ ] keywords = ["MQT", "quantum-computing", "design-automation", "compiler", "clifford-synthesis"] license = "MIT" -license-files = ["LICENSE.md"] +license-files = ["LICENSE"] classifiers = [ "Development Status :: 5 - Production/Stable", From d31e0954f336d328676dcadb409fb9e0c9a61caf Mon Sep 17 00:00:00 2001 From: Daniel Haag <121057143+denialhaag@users.noreply.github.com> Date: Fri, 17 Apr 2026 00:41:03 +0200 Subject: [PATCH 4/5] Use macos-26 and macos-26-intel as default macOS runners --- .github/workflows/cd.yml | 4 ++-- .github/workflows/ci.yml | 16 ++++++++-------- .github/workflows/upstream.yml | 2 +- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml index 5181d0a66..6a28dd9b2 100644 --- a/.github/workflows/cd.yml +++ b/.github/workflows/cd.yml @@ -26,8 +26,8 @@ jobs: [ ubuntu-24.04, ubuntu-24.04-arm, - macos-15, - macos-15-intel, + macos-26, + macos-26-intel, windows-2025, windows-11-arm, ] diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 91907515e..0990bde42 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -44,11 +44,11 @@ jobs: strategy: fail-fast: false matrix: - runs-on: [macos-15, macos-15-intel] + runs-on: [macos-26, macos-26-intel] compiler: [clang] config: [Release] include: - - runs-on: macos-15 + - runs-on: macos-26 compiler: clang config: Debug uses: munich-quantum-toolkit/workflows/.github/workflows/reusable-cpp-tests-macos.yml@b59d15aa4f266e713afad51e132bde6e3a28a6b3 # v1.18.1 @@ -106,7 +106,7 @@ jobs: strategy: fail-fast: false matrix: - runs-on: [macos-14, macos-15, macos-15-intel] + runs-on: [macos-15, macos-15-intel, macos-26, macos-26-intel] compiler: [clang, clang-20, clang-21, gcc-14, gcc-15] config: [Release, Debug] uses: munich-quantum-toolkit/workflows/.github/workflows/reusable-cpp-tests-macos.yml@b59d15aa4f266e713afad51e132bde6e3a28a6b3 # v1.18.1 @@ -171,8 +171,8 @@ jobs: [ ubuntu-24.04, ubuntu-24.04-arm, - macos-15, - macos-15-intel, + macos-26, + macos-26-intel, windows-2025, ] uses: munich-quantum-toolkit/workflows/.github/workflows/reusable-python-tests.yml@b59d15aa4f266e713afad51e132bde6e3a28a6b3 # v1.18.1 @@ -197,7 +197,7 @@ jobs: strategy: fail-fast: false matrix: - runs-on: [macos-14, windows-2022] + runs-on: [macos-15, macos-15-intel, windows-2022] uses: munich-quantum-toolkit/workflows/.github/workflows/reusable-python-tests.yml@b59d15aa4f266e713afad51e132bde6e3a28a6b3 # v1.18.1 with: runs-on: ${{ matrix.runs-on }} @@ -231,8 +231,8 @@ jobs: [ ubuntu-24.04, ubuntu-24.04-arm, - macos-15, - macos-15-intel, + macos-26, + macos-26-intel, windows-2025, windows-11-arm, ] diff --git a/.github/workflows/upstream.yml b/.github/workflows/upstream.yml index 4492ac141..049f58092 100644 --- a/.github/workflows/upstream.yml +++ b/.github/workflows/upstream.yml @@ -18,7 +18,7 @@ jobs: strategy: fail-fast: false matrix: - runs-on: [ubuntu-24.04, macos-15, windows-2025] + runs-on: [ubuntu-24.04, macos-26, windows-2025] uses: munich-quantum-toolkit/workflows/.github/workflows/reusable-qiskit-upstream-tests.yml@b59d15aa4f266e713afad51e132bde6e3a28a6b3 # v1.18.1 with: runs-on: ${{ matrix.runs-on }} From 6b8f6fcadd745ab43453cfea79a4ccb41991301c Mon Sep 17 00:00:00 2001 From: Daniel Haag <121057143+denialhaag@users.noreply.github.com> Date: Fri, 17 Apr 2026 01:11:31 +0200 Subject: [PATCH 5/5] Update scikit-build-core --- pyproject.toml | 4 ++-- uv.lock | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index fb0453557..756591d52 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -10,7 +10,7 @@ requires = [ "nanobind~=2.11.0", "setuptools-scm>=9.2.2", - "scikit-build-core>=0.11.6", + "scikit-build-core>=0.12.2", "mqt.core~=3.4.1", ] build-backend = "scikit_build_core.build" @@ -385,7 +385,7 @@ exclude = [ build = [ "nanobind~=2.11.0", "setuptools-scm>=9.2.2", - "scikit-build-core>=0.11.6", + "scikit-build-core>=0.12.2", "mqt.core~=3.4.1", ] docs = [ diff --git a/uv.lock b/uv.lock index 64067828f..2e6a8ecd5 100644 --- a/uv.lock +++ b/uv.lock @@ -1785,7 +1785,7 @@ provides-extras = ["visualization"] build = [ { name = "mqt-core", specifier = "~=3.4.1" }, { name = "nanobind", specifier = "~=2.11.0" }, - { name = "scikit-build-core", specifier = ">=0.11.6" }, + { name = "scikit-build-core", specifier = ">=0.12.2" }, { name = "setuptools-scm", specifier = ">=9.2.2" }, ] dev = [ @@ -1801,7 +1801,7 @@ dev = [ { name = "pytest-cov", specifier = ">=7.0.0" }, { name = "pytest-sugar", specifier = ">=1.1.1" }, { name = "pytest-xdist", specifier = ">=3.8.0" }, - { name = "scikit-build-core", specifier = ">=0.11.6" }, + { name = "scikit-build-core", specifier = ">=0.12.2" }, { name = "setuptools-scm", specifier = ">=9.2.2" }, { name = "ty", specifier = "==0.0.29" }, { name = "walkerlayout", specifier = ">=1.0.2" }, @@ -2369,7 +2369,7 @@ name = "pexpect" version = "4.9.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "ptyprocess" }, + { name = "ptyprocess", marker = "(python_full_version < '3.11' and sys_platform == 'emscripten') or (python_full_version < '3.11' and sys_platform == 'win32') or (sys_platform != 'emscripten' and sys_platform != 'win32')" }, ] sdist = { url = "https://files.pythonhosted.org/packages/42/92/cc564bf6381ff43ce1f4d06852fc19a2f11d180f23dc32d9588bee2f149d/pexpect-4.9.0.tar.gz", hash = "sha256:ee7d41123f3c9911050ea2c2dac107568dc43b2d3b0c7557a33212c398ead30f", size = 166450, upload-time = "2023-11-25T09:07:26.339Z" } wheels = [