Skip to content

Releases: cda-tum/mqt-core

MQT Core 3.0.0 Beta 4 Pre-Release

04 Feb 19:18
be654c7
Compare
Choose a tag to compare
Pre-release

👀 What Changed

The next pre-release in this major release odyssey.
Most notably, this contains the changes from #822 and #752.

⚛️ MQT Core

⚖️ MQT Core DD Package

🕸️ MQT Core ZX Package

  • 🐛 Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)

🚀 Features and Enhancements

🐛 Bug Fixes

  • 🐛 fix permutation handling in QASM dump @burgholzer (#810)
  • 🐛 use fuzzy comparison for floating point in const evaluation equality check @burgholzer (#809)
  • 🐛 do not invalidate iterator in block collection @burgholzer (#808)
  • 🐛 Fix stripping of idle qubits @burgholzer (#763)
  • 🐛 Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)
  • 🐛 fix endianness in DCX and XX_minus_YY gate matrix definition @burgholzer (#741)
  • 🐛 properly handle timing literals in QASM parser @burgholzer (#724)
  • 🔧📝 unshallow git clone for RtD @burgholzer (#722)

📄 Documentation

📦 Packaging

  • 🔒 update to latest uv version that properly supports dynamically versioned packages @burgholzer (#802)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • ✨ Adopt PEP 735 dependency groups @burgholzer (#762)

🧹 Code Quality

🤖 CI

⬆️ Dependencies

70 changes
Read more

MQT Core 3.0.0 Beta 3 Pre-Release

22 Jan 19:56
4176e32
Compare
Choose a tag to compare
Pre-release

👀 What Changed

The next beta release in the v3.0 series. This time, it brings in a critical fix for QMAP (#810) and updates the reusable workflows to v1.7.

⚛️ MQT Core

⚖️ MQT Core DD Package

🕸️ MQT Core ZX Package

  • 🐛 Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)

🚀 Features and Enhancements

🐛 Bug Fixes

  • 🐛 fix permutation handling in QASM dump @burgholzer (#810)
  • 🐛 use fuzzy comparison for floating point in const evaluation equality check @burgholzer (#809)
  • 🐛 do not invalidate iterator in block collection @burgholzer (#808)
  • 🐛 Fix stripping of idle qubits @burgholzer (#763)
  • 🐛 Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)
  • 🐛 fix endianness in DCX and XX_minus_YY gate matrix definition @burgholzer (#741)
  • 🐛 properly handle timing literals in QASM parser @burgholzer (#724)
  • 🔧📝 unshallow git clone for RtD @burgholzer (#722)

📄 Documentation

📦 Packaging

  • 🔒 update to latest uv version that properly supports dynamically versioned packages @burgholzer (#802)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • ✨ Adopt PEP 735 dependency groups @burgholzer (#762)

🧹 Code Quality

🤖 CI

⬆️ Dependencies

64 changes
Read more

MQT Core 3.0.0 Beta 2 Pre-Release

22 Jan 00:08
9265d78
Compare
Choose a tag to compare
Pre-release

👀 What Changed

This is the second pre-release for the next major version of mqt-core.
It contains a couple of fixes and updates throughout MQT Core.

⚛️ MQT Core

⚖️ MQT Core DD Package

🕸️ MQT Core ZX Package

  • 🐛 Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)

🚀 Features and Enhancements

🐛 Bug Fixes

  • 🐛 use fuzzy comparison for floating point in const evaluation equality check @burgholzer (#809)
  • 🐛 do not invalidate iterator in block collection @burgholzer (#808)
  • 🐛 Fix stripping of idle qubits @burgholzer (#763)
  • 🐛 Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)
  • 🐛 fix endianness in DCX and XX_minus_YY gate matrix definition @burgholzer (#741)
  • 🐛 properly handle timing literals in QASM parser @burgholzer (#724)
  • 🔧📝 unshallow git clone for RtD @burgholzer (#722)

📄 Documentation

📦 Packaging

  • 🔒 update to latest uv version that properly supports dynamically versioned packages @burgholzer (#802)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • ✨ Adopt PEP 735 dependency groups @burgholzer (#762)

🧹 Code Quality

🤖 CI

⬆️ Dependencies

63 changes
Read more

MQT Core 3.0.0 Beta 1 Pre-Release

16 Jan 13:45
be2b405
Compare
Choose a tag to compare
Pre-release

👀 What Changed

This is a pre-release for the next major version of mqt-core.
The main reason for creating a pre-release is to test the new functionality available as part of the mqt-core Python package.
The package now ships the shared libraries of all of mqt-core and makes them available to people installing the package via Python.
Given how fickle of a process the distribution of pre-built shared libraries is, some elaborate testing is in order.

⚛️ MQT Core

⚖️ MQT Core DD Package

🕸️ MQT Core ZX Package

  • 🐛 Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)

🚀 Features and Enhancements

🐛 Bug Fixes

  • 🐛 Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)
  • 🐛 fix endianness in DCX and XX_minus_YY gate matrix definition @burgholzer (#741)
  • 🐛 properly handle timing literals in QASM parser @burgholzer (#724)
  • 🔧📝 unshallow git clone for RtD @burgholzer (#722)

📄 Documentation

📦 Packaging

  • 🔒 update to latest uv version that properly supports dynamically versioned packages @burgholzer (#802)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • ✨ Adopt PEP 735 dependency groups @burgholzer (#762)

🧹 Code Quality

🤖 CI

⬆️ Dependencies

60 changes
  • 🔒 update to latest uv version that properly supports dynamically versioned packages @burgholzer (#802)
  • ⬆️🐍 Lock file maintenance @renovate (#801)
  • ⬆️🪝 Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.0 @renovate (#800)
  • ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.1 @renovate (#799)
  • ⬆️🐍 Lock file maintenance @renovate (#795)
  • ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.6 @renovate (#794)
  • ⬆️🪝 Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.6 @renovate (#793)
  • ⬆️🪝 Update pre-commit hook crate-ci/typos to v1.29.4 @renovate (#792)
  • ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.5 @renovate (#790)
  • ⬆️🪝 Update pre-commit hook pre-commit/mirrors-mypy to v1.14.1 @renovate (#791)
  • ⬆️🐍 Lock file maintenance @renovate (#787)
  • ➖ simplify dependencies after uv update @burgholzer (#786)
  • ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.4 @renovate (#782)
  • ⬆️🐍 Lock file maintenance @renovate (#785)
  • ⬆️🪝 Update pre-commit hook pre-commit/mirrors-mypy to v1.14.0 @renovate (#784)
  • ⬆️🪝 Update pre-commit hook crate-ci/typos to v1.28.4 @renovate (#783)
  • ⬆️🐍 Lock file maintenance @renovate (#769)
  • ⬆️🪝 Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.5 @renovate (#781)
  • ⬆️🪝 Update pre-commit hook crate-ci/typos to v1.28.3 @renovate (#780)
  • ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.3 @renovate (#779)
  • ⬆️👨‍💻 Update actions/attest-build-provenance action to v2 @renovate (#777)
  • ⬆️🪝 Update pre-commit hook sirosen/texthooks to v0.6.8 @renovate (#776)
  • ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.2 @renovate (#773)
  • ⬆️🪝 Update pre-commit hook rbubley/mirrors-prettier to v3.4.2 @renovate (#775)
  • ⬆️🪝 Update pre-commit hook crate-ci/typos to v1.28.2 @renovate (#774)
  • ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.1 @renovate (#765)
  • ⬆️🪝 Update pre-commit hook python-jsonschema/check-jsonschema to v0.30.0 @renovate (#768)
  • ⬆️🪝 Update pre-commit hook rbubley/mirrors-prettier to v3.4.1 @renovate (#767)
  • ⬆️🪝 Update pre-commit hook crate-ci/typos to v1.28.1 @renovate (#766)
  • ⬆️🐍 Lock file maintenance @renovate (#755)
  • ⬆️👨‍💻 Update cda-tum/mqt-workflows action to v1.5 @renovate (#759)
  • ⬆️🪝 Update pre-commit hook crate-ci/typos to v1.28.0 @renovate (#760)
  • ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @renovate (#757)
  • ⬆️🪝 Update pre-commit hook rbubley/mirrors-prettier to v3.4.0 @renovate (#761)
  • ⬆️🪝 Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.4 @renovate (#756)
  • ⬆️🐍 Lock file maintenance @renovate (#754)
  • ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.4 @renovate (#753)
  • ⬆️🐍 Lock file maintenance @renovate (#750)
  • ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.3 @renovate (#748)
  • ⬆️👨‍💻 Update actions/attest-build-provenance action to v1.4.4 @renovate (#747)
  • ⬆️🪝 Update pre-commit hook crate-ci/typos to v1.27.3 @renovate (#749)
  • ⬆️🐍 Lock file maintenance @renovate (#746)
  • ⬆️🪝 Update pre-commit hook crate-ci/typos to v1.27.0 @renovate (#745)
  • ⬆️🪝 Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.3 @renovate (#744)
  • ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.2 @renovate (#743)
  • ⬆️🐍 Lock file maintenance @renovate (#742)
  • ⬆️🪝 Update pre-commit hook pre-commit/mirrors-mypy to v1.13.0 @renovate (#740)
  • ⬆️🪝 Update pre-commit hook crate-ci/typos to v1.26.8 @renovate (#739)
  • ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.1 @renovate (#738)
  • ⬆️🪝 Update pre-commit hook adamchainz/blacken-docs to v1.19.1 @renovate (#737)
  • ⬆️🐍 Lock file maintenance @renovate (#736)
  • ⬆️🪝 Update pre-commit hook pre-commit/mirrors-mypy to v1.12.1 @renovate (#735)
  • ⬆️🪝 Update pre-commit hook srstevenson/nb-clean to v4.0.1 @renovate (#734)
  • ⬆️🪝 Update pre-commit hook srstevenson/nb-clean to v4 @renovate (#733)
  • ⬆️🪝 Update pre-commit hook pre-commit/mirrors-mypy to v1.12.0 @renovate (#732)
  • ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.0 @renovate (#731)
  • ⬆️🪝 Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.2 @renovate (#730)
  • ⬆️🐍 Lock file maintenance @renovate (#727)
  • ⬆️🪝 Update pre-commit hook adamchainz/blacken-docs to v1.19.0 @renovate (#726)
  • ⬆️🪝 Update pre-commit hook python-jsonschema/check-jsonschema to v0.29.4 @renovate (#725)

Full Changelog: v2.7.0...v3.0.0

MQT Core 2.7.0 Release

08 Oct 11:59
2ccf532
Compare
Choose a tag to compare

👀 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.

Finally, this release contains a couple of convenience updates for MQT Core itself and its DD package.

⚛️ MQT Core

⚖️ MQT Core DD Package

🚀 Features and Enhancements

🐛 Bug Fixes

📄 Documentation

🤖 CI

  • ⬆️🪝 Update pre-commit hook pre-commit/pre-commit-hooks to v5 @renovate (#718)
  • ⬆️🪝 Update pre-commit hook crate-ci/typos to v1.25.0 @renovate (#716)
  • ⬆️🪝 Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.1 @renovate (#714)
  • ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.6.9 @renovate (#713)
  • ⬆️🪝 Update pre-commit hook python-jsonschema/check-jsonschema to v0.29.3 @renovate (#715)
  • 🔧 update renovate configuration @burgholzer (#712)
  • 🔧 adjust how the CD workflow is run @burgholzer (#710)
  • ⚗️ upload to Test PyPI for pushes on main @burgholzer (#666)
  • ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.6.8 @renovate (#709)
  • ⬆️🪝 Update pre-commit hook pre-commit/mirrors-clang-format to v19 @renovate (#708)
  • ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.6.7 @renovate (#702)
  • ⬆️🪝 Update pre-commit hook astral-sh/ruff-pre-commit to v0.6.6 @renovate (#701)
  • ⬆️ update MQT workflows to v1.4 @burgholzer (#692)
  • ⬆️🪝 Update pre-commit hook crate-ci/typos to v1.24.6 @renovate (#696)
  • 👷 Configure Renovate @renovate (#695)
  • ⬆️ update mqt-workflows to v1.3 (moving tag) @burgholzer (#665)

📦 Packaging

🧹 Code Quality

⬆️ Dependencies

33 changes

Full Changelog: v2.6.0...v2.7.0

MQT Core 2.6.0 Release

08 Aug 12:28
2a7a929
Compare
Choose a tag to compare

👀 What Changed

This release brings a couple of enhancements regarding neutral atom compilation amongst other small improvements.
Most notably, it marks the first release to ship Python 3.13 wheels (including the free-threading variant).

⚛️ MQT Core

⚖️ MQT Core DD Package

🚀 Features and Enhancements

  • ✨ Python 3.13 Support @burgholzer (#656)
  • 🏷️ providing a convenient CircuitInputType @burgholzer (#661)
  • 🎨 Move validation function from qmap to NAComputation @ystade (#660)
  • Support for Neutral Atom State Preparation @ystade (#658)
  • Layer: Allow Redundant Gates @ystade (#655)
  • ✨ Add customGate flag and optimizer functionality to flatten only custom gates @DRovara (#651)
  • 🚸 make dd/Package.hpp export dd/Package_fwd.hpp @burgholzer (#640)

🐛 Bug Fixes

📄 Documentation

🤖 CI

📦 Packaging

🧹 Code Quality

⬆️ Dependencies

11 changes

Full Changelog: v2.5.1...v2.6.0

MQT Core 2.5.1 Release

19 Jun 13:45
35e06ca
Compare
Choose a tag to compare

👀 What Changed

This small update brings along support for the new Neutral Atom Hybrid Mapper over in the QMAP repository as well as some quality of life improvements across the package.
On the Python package part of the codebase, the resulting wheels are considerably smaller now, as they just contain the Python component of mqt-core.
On the DD part of the codebase, the trace computation finally received a compute table, which significantly speeds it up.
On the CI/CD side, this marks the first release that makes use of the reusable workflows hosted over at https://github.com/cda-tum/mqt-workflows.

⚛️ MQT Core

⚖️ MQT Core DD Package

  • ⚡ Improvements for Trace Computation @TeWas (#628)

🚀 Features and Enhancements

🐛 Bug Fixes

  • 🩹 make sure to use the install rpath for build @burgholzer (#626)
  • 📦 only install the Python component of MQT Core in Python package builds @burgholzer (#609)
  • 🩹 make GMP dependency opt-in instead of used-if-found @burgholzer (#608)

📄 Documentation

🤖 CI

📦 Packaging

  • 📦 only install the Python component of MQT Core in Python package builds @burgholzer (#609)

🧹 Code Quality

⬆️ Dependencies

10 changes

Full Changelog: v2.5.0...v2.5.1

MQT Core 2.5.0 Release

22 May 15:52
e090e10
Compare
Choose a tag to compare

👀 What Changed

⚛️ MQT Core

🚀 Features and Enhancements

⬆️ Dependencies

Full Changelog: v2.4.2...v2.5.0

MQT Core 2.4.2 Release

05 May 15:27
63051e8
Compare
Choose a tag to compare

👀 What Changed

Small patch release with updated reusable workflow. Apple Silicon runners now also support Python 3.8 and 3.9.
Python tests are now run on:

  • all supported Python versions on Ubuntu
  • the minimum and maximum supported version on macOS (Intel + arm64) and Windows.

This means that, e.g., for a library that supports Python 3.8 to 3.12, 5+2+2+2=11 test runs will be started and will produce coverage reports. If you update to the new version of the workflows, make sure to adjust the codecov config.

📄 Documentation

🤖 CI

  • 👷🔧🍎 enable Python 3.8+ tests on macos-14 runners @burgholzer (#597)

⬆️ Dependencies

Full Changelog: v2.4.1...v2.4.2

MQT Core 2.4.1 Release

22 Apr 20:55
5f88f68
Compare
Choose a tag to compare

👀 What Changed

This release mainly brings a documentation overhaul and new iterations of the reusable workflows.
It also includes support for Qiskit's final_layout attribute in the Qiskit to MQT conversion and a new optimization pass for conveniently eliding permutations from quantum circuits.

⚛️ MQT Core

🚀 Features and Enhancements

🐛 Bug Fixes

  • 🐛 Fix corner case handling for output permutation in defer measurements optimization @burgholzer (#587)

📄 Documentation

🤖 CI

⬆️ Dependencies

  • Bump wntrblm/nox from 2024.03.02 to 2024.04.15 in the github-actions group @dependabot (#590)

Full Changelog: v2.4.0...v2.4.1