All notable changes to this project will be documented in this file.
The format is based on a mixture of Keep a Changelog and Common Changelog. This project adheres to Semantic Versioning, with the exception that minor releases may include breaking changes.
2.3.1 - 2026-09-05
- ♻️ Directly pass the LLVM installation directory to
cpp-linter(#448) (@simon1hofmann)
- 🐛 Make pull request zizmor findings fail the workflow directly instead of relying on code scanning merge protection (#457) (@burgholzer)
2.3.0 - 2026-08-24
If you are upgrading: please see UPGRADING.md.
- ✨ Allow callers to reduce Python and C++ tests for draft pull requests ([#443]) (@denialhaag)
- 🐛 Sign and attribute the commits created by
reusable-mqt-core-update.yml(#442) (@denialhaag) - 🐛 Consider deleted files in
reusable-change-detection.yml(#441) (@denialhaag)
2.2.3 - 2026-08-19
- 🔐 Allow cross-organization callers to pass AWS and S3 secrets explicitly to
the reusable
cibuildwheelworkflow (#432) (@burgholzer)
- ⬆️ Update munich-quantum-software/setup-mlir to
v1.4.2to add support for LLVM 21.1.8 with binaries that disable runtime type information (RTTI) for the first time (#434)
- 🐛 Name the Windows coverage report after the platform it was created on (#433) (@denialhaag)
2.2.2 - 2026-08-05
If you are upgrading: please see UPGRADING.md.
- ⬆️ Update pypa/cibuildwheel to
v4.2.0(#430) - 📝 Document the
cibuildwheelv4 configuration cleanup for consumers (#424) (@burgholzer)
2.2.1 - 2026-07-29
If you are upgrading: please see UPGRADING.md.
- ⚡️ Initialize native MSVC and use Ninja to activate job-local
sccachein Windows Python test jobs (#417) (@burgholzer)
2.2.0 - 2026-06-22
If you are upgrading: please see UPGRADING.md.
- ✨ Add
run-python-linteroutput toreusable-change-detection.yml(#400) (@denialhaag)
2.1.1 - 2026-06-11
- ⬆️ Update munich-quantum-software/setup-mlir to
v1.4.1to ensure compatibility with Visual Studio 2022 and 2026 (#395)
2.1.0 - 2026-06-11
If you are upgrading: please see UPGRADING.md.
- 🔧 Run
ty checkthroughuvx prek run -a ty(#391) (@denialhaag) - ⬆️ Update munich-quantum-software/setup-mlir to
v1.4.0to add support for more LLVM versions (#392)
2.0.3 - 2026-06-08
If you are upgrading: please see UPGRADING.md.
- ✨ Add
additional-cpp-files,additional-python-files, andadditional-cd-filesinputs toreusable-change-detection.yml(#390) (@denialhaag)
- ⬆️ Update
codecov/codecov-actiontov7.0.0(#388) (@denialhaag) - ⬆️ Update pypa/cibuildwheel to
v4.0.0(#389) (@denialhaag)
2.0.2 - 2026-06-01
If you are upgrading: please see UPGRADING.md.
- 🔐 Expose the inherited secrets
IQM_TOKEN,IQM_QC_ALIAS,AWS_S3_BUCKET,AWS_ACCESS_KEY_ID, andAWS_SECRET_ACCESS_KEYas environment variables in most reusable build, test, lint, and packaging workflows (#383) (@burgholzer)
🐛 Ensure reusable-mqt-core-update.yml runs against main (#380)
(@denialhaag)
2.0.1 - 2026-05-22
- 🐛 Hardcode build directory in
reusable-cpp-linter.yml(#377) (@denialhaag)
2.0.0 - 2026-05-22
If you are upgrading: please see UPGRADING.md.
- 🚸 Adapt C++ workflows to require CMake presets (#363) (@denialhaag)
- ♻️ Add
mlir-debugflag toreusable-cpp-tests-windows.ymlfor requesting a debug build of MLIR (#363) (@denialhaag)
1.18.1 - 2026-04-09
If you are upgrading: please see UPGRADING.md.
- 📦️ Archive packaging-related artifacts again (#356) (@denialhaag)
1.18.0 - 2026-04-08
If you are upgrading: please see UPGRADING.md.
- 🤖 Add zizmor security analysis to CI (#343) (@burgholzer)
- 🛂 Scope secrets for
reusable-mqt-core-update.ymlto anmqt-appGitHub environment (#339) (@burgholzer)
- 💚 Tweak uv caching so that workflows do not fail on
mainbranches due to nothing being cached (#344) (@burgholzer)
1.17.15 - 2026-03-11
If you are upgrading: please see UPGRADING.md.
- ⬆️ Update munich-quantum-software/setup-mlir to
v1.3.0, which improves support for LLVM 22 by re-adding Windows Debug builds (#335) (@burgholzer) - ⬆️ Update
cibuildwheeltov3.4.0(#335) (@denialhaag) - 📦️ Selectively disable archiving when uploading artifacts (#332) (@denialhaag)
1.17.14 - 2026-03-01
- 🐛 Update munich-quantum-software/setup-mlir to
v1.2.1to fix a bug preventing the action to run (#330)
1.17.13 - 2026-03-01
- ⬆️ Update munich-quantum-software/setup-mlir to
v1.2.0, which adds support for LLVM 22 (#329) (@burgholzer)
1.17.12 - 2026-02-18
- 🔧 Run
ty checkthroughuvx prek run -a ty-check(#323) (@burgholzer)
- 🔥 Remove the
nick-fields/retryaction on Windows builds, which put an artificial 15-minute limit on the build time (#321) (@burgholzer)
1.17.11 - 2026-01-07
- ✨ Download Debug builds of LLVM for C++ tests on Windows (#305) (@burgholzer)
- 🔧 Include
mlir/**in C++ change detection (#300) (@burgholzer)
- 🔥 Remove dedicated
run-mlirMLIR output forreusable-change-detection.yml(#300) (@burgholzer)
1.17.10 - 2026-01-04
- 🐛 Fix
LIT_ARGhandling for Linux and macOS C++ jobs (#298) (@burgholzer)
1.17.9 - 2026-01-04
- 🐛 Fix concurrency group overlap in GitHub Actions (#297) (@burgholzer)
1.17.8 - 2026-01-04
- 🔧 Update CI workflows to use
uvfor installing dependencies and addlitinstallation step (#295) (@burgholzer) - 👷 Use new
ubuntu-slimrunners for light workflows (#292) (@burgholzer)
- 🔒 Fix all warnings reported by zizmor (#296) (@burgholzer)
1.17.7 - 2025-12-23
- 🔧 Update munich-quantum-software/setup-mlir to
v1.0.0(#290) (@denialhaag)
1.17.6 - 2025-12-21
If you are upgrading: please see UPGRADING.md.
- 🚸 Change to
nox -s stubsfor driving stub generation (#288) (@burgholzer)
1.17.5 - 2025-12-19
If you are upgrading: please see UPGRADING.md.
- ✨ Add step for checking if Python stub files are up to date (#286) (@denialhaag)
- ✨ Add optional munich-quantum-software/setup-mlir input to allow setting up MLIR in the C++ and Python workflows (#270) (@denialhaag, @burgholzer)
- 🔧 Do not run Python tests on changes to
.pre-commit-config.yaml(#276) (@burgholzer) - 🔧 Do not run C++ tests on changes to bindings (#276) (@burgholzer)
1.17.4 - 2025-12-05
- 🔧 Specify
LDFLAGSandSDKROOTto fix macOS builds with Homebrew Clang (#271) (@denialhaag) - 👨💻 Simplify the workflow for running
ty(#257) (@burgholzer)
1.17.3 - 2025-11-26
If you are upgrading: please see UPGRADING.md.
- ✨ Add optional
cpp-linter-ignore-extrainput to allow ignoring additional files in C++ linter (#241) (@flowerthrower)
- 🐍🚨 Ensure a locked version of
tyis used when enabled to guarantee stability (#255) (@burgholzer)
1.17.2 - 2025-11-24
- 🐍🚨 Use
prekinstead ofpre-commitfor runningmypy(#254) (@burgholzer)
- 🐍🚨 Ensure project dependencies are installed when running
ty(#254) (@burgholzer)
1.17.1 - 2025-11-20
- 👷 Free up disk space before running Python tests (#247) (@denialhaag)
1.17.0 - 2025-09-10
If you are upgrading: please see UPGRADING.md.
- 📌 Pin GitHub Actions to commit SHAs for increased security (various PRs)
- 🔥 Remove CodeQL workflows (#206) (@denialhaag)
1.16.2 - 2025-08-29
- ♻️ Only use workflow-local compiler caching in Python CI and CD (#188) (@burgholzer)
1.16.1 - 2025-08-21
- ✨🐉 Add change detection for MLIR code (#184) (@burgholzer)
1.16.0 - 2025-07-30
If you are upgrading: please see UPGRADING.md.
- ⬆️ Update
cibuildwheeltov3.1.1(#157) (@denialhaag)
1.15.1 - 2025-07-29
- 🐛 Fix bug preventing multiple CMake args (#160) (@denialhaag)
1.15.0 - 2025-07-18
If you are upgrading: please see UPGRADING.md.
- 👷 Add
reusable-qiskit-upstream-issue.ymlworkflow for creating an issue if the Qiskit upstream tests fail (#151) (@denialhaag)
- ♻️ Rename
reusable-qiskit-upstream.ymltoreusable-qiskit-upstream-tests.yml(#151) (@denialhaag)
1.14.0 - 2025-07-17
If you are upgrading: please see UPGRADING.md.
- 👷 Add
reusable-python-coverage.ymlworkflow for uploading Python coverage (#150) (@denialhaag) - 👷 Add
reusable-python-packaging-sdist.ymlworkflow for building source distributions (#150) (@denialhaag) - 👷 Add
reusable-python-packaging-wheel-build.ymlworkflow for building wheels usingbuild(#150) (@denialhaag) - 👷 Add
reusable-python-packaging-wheel-cibuildwheel.ymlworkflow for building wheels usingcibuildwheel(#150) (@denialhaag)
- ♻️ Move matrix generation to calling workflow (#150) (@denialhaag)
- 🔥 Remove
reusable-cpp-ci.ymlworkflow (#150) (@denialhaag) - 🔥 Remove
reusable-python-ci.ymlworkflow (#150) (@denialhaag) - 🔥 Remove
reusable-python-packaging.ymlworkflow (#150) (@denialhaag)
1.13.0 - 2025-07-16
If you are upgrading: please see UPGRADING.md.
- 👷🐧 Allow configuring Clang version in Ubuntu C++ testing workflow (#146) (@burgholzer)
- 👷🍎 Allow configuring GCC and Clang version in macOS C++ testing workflow (#146) (@burgholzer)
- ✨🐉 Add MLIR configuration when specifying
clang-XXas thecompilerin the C++ testing workflows on Linux and macOS (#146) (@burgholzer)
- ♻️ Streamline runner and compiler configuration in C++ as well as Python workflows (#146) (@burgholzer)
1.12.0 - 2025-07-08
If you are upgrading: please see UPGRADING.md.
- 🐍🚨 Add support for running Astral's
tytype checker as part of thereusable-python-linter.ymlworkflow (#128) (@burgholzer)
- 👷 Use GitHub App token for workflow that updates MQT Core (#142) (@denialhaag)
- 🐍🚨 Update
reusable-python-linter.ymlto allow disabling themypytype checker (#128) (@burgholzer)
1.11.0 - 2025-06-15
If you are upgrading: please see UPGRADING.md.
- ⬆️ Update
cibuildwheeltov3.0.0(#126) (@burgholzer) - 💚 Adapt file filter for the change detection to the new project structure regarding the Python bindings (#119) (@ystade)
1.10.0 - 2025-05-23
If you are upgrading: please see UPGRADING.md.
1.9.0 - 2025-04-26
If you are upgrading: please see UPGRADING.md.
- 👷 Add support for Windows 11 ARM runners (#95, #96. #100) (@burgholzer)
- 🚸 Allow configuring the runners enabled for Python packaging (#96) (@burgholzer)
- 🔧 Use MSVC generator for Windows builds over Ninja (#102) (@burgholzer)
- 🔥 Remove
msvc-dev-cmdfrom the Windows runners (#100) (@burgholzer)
1.8.1 - 2025-04-04
📚 Refer to the GitHub Release Notes for previous changelogs.