Releases: cda-tum/mqt-qmap
MQT QMAP 2.8.0 Release
👀 What Changed
This release brings along a new kid on the block: A new technique for state preparation on neutral atom systems based on the methods proposed in
Yannick Stade, Ludwig Schmid, Lukas Burgholzer, and Robert Wille.
Optimal State Preparation for Logical Arrays on Zoned Neutral Atom Quantum Computers.
In Design, Automation and Test in Europe. 2025.
https://arxiv.org/abs/2411.09738
Check out the documentation for more details.
🚀 Features and Enhancements
- 🚸 Python Bindings for NA State Preparation @ystade (#556)
- ✨ Integrate Neutral Atom State Preparation @ystade (#500)
🐛 Bug Fixes
- 🩹 Correct the date of the reference @ystade (#562)
- 🐛 Fix test suite regression in heuristic mapper @burgholzer (#559)
📄 Documentation
⬆️ Dependencies
27 changes
- ⬆️🐍 Lock file maintenance @renovate (#560)
- ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.4 @renovate (#557)
- ⬆️🪝 Update pre-commit hook henryiii/validate-pyproject-schema-store to v2024.11.11 @renovate (#558)
- ⬆️🐍 Lock file maintenance @renovate (#555)
- ⬆️👨💻 Update actions/attest-build-provenance action to v1.4.4 @renovate (#552)
- ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.3 @renovate (#553)
- ⬆️🪝 Update pre-commit hook crate-ci/typos to v1.27.3 @renovate (#554)
- ⬆️🐍 Lock file maintenance @renovate (#551)
- ⬆️🪝 Update pre-commit hook crate-ci/typos to v1.27.0 @renovate (#550)
- ⬆️🪝 Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.3 @renovate (#549)
- ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.2 @renovate (#548)
- ⬆️🐍 Lock file maintenance @renovate (#546)
- ⬆️🪝 Update pre-commit hook pre-commit/mirrors-mypy to v1.13.0 @renovate (#545)
- ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.1 @renovate (#542)
- ⬆️🪝 Update pre-commit hook henryiii/validate-pyproject-schema-store to v2024.10.21 @renovate (#544)
- ⬆️🪝 Update pre-commit hook crate-ci/typos to v1.26.8 @renovate (#543)
- ⬆️🪝 Update pre-commit hook adamchainz/blacken-docs to v1.19.1 @renovate (#541)
- ⬆️🐍 Lock file maintenance @renovate (#540)
- ⬆️🪝 Update pre-commit hook pre-commit/mirrors-mypy to v1.12.1 @renovate (#539)
- ⬆️🪝 Update pre-commit hook srstevenson/nb-clean to v4 @renovate (#538)
- ⬆️🪝 Update pre-commit hook pre-commit/mirrors-mypy to v1.12.0 @renovate (#537)
- ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.0 @renovate (#536)
- ⬆️🪝 Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.2 @renovate (#535)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#534)
- ⬆️🐍 Lock file maintenance @renovate (#533)
- ⬆️🪝 Update pre-commit hook adamchainz/blacken-docs to v1.19.0 @renovate (#532)
- ⬆️🪝 Update pre-commit hook python-jsonschema/check-jsonschema to v0.29.4 @renovate (#531)
Full Changelog: v2.7.0...v2.8.0
MQT QMAP 2.7.0 Release
👀 What Changed
Python 3.13 is out and Python 3.8 has reached end-of-life. Hence, this release drops support for Python 3.8 and includes Python 3.13 wheels (including the free-threading Python variant).
Additionally, this is the first release with Linux wheels based on manylinux_2_28 instead of manylinux2014. This means generally faster performance for the package on Linux.
This is also the first release including a uv.lock
file for reproducible, working Python environments. This includes switching from dependabot to renovate for automatically managing dependency updates.
🚀 Features and Enhancements
- 🔒 uv lock file @burgholzer (#524)
- 🚸♻️ Refactor library structure for cleaner separation of concerns @burgholzer (#518)
- 🚨🎨 improved typing usability @burgholzer (#516)
- 🐍⬆️ update image for Linux wheel builds to manylinux_2_28 @burgholzer (#514)
🐛 Bug Fixes
- 🐍 Fix mapping for circuits with more than 128 qubits @burgholzer (#519)
- 🩹 make sure to define
Py_GIL_DISABLED
on Windows for Python 3.13t @burgholzer (#513) - ⬆️ require pybind11 >= 2.13.5 @burgholzer (#512)
📦 Packaging
- ⚗️ upload to Test PyPI for pushes on
main
@burgholzer (#528) - 🐍⬆️ update image for Linux wheel builds to manylinux_2_28 @burgholzer (#514)
🧹 Code Quality
- 🔧 small project configuration updates @burgholzer (#530)
- 🚸♻️ Refactor library structure for cleaner separation of concerns @burgholzer (#518)
- 🚨🎨 improved typing usability @burgholzer (#516)
🤖 CI
- ⚗️ upload to Test PyPI for pushes on
main
@burgholzer (#528) - Configure Renovate @renovate (#526)
⬆️ Dependencies
16 changes
- ⚗️ upload to Test PyPI for pushes on
main
@burgholzer (#528) - Configure Renovate @renovate (#526)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#525)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#523)
- 🔒 uv lock file @burgholzer (#524)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#522)
- Bump cda-tum/mqt-workflows from 1.3 to 1.4 in the github-actions group @dependabot (#521)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#520)
- 🔥 drop Python 3.8 support @burgholzer (#515)
- 🚸♻️ Refactor library structure for cleaner separation of concerns @burgholzer (#518)
- Bump actions/attest-build-provenance from 1.4.2 to 1.4.3 in the github-actions group @dependabot (#517)
- ⬆️ require pybind11 >= 2.13.5 @burgholzer (#512)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#509)
- Bump actions/attest-build-provenance from 1.4.1 to 1.4.2 in the github-actions group @dependabot (#510)
- Bump actions/attest-build-provenance from 1.4.0 to 1.4.1 in the github-actions group @dependabot (#508)
- ⬆️ update mqt-core and adapt to changes @burgholzer (#507)
Full Changelog: v2.6.0...v2.7.0
MQT QMAP 2.6.0 Release
👀 What Changed
This release brings along quite some project configuration updates.
Most notably, it marks the first release to ship Python 3.13 wheels (including the free-threading variant).
In addition, it marks the first release containing compilation methods for neutral atom architectures.
🚀 Features and Enhancements
- ✨ Python 3.13 Support @burgholzer (#498)
- 🚸 add configurable repo owner for mqt-core dependency @burgholzer (#482)
- 🚸 Improved usability for
FindZ3.cmake
@burgholzer (#471) - ✨ Hybrid Neutral Atom Mapper @lsschmid (#458)
- ✨ Neutral Atom Mapper @ystade (#417)
🐛 Bug Fixes
- 🩹 Fix Qubit out of Bounds Error @ystade (#496)
- 🩹 Keep na arch alive 2 @lsschmid (#474)
- ✅ Refine NALAC tests @ystade (#470)
- 💚 Resolve irregularly failing tests @ystade (#469)
- 🚸 Hide
uninstall
target when it exists in superproject @ystade (#454)
📄 Documentation
- 📝 Update Publications @burgholzer (#484)
- 🍱 MQT branding @burgholzer (#451)
- 📝 Improve and Update documentation @ystade (#450)
🤖 CI
- ⬆️ update mqt-workflows to v1.3 (moving tag) @burgholzer (#504)
- ⬆️🪝 update pre-commit config @burgholzer (#502)
- 📦 add artifact attestation @burgholzer (#487)
- ⬆️ update mqt-workflows to 1.1.1 @burgholzer (#479)
- ⚡🔧 Faster cibuildwheel and better Windows wheel repair @burgholzer (#475)
- 💚 Resolve irregularly failing tests @ystade (#469)
- ⬆️ update to
mqt-workflows==1.0.1
@burgholzer (#461) - ⬆️ update black version in blacken-docs @burgholzer (#460)
- 🧱 switch to dedicated reusable MQT workflows @burgholzer (#456)
- 👷⬆️ update reusable workflows @burgholzer (#447)
📦 Packaging
- ⬆️ update to scikit-build-core 0.10 @burgholzer (#503)
- ✨ Python 3.13 Support @burgholzer (#498)
- ⚡ only build bindings target for Python package @burgholzer (#486)
- 📦 add artifact attestation @burgholzer (#487)
- 📦 smaller Python wheels @burgholzer (#457)
🧹 Code Quality
- 🚨 Fix new warnings revealed by clang-tidy 18 @burgholzer (#462)
- ⬆️🪝 update pre-commit config @burgholzer (#502)
- 🎨 Code format and linting config update @burgholzer (#480)
⬆️ Dependencies
36 changes
- ⬆️ Update
cda-tum/mqt-core
@github-actions (#505) - ⬆️ update to scikit-build-core 0.10 @burgholzer (#503)
- ⬆️ update mqt-workflows to v1.3 (moving tag) @burgholzer (#504)
- ⬆️🪝 update pre-commit config @burgholzer (#502)
- Bump cda-tum/mqt-workflows from 1.1.5 to 1.2.1 in the github-actions group @dependabot (#501)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#499)
- Bump actions/attest-build-provenance from 1.3.3 to 1.4.0 in the github-actions group @dependabot (#497)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#495)
- Bump cda-tum/mqt-workflows from 1.1.4 to 1.1.5 in the github-actions group @dependabot (#494)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#492)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#491)
- Bump actions/attest-build-provenance from 1.3.2 to 1.3.3 in the github-actions group @dependabot (#490)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#489)
- Bump cda-tum/mqt-workflows from 1.1.3 to 1.1.4 in the github-actions group @dependabot (#488)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#485)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#483)
- 🚸 add configurable repo owner for mqt-core dependency @burgholzer (#482)
- ⬆️ update mqt-workflows to 1.1.1 @burgholzer (#479)
- ⬆️ Update
cda-tum/mqt-core
@github-actions (#478) - ⚡🔧 Faster cibuildwheel and better Windows wheel repair @burgholzer (#475)
- 🧱 Include MQT Core via FetchContent instead as submodule @ystade (#455)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#476)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#472)
- 🚸 Improved usability for
FindZ3.cmake
@burgholzer (#471) - ⬆️🪝 update pre-commit hooks @pre-commit-ci (#468)
- Bump extern/mqt-core from
e090e10
to4db8776
in the submodules group @dependabot (#467) - ⬆️ update to
mqt-workflows==1.0.1
@burgholzer (#461) - ⬆️ update black version in blacken-docs @burgholzer (#460)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#459)
- 🧱 switch to dedicated reusable MQT workflows @burgholzer (#456)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#453)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#452)
- Bump extern/mqt-core from
5f88f68
to8fbfaa5
in the submodules group @dependabot (#449) - ⬆️🪝 update pre-commit hooks @pre-commit-ci (#448)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#446)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#445)
Full Changelog: v2.5.1...v2.6.0
MQT QMAP 2.5.1 Release
👀 What Changed
Small update that mostly updates the infrastructure. Highlights include:
- 🤖 adoption of
uv
as a package manager in CI - 🔧 update to
pybind11>=2.12
- 👽 adjustments for new
mqt-core
version
🚀 Features and Enhancements
- ✨ Adopt
uv
in CI @burgholzer (#444) - 🚸 allow using raw RST cells in jupyter notebooks @burgholzer (#433)
📄 Documentation
- 🚸 allow using raw RST cells in jupyter notebooks @burgholzer (#433)
- 📝🎨 better dark mode docs @burgholzer (#432)
🤖 CI
- ✨ Adopt
uv
in CI @burgholzer (#444) - ✨ add sp-repo-review to pre-commit check @burgholzer (#434)
🧹 Code Quality
- ✨ add sp-repo-review to pre-commit check @burgholzer (#434)
⬆️ Dependencies
8 changes
- ⬆️ update to
pybind11>=2.12
@burgholzer (#443) - ⬆️🪝 update pre-commit hooks @pre-commit-ci (#441)
- Bump the submodules group with 1 update @dependabot (#439)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#440)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#438)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#437)
- Bump the submodules group with 1 update @dependabot (#435)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#436)
Full Changelog: v2.5.0...v2.5.1
QMAP 2.5.0 Release
👀 What Changed
This release marks mqt-qmap’s support for Qiskit 1.0 and the change to vendor the logicblocks library.
🚀 Features and Enhancements
- 🚸 truly make search space visualization optional @burgholzer (#431)
- ✨ Support for Qiskit 1.0 @burgholzer (#427)
- ♻️ vendor logicblocks @burgholzer (#424)
- Restructuring of the heuristic system @EliasLF (#410)
- SearchVisualizer: New feature
show_only_solution_path
and fixingtapered_search_layer_heights
@EliasLF (#414) - Early termination @EliasLF (#409)
- Fixing minor bug in
disjoint_2q_block
Layering and adding optionadd_barriers_between_layers
@EliasLF (#405) - Fidelity-aware heuristic and search graph visualization @EliasLF (#384)
- 🔥 remove check-sdist from pre-commit @burgholzer (#398)
🐛 Bug Fixes
- 🩹 fix test file configuration @burgholzer (#423)
- Restructuring of the heuristic system @EliasLF (#410)
- SearchVisualizer: New feature
show_only_solution_path
and fixingtapered_search_layer_heights
@EliasLF (#414) - Fixing bug with
show_layout=None
inSearchVisualizer
@EliasLF (#412) - Fix
generatedNodes
benchmark bug @EliasLF (#411) - Fixing bug in single-qubit gate adjusting in
HeuristicMapper
@EliasLF (#408) - Fixing minor bug in
disjoint_2q_block
Layering and adding optionadd_barriers_between_layers
@EliasLF (#405)
🤖 CI
- 🔥 remove Cirrus CI jobs @burgholzer (#430)
- 🔥 remove check-sdist from pre-commit @burgholzer (#398)
📦 Packaging
- ⬆️ update scikit-build-core to 0.8.1 @burgholzer (#428)
🧹 Code Quality
- 🚨 adapt for Qiskit 0.46.0 @burgholzer (#422)
- Restructuring of the heuristic system @EliasLF (#410)
- Early termination @EliasLF (#409)
⬆️ Dependencies
20 changes
- Bump the submodules group with 1 update @dependabot (#429)
- ⬆️ update scikit-build-core to 0.8.1 @burgholzer (#428)
- ✨ Support for Qiskit 1.0 @burgholzer (#427)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#426)
- ♻️ vendor logicblocks @burgholzer (#424)
- Bump the github-actions group with 1 update @dependabot (#425)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#421)
- 🚨 adapt for Qiskit 0.46.0 @burgholzer (#422)
- Bump the submodules group with 1 update @dependabot (#420)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#415)
- ⬆️ update mqt-core @burgholzer (#419)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#413)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#406)
- Bump the github-actions group with 1 update @dependabot (#403)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#404)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#402)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#401)
- Bump the submodules group with 2 updates @dependabot (#400)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#399)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#396)
Full Changelog: v2.4.2...v2.5.0
QMAP 2.4.2 Release
👀 What Changed
Small patch release that mainly brings all dependencies up to date.
🚀 Features and Enhancements
🐛 Bug Fixes
- 🚨 Adapt to latest Qiskit version @burgholzer (#392)
📄 Documentation
- 📝 added project acknowledgements @burgholzer (#395)
- 🩹 📝 removes the
hmtl_baseurl
setting from RtD config @burgholzer (#379)
🤖 CI
- ✨ adopt ruff formatter and update ruff config @burgholzer (#388)
📦 Packaging
- ⬆️ update
scikit-build-core
@burgholzer (#393)
🧹 Code Quality
- ✨ adopt ruff formatter and update ruff config @burgholzer (#388)
⬆️ Dependencies
12 changes
- Bump the submodules group with 2 updates @dependabot (#394)
- ⬆️ update
scikit-build-core
@burgholzer (#393) - 👽 Update to latest
mqt-core
version @pehamTom (#390) - ⬆️🪝 update pre-commit hooks @pre-commit-ci (#391)
- 🚨 Adapt to latest Qiskit version @burgholzer (#392)
- ✨ adopt ruff formatter and update ruff config @burgholzer (#388)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#385)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#382)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#381)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#380)
- Bump the submodules group with 2 updates @dependabot (#378)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#377)
Full Changelog: v2.4.1...v2.4.2
QMAP 2.4.1 Release
👀 What Changed
🐛 Bug Fixes
- 🐛 Fix broken
manylinux
wheels @burgholzer (#376)
🤖 CI
- 🐛 Fix broken
manylinux
wheels @burgholzer (#376)
📦 Packaging
- 🐛 Fix broken
manylinux
wheels @burgholzer (#376)
⬆️ Dependencies
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#374)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#373)
- Bump the python-dependencies group with 1 update @dependabot (#370)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#371)
Full Changelog: v2.4.0...v2.4.1
QMAP 2.4.0 Release
👀 What Changed
This release switches the project from setuptools
to the modern scikit-build-core
. This brings a way better development experience with faster editable rebuilds, no more setup.py
and MANIFEST.in
files, and more. See #366 for some more details.
It also switches the CI to the reusable workflows introduced in MQT Core, which is (more-and-more) truly becoming the backbone of the MQT. Build caching is now enabled for all CI workflows, change detection only runs those flows that are required for the given changes, PyPI publishing uses trusted publishing now, and many more. Also see #366 for more details.
🚀 Features and Enhancements
- ♻️ Refactor Packaging and CI @burgholzer (#366)
🤖 CI
- ♻️ Refactor Packaging and CI @burgholzer (#366)
📦 Packaging
- ♻️ Refactor Packaging and CI @burgholzer (#366)
⬆️ Dependencies
- ♻️ Refactor Packaging and CI @burgholzer (#366)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#364)
- Bump extern/mqt-core from
bc2d7d4
to6c47062
@dependabot (#362) - ⬆️🪝 update pre-commit hooks @pre-commit-ci (#361)
Full Changelog: v2.3.0...v2.4.0
QMAP 2.3.0 Release
👀 What Changed
This release brings two main updates to MQT QMAP
- 🐍 Support for Python 3.12
- 🔧 Integration of the MQT Core library as the successor of the QFR library.
🚀 Features and Enhancements
- Bump pypa/cibuildwheel from 2.14 to 2.15 @dependabot (#358)
- Remove redundant gates after depth-optimal synthesis. @pehamTom (#336)
🐛 Bug Fixes
📄 Documentation
- 📝 Prepare docs for new release @burgholzer (#360)
🤖 CI
📦 Packaging
- Bump pypa/cibuildwheel from 2.14 to 2.15 @dependabot (#358)
⬆️ Dependencies
16 changes
- Bump pypa/cibuildwheel from 2.14 to 2.15 @dependabot (#358)
- Bump extern/mqt-core from
a50af79
tobc2d7d4
@dependabot (#359) - ⬆️🪝 update pre-commit hooks @pre-commit-ci (#353)
- Bump extern/mqt-core from
b1c49b9
toa50af79
@dependabot (#357) - Bump extern/LogicBlocks from
3740599
to15e2262
@dependabot (#356) - ⬆️🪝 update pre-commit hooks @pre-commit-ci (#348)
- Bump extern/mqt-core from
04b2082
tob1c49b9
@dependabot (#349) - Bump extern/LogicBlocks from
fc56965
to3740599
@dependabot (#346) - Bump pypa/cibuildwheel from 2.13 to 2.14 @dependabot (#344)
- ⬆️🪝 update pre-commit hooks @pre-commit-ci (#343)
- 🚚 Move to MQT Core package @burgholzer (#341)
- Bump extern/LogicBlocks from
65ca91c
tofc56965
@dependabot (#340) - ⬆️🪝 update pre-commit hooks @pre-commit-ci (#339)
- ⬆️ Bump extern/LogicBlocks from
b1cb565
to65ca91c
@dependabot (#335) - ⬆️🪝 update pre-commit hooks @pre-commit-ci (#333)
- ⬆️ Bump pypa/cibuildwheel from 2.13.0 to 2.13.1 @dependabot (#330)
Full Changelog: v2.2.1...v2.3.0
QMAP 2.2.1 Release
👀 What Changed
🐛 Bug Fixes
- 🩹⬆️ Enable support for newer
rustworkx
version and updatepre-commit
@pre-commit-ci (#329)
⬆️ Dependencies
- 🩹⬆️ Enable support for newer
rustworkx
version and updatepre-commit
@pre-commit-ci (#329) - ⬆️ Bump extern/LogicBlocks from
99b9810
tob1cb565
@dependabot (#322) - ⬆️ Bump pypa/cibuildwheel from 2.12.3 to 2.13.0 @dependabot (#324)
- ⬆️ Bump extern/qfr from
b837cff
to89412bc
@dependabot (#323)
Full Changelog: v2.2.0...v2.2.1