📦 Switch to component-based installation for the MQT Core Python package (backport #1596)#1598
Merged
mergify[bot] merged 1 commit intov3.xfrom Mar 31, 2026
Merged
Conversation
Author
|
Cherry-pick of 8cec5ca has failed: To fix up this pull request, you can check it out locally. See documentation: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/reviewing-changes-in-pull-requests/checking-out-pull-requests-locally |
…age (#1596) ## Description This PR switches the MQT Core Python package build to use component-based installation. This is a first step towards enabling MLIR as part of the Python package. The majority of the work in this PR was to properly define our external dependencies (nlohmann_json, spdlog, QDMI) in a way that they can be included as part of our installation components configuration. This requires defining our own installation instructions for these libraries (except for QDMI). One of the big plus points of this is that it allows us to drop all the `DISABLE_INSTALL` in the MLIR code, as the respective code is not added to any of the components we define at the moment. ## 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 focused and relevant to this change. - [x] I have added appropriate tests that cover the new/changed functionality. - [x] I have updated the documentation to reflect these changes. - [x] I have added entries to the changelog for any noteworthy additions, changes, fixes, or removals. - [x] I have added migration instructions to the upgrade guide (if needed). - [x] The changes follow the project's style guidelines and introduce no new warnings. - [x] The changes are fully tested and pass the CI checks. - [x] I have reviewed my own code changes. **If PR contains AI-assisted content:** - [x] I have disclosed the use of AI tools in the PR description as per our [AI Usage Guidelines](https://github.com/munich-quantum-toolkit/core/blob/main/docs/ai_usage.md). - [x] AI-assisted commits include an `Assisted-by: [Model Name] via [Tool Name]` footer. - [x] I confirm that I have personally reviewed and understood all AI-generated content, and accept full responsibility for it. --------- Signed-off-by: burgholzer <burgholzer@me.com> (cherry picked from commit 8cec5ca) Signed-off-by: burgholzer <burgholzer@me.com> # Conflicts: # CMakeLists.txt # cmake/ExternalDependencies.cmake # mlir/lib/Compiler/CMakeLists.txt # mlir/lib/Conversion/MQTOptToMQTRef/CMakeLists.txt # mlir/lib/Conversion/MQTRefToMQTOpt/CMakeLists.txt # mlir/lib/Conversion/MQTRefToQIR/CMakeLists.txt # mlir/lib/Conversion/QCOToJeff/CMakeLists.txt # mlir/lib/Conversion/QIRToMQTRef/CMakeLists.txt # mlir/lib/Dialect/MQTOpt/IR/CMakeLists.txt # mlir/lib/Dialect/MQTRef/IR/CMakeLists.txt # mlir/lib/Dialect/MQTRef/Translation/CMakeLists.txt # mlir/lib/Dialect/QC/Builder/CMakeLists.txt # mlir/lib/Dialect/QC/Translation/CMakeLists.txt # mlir/lib/Dialect/QCO/IR/CMakeLists.txt # mlir/lib/Dialect/QCO/Utils/CMakeLists.txt # mlir/lib/Dialect/QIR/Builder/CMakeLists.txt # mlir/lib/Dialect/QIR/Utils/CMakeLists.txt # mlir/lib/Support/CMakeLists.txt
480d9c0 to
8ac203d
Compare
burgholzer
approved these changes
Mar 31, 2026
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR switches the MQT Core Python package build to use component-based installation.
This is a first step towards enabling MLIR as part of the Python package.
The majority of the work in this PR was to properly define our external dependencies (nlohmann_json, spdlog, QDMI) in a way that they can be included as part of our installation components configuration.
This requires defining our own installation instructions for these libraries (except for QDMI).
One of the big plus points of this is that it allows us to drop all the
DISABLE_INSTALLin the MLIR code, as the respective code is not added to any of the components we define at the moment.Checklist
If PR contains AI-assisted content:
Assisted-by: [Model Name] via [Tool Name]footer.(cherry picked from commit 8cec5ca)