Recent Releases of MQT Core

MQT Core - MQT Core 3.2.1 Release

πŸ‘€ What Changed

Please refer to the changelog and the upgrade guide for a structured overview of the changes.

πŸ› Bug Fixes

πŸ“„ Documentation

Full Changelog: https://github.com/munich-quantum-toolkit/core/compare/v3.2.0...v3.2.1

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] 5 months ago

MQT Core - MQT Core 3.2.0 Release

πŸ‘€ What Changed

Please refer to the changelog and the upgrade guide for a structured overview of the changes.

βš›οΈ MQT Core IR

βš–οΈ MQT Core DD Package

  • 🚨 Silence two compiler warnings in the DD submodule (#1048) (@burgholzer)

πŸ‰ MQT Core MLIR

πŸš€ Features and Enhancements

πŸ› Bug Fixes

πŸ“„ Documentation

🧹 Code Quality

πŸ€– CI

⬆️ Dependencies

13 changes - β¬†οΈπŸ Lock file maintenance ([#1074](https://github.com/munich-quantum-toolkit/core/pull/1074)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook sirosen/texthooks to v0.7.1 ([#1073](https://github.com/munich-quantum-toolkit/core/pull/1073)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.12.5 ([#1072](https://github.com/munich-quantum-toolkit/core/pull/1072)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#1066](https://github.com/munich-quantum-toolkit/core/pull/1066)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ‘¨β€πŸ’» Update munich-quantum-toolkit/workflows action to v1.15 ([#1064](https://github.com/munich-quantum-toolkit/core/pull/1064)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.12.4 ([#1063](https://github.com/munich-quantum-toolkit/core/pull/1063)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.17.0 ([#1065](https://github.com/munich-quantum-toolkit/core/pull/1065)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#1055](https://github.com/munich-quantum-toolkit/core/pull/1055)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️ raise `pybind11` lower bound to `v3.0.0` ([#1050](https://github.com/munich-quantum-toolkit/core/pull/1050)) ([**@burgholzer**](https://github.com/burgholzer)) - β¬†οΈπŸ‘¨β€πŸ’» Update munich-quantum-toolkit/workflows action to v1.12 ([#1053](https://github.com/munich-quantum-toolkit/core/pull/1053)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/create-github-app-token action to v2 ([#1054](https://github.com/munich-quantum-toolkit/core/pull/1054)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v20.1.8 ([#1052](https://github.com/munich-quantum-toolkit/core/pull/1052)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.12.3 ([#1051](https://github.com/munich-quantum-toolkit/core/pull/1051)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate)))

Full Changelog: https://github.com/munich-quantum-toolkit/core/compare/v3.1.0...v3.2.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] 5 months ago

MQT Core - MQT Core 3.1.0 Release

πŸ‘€ What Changed

Please refer to the changelog and the upgrade guide for a structured overview of the changes.

βš›οΈ MQT Core IR

  • πŸ”₯ do not eagerly import Qiskit plugin (#1044) (@burgholzer)
  • 🚸 Make CMake function for adding Python bindings reusable (#1000) (@denialhaag)
  • 🎨🐍 Streamline Python bindings (#982) (@denialhaag)
  • ⚑️ Improve Performance of getNqubits (#959) (@ystade)
  • πŸ› Throw an error when operation is initialized with duplicate qubits (#964) (@ystade)
  • πŸ› Fix sxdg support in qiskit import (#930) (@burgholzer)

βš–οΈ MQT Core DD Package

  • ♻️ Switch from reference counting to mark-and-sweep garbage collection in decision diagram package (#1020) (@MatthiasReumann)
  • πŸ” Fix for code scanning alert no. 601: Missing header guard (#994) (@burgholzer)
  • 🎨 Tiny improvements for DD compute table and unique table code (#989) (@burgholzer)
  • ♻️ Move Make-State Functionality To StateGeneration.cpp (#984) (@MatthiasReumann)
  • ♻️ Use generateExponentialState from StateGeneration in Approximation Unit Tests (#985) (@MatthiasReumann)
  • ✨ Random State Generation (#975) (@MatthiasReumann)
  • πŸ› Fix numerical issues in ThreeQubitRemoveUnconnected test (#978) (@MatthiasReumann)
  • ✨ Migrate and Refactor Approximation Functionality from DDSim Package (#908) (@MatthiasReumann)
  • 🎨 Add Helper Functions For simulate And sample (#915) (@MatthiasReumann)

πŸ‰ MQT Core MLIR

πŸš€ Features and Enhancements

πŸ› Bug Fixes

  • πŸ”₯ do not eagerly import Qiskit plugin (#1044) (@burgholzer)
  • πŸ“πŸ©Ή Disable PDF build on RtD (#1023) (@burgholzer)
  • 🩹 Create Qiskit Upstream issue only when on main branch (#1017) (@ystade)
  • :bug: Link against GTest dependency by target (#1008) (@taminob)
  • πŸ” Fix for code scanning alert no. 601: Missing header guard (#994) (@burgholzer)
  • 🚨 Resolve Qiskit 2.1 Deprecation Warnings (#983) (@ystade)
  • ⚑️ Improve Performance of getNqubits (#959) (@ystade)
  • πŸ› Fix numerical issues in ThreeQubitRemoveUnconnected test (#978) (@MatthiasReumann)
  • πŸ› Only create Issue if test failed not when cancelled (#973) (@ystade)
  • πŸ› Throw an error when operation is initialized with duplicate qubits (#964) (@ystade)
  • 🩹 Fix MLIR workflow (#937) (@burgholzer)
  • πŸ› [MLIR] Fix bug in MLIR round-trip (#932) (@flowerthrower)
  • βͺ️ [MLIR] Bring back MLIR / LLVM 19.0 support (#934) (@flowerthrower)
  • πŸ› Fix sxdg support in qiskit import (#930) (@burgholzer)

πŸ“„ Documentation

πŸ“¦ Packaging

  • ♻️ Specify Install Components for Wheel (#1021) (@ystade)

🧹 Code Quality

  • :rotating_light: Use -march instead of -mcpu for GCC on x86 (#1009) (@taminob)
  • 🎨🐍 Streamline Python bindings (#982) (@denialhaag)
  • 🎨 Tiny improvements for DD compute table and unique table code (#989) (@burgholzer)
  • ♻️ Use generateExponentialState from StateGeneration in Approximation Unit Tests (#985) (@MatthiasReumann)
  • 🎨 Add Helper Functions For simulate And sample (#915) (@MatthiasReumann)

πŸ€– CI

⬆️ Dependencies

50 changes - ⬆️πŸͺ update pre-commit hooks ([#1041](https://github.com/munich-quantum-toolkit/core/pull/1041)) ([**@[pre-commit-ci[bot]](https://github.com/apps/pre-commit-ci)**](https://github.com/[pre-commit-ci[bot]](https://github.com/apps/pre-commit-ci))) - 🎨 Stop pre-commit if there are merge conflicts ([#1039](https://github.com/munich-quantum-toolkit/core/pull/1039)) ([**@denialhaag**](https://github.com/denialhaag)) - β¬†οΈπŸ Lock file maintenance ([#1037](https://github.com/munich-quantum-toolkit/core/pull/1037)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.34.0 ([#1036](https://github.com/munich-quantum-toolkit/core/pull/1036)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.33.2 ([#1035](https://github.com/munich-quantum-toolkit/core/pull/1035)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.12.2 ([#1034](https://github.com/munich-quantum-toolkit/core/pull/1034)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#1028](https://github.com/munich-quantum-toolkit/core/pull/1028)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.6.2 ([#1027](https://github.com/munich-quantum-toolkit/core/pull/1027)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v20.1.7 ([#1026](https://github.com/munich-quantum-toolkit/core/pull/1026)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.12.1 ([#1025](https://github.com/munich-quantum-toolkit/core/pull/1025)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⚑ Speed up test suite ([#1022](https://github.com/munich-quantum-toolkit/core/pull/1022)) ([**@denialhaag**](https://github.com/denialhaag)) - 🩹 Create Qiskit Upstream issue only when on main branch ([#1017](https://github.com/munich-quantum-toolkit/core/pull/1017)) ([**@ystade**](https://github.com/ystade)) - β¬†οΈπŸ Lock file maintenance ([#1015](https://github.com/munich-quantum-toolkit/core/pull/1015)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.33.1 ([#1014](https://github.com/munich-quantum-toolkit/core/pull/1014)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.12.0 ([#1013](https://github.com/munich-quantum-toolkit/core/pull/1013)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.16.1 ([#1012](https://github.com/munich-quantum-toolkit/core/pull/1012)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ‘¨β€πŸ’» Update munich-quantum-toolkit/workflows action to v1.11 ([#998](https://github.com/munich-quantum-toolkit/core/pull/998)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#999](https://github.com/munich-quantum-toolkit/core/pull/999)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v20.1.6 ([#997](https://github.com/munich-quantum-toolkit/core/pull/997)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️ Update `googletest` from `v1.16.0` to `v1.17.0` ([#995](https://github.com/munich-quantum-toolkit/core/pull/995)) ([**@burgholzer**](https://github.com/burgholzer)) - β¬†οΈπŸ‘¨β€πŸ’» Update munich-quantum-toolkit/workflows action to v1.10 ([#967](https://github.com/munich-quantum-toolkit/core/pull/967)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - 🚨 Resolve Qiskit 2.1 Deprecation Warnings ([#983](https://github.com/munich-quantum-toolkit/core/pull/983)) ([**@ystade**](https://github.com/ystade)) - β¬†οΈπŸ Lock file maintenance ([#988](https://github.com/munich-quantum-toolkit/core/pull/988)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.33.1 ([#987](https://github.com/munich-quantum-toolkit/core/pull/987)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.11.13 ([#986](https://github.com/munich-quantum-toolkit/core/pull/986)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#981](https://github.com/munich-quantum-toolkit/core/pull/981)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.16.0 ([#977](https://github.com/munich-quantum-toolkit/core/pull/977)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.11.12 ([#976](https://github.com/munich-quantum-toolkit/core/pull/976)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#968](https://github.com/munich-quantum-toolkit/core/pull/968)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v20.1.5 ([#966](https://github.com/munich-quantum-toolkit/core/pull/966)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.11.11 ([#965](https://github.com/munich-quantum-toolkit/core/pull/965)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#958](https://github.com/munich-quantum-toolkit/core/pull/958)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.11.10 ([#957](https://github.com/munich-quantum-toolkit/core/pull/957)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#951](https://github.com/munich-quantum-toolkit/core/pull/951)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v20.1.4 ([#950](https://github.com/munich-quantum-toolkit/core/pull/950)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.11.9 ([#949](https://github.com/munich-quantum-toolkit/core/pull/949)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#947](https://github.com/munich-quantum-toolkit/core/pull/947)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.32.0 ([#946](https://github.com/munich-quantum-toolkit/core/pull/946)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v20.1.3 ([#945](https://github.com/munich-quantum-toolkit/core/pull/945)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.11.8 ([#944](https://github.com/munich-quantum-toolkit/core/pull/944)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#943](https://github.com/munich-quantum-toolkit/core/pull/943)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ‘¨β€πŸ’» Update astral-sh/setup-uv action to v6 ([#936](https://github.com/munich-quantum-toolkit/core/pull/936)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.11.7 ([#935](https://github.com/munich-quantum-toolkit/core/pull/935)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#929](https://github.com/munich-quantum-toolkit/core/pull/929)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.11.6 ([#928](https://github.com/munich-quantum-toolkit/core/pull/928)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️ update nlohmann\_json to `v3.12.0` ([#921](https://github.com/munich-quantum-toolkit/core/pull/921)) ([**@burgholzer**](https://github.com/burgholzer)) - β¬†οΈπŸ Lock file maintenance ([#920](https://github.com/munich-quantum-toolkit/core/pull/920)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.33.0 ([#919](https://github.com/munich-quantum-toolkit/core/pull/919)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.11.5 ([#918](https://github.com/munich-quantum-toolkit/core/pull/918)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ update pre-commit hooks ([#914](https://github.com/munich-quantum-toolkit/core/pull/914)) ([**@[pre-commit-ci[bot]](https://github.com/apps/pre-commit-ci)**](https://github.com/[pre-commit-ci[bot]](https://github.com/apps/pre-commit-ci)))

Full Changelog: https://github.com/munich-quantum-toolkit/core/compare/v3.0.2...v3.1.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] 6 months ago

MQT Core - MQT Core 3.0.2 Release

πŸ‘€ What Changed

Please refer to the changelog and the upgrade guide for a structured overview of the changes.

βš›οΈ MQT Core IR

  • πŸ“ Add JOSS journal reference and citation information (#913) (@burgholzer)

πŸ“„ Documentation

Full Changelog: https://github.com/munich-quantum-toolkit/core/compare/v3.0.1...v3.0.2

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] 9 months ago

MQT Core - MQT Core 3.0.1 Release

πŸ‘€ What Changed

Please refer to the changelog and the upgrade guide for a structured overview of the changes.

πŸ› Bug Fixes

πŸ€– CI

Full Changelog: https://github.com/munich-quantum-toolkit/core/compare/v3.0.0...v3.0.1

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] 9 months ago

MQT Core - MQT Core 3.0.0 Release

πŸ‘€ What Changed

Please refer to the changelog and the upgrade guide for a structured overview of the changes.

βš›οΈ MQT Core IR

  • πŸ”₯ Remove Teleportation gate (#882) (@burgholzer)
  • 🚨 Run clang-tidy on MLIR subproject, switch to LLVM@20, and update to CMake >= 3.24 (#879) (@burgholzer)
  • 🩹 Add insert_or_assign method to Permutation class (#870) (@burgholzer)
  • ✨Add continuous testing workflow for Qiskit main branch (#860) (@burgholzer)
  • ✨ Add Python interface improvements and Qiskit export support (#859) (@burgholzer)
  • β™»οΈπŸ› Refactor qc::Permutation and fix corner case in Qiskit layout import (#858) (@burgholzer)
  • πŸ“ Slightly improve code documentation and QuantumComputation.__repr__ (#851) (@burgholzer)
  • πŸ› Fix and enhance Qiskit layout and permutation handling (#850) (@burgholzer)
  • πŸ”§ Handle empty quantum and classical registers in qiskit to MQT translation (#849) (@burgholzer)
  • ⬆️ scikit-build-core 0.11, PEP 639 license expressions, sphinx fixes, more automerge (#847) (@burgholzer)
  • ⬆️ Update googletest and Boost Multiprecision dependencies (#840) (@burgholzer)
  • 🚸 Allow indexed registers as operation arguments (#839) (@burgholzer)
  • 🚸 Add support for indexed identifiers and improve OpenQASM handling (#832) (@burgholzer)
  • ✨ Add State Preparation Algorithm (#543) (@M-J-Hochreiter)
  • ♻️ Refactor QASM import functionality and remove deprecated formats (#822) (@burgholzer)
  • ✨ Ancillary and garbage support (#635) (@TooMuchDakka)
  • ♻️ Refactor handling of gate matrices and inverses (#752) (@rotmanjanez)
  • πŸ”§ update Python coverage configuration (#811) (@burgholzer)
  • πŸ› fix permutation handling in QASM dump (#810) (@burgholzer)
  • πŸ› use fuzzy comparison for floating point in const evaluation equality check (#809) (@burgholzer)
  • πŸ› do not invalidate iterator in block collection (#808) (@burgholzer)
  • πŸ› Fix stripping of idle qubits (#763) (@burgholzer)
  • ♻️ Refactor and improve register handling (#807) (@burgholzer)
  • πŸ”’ update to latest uv version that properly supports dynamically versioned packages (#802) (@burgholzer)
  • ✨ ship shared C++ libraries with mqt-core Python package (#662) (@burgholzer)
  • β™»οΈπŸŽ¨ Code cleanup and refactors (#798) (@burgholzer)
  • 🚸 slightly tweak how optional qiskit dependency is handled (#797) (@burgholzer)
  • πŸ“ Rework existing project documentation (#789) (@burgholzer)
  • βž– simplify dependencies after uv update (#786) (@burgholzer)
  • πŸ“„ add license headers (#770) (@burgholzer)
  • 🚨 adapt to warnings related to Qiskit 1.3 (#771) (@burgholzer)
  • ✨ Adopt PEP 735 dependency groups (#762) (@burgholzer)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction (#758) (@burgholzer)
  • πŸ› properly handle timing literals in QASM parser (#724) (@burgholzer)
  • πŸ”§ use separate build directories per Python version (#721) (@burgholzer)

βš–οΈ MQT Core DD Package

  • 🎨 slightly touch up template instantiations and use more trailing return types (#902) (@burgholzer)
  • ♻️ Eliminate templates from dd::Package class (#886) (@burgholzer)
  • πŸ”₯ Remove extract_probability_vector functionality (#883) (@burgholzer)
  • ♻️ Remove template parameter from MemoryManager and adjacent classes (#866) (@rotmanjanez)
  • βš—οΈ Fix potential division by zero error and tweak DD evaluation settings (#873) (@burgholzer)
  • πŸ“ Add documentation for DD package (#831) (@burgholzer)
  • ✨🐍 DD Package Python bindings (#838) (@burgholzer)
  • β™»οΈπŸŽ¨ Code cleanup and refactors (#798) (@burgholzer)
  • 🎨 further DD usability improvements (#764) (@burgholzer)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality (#674) (@burgholzer)
  • πŸ› fix endianness in DCX and XX_minus_YY gate matrix definition (#741) (@burgholzer)

πŸ•ΈοΈ MQT Core ZX Package

  • πŸ› restore installation of Boost multiprecision headers (#901) (@burgholzer)
  • πŸ“ Add documentation for ZX-calculus package and C++ API docs setup (#817) (@pehamTom)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction (#758) (@burgholzer)

🏼 MQT Core NA Package

  • 🎨 Add U operation and allow for Multiple Zones (#877) (@ystade)
  • 🎨 Refactor NAComputation with concrete base classes for every operation and ouput new .naviz format (#846) (@ystade)

πŸ‰ MQT Core MLIR

  • Add first optimization passes to MQTOpt (#892) (@DRovara)
  • :building_construction: Enforce LLVM-20 when building MLIR subdirectory (#895) (@DRovara)
  • Clean Up mqt-core round-trip pass (#893) (@DRovara)
  • 🚨 Run clang-tidy on MLIR subproject, switch to LLVM@20, and update to CMake >= 3.24 (#879) (@burgholzer)
  • ✨ Initial Infrastructure for MLIR within the MQT (#878) (@burgholzer)

πŸš€ Features and Enhancements

  • Add first optimization passes to MQTOpt (#892) (@DRovara)
  • ♻️ Eliminate templates from dd::Package class (#886) (@burgholzer)
  • πŸ”₯ Remove extract_probability_vector functionality (#883) (@burgholzer)
  • πŸ”₯ Remove Teleportation gate (#882) (@burgholzer)
  • 🎨 Add U operation and allow for Multiple Zones (#877) (@ystade)
  • ✨ Initial Infrastructure for MLIR within the MQT (#878) (@burgholzer)
  • ♻️ Remove template parameter from MemoryManager and adjacent classes (#866) (@rotmanjanez)
  • βš—οΈ Fix potential division by zero error and tweak DD evaluation settings (#873) (@burgholzer)
  • ✨ Add Python interface improvements and Qiskit export support (#859) (@burgholzer)
  • 🎨 Refactor NAComputation with concrete base classes for every operation and ouput new .naviz format (#846) (@ystade)
  • πŸ”§ Only enable IPO per default for Release builds outside of deployment (#841) (@burgholzer)
  • 🚸 Allow indexed registers as operation arguments (#839) (@burgholzer)
  • ✨🐍 DD Package Python bindings (#838) (@burgholzer)
  • 🚸 Add support for indexed identifiers and improve OpenQASM handling (#832) (@burgholzer)
  • ✨ Add State Preparation Algorithm (#543) (@M-J-Hochreiter)
  • ♻️ Refactor QASM import functionality and remove deprecated formats (#822) (@burgholzer)
  • ✨ Ancillary and garbage support (#635) (@TooMuchDakka)
  • ♻️ Refactor handling of gate matrices and inverses (#752) (@rotmanjanez)
  • πŸ› Fix stripping of idle qubits (#763) (@burgholzer)
  • ♻️ Refactor and improve register handling (#807) (@burgholzer)
  • ✨ ship shared C++ libraries with mqt-core Python package (#662) (@burgholzer)
  • β™»οΈπŸŽ¨ Code cleanup and refactors (#798) (@burgholzer)
  • 🚸 slightly tweak how optional qiskit dependency is handled (#797) (@burgholzer)
  • 🎨 further DD usability improvements (#764) (@burgholzer)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality (#674) (@burgholzer)

πŸ› Bug Fixes

  • πŸ› restore installation of Boost multiprecision headers (#901) (@burgholzer)
  • 🩹 Fix workflow references and permissions (#894) (@burgholzer)
  • 🩹 Add insert_or_assign method to Permutation class (#870) (@burgholzer)
  • ✨ Add Python interface improvements and Qiskit export support (#859) (@burgholzer)
  • β™»οΈπŸ› Refactor qc::Permutation and fix corner case in Qiskit layout import (#858) (@burgholzer)
  • πŸ› Fix and enhance Qiskit layout and permutation handling (#850) (@burgholzer)
  • πŸ”§ Handle empty quantum and classical registers in qiskit to MQT translation (#849) (@burgholzer)
  • πŸ› fix permutation handling in QASM dump (#810) (@burgholzer)
  • πŸ› use fuzzy comparison for floating point in const evaluation equality check (#809) (@burgholzer)
  • πŸ› do not invalidate iterator in block collection (#808) (@burgholzer)
  • πŸ› Fix stripping of idle qubits (#763) (@burgholzer)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction (#758) (@burgholzer)
  • πŸ› fix endianness in DCX and XX_minus_YY gate matrix definition (#741) (@burgholzer)
  • πŸ› properly handle timing literals in QASM parser (#724) (@burgholzer)
  • πŸ”§πŸ“ unshallow git clone for RtD (#722) (@burgholzer)

πŸ“„ Documentation

πŸ“¦ Packaging

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

🧹 Code Quality

  • πŸ”§ Minor updates for CMake configuration (#906) (@burgholzer)
  • 🎨 slightly touch up template instantiations and use more trailing return types (#902) (@burgholzer)
  • Clean Up mqt-core round-trip pass (#893) (@DRovara)
  • 🚨 Run clang-tidy on MLIR subproject, switch to LLVM@20, and update to CMake >= 3.24 (#879) (@burgholzer)
  • ♻️ Remove template parameter from MemoryManager and adjacent classes (#866) (@rotmanjanez)
  • β™»οΈπŸ› Refactor qc::Permutation and fix corner case in Qiskit layout import (#858) (@burgholzer)
  • ♻️ Refactor QASM import functionality and remove deprecated formats (#822) (@burgholzer)
  • ♻️ Refactor and improve register handling (#807) (@burgholzer)
  • β™»οΈπŸŽ¨ Code cleanup and refactors (#798) (@burgholzer)
  • 🚨 adapt to warnings related to Qiskit 1.3 (#771) (@burgholzer)
  • ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 (#757) (@renovate[bot])
  • πŸ”§ use separate build directories per Python version (#721) (@burgholzer)

πŸ€– CI

  • :building_construction: Enforce LLVM-20 when building MLIR subdirectory (#895) (@DRovara)
  • 🩹 Fix workflow references and permissions (#894) (@burgholzer)
  • 🚨 Run clang-tidy on MLIR subproject, switch to LLVM@20, and update to CMake >= 3.24 (#879) (@burgholzer)
  • ✨Add continuous testing workflow for Qiskit main branch (#860) (@burgholzer)
  • πŸ‘·β¬†οΈ update MQT workflows to v1.7 (#812) (@burgholzer)
  • πŸ”§ update Python coverage configuration (#811) (@burgholzer)
  • πŸ‘·β¬†οΈ update MQT workflows to v1.6 (#803) (@burgholzer)
  • 🚨 adapt to warnings related to Qiskit 1.3 (#771) (@burgholzer)

⬆️ Dependencies

104 changes - ⬆️ update lower bounds of dev dependencies ([#907](https://github.com/munich-quantum-toolkit/core/pull/907)) ([**@burgholzer**](https://github.com/burgholzer)) - β¬†οΈπŸ‘¨β€πŸ’» Update munich-quantum-toolkit/workflows action to v1.8 ([#905](https://github.com/munich-quantum-toolkit/core/pull/905)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.11.4 ([#903](https://github.com/munich-quantum-toolkit/core/pull/903)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.31.1 ([#904](https://github.com/munich-quantum-toolkit/core/pull/904)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#891](https://github.com/munich-quantum-toolkit/core/pull/891)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - :building\_construction: Enforce LLVM-20 when building MLIR subdirectory ([#895](https://github.com/munich-quantum-toolkit/core/pull/895)) ([**@DRovara**](https://github.com/DRovara)) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.32.1 ([#889](https://github.com/munich-quantum-toolkit/core/pull/889)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.31.0 ([#888](https://github.com/munich-quantum-toolkit/core/pull/888)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#884](https://github.com/munich-quantum-toolkit/core/pull/884)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - 🚨 Run clang-tidy on MLIR subproject, switch to `LLVM@20`, and update to `CMake >= 3.24` ([#879](https://github.com/munich-quantum-toolkit/core/pull/879)) ([**@burgholzer**](https://github.com/burgholzer)) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.11.2 ([#864](https://github.com/munich-quantum-toolkit/core/pull/864)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#872](https://github.com/munich-quantum-toolkit/core/pull/872)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/github-script action to v7 ([#871](https://github.com/munich-quantum-toolkit/core/pull/871)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#857](https://github.com/munich-quantum-toolkit/core/pull/857)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.3 ([#855](https://github.com/munich-quantum-toolkit/core/pull/855)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.3 ([#854](https://github.com/munich-quantum-toolkit/core/pull/854)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.30.1 ([#853](https://github.com/munich-quantum-toolkit/core/pull/853)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.10 ([#852](https://github.com/munich-quantum-toolkit/core/pull/852)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️ scikit-build-core 0.11, PEP 639 license expressions, sphinx fixes, more automerge ([#847](https://github.com/munich-quantum-toolkit/core/pull/847)) ([**@burgholzer**](https://github.com/burgholzer)) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.30.0 ([#844](https://github.com/munich-quantum-toolkit/core/pull/844)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.9 ([#843](https://github.com/munich-quantum-toolkit/core/pull/843)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️ Update googletest and Boost Multiprecision dependencies ([#840](https://github.com/munich-quantum-toolkit/core/pull/840)) ([**@burgholzer**](https://github.com/burgholzer)) - β¬†οΈπŸ Lock file maintenance ([#837](https://github.com/munich-quantum-toolkit/core/pull/837)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.2 ([#836](https://github.com/munich-quantum-toolkit/core/pull/836)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.2 ([#835](https://github.com/munich-quantum-toolkit/core/pull/835)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.7 ([#833](https://github.com/munich-quantum-toolkit/core/pull/833)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.9 ([#834](https://github.com/munich-quantum-toolkit/core/pull/834)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#830](https://github.com/munich-quantum-toolkit/core/pull/830)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.7 ([#828](https://github.com/munich-quantum-toolkit/core/pull/828)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.1 ([#829](https://github.com/munich-quantum-toolkit/core/pull/829)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.6 ([#827](https://github.com/munich-quantum-toolkit/core/pull/827)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#825](https://github.com/munich-quantum-toolkit/core/pull/825)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.15.0 ([#824](https://github.com/munich-quantum-toolkit/core/pull/824)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.5 ([#823](https://github.com/munich-quantum-toolkit/core/pull/823)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#821](https://github.com/munich-quantum-toolkit/core/pull/821)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.1 ([#820](https://github.com/munich-quantum-toolkit/core/pull/820)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.5 ([#819](https://github.com/munich-quantum-toolkit/core/pull/819)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.4 ([#818](https://github.com/munich-quantum-toolkit/core/pull/818)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#816](https://github.com/munich-quantum-toolkit/core/pull/816)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.3 ([#815](https://github.com/munich-quantum-toolkit/core/pull/815)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - πŸ‘·β¬†οΈ update MQT workflows to v1.7 ([#812](https://github.com/munich-quantum-toolkit/core/pull/812)) ([**@burgholzer**](https://github.com/burgholzer)) - β¬†οΈπŸ Lock file maintenance ([#806](https://github.com/munich-quantum-toolkit/core/pull/806)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.2 ([#804](https://github.com/munich-quantum-toolkit/core/pull/804)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.7 ([#805](https://github.com/munich-quantum-toolkit/core/pull/805)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - πŸ”’ update to latest `uv` version that properly supports dynamically versioned packages ([#802](https://github.com/munich-quantum-toolkit/core/pull/802)) ([**@burgholzer**](https://github.com/burgholzer)) - β¬†οΈπŸ Lock file maintenance ([#801](https://github.com/munich-quantum-toolkit/core/pull/801)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.0 ([#800](https://github.com/munich-quantum-toolkit/core/pull/800)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.1 ([#799](https://github.com/munich-quantum-toolkit/core/pull/799)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#795](https://github.com/munich-quantum-toolkit/core/pull/795)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.6 ([#794](https://github.com/munich-quantum-toolkit/core/pull/794)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.6 ([#793](https://github.com/munich-quantum-toolkit/core/pull/793)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.4 ([#792](https://github.com/munich-quantum-toolkit/core/pull/792)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.5 ([#790](https://github.com/munich-quantum-toolkit/core/pull/790)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.1 ([#791](https://github.com/munich-quantum-toolkit/core/pull/791)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#787](https://github.com/munich-quantum-toolkit/core/pull/787)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - βž– simplify dependencies after `uv` update ([#786](https://github.com/munich-quantum-toolkit/core/pull/786)) ([**@burgholzer**](https://github.com/burgholzer)) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.4 ([#782](https://github.com/munich-quantum-toolkit/core/pull/782)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#785](https://github.com/munich-quantum-toolkit/core/pull/785)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.0 ([#784](https://github.com/munich-quantum-toolkit/core/pull/784)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.4 ([#783](https://github.com/munich-quantum-toolkit/core/pull/783)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#769](https://github.com/munich-quantum-toolkit/core/pull/769)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.5 ([#781](https://github.com/munich-quantum-toolkit/core/pull/781)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.3 ([#780](https://github.com/munich-quantum-toolkit/core/pull/780)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.3 ([#779](https://github.com/munich-quantum-toolkit/core/pull/779)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v2 ([#777](https://github.com/munich-quantum-toolkit/core/pull/777)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook sirosen/texthooks to v0.6.8 ([#776](https://github.com/munich-quantum-toolkit/core/pull/776)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.2 ([#773](https://github.com/munich-quantum-toolkit/core/pull/773)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.2 ([#775](https://github.com/munich-quantum-toolkit/core/pull/775)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.2 ([#774](https://github.com/munich-quantum-toolkit/core/pull/774)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.1 ([#765](https://github.com/munich-quantum-toolkit/core/pull/765)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.30.0 ([#768](https://github.com/munich-quantum-toolkit/core/pull/768)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.1 ([#767](https://github.com/munich-quantum-toolkit/core/pull/767)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.1 ([#766](https://github.com/munich-quantum-toolkit/core/pull/766)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#755](https://github.com/munich-quantum-toolkit/core/pull/755)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ‘¨β€πŸ’» Update cda-tum/mqt-workflows action to v1.5 ([#759](https://github.com/munich-quantum-toolkit/core/pull/759)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.0 ([#760](https://github.com/munich-quantum-toolkit/core/pull/760)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 ([#757](https://github.com/munich-quantum-toolkit/core/pull/757)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.0 ([#761](https://github.com/munich-quantum-toolkit/core/pull/761)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.4 ([#756](https://github.com/munich-quantum-toolkit/core/pull/756)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#754](https://github.com/munich-quantum-toolkit/core/pull/754)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.4 ([#753](https://github.com/munich-quantum-toolkit/core/pull/753)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#750](https://github.com/munich-quantum-toolkit/core/pull/750)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.3 ([#748](https://github.com/munich-quantum-toolkit/core/pull/748)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v1.4.4 ([#747](https://github.com/munich-quantum-toolkit/core/pull/747)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.3 ([#749](https://github.com/munich-quantum-toolkit/core/pull/749)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#746](https://github.com/munich-quantum-toolkit/core/pull/746)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.0 ([#745](https://github.com/munich-quantum-toolkit/core/pull/745)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.3 ([#744](https://github.com/munich-quantum-toolkit/core/pull/744)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.2 ([#743](https://github.com/munich-quantum-toolkit/core/pull/743)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#742](https://github.com/munich-quantum-toolkit/core/pull/742)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.13.0 ([#740](https://github.com/munich-quantum-toolkit/core/pull/740)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.26.8 ([#739](https://github.com/munich-quantum-toolkit/core/pull/739)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.1 ([#738](https://github.com/munich-quantum-toolkit/core/pull/738)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.1 ([#737](https://github.com/munich-quantum-toolkit/core/pull/737)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#736](https://github.com/munich-quantum-toolkit/core/pull/736)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.1 ([#735](https://github.com/munich-quantum-toolkit/core/pull/735)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4.0.1 ([#734](https://github.com/munich-quantum-toolkit/core/pull/734)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4 ([#733](https://github.com/munich-quantum-toolkit/core/pull/733)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.0 ([#732](https://github.com/munich-quantum-toolkit/core/pull/732)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.0 ([#731](https://github.com/munich-quantum-toolkit/core/pull/731)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.2 ([#730](https://github.com/munich-quantum-toolkit/core/pull/730)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - β¬†οΈπŸ Lock file maintenance ([#727](https://github.com/munich-quantum-toolkit/core/pull/727)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.0 ([#726](https://github.com/munich-quantum-toolkit/core/pull/726)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate))) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.29.4 ([#725](https://github.com/munich-quantum-toolkit/core/pull/725)) ([**@[renovate[bot]](https://github.com/apps/renovate)**](https://github.com/[renovate[bot]](https://github.com/apps/renovate)))

Full Changelog: https://github.com/munich-quantum-toolkit/core/compare/v2.7.0...v3.0.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] 9 months ago

MQT Core - MQT Core 3.0.0 Release Candidate 2

πŸ‘€ What Changed

Lucky that we did a pre-release, otherwise we wouldn't have caught https://github.com/munich-quantum-toolkit/core/pull/901.

βš›οΈ MQT Core

  • πŸ”₯ Remove Teleportation gate @burgholzer (#882)
  • 🚨 Run clang-tidy on MLIR subproject, switch to LLVM@20, and update to CMake >= 3.24 @burgholzer (#879)
  • 🩹 Add insert_or_assign method to Permutation class @burgholzer (#870)
  • ✨Add continuous testing workflow for Qiskit main branch @burgholzer (#860)
  • ✨ Add Python interface improvements and Qiskit export support @burgholzer (#859)
  • β™»οΈπŸ› Refactor qc::Permutation and fix corner case in Qiskit layout import @burgholzer (#858)
  • πŸ“ Slightly improve code documentation and QuantumComputation.__repr__ @burgholzer (#851)
  • πŸ› Fix and enhance Qiskit layout and permutation handling @burgholzer (#850)
  • πŸ”§ Handle empty quantum and classical registers in qiskit to MQT translation @burgholzer (#849)
  • ⬆️ scikit-build-core 0.11, PEP 639 license expressions, sphinx fixes, more automerge @burgholzer (#847)
  • ⬆️ Update googletest and Boost Multiprecision dependencies @burgholzer (#840)
  • 🚸 Allow indexed registers as operation arguments @burgholzer (#839)
  • 🚸 Add support for indexed identifiers and improve OpenQASM handling @burgholzer (#832)
  • ✨ Add State Preparation Algorithm @M-J-Hochreiter (#543)
  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ✨ Ancillary and garbage support @TooMuchDakka (#635)
  • ♻️ Refactor handling of gate matrices and inverses @rotmanjanez (#752)
  • πŸ”§ update Python coverage configuration @burgholzer (#811)
  • πŸ› 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)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • πŸ”’ update to latest uv version that properly supports dynamically versioned packages @burgholzer (#802)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • βž– simplify dependencies after uv update @burgholzer (#786)
  • πŸ“„ add license headers @burgholzer (#770)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ✨ Adopt PEP 735 dependency groups @burgholzer (#762)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)
  • πŸ› properly handle timing literals in QASM parser @burgholzer (#724)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

βš–οΈ MQT Core DD Package

  • 🎨 slightly touch up template instantiations and use more trailing return types @burgholzer (#902)
  • ♻️ Eliminate templates from dd::Package class @burgholzer (#886)
  • πŸ”₯ Remove extract_probability_vector functionality @burgholzer (#883)
  • ♻️ Remove template parameter from MemoryManager and adjacent classes @rotmanjanez (#866)
  • βš—οΈ Fix potential division by zero error and tweak DD evaluation settings @burgholzer (#873)
  • πŸ“ Add documentation for DD package @burgholzer (#831)
  • ✨🐍 DD Package Python bindings @burgholzer (#838)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)
  • πŸ› fix endianness in DCX and XX_minus_YY gate matrix definition @burgholzer (#741)

πŸ•ΈοΈ MQT Core ZX Package

  • πŸ› restore installation of Boost multiprecision headers @burgholzer (#901)
  • πŸ“ Add documentation for ZX-calculus package and C++ API docs setup @pehamTom (#817)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)

πŸ‰ MQT Core MLIR

  • Add first optimization passes to MQTOpt @DRovara (#892)
  • :building_construction: Enforce LLVM-20 when building MLIR subdirectory @DRovara (#895)
  • Clean Up mqt-core round-trip pass @DRovara (#893)
  • 🚨 Run clang-tidy on MLIR subproject, switch to LLVM@20, and update to CMake >= 3.24 @burgholzer (#879)
  • ✨ Initial Infrastructure for MLIR within the MQT @burgholzer (#878)

πŸš€ Features and Enhancements

  • Add first optimization passes to MQTOpt @DRovara (#892)
  • ♻️ Eliminate templates from dd::Package class @burgholzer (#886)
  • πŸ”₯ Remove extract_probability_vector functionality @burgholzer (#883)
  • πŸ”₯ Remove Teleportation gate @burgholzer (#882)
  • 🎨 Add U operation and allow for Multiple Zones @ystade (#877)
  • ✨ Initial Infrastructure for MLIR within the MQT @burgholzer (#878)
  • ♻️ Remove template parameter from MemoryManager and adjacent classes @rotmanjanez (#866)
  • βš—οΈ Fix potential division by zero error and tweak DD evaluation settings @burgholzer (#873)
  • ✨ Add Python interface improvements and Qiskit export support @burgholzer (#859)
  • 🎨 Refactor NAComputation with concrete base classes for every operation and ouput new .naviz format @ystade (#846)
  • πŸ”§ Only enable IPO per default for Release builds outside of deployment @burgholzer (#841)
  • 🚸 Allow indexed registers as operation arguments @burgholzer (#839)
  • ✨🐍 DD Package Python bindings @burgholzer (#838)
  • 🚸 Add support for indexed identifiers and improve OpenQASM handling @burgholzer (#832)
  • ✨ Add State Preparation Algorithm @M-J-Hochreiter (#543)
  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ✨ Ancillary and garbage support @TooMuchDakka (#635)
  • ♻️ Refactor handling of gate matrices and inverses @rotmanjanez (#752)
  • πŸ› Fix stripping of idle qubits @burgholzer (#763)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)

πŸ› Bug Fixes

  • πŸ› restore installation of Boost multiprecision headers @burgholzer (#901)
  • 🩹 Fix workflow references and permissions @burgholzer (#894)
  • 🩹 Add insert_or_assign method to Permutation class @burgholzer (#870)
  • ✨ Add Python interface improvements and Qiskit export support @burgholzer (#859)
  • β™»οΈπŸ› Refactor qc::Permutation and fix corner case in Qiskit layout import @burgholzer (#858)
  • πŸ› Fix and enhance Qiskit layout and permutation handling @burgholzer (#850)
  • πŸ”§ Handle empty quantum and classical registers in qiskit to MQT translation @burgholzer (#849)
  • πŸ› 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

  • πŸ“ Branding and config update @burgholzer (#896)
  • πŸ“ Add JOSS paper @burgholzer (#869)
  • πŸ“ Update documentation to reflect recent changes @burgholzer (#861)
  • πŸ“ Slightly improve code documentation and QuantumComputation.__repr__ @burgholzer (#851)
  • πŸ“ Add documentation for ZX-calculus package and C++ API docs setup @pehamTom (#817)
  • βœ¨πŸ“ Rework and modernize the development guide @burgholzer (#842)
  • πŸ“ Add documentation for DD package @burgholzer (#831)
  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • πŸ“„ update copyright notice @burgholzer (#788)
  • πŸ“„ add license headers @burgholzer (#770)
  • πŸ”§πŸ“ unshallow git clone for RtD @burgholzer (#722)
  • πŸ”§ update release drafter template and renovate config @burgholzer (#720)

πŸ“¦ 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

  • 🎨 slightly touch up template instantiations and use more trailing return types @burgholzer (#902)
  • Clean Up mqt-core round-trip pass @DRovara (#893)
  • 🚨 Run clang-tidy on MLIR subproject, switch to LLVM@20, and update to CMake >= 3.24 @burgholzer (#879)
  • ♻️ Remove template parameter from MemoryManager and adjacent classes @rotmanjanez (#866)
  • β™»οΈπŸ› Refactor qc::Permutation and fix corner case in Qiskit layout import @burgholzer (#858)
  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @renovate[bot] (#757)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

πŸ€– CI

  • :building_construction: Enforce LLVM-20 when building MLIR subdirectory @DRovara (#895)
  • 🩹 Fix workflow references and permissions @burgholzer (#894)
  • 🚨 Run clang-tidy on MLIR subproject, switch to LLVM@20, and update to CMake >= 3.24 @burgholzer (#879)
  • ✨Add continuous testing workflow for Qiskit main branch @burgholzer (#860)
  • πŸ‘·β¬†οΈ update MQT workflows to v1.7 @burgholzer (#812)
  • πŸ”§ update Python coverage configuration @burgholzer (#811)
  • πŸ‘·β¬†οΈ update MQT workflows to v1.6 @burgholzer (#803)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)

⬆️ Dependencies

100 changes - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#891) - :building\_construction: Enforce LLVM-20 when building MLIR subdirectory @DRovara (#895) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.32.1 @[renovate[bot]](https://github.com/apps/renovate) (#889) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.31.0 @[renovate[bot]](https://github.com/apps/renovate) (#888) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#884) - 🚨 Run clang-tidy on MLIR subproject, switch to `LLVM@20`, and update to `CMake >= 3.24` @burgholzer (#879) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.11.2 @[renovate[bot]](https://github.com/apps/renovate) (#864) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#872) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/github-script action to v7 @[renovate[bot]](https://github.com/apps/renovate) (#871) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#857) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.3 @[renovate[bot]](https://github.com/apps/renovate) (#855) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.3 @[renovate[bot]](https://github.com/apps/renovate) (#854) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.30.1 @[renovate[bot]](https://github.com/apps/renovate) (#853) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.10 @[renovate[bot]](https://github.com/apps/renovate) (#852) - ⬆️ scikit-build-core 0.11, PEP 639 license expressions, sphinx fixes, more automerge @burgholzer (#847) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.30.0 @[renovate[bot]](https://github.com/apps/renovate) (#844) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.9 @[renovate[bot]](https://github.com/apps/renovate) (#843) - ⬆️ Update googletest and Boost Multiprecision dependencies @burgholzer (#840) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#837) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.2 @[renovate[bot]](https://github.com/apps/renovate) (#836) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.2 @[renovate[bot]](https://github.com/apps/renovate) (#835) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.7 @[renovate[bot]](https://github.com/apps/renovate) (#833) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.9 @[renovate[bot]](https://github.com/apps/renovate) (#834) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#830) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.7 @[renovate[bot]](https://github.com/apps/renovate) (#828) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.1 @[renovate[bot]](https://github.com/apps/renovate) (#829) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.6 @[renovate[bot]](https://github.com/apps/renovate) (#827) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#825) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.15.0 @[renovate[bot]](https://github.com/apps/renovate) (#824) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.5 @[renovate[bot]](https://github.com/apps/renovate) (#823) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#821) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.1 @[renovate[bot]](https://github.com/apps/renovate) (#820) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.5 @[renovate[bot]](https://github.com/apps/renovate) (#819) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.4 @[renovate[bot]](https://github.com/apps/renovate) (#818) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#816) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.3 @[renovate[bot]](https://github.com/apps/renovate) (#815) - πŸ‘·β¬†οΈ update MQT workflows to v1.7 @burgholzer (#812) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#806) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.2 @[renovate[bot]](https://github.com/apps/renovate) (#804) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.7 @[renovate[bot]](https://github.com/apps/renovate) (#805) - πŸ”’ update to latest `uv` version that properly supports dynamically versioned packages @burgholzer (#802) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#801) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.0 @[renovate[bot]](https://github.com/apps/renovate) (#800) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.1 @[renovate[bot]](https://github.com/apps/renovate) (#799) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#795) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.6 @[renovate[bot]](https://github.com/apps/renovate) (#794) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.6 @[renovate[bot]](https://github.com/apps/renovate) (#793) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.4 @[renovate[bot]](https://github.com/apps/renovate) (#792) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.5 @[renovate[bot]](https://github.com/apps/renovate) (#790) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.1 @[renovate[bot]](https://github.com/apps/renovate) (#791) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#787) - βž– simplify dependencies after `uv` update @burgholzer (#786) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.4 @[renovate[bot]](https://github.com/apps/renovate) (#782) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#785) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.0 @[renovate[bot]](https://github.com/apps/renovate) (#784) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.4 @[renovate[bot]](https://github.com/apps/renovate) (#783) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#769) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.5 @[renovate[bot]](https://github.com/apps/renovate) (#781) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.3 @[renovate[bot]](https://github.com/apps/renovate) (#780) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.3 @[renovate[bot]](https://github.com/apps/renovate) (#779) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v2 @[renovate[bot]](https://github.com/apps/renovate) (#777) - ⬆️πŸͺ Update pre-commit hook sirosen/texthooks to v0.6.8 @[renovate[bot]](https://github.com/apps/renovate) (#776) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.2 @[renovate[bot]](https://github.com/apps/renovate) (#773) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.2 @[renovate[bot]](https://github.com/apps/renovate) (#775) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.2 @[renovate[bot]](https://github.com/apps/renovate) (#774) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.1 @[renovate[bot]](https://github.com/apps/renovate) (#765) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.30.0 @[renovate[bot]](https://github.com/apps/renovate) (#768) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.1 @[renovate[bot]](https://github.com/apps/renovate) (#767) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.1 @[renovate[bot]](https://github.com/apps/renovate) (#766) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#755) - β¬†οΈπŸ‘¨β€πŸ’» Update cda-tum/mqt-workflows action to v1.5 @[renovate[bot]](https://github.com/apps/renovate) (#759) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.0 @[renovate[bot]](https://github.com/apps/renovate) (#760) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @[renovate[bot]](https://github.com/apps/renovate) (#757) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.0 @[renovate[bot]](https://github.com/apps/renovate) (#761) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.4 @[renovate[bot]](https://github.com/apps/renovate) (#756) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#754) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.4 @[renovate[bot]](https://github.com/apps/renovate) (#753) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#750) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.3 @[renovate[bot]](https://github.com/apps/renovate) (#748) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v1.4.4 @[renovate[bot]](https://github.com/apps/renovate) (#747) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.3 @[renovate[bot]](https://github.com/apps/renovate) (#749) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#746) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.0 @[renovate[bot]](https://github.com/apps/renovate) (#745) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.3 @[renovate[bot]](https://github.com/apps/renovate) (#744) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.2 @[renovate[bot]](https://github.com/apps/renovate) (#743) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#742) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.13.0 @[renovate[bot]](https://github.com/apps/renovate) (#740) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.26.8 @[renovate[bot]](https://github.com/apps/renovate) (#739) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.1 @[renovate[bot]](https://github.com/apps/renovate) (#738) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.1 @[renovate[bot]](https://github.com/apps/renovate) (#737) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#736) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.1 @[renovate[bot]](https://github.com/apps/renovate) (#735) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4.0.1 @[renovate[bot]](https://github.com/apps/renovate) (#734) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4 @[renovate[bot]](https://github.com/apps/renovate) (#733) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.0 @[renovate[bot]](https://github.com/apps/renovate) (#732) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.0 @[renovate[bot]](https://github.com/apps/renovate) (#731) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.2 @[renovate[bot]](https://github.com/apps/renovate) (#730) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#727) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.0 @[renovate[bot]](https://github.com/apps/renovate) (#726) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.29.4 @[renovate[bot]](https://github.com/apps/renovate) (#725)

Full Changelog: https://github.com/munich-quantum-toolkit/core/compare/v2.7.0...v3.0.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] 9 months ago

MQT Core - MQT Core 3.0.0 Release Candidate 1

πŸ‘€ What Changed

Basically just a pre-cautionary pre-release to see if everything still works fine after the organisation move.

βš›οΈ MQT Core

  • πŸ”₯ Remove Teleportation gate @burgholzer (#882)
  • 🚨 Run clang-tidy on MLIR subproject, switch to LLVM@20, and update to CMake >= 3.24 @burgholzer (#879)
  • 🩹 Add insert_or_assign method to Permutation class @burgholzer (#870)
  • ✨Add continuous testing workflow for Qiskit main branch @burgholzer (#860)
  • ✨ Add Python interface improvements and Qiskit export support @burgholzer (#859)
  • β™»οΈπŸ› Refactor qc::Permutation and fix corner case in Qiskit layout import @burgholzer (#858)
  • πŸ“ Slightly improve code documentation and QuantumComputation.__repr__ @burgholzer (#851)
  • πŸ› Fix and enhance Qiskit layout and permutation handling @burgholzer (#850)
  • πŸ”§ Handle empty quantum and classical registers in qiskit to MQT translation @burgholzer (#849)
  • ⬆️ scikit-build-core 0.11, PEP 639 license expressions, sphinx fixes, more automerge @burgholzer (#847)
  • ⬆️ Update googletest and Boost Multiprecision dependencies @burgholzer (#840)
  • 🚸 Allow indexed registers as operation arguments @burgholzer (#839)
  • 🚸 Add support for indexed identifiers and improve OpenQASM handling @burgholzer (#832)
  • ✨ Add State Preparation Algorithm @M-J-Hochreiter (#543)
  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ✨ Ancillary and garbage support @TooMuchDakka (#635)
  • ♻️ Refactor handling of gate matrices and inverses @rotmanjanez (#752)
  • πŸ”§ update Python coverage configuration @burgholzer (#811)
  • πŸ› 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)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • πŸ”’ update to latest uv version that properly supports dynamically versioned packages @burgholzer (#802)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • βž– simplify dependencies after uv update @burgholzer (#786)
  • πŸ“„ add license headers @burgholzer (#770)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ✨ Adopt PEP 735 dependency groups @burgholzer (#762)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)
  • πŸ› properly handle timing literals in QASM parser @burgholzer (#724)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

βš–οΈ MQT Core DD Package

  • ♻️ Eliminate templates from dd::Package class @burgholzer (#886)
  • πŸ”₯ Remove extract_probability_vector functionality @burgholzer (#883)
  • ♻️ Remove template parameter from MemoryManager and adjacent classes @rotmanjanez (#866)
  • βš—οΈ Fix potential division by zero error and tweak DD evaluation settings @burgholzer (#873)
  • πŸ“ Add documentation for DD package @burgholzer (#831)
  • ✨🐍 DD Package Python bindings @burgholzer (#838)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)
  • πŸ› fix endianness in DCX and XX_minus_YY gate matrix definition @burgholzer (#741)

πŸ•ΈοΈ MQT Core ZX Package

  • πŸ“ Add documentation for ZX-calculus package and C++ API docs setup @pehamTom (#817)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)

πŸ‰ MQT Core MLIR

  • Add first optimization passes to MQTOpt @DRovara (#892)
  • :building_construction: Enforce LLVM-20 when building MLIR subdirectory @DRovara (#895)
  • Clean Up mqt-core round-trip pass @DRovara (#893)
  • 🚨 Run clang-tidy on MLIR subproject, switch to LLVM@20, and update to CMake >= 3.24 @burgholzer (#879)
  • ✨ Initial Infrastructure for MLIR within the MQT @burgholzer (#878)

πŸš€ Features and Enhancements

  • Add first optimization passes to MQTOpt @DRovara (#892)
  • ♻️ Eliminate templates from dd::Package class @burgholzer (#886)
  • πŸ”₯ Remove extract_probability_vector functionality @burgholzer (#883)
  • πŸ”₯ Remove Teleportation gate @burgholzer (#882)
  • 🎨 Add U operation and allow for Multiple Zones @ystade (#877)
  • ✨ Initial Infrastructure for MLIR within the MQT @burgholzer (#878)
  • ♻️ Remove template parameter from MemoryManager and adjacent classes @rotmanjanez (#866)
  • βš—οΈ Fix potential division by zero error and tweak DD evaluation settings @burgholzer (#873)
  • ✨ Add Python interface improvements and Qiskit export support @burgholzer (#859)
  • 🎨 Refactor NAComputation with concrete base classes for every operation and ouput new .naviz format @ystade (#846)
  • πŸ”§ Only enable IPO per default for Release builds outside of deployment @burgholzer (#841)
  • 🚸 Allow indexed registers as operation arguments @burgholzer (#839)
  • ✨🐍 DD Package Python bindings @burgholzer (#838)
  • 🚸 Add support for indexed identifiers and improve OpenQASM handling @burgholzer (#832)
  • ✨ Add State Preparation Algorithm @M-J-Hochreiter (#543)
  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ✨ Ancillary and garbage support @TooMuchDakka (#635)
  • ♻️ Refactor handling of gate matrices and inverses @rotmanjanez (#752)
  • πŸ› Fix stripping of idle qubits @burgholzer (#763)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)

πŸ› Bug Fixes

  • 🩹 Fix workflow references and permissions @burgholzer (#894)
  • 🩹 Add insert_or_assign method to Permutation class @burgholzer (#870)
  • ✨ Add Python interface improvements and Qiskit export support @burgholzer (#859)
  • β™»οΈπŸ› Refactor qc::Permutation and fix corner case in Qiskit layout import @burgholzer (#858)
  • πŸ› Fix and enhance Qiskit layout and permutation handling @burgholzer (#850)
  • πŸ”§ Handle empty quantum and classical registers in qiskit to MQT translation @burgholzer (#849)
  • πŸ› 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

  • πŸ“ Branding and config update @burgholzer (#896)
  • πŸ“ Add JOSS paper @burgholzer (#869)
  • πŸ“ Update documentation to reflect recent changes @burgholzer (#861)
  • πŸ“ Slightly improve code documentation and QuantumComputation.__repr__ @burgholzer (#851)
  • πŸ“ Add documentation for ZX-calculus package and C++ API docs setup @pehamTom (#817)
  • βœ¨πŸ“ Rework and modernize the development guide @burgholzer (#842)
  • πŸ“ Add documentation for DD package @burgholzer (#831)
  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • πŸ“„ update copyright notice @burgholzer (#788)
  • πŸ“„ add license headers @burgholzer (#770)
  • πŸ”§πŸ“ unshallow git clone for RtD @burgholzer (#722)
  • πŸ”§ update release drafter template and renovate config @burgholzer (#720)

πŸ“¦ 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

  • Clean Up mqt-core round-trip pass @DRovara (#893)
  • 🚨 Run clang-tidy on MLIR subproject, switch to LLVM@20, and update to CMake >= 3.24 @burgholzer (#879)
  • ♻️ Remove template parameter from MemoryManager and adjacent classes @rotmanjanez (#866)
  • β™»οΈπŸ› Refactor qc::Permutation and fix corner case in Qiskit layout import @burgholzer (#858)
  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @renovate[bot] (#757)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

πŸ€– CI

  • :building_construction: Enforce LLVM-20 when building MLIR subdirectory @DRovara (#895)
  • 🩹 Fix workflow references and permissions @burgholzer (#894)
  • 🚨 Run clang-tidy on MLIR subproject, switch to LLVM@20, and update to CMake >= 3.24 @burgholzer (#879)
  • ✨Add continuous testing workflow for Qiskit main branch @burgholzer (#860)
  • πŸ‘·β¬†οΈ update MQT workflows to v1.7 @burgholzer (#812)
  • πŸ”§ update Python coverage configuration @burgholzer (#811)
  • πŸ‘·β¬†οΈ update MQT workflows to v1.6 @burgholzer (#803)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)

⬆️ Dependencies

100 changes - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#891) - :building\_construction: Enforce LLVM-20 when building MLIR subdirectory @DRovara (#895) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.32.1 @[renovate[bot]](https://github.com/apps/renovate) (#889) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.31.0 @[renovate[bot]](https://github.com/apps/renovate) (#888) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#884) - 🚨 Run clang-tidy on MLIR subproject, switch to `LLVM@20`, and update to `CMake >= 3.24` @burgholzer (#879) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.11.2 @[renovate[bot]](https://github.com/apps/renovate) (#864) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#872) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/github-script action to v7 @[renovate[bot]](https://github.com/apps/renovate) (#871) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#857) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.3 @[renovate[bot]](https://github.com/apps/renovate) (#855) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.3 @[renovate[bot]](https://github.com/apps/renovate) (#854) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.30.1 @[renovate[bot]](https://github.com/apps/renovate) (#853) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.10 @[renovate[bot]](https://github.com/apps/renovate) (#852) - ⬆️ scikit-build-core 0.11, PEP 639 license expressions, sphinx fixes, more automerge @burgholzer (#847) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.30.0 @[renovate[bot]](https://github.com/apps/renovate) (#844) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.9 @[renovate[bot]](https://github.com/apps/renovate) (#843) - ⬆️ Update googletest and Boost Multiprecision dependencies @burgholzer (#840) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#837) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.2 @[renovate[bot]](https://github.com/apps/renovate) (#836) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.2 @[renovate[bot]](https://github.com/apps/renovate) (#835) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.7 @[renovate[bot]](https://github.com/apps/renovate) (#833) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.9 @[renovate[bot]](https://github.com/apps/renovate) (#834) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#830) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.7 @[renovate[bot]](https://github.com/apps/renovate) (#828) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.1 @[renovate[bot]](https://github.com/apps/renovate) (#829) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.6 @[renovate[bot]](https://github.com/apps/renovate) (#827) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#825) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.15.0 @[renovate[bot]](https://github.com/apps/renovate) (#824) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.5 @[renovate[bot]](https://github.com/apps/renovate) (#823) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#821) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.1 @[renovate[bot]](https://github.com/apps/renovate) (#820) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.5 @[renovate[bot]](https://github.com/apps/renovate) (#819) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.4 @[renovate[bot]](https://github.com/apps/renovate) (#818) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#816) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.3 @[renovate[bot]](https://github.com/apps/renovate) (#815) - πŸ‘·β¬†οΈ update MQT workflows to v1.7 @burgholzer (#812) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#806) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.2 @[renovate[bot]](https://github.com/apps/renovate) (#804) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.7 @[renovate[bot]](https://github.com/apps/renovate) (#805) - πŸ”’ update to latest `uv` version that properly supports dynamically versioned packages @burgholzer (#802) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#801) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.0 @[renovate[bot]](https://github.com/apps/renovate) (#800) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.1 @[renovate[bot]](https://github.com/apps/renovate) (#799) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#795) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.6 @[renovate[bot]](https://github.com/apps/renovate) (#794) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.6 @[renovate[bot]](https://github.com/apps/renovate) (#793) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.4 @[renovate[bot]](https://github.com/apps/renovate) (#792) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.5 @[renovate[bot]](https://github.com/apps/renovate) (#790) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.1 @[renovate[bot]](https://github.com/apps/renovate) (#791) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#787) - βž– simplify dependencies after `uv` update @burgholzer (#786) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.4 @[renovate[bot]](https://github.com/apps/renovate) (#782) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#785) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.0 @[renovate[bot]](https://github.com/apps/renovate) (#784) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.4 @[renovate[bot]](https://github.com/apps/renovate) (#783) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#769) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.5 @[renovate[bot]](https://github.com/apps/renovate) (#781) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.3 @[renovate[bot]](https://github.com/apps/renovate) (#780) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.3 @[renovate[bot]](https://github.com/apps/renovate) (#779) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v2 @[renovate[bot]](https://github.com/apps/renovate) (#777) - ⬆️πŸͺ Update pre-commit hook sirosen/texthooks to v0.6.8 @[renovate[bot]](https://github.com/apps/renovate) (#776) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.2 @[renovate[bot]](https://github.com/apps/renovate) (#773) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.2 @[renovate[bot]](https://github.com/apps/renovate) (#775) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.2 @[renovate[bot]](https://github.com/apps/renovate) (#774) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.1 @[renovate[bot]](https://github.com/apps/renovate) (#765) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.30.0 @[renovate[bot]](https://github.com/apps/renovate) (#768) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.1 @[renovate[bot]](https://github.com/apps/renovate) (#767) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.1 @[renovate[bot]](https://github.com/apps/renovate) (#766) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#755) - β¬†οΈπŸ‘¨β€πŸ’» Update cda-tum/mqt-workflows action to v1.5 @[renovate[bot]](https://github.com/apps/renovate) (#759) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.0 @[renovate[bot]](https://github.com/apps/renovate) (#760) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @[renovate[bot]](https://github.com/apps/renovate) (#757) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.0 @[renovate[bot]](https://github.com/apps/renovate) (#761) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.4 @[renovate[bot]](https://github.com/apps/renovate) (#756) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#754) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.4 @[renovate[bot]](https://github.com/apps/renovate) (#753) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#750) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.3 @[renovate[bot]](https://github.com/apps/renovate) (#748) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v1.4.4 @[renovate[bot]](https://github.com/apps/renovate) (#747) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.3 @[renovate[bot]](https://github.com/apps/renovate) (#749) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#746) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.0 @[renovate[bot]](https://github.com/apps/renovate) (#745) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.3 @[renovate[bot]](https://github.com/apps/renovate) (#744) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.2 @[renovate[bot]](https://github.com/apps/renovate) (#743) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#742) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.13.0 @[renovate[bot]](https://github.com/apps/renovate) (#740) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.26.8 @[renovate[bot]](https://github.com/apps/renovate) (#739) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.1 @[renovate[bot]](https://github.com/apps/renovate) (#738) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.1 @[renovate[bot]](https://github.com/apps/renovate) (#737) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#736) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.1 @[renovate[bot]](https://github.com/apps/renovate) (#735) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4.0.1 @[renovate[bot]](https://github.com/apps/renovate) (#734) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4 @[renovate[bot]](https://github.com/apps/renovate) (#733) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.0 @[renovate[bot]](https://github.com/apps/renovate) (#732) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.0 @[renovate[bot]](https://github.com/apps/renovate) (#731) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.2 @[renovate[bot]](https://github.com/apps/renovate) (#730) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#727) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.0 @[renovate[bot]](https://github.com/apps/renovate) (#726) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.29.4 @[renovate[bot]](https://github.com/apps/renovate) (#725)

Full Changelog: https://github.com/munich-quantum-toolkit/core/compare/v2.7.0...v3.0.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] 9 months ago

MQT Core - MQT Core 3.0.0 Beta 8 Pre-Release

πŸ‘€ What Changed

The last (this time for real) pre-release in the v3 release series. With a couple of further breaking changes. Brings in #866, #870, #878, #879, #882, #883, #886

βš›οΈ MQT Core

  • πŸ”₯ Remove Teleportation gate @burgholzer (#882)
  • 🚨 Run clang-tidy on MLIR subproject, switch to LLVM@20, and update to CMake >= 3.24 @burgholzer (#879)
  • 🩹 Add insert_or_assign method to Permutation class @burgholzer (#870)
  • ✨Add continuous testing workflow for Qiskit main branch @burgholzer (#860)
  • ✨ Add Python interface improvements and Qiskit export support @burgholzer (#859)
  • β™»οΈπŸ› Refactor qc::Permutation and fix corner case in Qiskit layout import @burgholzer (#858)
  • πŸ“ Slightly improve code documentation and QuantumComputation.__repr__ @burgholzer (#851)
  • πŸ› Fix and enhance Qiskit layout and permutation handling @burgholzer (#850)
  • πŸ”§ Handle empty quantum and classical registers in qiskit to MQT translation @burgholzer (#849)
  • ⬆️ scikit-build-core 0.11, PEP 639 license expressions, sphinx fixes, more automerge @burgholzer (#847)
  • ⬆️ Update googletest and Boost Multiprecision dependencies @burgholzer (#840)
  • 🚸 Allow indexed registers as operation arguments @burgholzer (#839)
  • 🚸 Add support for indexed identifiers and improve OpenQASM handling @burgholzer (#832)
  • ✨ Add State Preparation Algorithm @M-J-Hochreiter (#543)
  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ✨ Ancillary and garbage support @TooMuchDakka (#635)
  • ♻️ Refactor handling of gate matrices and inverses @Joshy-R (#752)
  • πŸ”§ update Python coverage configuration @burgholzer (#811)
  • πŸ› 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)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • πŸ”’ update to latest uv version that properly supports dynamically versioned packages @burgholzer (#802)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • βž– simplify dependencies after uv update @burgholzer (#786)
  • πŸ“„ add license headers @burgholzer (#770)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ✨ Adopt PEP 735 dependency groups @burgholzer (#762)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)
  • πŸ› properly handle timing literals in QASM parser @burgholzer (#724)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

βš–οΈ MQT Core DD Package

  • ♻️ Eliminate templates from dd::Package class @burgholzer (#886)
  • πŸ”₯ Remove extract_probability_vector functionality @burgholzer (#883)
  • ♻️ Remove template parameter from MemoryManager and adjacent classes @Joshy-R (#866)
  • βš—οΈ Fix potential division by zero error and tweak DD evaluation settings @burgholzer (#873)
  • πŸ“ Add documentation for DD package @burgholzer (#831)
  • ✨🐍 DD Package Python bindings @burgholzer (#838)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)
  • πŸ› fix endianness in DCX and XX_minus_YY gate matrix definition @burgholzer (#741)

πŸ•ΈοΈ MQT Core ZX Package

  • πŸ“ Add documentation for ZX-calculus package and C++ API docs setup @pehamTom (#817)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)

πŸ‰ MQT Core MLIR

  • 🚨 Run clang-tidy on MLIR subproject, switch to LLVM@20, and update to CMake >= 3.24 @burgholzer (#879)
  • ✨ Initial Infrastructure for MLIR within the MQT @burgholzer (#878)

πŸš€ Features and Enhancements

  • ♻️ Eliminate templates from dd::Package class @burgholzer (#886)
  • πŸ”₯ Remove extract_probability_vector functionality @burgholzer (#883)
  • πŸ”₯ Remove Teleportation gate @burgholzer (#882)
  • 🎨 Add U operation and allow for Multiple Zones @ystade (#877)
  • ✨ Initial Infrastructure for MLIR within the MQT @burgholzer (#878)
  • ♻️ Remove template parameter from MemoryManager and adjacent classes @Joshy-R (#866)
  • βš—οΈ Fix potential division by zero error and tweak DD evaluation settings @burgholzer (#873)
  • ✨ Add Python interface improvements and Qiskit export support @burgholzer (#859)
  • 🎨 Refactor NAComputation with concrete base classes for every operation and ouput new .naviz format @ystade (#846)
  • πŸ”§ Only enable IPO per default for Release builds outside of deployment @burgholzer (#841)
  • 🚸 Allow indexed registers as operation arguments @burgholzer (#839)
  • ✨🐍 DD Package Python bindings @burgholzer (#838)
  • 🚸 Add support for indexed identifiers and improve OpenQASM handling @burgholzer (#832)
  • ✨ Add State Preparation Algorithm @M-J-Hochreiter (#543)
  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ✨ Ancillary and garbage support @TooMuchDakka (#635)
  • ♻️ Refactor handling of gate matrices and inverses @Joshy-R (#752)
  • πŸ› Fix stripping of idle qubits @burgholzer (#763)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)

πŸ› Bug Fixes

  • 🩹 Add insert_or_assign method to Permutation class @burgholzer (#870)
  • ✨ Add Python interface improvements and Qiskit export support @burgholzer (#859)
  • β™»οΈπŸ› Refactor qc::Permutation and fix corner case in Qiskit layout import @burgholzer (#858)
  • πŸ› Fix and enhance Qiskit layout and permutation handling @burgholzer (#850)
  • πŸ”§ Handle empty quantum and classical registers in qiskit to MQT translation @burgholzer (#849)
  • πŸ› 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

  • πŸ“ Add JOSS paper @burgholzer (#869)
  • πŸ“ Update documentation to reflect recent changes @burgholzer (#861)
  • πŸ“ Slightly improve code documentation and QuantumComputation.__repr__ @burgholzer (#851)
  • πŸ“ Add documentation for ZX-calculus package and C++ API docs setup @pehamTom (#817)
  • βœ¨πŸ“ Rework and modernize the development guide @burgholzer (#842)
  • πŸ“ Add documentation for DD package @burgholzer (#831)
  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • πŸ“„ update copyright notice @burgholzer (#788)
  • πŸ“„ add license headers @burgholzer (#770)
  • πŸ”§πŸ“ unshallow git clone for RtD @burgholzer (#722)
  • πŸ”§ update release drafter template and renovate config @burgholzer (#720)

πŸ“¦ 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

  • 🚨 Run clang-tidy on MLIR subproject, switch to LLVM@20, and update to CMake >= 3.24 @burgholzer (#879)
  • ♻️ Remove template parameter from MemoryManager and adjacent classes @Joshy-R (#866)
  • β™»οΈπŸ› Refactor qc::Permutation and fix corner case in Qiskit layout import @burgholzer (#858)
  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @renovate[bot] (#757)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

πŸ€– CI

  • 🚨 Run clang-tidy on MLIR subproject, switch to LLVM@20, and update to CMake >= 3.24 @burgholzer (#879)
  • ✨Add continuous testing workflow for Qiskit main branch @burgholzer (#860)
  • πŸ‘·β¬†οΈ update MQT workflows to v1.7 @burgholzer (#812)
  • πŸ”§ update Python coverage configuration @burgholzer (#811)
  • πŸ‘·β¬†οΈ update MQT workflows to v1.6 @burgholzer (#803)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)

⬆️ Dependencies

96 changes - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#884) - 🚨 Run clang-tidy on MLIR subproject, switch to `LLVM@20`, and update to `CMake >= 3.24` @burgholzer (#879) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.11.2 @[renovate[bot]](https://github.com/apps/renovate) (#864) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#872) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/github-script action to v7 @[renovate[bot]](https://github.com/apps/renovate) (#871) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#857) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.3 @[renovate[bot]](https://github.com/apps/renovate) (#855) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.3 @[renovate[bot]](https://github.com/apps/renovate) (#854) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.30.1 @[renovate[bot]](https://github.com/apps/renovate) (#853) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.10 @[renovate[bot]](https://github.com/apps/renovate) (#852) - ⬆️ scikit-build-core 0.11, PEP 639 license expressions, sphinx fixes, more automerge @burgholzer (#847) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.30.0 @[renovate[bot]](https://github.com/apps/renovate) (#844) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.9 @[renovate[bot]](https://github.com/apps/renovate) (#843) - ⬆️ Update googletest and Boost Multiprecision dependencies @burgholzer (#840) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#837) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.2 @[renovate[bot]](https://github.com/apps/renovate) (#836) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.2 @[renovate[bot]](https://github.com/apps/renovate) (#835) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.7 @[renovate[bot]](https://github.com/apps/renovate) (#833) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.9 @[renovate[bot]](https://github.com/apps/renovate) (#834) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#830) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.7 @[renovate[bot]](https://github.com/apps/renovate) (#828) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.1 @[renovate[bot]](https://github.com/apps/renovate) (#829) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.6 @[renovate[bot]](https://github.com/apps/renovate) (#827) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#825) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.15.0 @[renovate[bot]](https://github.com/apps/renovate) (#824) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.5 @[renovate[bot]](https://github.com/apps/renovate) (#823) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#821) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.1 @[renovate[bot]](https://github.com/apps/renovate) (#820) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.5 @[renovate[bot]](https://github.com/apps/renovate) (#819) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.4 @[renovate[bot]](https://github.com/apps/renovate) (#818) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#816) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.3 @[renovate[bot]](https://github.com/apps/renovate) (#815) - πŸ‘·β¬†οΈ update MQT workflows to v1.7 @burgholzer (#812) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#806) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.2 @[renovate[bot]](https://github.com/apps/renovate) (#804) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.7 @[renovate[bot]](https://github.com/apps/renovate) (#805) - πŸ”’ update to latest `uv` version that properly supports dynamically versioned packages @burgholzer (#802) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#801) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.0 @[renovate[bot]](https://github.com/apps/renovate) (#800) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.1 @[renovate[bot]](https://github.com/apps/renovate) (#799) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#795) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.6 @[renovate[bot]](https://github.com/apps/renovate) (#794) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.6 @[renovate[bot]](https://github.com/apps/renovate) (#793) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.4 @[renovate[bot]](https://github.com/apps/renovate) (#792) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.5 @[renovate[bot]](https://github.com/apps/renovate) (#790) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.1 @[renovate[bot]](https://github.com/apps/renovate) (#791) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#787) - βž– simplify dependencies after `uv` update @burgholzer (#786) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.4 @[renovate[bot]](https://github.com/apps/renovate) (#782) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#785) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.0 @[renovate[bot]](https://github.com/apps/renovate) (#784) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.4 @[renovate[bot]](https://github.com/apps/renovate) (#783) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#769) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.5 @[renovate[bot]](https://github.com/apps/renovate) (#781) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.3 @[renovate[bot]](https://github.com/apps/renovate) (#780) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.3 @[renovate[bot]](https://github.com/apps/renovate) (#779) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v2 @[renovate[bot]](https://github.com/apps/renovate) (#777) - ⬆️πŸͺ Update pre-commit hook sirosen/texthooks to v0.6.8 @[renovate[bot]](https://github.com/apps/renovate) (#776) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.2 @[renovate[bot]](https://github.com/apps/renovate) (#773) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.2 @[renovate[bot]](https://github.com/apps/renovate) (#775) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.2 @[renovate[bot]](https://github.com/apps/renovate) (#774) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.1 @[renovate[bot]](https://github.com/apps/renovate) (#765) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.30.0 @[renovate[bot]](https://github.com/apps/renovate) (#768) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.1 @[renovate[bot]](https://github.com/apps/renovate) (#767) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.1 @[renovate[bot]](https://github.com/apps/renovate) (#766) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#755) - β¬†οΈπŸ‘¨β€πŸ’» Update cda-tum/mqt-workflows action to v1.5 @[renovate[bot]](https://github.com/apps/renovate) (#759) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.0 @[renovate[bot]](https://github.com/apps/renovate) (#760) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @[renovate[bot]](https://github.com/apps/renovate) (#757) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.0 @[renovate[bot]](https://github.com/apps/renovate) (#761) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.4 @[renovate[bot]](https://github.com/apps/renovate) (#756) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#754) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.4 @[renovate[bot]](https://github.com/apps/renovate) (#753) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#750) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.3 @[renovate[bot]](https://github.com/apps/renovate) (#748) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v1.4.4 @[renovate[bot]](https://github.com/apps/renovate) (#747) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.3 @[renovate[bot]](https://github.com/apps/renovate) (#749) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#746) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.0 @[renovate[bot]](https://github.com/apps/renovate) (#745) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.3 @[renovate[bot]](https://github.com/apps/renovate) (#744) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.2 @[renovate[bot]](https://github.com/apps/renovate) (#743) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#742) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.13.0 @[renovate[bot]](https://github.com/apps/renovate) (#740) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.26.8 @[renovate[bot]](https://github.com/apps/renovate) (#739) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.1 @[renovate[bot]](https://github.com/apps/renovate) (#738) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.1 @[renovate[bot]](https://github.com/apps/renovate) (#737) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#736) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.1 @[renovate[bot]](https://github.com/apps/renovate) (#735) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4.0.1 @[renovate[bot]](https://github.com/apps/renovate) (#734) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4 @[renovate[bot]](https://github.com/apps/renovate) (#733) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.0 @[renovate[bot]](https://github.com/apps/renovate) (#732) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.0 @[renovate[bot]](https://github.com/apps/renovate) (#731) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.2 @[renovate[bot]](https://github.com/apps/renovate) (#730) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#727) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.0 @[renovate[bot]](https://github.com/apps/renovate) (#726) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.29.4 @[renovate[bot]](https://github.com/apps/renovate) (#725)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.7.0...v3.0.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] 9 months ago

MQT Core - MQT Core 3.0.0 Beta 7 Pre-Release

πŸ‘€ What Changed

Yet another pre-release in the v3 series. This time mainly because of #858 and #859.

βš›οΈ MQT Core

  • ✨ Add Python interface improvements and Qiskit export support @burgholzer (#859)
  • β™»οΈπŸ› Refactor qc::Permutation and fix corner case in Qiskit layout import @burgholzer (#858)
  • πŸ“ Slightly improve code documentation and QuantumComputation.__repr__ @burgholzer (#851)
  • πŸ› Fix and enhance Qiskit layout and permutation handling @burgholzer (#850)
  • πŸ”§ Handle empty quantum and classical registers in qiskit to MQT translation @burgholzer (#849)
  • ⬆️ scikit-build-core 0.11, PEP 639 license expressions, sphinx fixes, more automerge @burgholzer (#847)
  • ⬆️ Update googletest and Boost Multiprecision dependencies @burgholzer (#840)
  • 🚸 Allow indexed registers as operation arguments @burgholzer (#839)
  • 🚸 Add support for indexed identifiers and improve OpenQASM handling @burgholzer (#832)
  • ✨ Add State Preparation Algorithm @M-J-Hochreiter (#543)
  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ✨ Ancillary and garbage support @TooMuchDakka (#635)
  • ♻️ Refactor handling of gate matrices and inverses @Joshy-R (#752)
  • πŸ”§ update Python coverage configuration @burgholzer (#811)
  • πŸ› 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)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • πŸ”’ update to latest uv version that properly supports dynamically versioned packages @burgholzer (#802)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • βž– simplify dependencies after uv update @burgholzer (#786)
  • πŸ“„ add license headers @burgholzer (#770)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ✨ Adopt PEP 735 dependency groups @burgholzer (#762)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)
  • πŸ› properly handle timing literals in QASM parser @burgholzer (#724)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

βš–οΈ MQT Core DD Package

  • πŸ“ Add documentation for DD package @burgholzer (#831)
  • ✨🐍 DD Package Python bindings @burgholzer (#838)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)
  • πŸ› fix endianness in DCX and XX_minus_YY gate matrix definition @burgholzer (#741)

πŸ•ΈοΈ MQT Core ZX Package

  • πŸ“ Add documentation for ZX-calculus package and C++ API docs setup @pehamTom (#817)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)

πŸš€ Features and Enhancements

  • ✨ Add Python interface improvements and Qiskit export support @burgholzer (#859)
  • 🎨 Refactor NAComputation with concrete base classes for every operation and ouput new .naviz format @ystade (#846)
  • πŸ”§ Only enable IPO per default for Release builds outside of deployment @burgholzer (#841)
  • 🚸 Allow indexed registers as operation arguments @burgholzer (#839)
  • ✨🐍 DD Package Python bindings @burgholzer (#838)
  • 🚸 Add support for indexed identifiers and improve OpenQASM handling @burgholzer (#832)
  • ✨ Add State Preparation Algorithm @M-J-Hochreiter (#543)
  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ✨ Ancillary and garbage support @TooMuchDakka (#635)
  • ♻️ Refactor handling of gate matrices and inverses @Joshy-R (#752)
  • πŸ› Fix stripping of idle qubits @burgholzer (#763)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)

πŸ› Bug Fixes

  • ✨ Add Python interface improvements and Qiskit export support @burgholzer (#859)
  • β™»οΈπŸ› Refactor qc::Permutation and fix corner case in Qiskit layout import @burgholzer (#858)
  • πŸ› Fix and enhance Qiskit layout and permutation handling @burgholzer (#850)
  • πŸ”§ Handle empty quantum and classical registers in qiskit to MQT translation @burgholzer (#849)
  • πŸ› 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

  • πŸ“ Slightly improve code documentation and QuantumComputation.__repr__ @burgholzer (#851)
  • πŸ“ Add documentation for ZX-calculus package and C++ API docs setup @pehamTom (#817)
  • βœ¨πŸ“ Rework and modernize the development guide @burgholzer (#842)
  • πŸ“ Add documentation for DD package @burgholzer (#831)
  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • πŸ“„ update copyright notice @burgholzer (#788)
  • πŸ“„ add license headers @burgholzer (#770)
  • πŸ”§πŸ“ unshallow git clone for RtD @burgholzer (#722)
  • πŸ”§ update release drafter template and renovate config @burgholzer (#720)

πŸ“¦ 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

  • β™»οΈπŸ› Refactor qc::Permutation and fix corner case in Qiskit layout import @burgholzer (#858)
  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @renovate[bot] (#757)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

πŸ€– CI

  • πŸ‘·β¬†οΈ update MQT workflows to v1.7 @burgholzer (#812)
  • πŸ”§ update Python coverage configuration @burgholzer (#811)
  • πŸ‘·β¬†οΈ update MQT workflows to v1.6 @burgholzer (#803)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)

⬆️ Dependencies

91 changes - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#857) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.3 @[renovate[bot]](https://github.com/apps/renovate) (#855) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.3 @[renovate[bot]](https://github.com/apps/renovate) (#854) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.30.1 @[renovate[bot]](https://github.com/apps/renovate) (#853) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.10 @[renovate[bot]](https://github.com/apps/renovate) (#852) - ⬆️ scikit-build-core 0.11, PEP 639 license expressions, sphinx fixes, more automerge @burgholzer (#847) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.30.0 @[renovate[bot]](https://github.com/apps/renovate) (#844) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.9 @[renovate[bot]](https://github.com/apps/renovate) (#843) - ⬆️ Update googletest and Boost Multiprecision dependencies @burgholzer (#840) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#837) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.2 @[renovate[bot]](https://github.com/apps/renovate) (#836) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.2 @[renovate[bot]](https://github.com/apps/renovate) (#835) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.7 @[renovate[bot]](https://github.com/apps/renovate) (#833) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.9 @[renovate[bot]](https://github.com/apps/renovate) (#834) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#830) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.7 @[renovate[bot]](https://github.com/apps/renovate) (#828) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.1 @[renovate[bot]](https://github.com/apps/renovate) (#829) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.6 @[renovate[bot]](https://github.com/apps/renovate) (#827) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#825) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.15.0 @[renovate[bot]](https://github.com/apps/renovate) (#824) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.5 @[renovate[bot]](https://github.com/apps/renovate) (#823) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#821) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.1 @[renovate[bot]](https://github.com/apps/renovate) (#820) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.5 @[renovate[bot]](https://github.com/apps/renovate) (#819) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.4 @[renovate[bot]](https://github.com/apps/renovate) (#818) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#816) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.3 @[renovate[bot]](https://github.com/apps/renovate) (#815) - πŸ‘·β¬†οΈ update MQT workflows to v1.7 @burgholzer (#812) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#806) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.2 @[renovate[bot]](https://github.com/apps/renovate) (#804) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.7 @[renovate[bot]](https://github.com/apps/renovate) (#805) - πŸ”’ update to latest `uv` version that properly supports dynamically versioned packages @burgholzer (#802) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#801) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.0 @[renovate[bot]](https://github.com/apps/renovate) (#800) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.1 @[renovate[bot]](https://github.com/apps/renovate) (#799) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#795) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.6 @[renovate[bot]](https://github.com/apps/renovate) (#794) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.6 @[renovate[bot]](https://github.com/apps/renovate) (#793) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.4 @[renovate[bot]](https://github.com/apps/renovate) (#792) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.5 @[renovate[bot]](https://github.com/apps/renovate) (#790) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.1 @[renovate[bot]](https://github.com/apps/renovate) (#791) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#787) - βž– simplify dependencies after `uv` update @burgholzer (#786) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.4 @[renovate[bot]](https://github.com/apps/renovate) (#782) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#785) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.0 @[renovate[bot]](https://github.com/apps/renovate) (#784) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.4 @[renovate[bot]](https://github.com/apps/renovate) (#783) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#769) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.5 @[renovate[bot]](https://github.com/apps/renovate) (#781) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.3 @[renovate[bot]](https://github.com/apps/renovate) (#780) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.3 @[renovate[bot]](https://github.com/apps/renovate) (#779) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v2 @[renovate[bot]](https://github.com/apps/renovate) (#777) - ⬆️πŸͺ Update pre-commit hook sirosen/texthooks to v0.6.8 @[renovate[bot]](https://github.com/apps/renovate) (#776) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.2 @[renovate[bot]](https://github.com/apps/renovate) (#773) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.2 @[renovate[bot]](https://github.com/apps/renovate) (#775) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.2 @[renovate[bot]](https://github.com/apps/renovate) (#774) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.1 @[renovate[bot]](https://github.com/apps/renovate) (#765) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.30.0 @[renovate[bot]](https://github.com/apps/renovate) (#768) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.1 @[renovate[bot]](https://github.com/apps/renovate) (#767) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.1 @[renovate[bot]](https://github.com/apps/renovate) (#766) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#755) - β¬†οΈπŸ‘¨β€πŸ’» Update cda-tum/mqt-workflows action to v1.5 @[renovate[bot]](https://github.com/apps/renovate) (#759) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.0 @[renovate[bot]](https://github.com/apps/renovate) (#760) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @[renovate[bot]](https://github.com/apps/renovate) (#757) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.0 @[renovate[bot]](https://github.com/apps/renovate) (#761) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.4 @[renovate[bot]](https://github.com/apps/renovate) (#756) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#754) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.4 @[renovate[bot]](https://github.com/apps/renovate) (#753) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#750) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.3 @[renovate[bot]](https://github.com/apps/renovate) (#748) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v1.4.4 @[renovate[bot]](https://github.com/apps/renovate) (#747) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.3 @[renovate[bot]](https://github.com/apps/renovate) (#749) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#746) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.0 @[renovate[bot]](https://github.com/apps/renovate) (#745) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.3 @[renovate[bot]](https://github.com/apps/renovate) (#744) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.2 @[renovate[bot]](https://github.com/apps/renovate) (#743) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#742) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.13.0 @[renovate[bot]](https://github.com/apps/renovate) (#740) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.26.8 @[renovate[bot]](https://github.com/apps/renovate) (#739) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.1 @[renovate[bot]](https://github.com/apps/renovate) (#738) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.1 @[renovate[bot]](https://github.com/apps/renovate) (#737) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#736) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.1 @[renovate[bot]](https://github.com/apps/renovate) (#735) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4.0.1 @[renovate[bot]](https://github.com/apps/renovate) (#734) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4 @[renovate[bot]](https://github.com/apps/renovate) (#733) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.0 @[renovate[bot]](https://github.com/apps/renovate) (#732) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.0 @[renovate[bot]](https://github.com/apps/renovate) (#731) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.2 @[renovate[bot]](https://github.com/apps/renovate) (#730) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#727) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.0 @[renovate[bot]](https://github.com/apps/renovate) (#726) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.29.4 @[renovate[bot]](https://github.com/apps/renovate) (#725)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.7.0...v3.0.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] 10 months ago

MQT Core - MQT Core 3.0.0 Beta 6 Pre-Release

πŸ‘€ What Changed

One more pre-release in the 3.0 series. This time including #850, #851 and #846.

βš›οΈ MQT Core

  • πŸ“ Slightly improve code documentation and QuantumComputation.__repr__ @burgholzer (#851)
  • πŸ› Fix and enhance Qiskit layout and permutation handling @burgholzer (#850)
  • πŸ”§ Handle empty quantum and classical registers in qiskit to MQT translation @burgholzer (#849)
  • ⬆️ scikit-build-core 0.11, PEP 639 license expressions, sphinx fixes, more automerge @burgholzer (#847)
  • ⬆️ Update googletest and Boost Multiprecision dependencies @burgholzer (#840)
  • 🚸 Allow indexed registers as operation arguments @burgholzer (#839)
  • 🚸 Add support for indexed identifiers and improve OpenQASM handling @burgholzer (#832)
  • ✨ Add State Preparation Algorithm @M-J-Hochreiter (#543)
  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ✨ Ancillary and garbage support @TooMuchDakka (#635)
  • ♻️ Refactor handling of gate matrices and inverses @Joshy-R (#752)
  • πŸ”§ update Python coverage configuration @burgholzer (#811)
  • πŸ› 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)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • πŸ”’ update to latest uv version that properly supports dynamically versioned packages @burgholzer (#802)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • βž– simplify dependencies after uv update @burgholzer (#786)
  • πŸ“„ add license headers @burgholzer (#770)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ✨ Adopt PEP 735 dependency groups @burgholzer (#762)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)
  • πŸ› properly handle timing literals in QASM parser @burgholzer (#724)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

βš–οΈ MQT Core DD Package

  • πŸ“ Add documentation for DD package @burgholzer (#831)
  • ✨🐍 DD Package Python bindings @burgholzer (#838)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)
  • πŸ› fix endianness in DCX and XX_minus_YY gate matrix definition @burgholzer (#741)

πŸ•ΈοΈ MQT Core ZX Package

  • πŸ“ Add documentation for ZX-calculus package and C++ API docs setup @pehamTom (#817)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)

πŸš€ Features and Enhancements

  • 🎨 Refactor NAComputation with concrete base classes for every operation and ouput new .naviz format @ystade (#846)
  • πŸ”§ Only enable IPO per default for Release builds outside of deployment @burgholzer (#841)
  • 🚸 Allow indexed registers as operation arguments @burgholzer (#839)
  • ✨🐍 DD Package Python bindings @burgholzer (#838)
  • 🚸 Add support for indexed identifiers and improve OpenQASM handling @burgholzer (#832)
  • ✨ Add State Preparation Algorithm @M-J-Hochreiter (#543)
  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ✨ Ancillary and garbage support @TooMuchDakka (#635)
  • ♻️ Refactor handling of gate matrices and inverses @Joshy-R (#752)
  • πŸ› Fix stripping of idle qubits @burgholzer (#763)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)

πŸ› Bug Fixes

  • πŸ› Fix and enhance Qiskit layout and permutation handling @burgholzer (#850)
  • πŸ”§ Handle empty quantum and classical registers in qiskit to MQT translation @burgholzer (#849)
  • πŸ› 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

  • πŸ“ Slightly improve code documentation and QuantumComputation.__repr__ @burgholzer (#851)
  • πŸ“ Add documentation for ZX-calculus package and C++ API docs setup @pehamTom (#817)
  • βœ¨πŸ“ Rework and modernize the development guide @burgholzer (#842)
  • πŸ“ Add documentation for DD package @burgholzer (#831)
  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • πŸ“„ update copyright notice @burgholzer (#788)
  • πŸ“„ add license headers @burgholzer (#770)
  • πŸ”§πŸ“ unshallow git clone for RtD @burgholzer (#722)
  • πŸ”§ update release drafter template and renovate config @burgholzer (#720)

πŸ“¦ 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

  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @renovate[bot] (#757)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

πŸ€– CI

  • πŸ‘·β¬†οΈ update MQT workflows to v1.7 @burgholzer (#812)
  • πŸ”§ update Python coverage configuration @burgholzer (#811)
  • πŸ‘·β¬†οΈ update MQT workflows to v1.6 @burgholzer (#803)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)

⬆️ Dependencies

86 changes - ⬆️ scikit-build-core 0.11, PEP 639 license expressions, sphinx fixes, more automerge @burgholzer (#847) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.30.0 @[renovate[bot]](https://github.com/apps/renovate) (#844) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.9 @[renovate[bot]](https://github.com/apps/renovate) (#843) - ⬆️ Update googletest and Boost Multiprecision dependencies @burgholzer (#840) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#837) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.2 @[renovate[bot]](https://github.com/apps/renovate) (#836) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.2 @[renovate[bot]](https://github.com/apps/renovate) (#835) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.7 @[renovate[bot]](https://github.com/apps/renovate) (#833) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.9 @[renovate[bot]](https://github.com/apps/renovate) (#834) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#830) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.7 @[renovate[bot]](https://github.com/apps/renovate) (#828) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.1 @[renovate[bot]](https://github.com/apps/renovate) (#829) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.6 @[renovate[bot]](https://github.com/apps/renovate) (#827) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#825) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.15.0 @[renovate[bot]](https://github.com/apps/renovate) (#824) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.5 @[renovate[bot]](https://github.com/apps/renovate) (#823) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#821) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.1 @[renovate[bot]](https://github.com/apps/renovate) (#820) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.5 @[renovate[bot]](https://github.com/apps/renovate) (#819) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.4 @[renovate[bot]](https://github.com/apps/renovate) (#818) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#816) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.3 @[renovate[bot]](https://github.com/apps/renovate) (#815) - πŸ‘·β¬†οΈ update MQT workflows to v1.7 @burgholzer (#812) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#806) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.2 @[renovate[bot]](https://github.com/apps/renovate) (#804) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.7 @[renovate[bot]](https://github.com/apps/renovate) (#805) - πŸ”’ update to latest `uv` version that properly supports dynamically versioned packages @burgholzer (#802) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#801) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.0 @[renovate[bot]](https://github.com/apps/renovate) (#800) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.1 @[renovate[bot]](https://github.com/apps/renovate) (#799) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#795) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.6 @[renovate[bot]](https://github.com/apps/renovate) (#794) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.6 @[renovate[bot]](https://github.com/apps/renovate) (#793) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.4 @[renovate[bot]](https://github.com/apps/renovate) (#792) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.5 @[renovate[bot]](https://github.com/apps/renovate) (#790) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.1 @[renovate[bot]](https://github.com/apps/renovate) (#791) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#787) - βž– simplify dependencies after `uv` update @burgholzer (#786) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.4 @[renovate[bot]](https://github.com/apps/renovate) (#782) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#785) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.0 @[renovate[bot]](https://github.com/apps/renovate) (#784) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.4 @[renovate[bot]](https://github.com/apps/renovate) (#783) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#769) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.5 @[renovate[bot]](https://github.com/apps/renovate) (#781) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.3 @[renovate[bot]](https://github.com/apps/renovate) (#780) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.3 @[renovate[bot]](https://github.com/apps/renovate) (#779) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v2 @[renovate[bot]](https://github.com/apps/renovate) (#777) - ⬆️πŸͺ Update pre-commit hook sirosen/texthooks to v0.6.8 @[renovate[bot]](https://github.com/apps/renovate) (#776) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.2 @[renovate[bot]](https://github.com/apps/renovate) (#773) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.2 @[renovate[bot]](https://github.com/apps/renovate) (#775) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.2 @[renovate[bot]](https://github.com/apps/renovate) (#774) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.1 @[renovate[bot]](https://github.com/apps/renovate) (#765) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.30.0 @[renovate[bot]](https://github.com/apps/renovate) (#768) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.1 @[renovate[bot]](https://github.com/apps/renovate) (#767) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.1 @[renovate[bot]](https://github.com/apps/renovate) (#766) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#755) - β¬†οΈπŸ‘¨β€πŸ’» Update cda-tum/mqt-workflows action to v1.5 @[renovate[bot]](https://github.com/apps/renovate) (#759) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.0 @[renovate[bot]](https://github.com/apps/renovate) (#760) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @[renovate[bot]](https://github.com/apps/renovate) (#757) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.0 @[renovate[bot]](https://github.com/apps/renovate) (#761) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.4 @[renovate[bot]](https://github.com/apps/renovate) (#756) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#754) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.4 @[renovate[bot]](https://github.com/apps/renovate) (#753) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#750) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.3 @[renovate[bot]](https://github.com/apps/renovate) (#748) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v1.4.4 @[renovate[bot]](https://github.com/apps/renovate) (#747) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.3 @[renovate[bot]](https://github.com/apps/renovate) (#749) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#746) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.0 @[renovate[bot]](https://github.com/apps/renovate) (#745) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.3 @[renovate[bot]](https://github.com/apps/renovate) (#744) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.2 @[renovate[bot]](https://github.com/apps/renovate) (#743) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#742) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.13.0 @[renovate[bot]](https://github.com/apps/renovate) (#740) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.26.8 @[renovate[bot]](https://github.com/apps/renovate) (#739) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.1 @[renovate[bot]](https://github.com/apps/renovate) (#738) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.1 @[renovate[bot]](https://github.com/apps/renovate) (#737) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#736) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.1 @[renovate[bot]](https://github.com/apps/renovate) (#735) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4.0.1 @[renovate[bot]](https://github.com/apps/renovate) (#734) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4 @[renovate[bot]](https://github.com/apps/renovate) (#733) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.0 @[renovate[bot]](https://github.com/apps/renovate) (#732) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.0 @[renovate[bot]](https://github.com/apps/renovate) (#731) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.2 @[renovate[bot]](https://github.com/apps/renovate) (#730) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#727) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.0 @[renovate[bot]](https://github.com/apps/renovate) (#726) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.29.4 @[renovate[bot]](https://github.com/apps/renovate) (#725)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.7.0...v3.0.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] 10 months ago

MQT Core - MQT Core 3.0.0 Beta 5 Pre-Release

πŸ‘€ What Changed

The next, and hopefully final, pre-release in the 3.0 series. Contains #543, #832, #839, #840, #847, #831, #838, #817, #841, which bring in quite some new features. Most notably, Python bindings for the DD package, updated dependencies for googletest and Boost Multiprecision, better OpenQASM 3 support, and scikit-build-core 0.11 support.

βš›οΈ MQT Core

  • ⬆️ scikit-build-core 0.11, PEP 639 license expressions, sphinx fixes, more automerge @burgholzer (#847)
  • ⬆️ Update googletest and Boost Multiprecision dependencies @burgholzer (#840)
  • 🚸 Allow indexed registers as operation arguments @burgholzer (#839)
  • 🚸 Add support for indexed identifiers and improve OpenQASM handling @burgholzer (#832)
  • ✨ Add State Preparation Algorithm @M-J-Hochreiter (#543)
  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ✨ Ancillary and garbage support @TooMuchDakka (#635)
  • ♻️ Refactor handling of gate matrices and inverses @Joshy-R (#752)
  • πŸ”§ update Python coverage configuration @burgholzer (#811)
  • πŸ› 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)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • πŸ”’ update to latest uv version that properly supports dynamically versioned packages @burgholzer (#802)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • βž– simplify dependencies after uv update @burgholzer (#786)
  • πŸ“„ add license headers @burgholzer (#770)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ✨ Adopt PEP 735 dependency groups @burgholzer (#762)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)
  • πŸ› properly handle timing literals in QASM parser @burgholzer (#724)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

βš–οΈ MQT Core DD Package

  • πŸ“ Add documentation for DD package @burgholzer (#831)
  • ✨🐍 DD Package Python bindings @burgholzer (#838)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)
  • πŸ› fix endianness in DCX and XX_minus_YY gate matrix definition @burgholzer (#741)

πŸ•ΈοΈ MQT Core ZX Package

  • πŸ“ Add documentation for ZX-calculus package and C++ API docs setup @pehamTom (#817)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)

πŸš€ Features and Enhancements

  • πŸ”§ Only enable IPO per default for Release builds outside of deployment @burgholzer (#841)
  • 🚸 Allow indexed registers as operation arguments @burgholzer (#839)
  • ✨🐍 DD Package Python bindings @burgholzer (#838)
  • 🚸 Add support for indexed identifiers and improve OpenQASM handling @burgholzer (#832)
  • ✨ Add State Preparation Algorithm @M-J-Hochreiter (#543)
  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ✨ Ancillary and garbage support @TooMuchDakka (#635)
  • ♻️ Refactor handling of gate matrices and inverses @Joshy-R (#752)
  • πŸ› Fix stripping of idle qubits @burgholzer (#763)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)

πŸ› 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

  • πŸ“ Add documentation for ZX-calculus package and C++ API docs setup @pehamTom (#817)
  • βœ¨πŸ“ Rework and modernize the development guide @burgholzer (#842)
  • πŸ“ Add documentation for DD package @burgholzer (#831)
  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • πŸ“„ update copyright notice @burgholzer (#788)
  • πŸ“„ add license headers @burgholzer (#770)
  • πŸ”§πŸ“ unshallow git clone for RtD @burgholzer (#722)
  • πŸ”§ update release drafter template and renovate config @burgholzer (#720)

πŸ“¦ 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

  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @renovate[bot] (#757)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

πŸ€– CI

  • πŸ‘·β¬†οΈ update MQT workflows to v1.7 @burgholzer (#812)
  • πŸ”§ update Python coverage configuration @burgholzer (#811)
  • πŸ‘·β¬†οΈ update MQT workflows to v1.6 @burgholzer (#803)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)

⬆️ Dependencies

86 changes - ⬆️ scikit-build-core 0.11, PEP 639 license expressions, sphinx fixes, more automerge @burgholzer (#847) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.30.0 @[renovate[bot]](https://github.com/apps/renovate) (#844) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.9 @[renovate[bot]](https://github.com/apps/renovate) (#843) - ⬆️ Update googletest and Boost Multiprecision dependencies @burgholzer (#840) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#837) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.2 @[renovate[bot]](https://github.com/apps/renovate) (#836) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.2 @[renovate[bot]](https://github.com/apps/renovate) (#835) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.7 @[renovate[bot]](https://github.com/apps/renovate) (#833) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.9 @[renovate[bot]](https://github.com/apps/renovate) (#834) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#830) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.7 @[renovate[bot]](https://github.com/apps/renovate) (#828) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.5.1 @[renovate[bot]](https://github.com/apps/renovate) (#829) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.6 @[renovate[bot]](https://github.com/apps/renovate) (#827) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#825) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.15.0 @[renovate[bot]](https://github.com/apps/renovate) (#824) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.5 @[renovate[bot]](https://github.com/apps/renovate) (#823) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#821) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.1 @[renovate[bot]](https://github.com/apps/renovate) (#820) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.5 @[renovate[bot]](https://github.com/apps/renovate) (#819) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.4 @[renovate[bot]](https://github.com/apps/renovate) (#818) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#816) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.3 @[renovate[bot]](https://github.com/apps/renovate) (#815) - πŸ‘·β¬†οΈ update MQT workflows to v1.7 @burgholzer (#812) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#806) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.2 @[renovate[bot]](https://github.com/apps/renovate) (#804) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.7 @[renovate[bot]](https://github.com/apps/renovate) (#805) - πŸ”’ update to latest `uv` version that properly supports dynamically versioned packages @burgholzer (#802) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#801) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.0 @[renovate[bot]](https://github.com/apps/renovate) (#800) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.1 @[renovate[bot]](https://github.com/apps/renovate) (#799) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#795) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.6 @[renovate[bot]](https://github.com/apps/renovate) (#794) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.6 @[renovate[bot]](https://github.com/apps/renovate) (#793) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.4 @[renovate[bot]](https://github.com/apps/renovate) (#792) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.5 @[renovate[bot]](https://github.com/apps/renovate) (#790) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.1 @[renovate[bot]](https://github.com/apps/renovate) (#791) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#787) - βž– simplify dependencies after `uv` update @burgholzer (#786) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.4 @[renovate[bot]](https://github.com/apps/renovate) (#782) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#785) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.0 @[renovate[bot]](https://github.com/apps/renovate) (#784) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.4 @[renovate[bot]](https://github.com/apps/renovate) (#783) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#769) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.5 @[renovate[bot]](https://github.com/apps/renovate) (#781) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.3 @[renovate[bot]](https://github.com/apps/renovate) (#780) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.3 @[renovate[bot]](https://github.com/apps/renovate) (#779) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v2 @[renovate[bot]](https://github.com/apps/renovate) (#777) - ⬆️πŸͺ Update pre-commit hook sirosen/texthooks to v0.6.8 @[renovate[bot]](https://github.com/apps/renovate) (#776) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.2 @[renovate[bot]](https://github.com/apps/renovate) (#773) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.2 @[renovate[bot]](https://github.com/apps/renovate) (#775) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.2 @[renovate[bot]](https://github.com/apps/renovate) (#774) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.1 @[renovate[bot]](https://github.com/apps/renovate) (#765) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.30.0 @[renovate[bot]](https://github.com/apps/renovate) (#768) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.1 @[renovate[bot]](https://github.com/apps/renovate) (#767) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.1 @[renovate[bot]](https://github.com/apps/renovate) (#766) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#755) - β¬†οΈπŸ‘¨β€πŸ’» Update cda-tum/mqt-workflows action to v1.5 @[renovate[bot]](https://github.com/apps/renovate) (#759) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.0 @[renovate[bot]](https://github.com/apps/renovate) (#760) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @[renovate[bot]](https://github.com/apps/renovate) (#757) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.0 @[renovate[bot]](https://github.com/apps/renovate) (#761) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.4 @[renovate[bot]](https://github.com/apps/renovate) (#756) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#754) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.4 @[renovate[bot]](https://github.com/apps/renovate) (#753) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#750) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.3 @[renovate[bot]](https://github.com/apps/renovate) (#748) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v1.4.4 @[renovate[bot]](https://github.com/apps/renovate) (#747) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.3 @[renovate[bot]](https://github.com/apps/renovate) (#749) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#746) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.0 @[renovate[bot]](https://github.com/apps/renovate) (#745) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.3 @[renovate[bot]](https://github.com/apps/renovate) (#744) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.2 @[renovate[bot]](https://github.com/apps/renovate) (#743) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#742) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.13.0 @[renovate[bot]](https://github.com/apps/renovate) (#740) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.26.8 @[renovate[bot]](https://github.com/apps/renovate) (#739) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.1 @[renovate[bot]](https://github.com/apps/renovate) (#738) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.1 @[renovate[bot]](https://github.com/apps/renovate) (#737) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#736) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.1 @[renovate[bot]](https://github.com/apps/renovate) (#735) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4.0.1 @[renovate[bot]](https://github.com/apps/renovate) (#734) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4 @[renovate[bot]](https://github.com/apps/renovate) (#733) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.0 @[renovate[bot]](https://github.com/apps/renovate) (#732) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.0 @[renovate[bot]](https://github.com/apps/renovate) (#731) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.2 @[renovate[bot]](https://github.com/apps/renovate) (#730) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#727) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.0 @[renovate[bot]](https://github.com/apps/renovate) (#726) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.29.4 @[renovate[bot]](https://github.com/apps/renovate) (#725)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.7.0...v3.0.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] 10 months ago

MQT Core - MQT Core 3.0.0 Beta 4 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

  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • Ancillary and garbage support @TooMuchDakka (#635)
  • ♻️ Refactor handling of gate matrices and inverses @Joshy-R (#752)
  • πŸ”§ update Python coverage configuration @burgholzer (#811)
  • πŸ› 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)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • πŸ”’ update to latest uv version that properly supports dynamically versioned packages @burgholzer (#802)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • βž– simplify dependencies after uv update @burgholzer (#786)
  • πŸ“„ add license headers @burgholzer (#770)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ✨ Adopt PEP 735 dependency groups @burgholzer (#762)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)
  • πŸ› properly handle timing literals in QASM parser @burgholzer (#724)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

βš–οΈ MQT Core DD Package

  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)
  • πŸ› fix endianness in DCX and XX_minus_YY gate matrix definition @burgholzer (#741)

πŸ•ΈοΈ 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

  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • Ancillary and garbage support @TooMuchDakka (#635)
  • ♻️ Refactor handling of gate matrices and inverses @Joshy-R (#752)
  • πŸ› Fix stripping of idle qubits @burgholzer (#763)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)

πŸ› 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

  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • πŸ“„ update copyright notice @burgholzer (#788)
  • πŸ“„ add license headers @burgholzer (#770)
  • πŸ”§πŸ“ unshallow git clone for RtD @burgholzer (#722)
  • πŸ”§ update release drafter template and renovate config @burgholzer (#720)

πŸ“¦ 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

  • ♻️ Refactor QASM import functionality and remove deprecated formats @burgholzer (#822)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @renovate[bot] (#757)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

πŸ€– CI

  • πŸ‘·β¬†οΈ update MQT workflows to v1.7 @burgholzer (#812)
  • πŸ”§ update Python coverage configuration @burgholzer (#811)
  • πŸ‘·β¬†οΈ update MQT workflows to v1.6 @burgholzer (#803)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)

⬆️ Dependencies

70 changes - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#821) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.1 @[renovate[bot]](https://github.com/apps/renovate) (#820) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.5 @[renovate[bot]](https://github.com/apps/renovate) (#819) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.4 @[renovate[bot]](https://github.com/apps/renovate) (#818) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#816) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.3 @[renovate[bot]](https://github.com/apps/renovate) (#815) - πŸ‘·β¬†οΈ update MQT workflows to v1.7 @burgholzer (#812) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#806) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.2 @[renovate[bot]](https://github.com/apps/renovate) (#804) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.7 @[renovate[bot]](https://github.com/apps/renovate) (#805) - πŸ”’ update to latest `uv` version that properly supports dynamically versioned packages @burgholzer (#802) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#801) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.0 @[renovate[bot]](https://github.com/apps/renovate) (#800) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.1 @[renovate[bot]](https://github.com/apps/renovate) (#799) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#795) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.6 @[renovate[bot]](https://github.com/apps/renovate) (#794) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.6 @[renovate[bot]](https://github.com/apps/renovate) (#793) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.4 @[renovate[bot]](https://github.com/apps/renovate) (#792) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.5 @[renovate[bot]](https://github.com/apps/renovate) (#790) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.1 @[renovate[bot]](https://github.com/apps/renovate) (#791) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#787) - βž– simplify dependencies after `uv` update @burgholzer (#786) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.4 @[renovate[bot]](https://github.com/apps/renovate) (#782) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#785) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.0 @[renovate[bot]](https://github.com/apps/renovate) (#784) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.4 @[renovate[bot]](https://github.com/apps/renovate) (#783) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#769) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.5 @[renovate[bot]](https://github.com/apps/renovate) (#781) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.3 @[renovate[bot]](https://github.com/apps/renovate) (#780) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.3 @[renovate[bot]](https://github.com/apps/renovate) (#779) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v2 @[renovate[bot]](https://github.com/apps/renovate) (#777) - ⬆️πŸͺ Update pre-commit hook sirosen/texthooks to v0.6.8 @[renovate[bot]](https://github.com/apps/renovate) (#776) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.2 @[renovate[bot]](https://github.com/apps/renovate) (#773) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.2 @[renovate[bot]](https://github.com/apps/renovate) (#775) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.2 @[renovate[bot]](https://github.com/apps/renovate) (#774) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.1 @[renovate[bot]](https://github.com/apps/renovate) (#765) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.30.0 @[renovate[bot]](https://github.com/apps/renovate) (#768) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.1 @[renovate[bot]](https://github.com/apps/renovate) (#767) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.1 @[renovate[bot]](https://github.com/apps/renovate) (#766) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#755) - β¬†οΈπŸ‘¨β€πŸ’» Update cda-tum/mqt-workflows action to v1.5 @[renovate[bot]](https://github.com/apps/renovate) (#759) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.0 @[renovate[bot]](https://github.com/apps/renovate) (#760) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @[renovate[bot]](https://github.com/apps/renovate) (#757) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.0 @[renovate[bot]](https://github.com/apps/renovate) (#761) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.4 @[renovate[bot]](https://github.com/apps/renovate) (#756) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#754) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.4 @[renovate[bot]](https://github.com/apps/renovate) (#753) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#750) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.3 @[renovate[bot]](https://github.com/apps/renovate) (#748) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v1.4.4 @[renovate[bot]](https://github.com/apps/renovate) (#747) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.3 @[renovate[bot]](https://github.com/apps/renovate) (#749) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#746) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.0 @[renovate[bot]](https://github.com/apps/renovate) (#745) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.3 @[renovate[bot]](https://github.com/apps/renovate) (#744) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.2 @[renovate[bot]](https://github.com/apps/renovate) (#743) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#742) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.13.0 @[renovate[bot]](https://github.com/apps/renovate) (#740) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.26.8 @[renovate[bot]](https://github.com/apps/renovate) (#739) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.1 @[renovate[bot]](https://github.com/apps/renovate) (#738) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.1 @[renovate[bot]](https://github.com/apps/renovate) (#737) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#736) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.1 @[renovate[bot]](https://github.com/apps/renovate) (#735) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4.0.1 @[renovate[bot]](https://github.com/apps/renovate) (#734) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4 @[renovate[bot]](https://github.com/apps/renovate) (#733) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.0 @[renovate[bot]](https://github.com/apps/renovate) (#732) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.0 @[renovate[bot]](https://github.com/apps/renovate) (#731) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.2 @[renovate[bot]](https://github.com/apps/renovate) (#730) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#727) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.0 @[renovate[bot]](https://github.com/apps/renovate) (#726) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.29.4 @[renovate[bot]](https://github.com/apps/renovate) (#725)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.7.0...v3.0.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] 11 months ago

MQT Core - MQT Core 3.0.0 Beta 3 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

  • πŸ”§ update Python coverage configuration @burgholzer (#811)
  • πŸ› 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)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • πŸ”’ update to latest uv version that properly supports dynamically versioned packages @burgholzer (#802)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • βž– simplify dependencies after uv update @burgholzer (#786)
  • πŸ“„ add license headers @burgholzer (#770)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ✨ Adopt PEP 735 dependency groups @burgholzer (#762)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)
  • πŸ› properly handle timing literals in QASM parser @burgholzer (#724)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

βš–οΈ MQT Core DD Package

  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)
  • πŸ› fix endianness in DCX and XX_minus_YY gate matrix definition @burgholzer (#741)

πŸ•ΈοΈ 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

  • πŸ› Fix stripping of idle qubits @burgholzer (#763)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)

πŸ› 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

  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • πŸ“„ update copyright notice @burgholzer (#788)
  • πŸ“„ add license headers @burgholzer (#770)
  • πŸ”§πŸ“ unshallow git clone for RtD @burgholzer (#722)
  • πŸ”§ update release drafter template and renovate config @burgholzer (#720)

πŸ“¦ 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

  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @renovate[bot] (#757)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

πŸ€– CI

  • πŸ‘·β¬†οΈ update MQT workflows to v1.7 @burgholzer (#812)
  • πŸ”§ update Python coverage configuration @burgholzer (#811)
  • πŸ‘·β¬†οΈ update MQT workflows to v1.6 @burgholzer (#803)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)

⬆️ Dependencies

64 changes - πŸ‘·β¬†οΈ update MQT workflows to v1.7 @burgholzer (#812) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#806) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.2 @[renovate[bot]](https://github.com/apps/renovate) (#804) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.7 @[renovate[bot]](https://github.com/apps/renovate) (#805) - πŸ”’ update to latest `uv` version that properly supports dynamically versioned packages @burgholzer (#802) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#801) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.0 @[renovate[bot]](https://github.com/apps/renovate) (#800) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.1 @[renovate[bot]](https://github.com/apps/renovate) (#799) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#795) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.6 @[renovate[bot]](https://github.com/apps/renovate) (#794) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.6 @[renovate[bot]](https://github.com/apps/renovate) (#793) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.4 @[renovate[bot]](https://github.com/apps/renovate) (#792) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.5 @[renovate[bot]](https://github.com/apps/renovate) (#790) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.1 @[renovate[bot]](https://github.com/apps/renovate) (#791) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#787) - βž– simplify dependencies after `uv` update @burgholzer (#786) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.4 @[renovate[bot]](https://github.com/apps/renovate) (#782) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#785) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.0 @[renovate[bot]](https://github.com/apps/renovate) (#784) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.4 @[renovate[bot]](https://github.com/apps/renovate) (#783) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#769) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.5 @[renovate[bot]](https://github.com/apps/renovate) (#781) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.3 @[renovate[bot]](https://github.com/apps/renovate) (#780) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.3 @[renovate[bot]](https://github.com/apps/renovate) (#779) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v2 @[renovate[bot]](https://github.com/apps/renovate) (#777) - ⬆️πŸͺ Update pre-commit hook sirosen/texthooks to v0.6.8 @[renovate[bot]](https://github.com/apps/renovate) (#776) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.2 @[renovate[bot]](https://github.com/apps/renovate) (#773) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.2 @[renovate[bot]](https://github.com/apps/renovate) (#775) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.2 @[renovate[bot]](https://github.com/apps/renovate) (#774) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.1 @[renovate[bot]](https://github.com/apps/renovate) (#765) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.30.0 @[renovate[bot]](https://github.com/apps/renovate) (#768) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.1 @[renovate[bot]](https://github.com/apps/renovate) (#767) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.1 @[renovate[bot]](https://github.com/apps/renovate) (#766) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#755) - β¬†οΈπŸ‘¨β€πŸ’» Update cda-tum/mqt-workflows action to v1.5 @[renovate[bot]](https://github.com/apps/renovate) (#759) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.0 @[renovate[bot]](https://github.com/apps/renovate) (#760) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @[renovate[bot]](https://github.com/apps/renovate) (#757) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.0 @[renovate[bot]](https://github.com/apps/renovate) (#761) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.4 @[renovate[bot]](https://github.com/apps/renovate) (#756) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#754) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.4 @[renovate[bot]](https://github.com/apps/renovate) (#753) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#750) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.3 @[renovate[bot]](https://github.com/apps/renovate) (#748) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v1.4.4 @[renovate[bot]](https://github.com/apps/renovate) (#747) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.3 @[renovate[bot]](https://github.com/apps/renovate) (#749) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#746) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.0 @[renovate[bot]](https://github.com/apps/renovate) (#745) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.3 @[renovate[bot]](https://github.com/apps/renovate) (#744) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.2 @[renovate[bot]](https://github.com/apps/renovate) (#743) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#742) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.13.0 @[renovate[bot]](https://github.com/apps/renovate) (#740) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.26.8 @[renovate[bot]](https://github.com/apps/renovate) (#739) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.1 @[renovate[bot]](https://github.com/apps/renovate) (#738) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.1 @[renovate[bot]](https://github.com/apps/renovate) (#737) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#736) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.1 @[renovate[bot]](https://github.com/apps/renovate) (#735) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4.0.1 @[renovate[bot]](https://github.com/apps/renovate) (#734) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4 @[renovate[bot]](https://github.com/apps/renovate) (#733) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.0 @[renovate[bot]](https://github.com/apps/renovate) (#732) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.0 @[renovate[bot]](https://github.com/apps/renovate) (#731) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.2 @[renovate[bot]](https://github.com/apps/renovate) (#730) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#727) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.0 @[renovate[bot]](https://github.com/apps/renovate) (#726) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.29.4 @[renovate[bot]](https://github.com/apps/renovate) (#725)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.7.0...v3.0.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] 11 months ago

MQT Core - MQT Core 3.0.0 Beta 2 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

  • πŸ› 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)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • πŸ”’ update to latest uv version that properly supports dynamically versioned packages @burgholzer (#802)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • βž– simplify dependencies after uv update @burgholzer (#786)
  • πŸ“„ add license headers @burgholzer (#770)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ✨ Adopt PEP 735 dependency groups @burgholzer (#762)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)
  • πŸ› properly handle timing literals in QASM parser @burgholzer (#724)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

βš–οΈ MQT Core DD Package

  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)
  • πŸ› fix endianness in DCX and XX_minus_YY gate matrix definition @burgholzer (#741)

πŸ•ΈοΈ 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

  • πŸ› Fix stripping of idle qubits @burgholzer (#763)
  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)

πŸ› 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

  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • πŸ“„ update copyright notice @burgholzer (#788)
  • πŸ“„ add license headers @burgholzer (#770)
  • πŸ”§πŸ“ unshallow git clone for RtD @burgholzer (#722)
  • πŸ”§ update release drafter template and renovate config @burgholzer (#720)

πŸ“¦ 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

  • ♻️ Refactor and improve register handling @burgholzer (#807)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @renovate[bot] (#757)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

πŸ€– CI

  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)

⬆️ Dependencies

63 changes - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#806) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.2 @[renovate[bot]](https://github.com/apps/renovate) (#804) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.7 @[renovate[bot]](https://github.com/apps/renovate) (#805) - πŸ”’ update to latest `uv` version that properly supports dynamically versioned packages @burgholzer (#802) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#801) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.31.0 @[renovate[bot]](https://github.com/apps/renovate) (#800) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.9.1 @[renovate[bot]](https://github.com/apps/renovate) (#799) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#795) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.6 @[renovate[bot]](https://github.com/apps/renovate) (#794) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.6 @[renovate[bot]](https://github.com/apps/renovate) (#793) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.29.4 @[renovate[bot]](https://github.com/apps/renovate) (#792) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.5 @[renovate[bot]](https://github.com/apps/renovate) (#790) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.1 @[renovate[bot]](https://github.com/apps/renovate) (#791) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#787) - βž– simplify dependencies after `uv` update @burgholzer (#786) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.4 @[renovate[bot]](https://github.com/apps/renovate) (#782) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#785) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.14.0 @[renovate[bot]](https://github.com/apps/renovate) (#784) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.4 @[renovate[bot]](https://github.com/apps/renovate) (#783) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#769) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.5 @[renovate[bot]](https://github.com/apps/renovate) (#781) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.3 @[renovate[bot]](https://github.com/apps/renovate) (#780) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.3 @[renovate[bot]](https://github.com/apps/renovate) (#779) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v2 @[renovate[bot]](https://github.com/apps/renovate) (#777) - ⬆️πŸͺ Update pre-commit hook sirosen/texthooks to v0.6.8 @[renovate[bot]](https://github.com/apps/renovate) (#776) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.2 @[renovate[bot]](https://github.com/apps/renovate) (#773) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.2 @[renovate[bot]](https://github.com/apps/renovate) (#775) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.2 @[renovate[bot]](https://github.com/apps/renovate) (#774) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.1 @[renovate[bot]](https://github.com/apps/renovate) (#765) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.30.0 @[renovate[bot]](https://github.com/apps/renovate) (#768) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.1 @[renovate[bot]](https://github.com/apps/renovate) (#767) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.1 @[renovate[bot]](https://github.com/apps/renovate) (#766) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#755) - β¬†οΈπŸ‘¨β€πŸ’» Update cda-tum/mqt-workflows action to v1.5 @[renovate[bot]](https://github.com/apps/renovate) (#759) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.28.0 @[renovate[bot]](https://github.com/apps/renovate) (#760) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @[renovate[bot]](https://github.com/apps/renovate) (#757) - ⬆️πŸͺ Update pre-commit hook rbubley/mirrors-prettier to v3.4.0 @[renovate[bot]](https://github.com/apps/renovate) (#761) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.4 @[renovate[bot]](https://github.com/apps/renovate) (#756) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#754) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.4 @[renovate[bot]](https://github.com/apps/renovate) (#753) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#750) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.3 @[renovate[bot]](https://github.com/apps/renovate) (#748) - β¬†οΈπŸ‘¨β€πŸ’» Update actions/attest-build-provenance action to v1.4.4 @[renovate[bot]](https://github.com/apps/renovate) (#747) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.3 @[renovate[bot]](https://github.com/apps/renovate) (#749) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#746) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.27.0 @[renovate[bot]](https://github.com/apps/renovate) (#745) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.3 @[renovate[bot]](https://github.com/apps/renovate) (#744) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.2 @[renovate[bot]](https://github.com/apps/renovate) (#743) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#742) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.13.0 @[renovate[bot]](https://github.com/apps/renovate) (#740) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.26.8 @[renovate[bot]](https://github.com/apps/renovate) (#739) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.1 @[renovate[bot]](https://github.com/apps/renovate) (#738) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.1 @[renovate[bot]](https://github.com/apps/renovate) (#737) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#736) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.1 @[renovate[bot]](https://github.com/apps/renovate) (#735) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4.0.1 @[renovate[bot]](https://github.com/apps/renovate) (#734) - ⬆️πŸͺ Update pre-commit hook srstevenson/nb-clean to v4 @[renovate[bot]](https://github.com/apps/renovate) (#733) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-mypy to v1.12.0 @[renovate[bot]](https://github.com/apps/renovate) (#732) - ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.7.0 @[renovate[bot]](https://github.com/apps/renovate) (#731) - ⬆️πŸͺ Update pre-commit hook pre-commit/mirrors-clang-format to v19.1.2 @[renovate[bot]](https://github.com/apps/renovate) (#730) - β¬†οΈπŸ Lock file maintenance @[renovate[bot]](https://github.com/apps/renovate) (#727) - ⬆️πŸͺ Update pre-commit hook adamchainz/blacken-docs to v1.19.0 @[renovate[bot]](https://github.com/apps/renovate) (#726) - ⬆️πŸͺ Update pre-commit hook python-jsonschema/check-jsonschema to v0.29.4 @[renovate[bot]](https://github.com/apps/renovate) (#725)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.7.0...v3.0.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] 11 months ago

MQT Core - MQT Core 3.0.0 Beta 1 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

  • πŸ”’ update to latest uv version that properly supports dynamically versioned packages @burgholzer (#802)
  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • βž– simplify dependencies after uv update @burgholzer (#786)
  • πŸ“„ add license headers @burgholzer (#770)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ✨ Adopt PEP 735 dependency groups @burgholzer (#762)
  • πŸ› Fix out-of-bounds error in ZX EdgeIterator and needless dummy register in empty circuit construction @burgholzer (#758)
  • πŸ› properly handle timing literals in QASM parser @burgholzer (#724)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

βš–οΈ MQT Core DD Package

  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)
  • πŸ› fix endianness in DCX and XX_minus_YY gate matrix definition @burgholzer (#741)

πŸ•ΈοΈ 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

  • ✨ ship shared C++ libraries with mqt-core Python package @burgholzer (#662)
  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚸 slightly tweak how optional qiskit dependency is handled @burgholzer (#797)
  • 🎨 further DD usability improvements @burgholzer (#764)
  • πŸšΈβ™»οΈ convenience methods and updates for DD functionality @burgholzer (#674)

πŸ› 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

  • πŸ“ Rework existing project documentation @burgholzer (#789)
  • πŸ“„ update copyright notice @burgholzer (#788)
  • πŸ“„ add license headers @burgholzer (#770)
  • πŸ”§πŸ“ unshallow git clone for RtD @burgholzer (#722)
  • πŸ”§ update release drafter template and renovate config @burgholzer (#720)

πŸ“¦ 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

  • β™»οΈπŸŽ¨ Code cleanup and refactors @burgholzer (#798)
  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)
  • ⬆️πŸͺ Update pre-commit hook astral-sh/ruff-pre-commit to v0.8.0 @renovate (#757)
  • πŸ”§ use separate build directories per Python version @burgholzer (#721)

πŸ€– CI

  • 🚨 adapt to warnings related to Qiskit 1.3 @burgholzer (#771)

⬆️ 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: https://github.com/cda-tum/mqt-core/compare/v2.7.0...v3.0.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] 11 months ago

MQT Core - MQT Core 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.

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

βš›οΈ MQT Core

  • ♻️ move --reinstall-package from noxfile to pyproject.toml configuration @burgholzer (#711)
  • πŸ”§ adjust how the CD workflow is run @burgholzer (#710)
  • 🩹 fix endless loop on unsupported operations in OpenQASM gate declarations @burgholzer (#700)
  • ⬆️ update MQT workflows to v1.4 @burgholzer (#692)
  • πŸ‘· Configure Renovate @renovate (#695)
  • πŸ”’ uv lock file @burgholzer (#694)
  • 🚸 Allow creating circuits from compound operations @burgholzer (#690)
  • ♻️ optimize isDynamic check and move to QuantumComputation class @burgholzer (#689)
  • πŸ› Fix dynamic circuit detection @burgholzer (#687)
  • πŸ”₯ drop Python 3.8 support @burgholzer (#684)
  • 🚸 Small library improvements @burgholzer (#686)
  • 🚸 improve nox sessions @burgholzer (#685)
  • πŸβ¬†οΈ update image for Linux wheel builds to manylinux_2_28 @burgholzer (#683)
  • 🩹 make sure to define Py_GIL_DISABLED on Windows for Python 3.13t @burgholzer (#682)
  • 🩹fix loading circuits from PathLike objects @burgholzer (#681)
  • 🚸 natively support c3x, c3sqrtx, and c4x gates from OpenQASM 2 @burgholzer (#680)
  • ⬆️ require pybind11 >= 2.13.5 @burgholzer (#679)
  • 🚨 fix Qiskit 1.2 deprecation warnings @burgholzer (#673)
  • 🚸 rename algorithms target and adapt nox config @burgholzer (#672)
  • ♻️ miscellaneous changes pulled from #622 @burgholzer (#669)
  • ♻️ reorganize library structure @burgholzer (#668)
  • πŸ”₯ remove ECC framework @burgholzer (#667)
  • ⬆️ update mqt-workflows to v1.3 (moving tag) @burgholzer (#665)
  • ⬆️ update to scikit-build-core 0.10 @burgholzer (#664)

βš–οΈ MQT Core DD Package

  • ⚑ dedicated unitary simulator DD package config @burgholzer (#691)
  • 🩹 disentangle mqt-core-dd and mqt-core-algo @burgholzer (#670)

πŸš€ Features and Enhancements

  • ♻️ move --reinstall-package from noxfile to pyproject.toml configuration @burgholzer (#711)
  • πŸ”’ uv lock file @burgholzer (#694)
  • ⚑ dedicated unitary simulator DD package config @burgholzer (#691)
  • 🚸 Allow creating circuits from compound operations @burgholzer (#690)
  • ♻️ optimize isDynamic check and move to QuantumComputation class @burgholzer (#689)
  • 🚸 Small library improvements @burgholzer (#686)
  • πŸβ¬†οΈ update image for Linux wheel builds to manylinux_2_28 @burgholzer (#683)
  • 🚸 natively support c3x, c3sqrtx, and c4x gates from OpenQASM 2 @burgholzer (#680)
  • 🚸 rename algorithms target and adapt nox config @burgholzer (#672)
  • πŸ”₯ remove ECC framework @burgholzer (#667)

πŸ› Bug Fixes

  • 🩹 make sure to activate the venv in RtD build @burgholzer (#717)
  • 🩹 fix endless loop on unsupported operations in OpenQASM gate declarations @burgholzer (#700)
  • πŸ› Fix dynamic circuit detection @burgholzer (#687)
  • 🩹 make sure to define Py_GIL_DISABLED on Windows for Python 3.13t @burgholzer (#682)
  • 🩹fix loading circuits from PathLike objects @burgholzer (#681)
  • ⬆️ require pybind11 >= 2.13.5 @burgholzer (#679)
  • 🩹 disentangle mqt-core-dd and mqt-core-algo @burgholzer (#670)

πŸ“„ Documentation

  • 🩹 make sure to activate the venv in RtD build @burgholzer (#717)

πŸ€– 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

  • πŸ”§ adjust how the CD workflow is run @burgholzer (#710)
  • βš—οΈ upload to Test PyPI for pushes on main @burgholzer (#666)
  • πŸβ¬†οΈ update image for Linux wheel builds to manylinux_2_28 @burgholzer (#683)
  • ⬆️ update to scikit-build-core 0.10 @burgholzer (#664)

🧹 Code Quality

  • 🚸 Small library improvements @burgholzer (#686)
  • 🚸 improve nox sessions @burgholzer (#685)
  • 🚨 fix Qiskit 1.2 deprecation warnings @burgholzer (#673)

⬆️ Dependencies

33 changes - β¬†οΈπŸ Lock file maintenance @renovate (#706) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#719) - ⬆️πŸͺ 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 hooks @pre-commit-ci (#707) - β¬†οΈπŸ Lock file maintenance @renovate (#705) - β¬†οΈπŸ Lock file maintenance @renovate (#703) - ⬆️πŸͺ 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) - β¬†οΈπŸ Lock file maintenance @renovate (#698) - ⬆️πŸͺ Update pre-commit hook crate-ci/typos to v1.24.6 @renovate (#696) - πŸ‘· Configure Renovate @renovate (#695) - πŸ”’ uv lock file @burgholzer (#694) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#693) - Bump actions/attest-build-provenance from 1.4.2 to 1.4.3 in the github-actions group @dependabot (#688) - πŸ”₯ drop Python 3.8 support @burgholzer (#684) - 🚸 Small library improvements @burgholzer (#686) - ⬆️ require `pybind11 >= 2.13.5` @burgholzer (#679) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#676) - Bump actions/attest-build-provenance from 1.4.1 to 1.4.2 in the github-actions group @dependabot (#677) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#675) - Bump actions/attest-build-provenance from 1.4.0 to 1.4.1 in the github-actions group @dependabot (#671) - ⬆️ update mqt-workflows to v1.3 (moving tag) @burgholzer (#665) - ⬆️ update to scikit-build-core 0.10 @burgholzer (#664)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.6.0...v2.7.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] about 1 year ago

MQT Core - MQT Core 2.6.0 Release

πŸ‘€ 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

  • ✨ 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)
  • :sparkles: Add customGate flag and optimizer functionality to flatten only custom gates @DRovara (#651)
  • 🩹 fix erroneous cast in AodOperation @burgholzer (#647)
  • ⚑ only build bindings target for Python package @burgholzer (#643)
  • πŸ› Support u gate when parsing OpenQASM 2 @ystade (#639)

βš–οΈ MQT Core DD Package

  • 🚸 make dd/Package.hpp export dd/Package_fwd.hpp @burgholzer (#640)

πŸš€ 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)
  • :sparkles: 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

  • πŸ©ΉπŸ“ fix docs build @burgholzer (#659)
  • 🩹 fix erroneous cast in AodOperation @burgholzer (#647)
  • πŸ› Support u gate when parsing OpenQASM 2 @ystade (#639)

πŸ“„ Documentation

  • πŸ©ΉπŸ“ fix docs build @burgholzer (#659)

πŸ€– CI

  • πŸ“¦ add artifact attestation @burgholzer (#638)
  • 🚨🩹 fix the ruff banned-api configuration @burgholzer (#637)

πŸ“¦ Packaging

  • ✨ Python 3.13 Support @burgholzer (#656)
  • ⚑ only build bindings target for Python package @burgholzer (#643)
  • πŸ“¦ add artifact attestation @burgholzer (#638)

🧹 Code Quality

  • 🚸 make dd/Package.hpp export dd/Package_fwd.hpp @burgholzer (#640)
  • 🚨🩹 fix the ruff banned-api configuration @burgholzer (#637)

⬆️ Dependencies

11 changes - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#657) - Bump the github-actions group with 2 updates @dependabot (#654) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#653) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#650) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#648) - Bump actions/attest-build-provenance from 1.3.2 to 1.3.3 in the github-actions group @dependabot (#646) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#645) - Bump cda-tum/mqt-workflows from 1.1.3 to 1.1.4 in the github-actions group @dependabot (#642) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#641) - Bump cda-tum/mqt-workflows from 1.1.0 to 1.1.3 in the github-actions group @dependabot (#636) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#634)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.5.1...v2.6.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] over 1 year ago

MQT Core - MQT Core 2.5.1 Release

πŸ‘€ 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

  • 🚸 Support for adding tests to NALAC @ystade (#629)
  • ✨ add an export header to explicitly manage symbol visibility @burgholzer (#627)
  • Generalize concept of removing OpTypes @lsschmid (#624)
  • 🚸 new test macro with customizable working directory @burgholzer (#622)
  • Moved symmetric matrix to datastructures @lsschmid (#621)
  • 🚨 fix shadowing compiler warnings @burgholzer (#620)
  • 🚸 Better QASM parser exceptions @burgholzer (#618)
  • Change namespace to na and extend Point class @lsschmid (#619)
  • Hybrid Neutral Atom Mapper Functionality @lsschmid (#610)
  • πŸ“¦ only install the Python component of MQT Core in Python package builds @burgholzer (#609)

βš–οΈ MQT Core DD Package

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

πŸš€ Features and Enhancements

  • Improvements for Trace Computation @TeWas (#628)
  • 🚸 Support for adding tests to NALAC @ystade (#629)
  • ✨ add an export header to explicitly manage symbol visibility @burgholzer (#627)
  • Generalize concept of removing OpTypes @lsschmid (#624)
  • 🚸 new test macro with customizable working directory @burgholzer (#622)
  • Moved symmetric matrix to datastructures @lsschmid (#621)
  • 🚸 Better QASM parser exceptions @burgholzer (#618)
  • :zap: faster RtD @burgholzer (#615)
  • Hybrid Neutral Atom Mapper Functionality @lsschmid (#610)

πŸ› 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

  • ⚑ faster RtD @burgholzer (#615)

πŸ€– CI

  • βš‘πŸ”§ Faster cibuildwheel and better Windows wheel repair @burgholzer (#631)
  • 🎨🚨 Improved formatting and linting config @burgholzer (#625)
  • ⚑ faster RtD @burgholzer (#615)
  • ⬆️ update black version in blacken-docs @burgholzer (#614)
  • 🧱 switch to new coverage collection workflows @burgholzer (#612)
  • 🧱 switch to dedicated reusable MQT workflows @burgholzer (#607)

πŸ“¦ Packaging

  • πŸ“¦ only install the Python component of MQT Core in Python package builds @burgholzer (#609)

🧹 Code Quality

  • 🎨🚨 Improved formatting and linting config @burgholzer (#625)
  • 🚨 fix shadowing compiler warnings @burgholzer (#620)
  • 🚨 Fix new warnings revealed by clang-tidy 18 @burgholzer (#611)

⬆️ Dependencies

10 changes - βš‘πŸ”§ Faster `cibuildwheel` and better Windows wheel repair @burgholzer (#631) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#632) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#630) - 🎨🚨 Improved formatting and linting config @burgholzer (#625) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#623) - ⬆️ update black version in blacken-docs @burgholzer (#614) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#613) - 🧱 switch to new coverage collection workflows @burgholzer (#612) - 🩹 make GMP dependency opt-in instead of used-if-found @burgholzer (#608) - 🧱 switch to dedicated reusable MQT workflows @burgholzer (#607)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.5.0...v2.5.1

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] over 1 year ago

MQT Core - MQT Core 2.5.0 Release

πŸ‘€ What Changed

βš›οΈ MQT Core

  • ✨ Support for Neutral Atom Mapper @ystade (#596)

πŸš€ Features and Enhancements

  • ✨ Support for Neutral Atom Mapper @ystade (#596)

⬆️ Dependencies

  • ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#605)
  • ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#604)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.4.2...v2.5.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] over 1 year ago

MQT Core - MQT Core 2.4.2 Release

πŸ‘€ 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

  • 🍱 MQT Branding on RtD @burgholzer (#603)
  • 🍱 Use centralized images from MQT repository @burgholzer (#602)

πŸ€– CI

  • πŸ‘·πŸ”§πŸŽ enable Python 3.8+ tests on macos-14 runners @burgholzer (#597)

⬆️ Dependencies

  • ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#598)
  • ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#595)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.4.1...v2.4.2

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] over 1 year ago

MQT Core - MQT Core 2.4.1 Release

πŸ‘€ 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

  • πŸ‘·β™»οΈ Improved Reusable Workflows @burgholzer (#594)
  • :sparkles: Support for Qiskit's final_layout @TeWas (#592)
  • 🚸 small improvements to Control and Permutation bindings @burgholzer (#593)
  • πŸ“ New and improved project documentation @burgholzer (#589)
  • ✨ Elide permutations optimization @burgholzer (#586)
  • πŸ› Fix corner case handling for output permutation in defer measurements optimization @burgholzer (#587)

πŸš€ Features and Enhancements

  • πŸ‘·β™»οΈ Improved Reusable Workflows @burgholzer (#594)
  • :sparkles: Support for Qiskit's final_layout @TeWas (#592)
  • 🚸 small improvements to Control and Permutation bindings @burgholzer (#593)
  • πŸ“ New and improved project documentation @burgholzer (#589)
  • ✨ Elide permutations optimization @burgholzer (#586)

πŸ› Bug Fixes

  • πŸ› Fix corner case handling for output permutation in defer measurements optimization @burgholzer (#587)

πŸ“„ Documentation

  • πŸ“ New and improved project documentation @burgholzer (#589)

πŸ€– CI

  • πŸ‘·β™»οΈ Improved Reusable Workflows @burgholzer (#594)
  • ♻️ simplify reusable Python CI workflow @burgholzer (#591)

⬆️ Dependencies

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

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.4.0...v2.4.1

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] over 1 year ago

MQT Core - MQT Core 2.4.0 Release

πŸ‘€ What Changed

Quite a big release for MQT Core. Highlights include: - ⚑ adoption of the new identity-less DD data structure that significantly boosts the overall performance (#358) and several further improvements to the DD package code - ✨ new optimization pass to collect qubit blocks - ♻️ refactored and simplified Operation class hierarchy - πŸ€– adoption of uv as a package manager in CI - πŸ”§ update to pybind11>=2.12

βš›οΈ MQT Core

  • ♻️ internalize private methods of the circuit optimizer @burgholzer (#585)
  • β™»οΈβš‘ optimize implementation of collectBlocks @burgholzer (#584)
  • ✨ Collect blocks optimization @burgholzer (#581)
  • ⬆️ update to pybind11>=2.12 @burgholzer (#582)
  • ♻️ Eliminate nqubits and startingQubit from Operation class hierarchy @burgholzer (#574)
  • πŸ› Fix scientific notation in QASM import @burgholzer (#560)

βš–οΈ MQT Core DD Package

  • ♻️ remove redundant start parameter from DD multiplication routine @burgholzer (#576)
  • ♻️ streamline makeTwoQubitGateDD method @burgholzer (#572)
  • ♻️ streamline makeGateDD method @burgholzer (#571)
  • ✨ Removal of identity nodes in matrix DDs @aaronleesander (#358)
  • πŸ› Density matrix idenity handling @burgholzer (#569)
  • ⚑ optimize conjugate transpose in DD package @burgholzer (#570)
  • πŸ› fix check for density matrices in compute tables @burgholzer (#568)
  • 🚸 Improved usability for new magnitude addition functionality @burgholzer (#565)
  • ✨ add method for computing the conjugate of a vector DD @burgholzer (#566)
  • ♻️ Refactor garbage reduction @reb-ddm (#563)
  • 🩹 fixes for noise-aware simulation in DDSIM @burgholzer (#551)

πŸš€ Features and Enhancements

  • :sparkles: :recycle: Adopt UV in CI and refactor reusable workflows @burgholzer (#583)
  • ✨ Collect blocks optimization @burgholzer (#581)
  • ♻️ remove redundant start parameter from DD multiplication routine @burgholzer (#576)
  • ♻️ streamline makeTwoQubitGateDD method @burgholzer (#572)
  • ♻️ streamline makeGateDD method @burgholzer (#571)
  • ✨ Removal of identity nodes in matrix DDs @aaronleesander (#358)
  • ⚑ optimize conjugate transpose in DD package @burgholzer (#570)
  • 🚸 Improved usability for new magnitude addition functionality @burgholzer (#565)
  • ✨ add method for computing the conjugate of a vector DD @burgholzer (#566)
  • ♻️ Refactor garbage reduction @reb-ddm (#563)
  • 🚸 allow using raw RST cells in jupyter notebooks @burgholzer (#558)

πŸ› Bug Fixes

  • πŸ› Density matrix idenity handling @burgholzer (#569)
  • πŸ› fix check for density matrices in compute tables @burgholzer (#568)
  • πŸ› Fix scientific notation in QASM import @burgholzer (#560)
  • 🩹 fixes for noise-aware simulation in DDSIM @burgholzer (#551)

πŸ“„ Documentation

  • 🚸 allow using raw RST cells in jupyter notebooks @burgholzer (#558)
  • πŸ“πŸŽ¨ better dark mode docs @burgholzer (#557)

πŸ€– CI

  • βœ¨β™»οΈ Adopt UV in CI and refactor reusable workflows @burgholzer (#583)
  • 🚚 Move from Cirrus CI back to GitHub Actions @burgholzer (#553)

🧹 Code Quality

  • ♻️ internalize private methods of the circuit optimizer @burgholzer (#585)
  • β™»οΈβš‘ optimize implementation of collectBlocks @burgholzer (#584)
  • 🚨 fix a couple of compiler warnings @burgholzer (#578)

⬆️ Dependencies

10 changes - :sparkles: :recycle: Adopt UV in CI and refactor reusable workflows @burgholzer (#583) - ⬆️ update to `pybind11>=2.12` @burgholzer (#582) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#579) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#577) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#573) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#564) - Bump the github-actions group with 1 update @dependabot (#562) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#561) - Bump the github-actions group with 1 update @dependabot (#559) - 🚚 Move from Cirrus CI back to GitHub Actions @burgholzer (#553)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.3.0...v2.4.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] over 1 year ago

MQT Core - MQT Core 2.3.0 Release

πŸ‘€ What Changed

This release marks mqt-core's support of Qiskit 1.0 and provides a couple of fixes and features for the ZX package.

βš›οΈ MQT Core

  • πŸ› ensure typeinfo and vtable information is present for CompoundOperation @burgholzer (#548)
  • 🎨 Misc. code quality improvements @burgholzer (#547)
  • 🚨 fix Qiskit 0.46.0 deprecation warnings @burgholzer (#544)
  • βͺ add MQT::CorePython target back @burgholzer (#541)

πŸ•ΈοΈ MQT Core ZX Package

  • ✨ Add XX-plus-YY and XX-minus-YY gate support to ZX library @burgholzer (#482)
  • πŸ› Fix PiExpression division and multiplication arithmetic @pehamTom (#549)

πŸš€ Features and Enhancements

  • ✨ Support for Qiskit 1.0 @burgholzer (#556)
  • ✨ Add XX-plus-YY and XX-minus-YY gate support to ZX library @burgholzer (#482)
  • 🧹 Noise-Aware Simulator Cleanup @33Gjl1Xe (#491)

πŸ› Bug Fixes

  • πŸ› Fix PiExpression division and multiplication arithmetic @pehamTom (#549)
  • πŸ› ensure typeinfo and vtable information is present for CompoundOperation @burgholzer (#548)
  • βͺ add MQT::CorePython target back @burgholzer (#541)

πŸ“¦ Packaging

  • ⬆️ update scikit-build-core to 0.8.1 @burgholzer (#554)

🧹 Code Quality

  • 🎨 Misc. code quality improvements @burgholzer (#547)
  • 🚨 fix Qiskit 0.46.0 deprecation warnings @burgholzer (#544)

⬆️ Dependencies

8 changes - ✨ Support for Qiskit 1.0 @burgholzer (#556) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#555) - ⬆️ update scikit-build-core to 0.8.1 @burgholzer (#554) - Bump the github-actions group with 1 update @dependabot (#552) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#550) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#546) - Bump the github-actions group with 2 updates @dependabot (#545) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#542)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.2.2...v2.3.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] almost 2 years ago

MQT Core - MQT Core 2.2.2 Release

πŸ‘€ What Changed

βš›οΈ MQT Core

  • 🚸 Installation Improvements @burgholzer (#539)

βš–οΈ MQT Core DD Package

  • :zap: Added native construction of two-target controlled-gate DDs @BertiFlorea (#534)
  • Zero-ancilla partial equivalence checking @reb-ddm (#532)

πŸš€ Features and Enhancements

  • 🚸 Installation Improvements @burgholzer (#539)
  • :zap: Added native construction of two-target controlled-gate DDs @BertiFlorea (#534)
  • Zero-ancilla partial equivalence checking @reb-ddm (#532)

πŸ“„ Documentation

  • πŸ“ add configuration for offline doc formats @burgholzer (#535)

πŸ€– CI

  • 🚨 ignore new pandas deprecation warning @burgholzer (#536)

⬆️ Dependencies

  • ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#537)
  • ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#533)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.2.1...v2.2.2

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] almost 2 years ago

MQT Core - MQT Core 2.2.1 Release

πŸ‘€ What Changed

This patch release fixes a small oversight that prevented consuming projects to include the package.

βš›οΈ MQT Core

  • 🩹 guard install instruction @burgholzer (#531)

πŸ› Bug Fixes

  • 🩹 guard install instruction @burgholzer (#531)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.2.0...v2.2.1

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] almost 2 years ago

MQT Core - MQT Core 2.2.0 Release

πŸ‘€ What Changed

βš›οΈ MQT Core

  • ✨ Allow project installation @burgholzer (#529)
  • 🚸 Usability improvements for symbolic computations @burgholzer (#528)
  • πŸ› fix missing mcx gate support in OpenQASM3 parser @burgholzer (#526)
  • 🚸 OpenQASM string import and export @burgholzer (#521)
  • For builtin gates, print c prefix instead of ctrl @ @martin-fink (#520)
  • πŸ“ update documentation with OpenQASM 3.0 support @burgholzer (#518)
  • πŸ› avoid using system header includes for external dependencies @burgholzer (#517)
  • ✨ New optimization pass: Backpropagate output permutation and better dynamic circuit support @burgholzer (#512)
  • Fix handling of output permutation and initial layout @martin-fink (#509)

βš–οΈ MQT Core DD Package

  • πŸ› Fix and optimize reduction of garbage @burgholzer (#525)
  • πŸ› Fix and optimize reduction of ancillaries @burgholzer (#524)
  • πŸšΈβ™»οΈ Improve the high-level DD package interfaces @burgholzer (#523)

πŸ•ΈοΈ MQT Core ZX Package

  • ⬆️ raise minimum required Boost version to 1.80 @burgholzer (#522)

πŸš€ Features and Enhancements

  • ✨ Allow project installation @burgholzer (#529)
  • 🚸 Usability improvements for symbolic computations @burgholzer (#528)
  • 🚸 OpenQASM string import and export @burgholzer (#521)
  • For builtin gates, print c prefix instead of ctrl @ @martin-fink (#520)
  • ✨ New optimization pass: Backpropagate output permutation and better dynamic circuit support @burgholzer (#512)

πŸ› Bug Fixes

  • πŸ› fix missing mcx gate support in OpenQASM3 parser @burgholzer (#526)
  • πŸ› Fix and optimize reduction of garbage @burgholzer (#525)
  • πŸ› Fix and optimize reduction of ancillaries @burgholzer (#524)
  • πŸ› avoid using system header includes for external dependencies @burgholzer (#517)
  • Fix handling of output permutation and initial layout @martin-fink (#509)

πŸ“„ Documentation

  • πŸ“ update documentation with OpenQASM 3.0 support @burgholzer (#518)

πŸ“¦ Packaging

  • ✨ Allow project installation @burgholzer (#529)
  • ⬆️ update cibuildwheel version on Cirrus-CI @burgholzer (#514)

🧹 Code Quality

  • πŸšΈβ™»οΈ Improve the high-level DD package interfaces @burgholzer (#523)
  • 🚨 fix warnings about exceptions that privately inherit from std::exeption @burgholzer (#516)

⬆️ Dependencies

8 changes - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#527) - ⬆️ raise minimum required Boost version to 1.80 @burgholzer (#522) - ♻️ Refactor CMake structure and replace submodules with `FetchContent` @burgholzer (#515) - πŸ› avoid using system header includes for external dependencies @burgholzer (#517) - 🚸 update maximum supported CMake version @burgholzer (#513) - ⬆️ update cibuildwheel version on Cirrus-CI @burgholzer (#514) - Bump the submodules group with 4 updates @dependabot (#511) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#510)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.1.0...v2.2.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] almost 2 years ago

MQT Core - MQT Core 2.1.0 Release

πŸ‘€ What Changed

  • πŸŽ‰ Initial OpenQASM 3.0 support . Thanks @tyi1025!
  • πŸ“ˆ Benchmark suite and utilities for the DD package. Thanks @martin-fink!
  • ⚑ General performance improvements to the underlying DD package.

βš›οΈ MQT Core

  • 🚨 proper use of std::enable_if for SFINAE @burgholzer (#500)
  • ✨ Add support for OpenQASM 3.0 else @martin-fink (#498)
  • ✨ OpenQASM 3.0 support @martin-fink (#309)

βš–οΈ MQT Core DD Package

  • ⚑ Improved accuracy in complex number arithmetic @burgholzer (#507)
  • ♻️ Remove complex cache @burgholzer (#444)
  • β™»οΈβš‘ Refactor and fine-tune DD normalization @burgholzer (#501)
  • 🩹 properly reset tolerance in test @burgholzer (#499)
  • Benchmarking the DD package @tyi1025 (#452)

πŸ•ΈοΈ MQT Core ZX Package

  • 🎨 provide operator<< overloads for scoped enums in ZX package @burgholzer (#508)

πŸš€ Features and Enhancements

  • 🎨 provide operator<< overloads for scoped enums in ZX package @burgholzer (#508)
  • ⚑ Improved accuracy in complex number arithmetic @burgholzer (#507)
  • ♻️ Remove complex cache @burgholzer (#444)
  • β™»οΈβš‘ Refactor and fine-tune DD normalization @burgholzer (#501)
  • ✨ Add support for OpenQASM 3.0 else @martin-fink (#498)
  • ✨ OpenQASM 3.0 support @martin-fink (#309)
  • Benchmarking the DD package @tyi1025 (#452)

πŸ› Bug Fixes

  • 🚨 proper use of std::enable_if for SFINAE @burgholzer (#500)
  • 🩹 properly reset tolerance in test @burgholzer (#499)

🧹 Code Quality

  • Benchmarking the DD package @tyi1025 (#452)

⬆️ Dependencies

  • Bump the github-actions group with 2 updates @dependabot (#506)
  • ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#502)
  • Bump the github-actions group with 2 updates @dependabot (#497)
  • Bump the github-actions group with 1 update @dependabot (#496)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.0.2...v2.1.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] about 2 years ago

MQT Core - MQT Core 2.0.2 Release

πŸ‘€ What Changed

βš›οΈ MQT Core

  • ♻️ Revised qubit register handling @burgholzer (#495)

πŸ› Bug Fixes

  • ♻️ Revised qubit register handling @burgholzer (#495)

⬆️ Dependencies

  • ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#494)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.0.1...v2.0.2

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] about 2 years ago

MQT Core - MQT Core 2.0.1 Release

πŸ‘€ What Changed

βš›οΈ MQT Core

  • 🩹 Improved qubit and register management @burgholzer (#493)
  • :sparkles: added inverse gate for iSWAP @BertiFlorea (#460)

βš–οΈ MQT Core DD Package

  • πŸ”₯ remove irrelevant special casing for GRCS functionality construction @burgholzer (#488)
  • :sparkles: added state preparation routines for GHZ and W state @BertiFlorea (#445)

πŸ•ΈοΈ MQT Core ZX Package

  • ✨ support ECR and DCX gate in ZX library @burgholzer (#481)

πŸš€ Features and Enhancements

  • :sparkles: added inverse gate for iSWAP @BertiFlorea (#460)
  • :sparkles: added state preparation routines for GHZ and W state @BertiFlorea (#445)
  • 🚚 move check-sdist from pre-commit to CI @burgholzer (#480)
  • ✨ support ECR and DCX gate in ZX library @burgholzer (#481)

πŸ› Bug Fixes

  • 🩹 Improved qubit and register management @burgholzer (#493)

πŸ€– CI

  • 🚚 move check-sdist from pre-commit to CI @burgholzer (#480)

🧹 Code Quality

  • ✨ add Scientific Python's repo-review @burgholzer (#483)
  • 🚚 move check-sdist from pre-commit to CI @burgholzer (#480)

⬆️ Dependencies

  • ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#492)
  • Bump the submodules group with 4 updates @dependabot (#490)
  • ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#485)
  • ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#479)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v2.0.0.post1...v2.0.1

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] about 2 years ago

MQT Core - MQT Core 2.0.0 Release

πŸ‘€ What Changed

This represents the first official release of the new MQT Core package. While some aspects are still in flux, the package should be stable enough that regular version updates should be completely sufficient.

The list below summarizes all the changes that happened since the last official release (where this package was still called QFR).

βš›οΈ MQT Core

  • πŸ› fix compiler errors in GCC-10 due to abstract return type @burgholzer (#478)
  • πŸ› Miscellaneous fixes for qubit and register handling @burgholzer (#476)
  • ✨ Circuit optimisation for replacing Toffoli gates with MCZ gates and Hadamards @burgholzer (#473)
  • πŸ› Fix recursive circuit flattening @burgholzer (#474)
  • ✨ equality comparison and hashing for operations and symbolic @burgholzer (#465)
  • πŸ› properly handle repeated cancellation in single-qubit gate fusion @burgholzer (#459)
  • Fixing QuantumComputation::dump file name dot count check @EliasLF (#453)
  • βœ¨β™»οΈ Refactor QuantumComputation API and Expose to Python @pehamTom (#371)
  • πŸ› Fix output permutation deduction @burgholzer (#437)
  • ♻️ switch back from nanobind to pybind @burgholzer (#432)
  • 🚨 fix compiler warnings for getControls override @burgholzer (#425)
  • Add invert functionality for quantum operations @martin-fink (#416)
  • Add addControl, clearControls, removeControl functions on Operation @martin-fink (#411)
  • πŸ› Fix inexact QPE construction @burgholzer (#417)
  • ♻️ Switch pybind11 from submodule to find_package @burgholzer (#405)
  • πŸ› Fix Barrier handling in remove final measurements optimisation @burgholzer (#403)
  • 🩹 Remove Barrier check from actsOn method @burgholzer (#402)
  • ♻️ Refactor NonUnitaryOperation class to simplify target handling @burgholzer (#399)
  • πŸ“¦ Enable target support from scikit-build-core @burgholzer (#397)
  • πŸ§‘β€πŸ’» Extensive and Reusable CI/CD Setup @burgholzer (#396)
  • ♻️ Refactor handling of Barrier operations @burgholzer (#394)
  • πŸ”₯ Remove Snapshot and ShowProbabilities instructions from MQT Core @burgholzer (#393)
  • πŸ”§ Disable NullDereference clang-tidy check @burgholzer (#383)
  • πŸš¨β™»οΈ Fix some warnings and improve code quality @burgholzer (#369)
  • πŸ› Make MSVC work @burgholzer (#361)
  • πŸŽ‰πŸ Initial mqt.core Python Package Configuration @burgholzer (#359)
  • 🩹 avoid header confusion @burgholzer (#355)
  • ✨ MQT Core @burgholzer (#318)
  • πŸ“ MQT Core Rename @burgholzer (#328)
  • 🚚 Move ZX Package into Source Tree @burgholzer (#327)
  • 🚚 Move DD Package into Source Tree @burgholzer (#326)
  • 🎨 LLVM code format and Python binding restructure @burgholzer (#321)
  • 🚚 Consolidate googletest submodule @burgholzer (#320)
  • πŸ”₯ Remove MQT QFR Python package @burgholzer (#319)
  • 🚚 Transfer ZX package from submodule to folder @burgholzer (#317)
  • 🚚 Transfer DD package from submodule to folder @burgholzer (#316)

βš–οΈ MQT Core DD Package

  • πŸ›βš‘ fix and speed up Kronecker product for DDs @burgholzer (#475)
  • ⚑ fix performance regression for RealNumber computations @burgholzer (#463)
  • ⚑ improved collision logic in RealNumberUniqueTable @burgholzer (#461)
  • ⚑ improve numerical accuracy of multiplication and division @burgholzer (#458)
  • ⚑ Completely eliminate temporary numbers borrowed from the cache @burgholzer (#457)
  • 🎨 Miscellaneous code style improvements in DD package @burgholzer (#455)
  • ⚑ Small performance improvements to RealNumberUniqueTable @burgholzer (#456)
  • ⚑ Small unique table lookup improvement @burgholzer (#451)
  • ♻️ simpler gate matrices @burgholzer (#449)
  • ♻️ Replace static zero and one members with constexpr functions @burgholzer (#448)
  • ⚑ Skip symmetry computation and πŸ”₯ remove transpose method @burgholzer (#442)
  • ♻️ Trim dd/Package.hpp @burgholzer (#434)
  • πŸ› Fix identity handling in DD multiplication @burgholzer (#426)
  • 🚸 Small corrections for statistics tracking @burgholzer (#424)
  • 🚸 Follow-up for DD statistics @burgholzer (#419)
  • 🚸 Better statistics tracking in DD Package @burgholzer (#418)
  • Fix makeDDFromMatrix Issue in Asymmetrical Matrices @rahimiparham (#415)
  • πŸ› Fix Compute Table Performance @burgholzer (#386)
  • πŸ› Fix DD node leak @burgholzer (#385)
  • ♻️ Eliminate DD terminal nodes @burgholzer (#381)
  • πŸ”₯ Remove ToffoliTable from DD Package @burgholzer (#380)
  • πŸ”₯♻️ Consolidate qc::Control and dd::Control @burgholzer (#379)
  • ♻️ Unified DD memory management and streamlined complex number handling @burgholzer (#373)
  • β™»οΈπŸ“ Un-template and document complex number handling in DD package @burgholzer (#372)
  • πŸš¨β™»οΈ Fix some warnings and improve code quality @burgholzer (#369)
  • πŸ› Make MSVC work @burgholzer (#361)

πŸ•ΈοΈ MQT Core ZX Package

  • Added RZZ, RXX, RZX, and RYY to ZX-diagrams @pehamTom (#466)

πŸš€ Features and Enhancements

  • πŸ›βš‘ fix and speed up Kronecker product for DDs @burgholzer (#475)
  • ✨ Circuit optimisation for replacing Toffoli gates with MCZ gates and Hadamards @burgholzer (#473)
  • Added RZZ, RXX, RZX, and RYY to ZX-diagrams @pehamTom (#466)
  • ✨ equality comparison and hashing for operations and symbolic @burgholzer (#465)
  • ✨ adopt ruff formatter @burgholzer (#464)
  • ⚑ improved collision logic in RealNumberUniqueTable @burgholzer (#461)
  • ⚑ improve numerical accuracy of multiplication and division @burgholzer (#458)
  • ⚑ Completely eliminate temporary numbers borrowed from the cache @burgholzer (#457)
  • ⚑ Small performance improvements to RealNumberUniqueTable @burgholzer (#456)
  • ⚑ Skip symmetry computation and πŸ”₯ remove transpose method @burgholzer (#442)
  • βœ¨β™»οΈ Refactor QuantumComputation API and Expose to Python @pehamTom (#371)
  • Add invert functionality for quantum operations @martin-fink (#416)
  • Add addControl, clearControls, removeControl functions on Operation @martin-fink (#411)
  • 🚸 Follow-up for DD statistics @burgholzer (#419)
  • 🚸 Better statistics tracking in DD Package @burgholzer (#418)
  • 🚸 Make reusable workflows more generic @burgholzer (#407)
  • πŸ”§ Add policy max to CMake minimum required version @burgholzer (#401)
  • πŸ§‘β€πŸ’» Extensive and Reusable CI/CD Setup @burgholzer (#396)
  • ⚑ use 2x faster black mirror @burgholzer (#395)
  • Add w state implementation @tyi1025 (#391)
  • ♻️ Eliminate DD terminal nodes @burgholzer (#381)
  • ♻️ Unified DD memory management and streamlined complex number handling @burgholzer (#373)
  • βž•πŸͺ add new pre-commit hook for running ruff on Jupyter notebooks @burgholzer (#365)
  • Cmake structure @pehamTom (#364)
  • 🚸 Automatic discovery of nanobind when running outside pip install @burgholzer (#363)
  • πŸŽ‰πŸ Initial mqt.core Python Package Configuration @burgholzer (#359)
  • πŸ”§ Disable IPO per default @burgholzer (#353)
  • ✨ add Issue and PR templates @burgholzer (#351)
  • ✨ Add release drafter setup @burgholzer (#350)
  • πŸ“¦ Support Versioning in Git Archives @burgholzer (#329)
  • πŸ‘·πŸΌπŸš¨β¬†οΈ Update clang-tidy and use cpp-linter action @burgholzer (#325)
  • πŸ‘¨β€πŸ’» introduce mold as default linker under Linux @burgholzer (#324)
  • πŸ‘¨β€πŸ’» introduce compiler cache @burgholzer (#323)
  • πŸ‘·βš‘ speed up CI with independent coverage job @burgholzer (#322)

πŸ› Bug Fixes

  • πŸ› fix compiler errors in GCC-10 due to abstract return type @burgholzer (#478)
  • πŸ› Miscellaneous fixes for qubit and register handling @burgholzer (#476)
  • πŸ›βš‘ fix and speed up Kronecker product for DDs @burgholzer (#475)
  • πŸ› Fix recursive circuit flattening @burgholzer (#474)
  • 🚨 Adapt to latest Qiskit version @burgholzer (#471)
  • ⚑ fix performance regression for RealNumber computations @burgholzer (#463)
  • πŸ› properly handle repeated cancellation in single-qubit gate fusion @burgholzer (#459)
  • Fixing QuantumComputation::dump file name dot count check @EliasLF (#453)
  • 🩹 temporarily disable editable installs in nox jobs @burgholzer (#454)
  • πŸ› Fix output permutation deduction @burgholzer (#437)
  • 🩹 Reusable workflow corrections @burgholzer (#433)
  • πŸ› Fix identity handling in DD multiplication @burgholzer (#426)
  • 🚸 Small corrections for statistics tracking @burgholzer (#424)
  • 🚨 fix compiler warnings for getControls override @burgholzer (#425)
  • πŸ› Fix broken manylinux wheels @burgholzer (#422)
  • πŸ› Fix inexact QPE construction @burgholzer (#417)
  • Fix makeDDFromMatrix Issue in Asymmetrical Matrices @rahimiparham (#415)
  • πŸ› Fix Barrier handling in remove final measurements optimisation @burgholzer (#403)
  • 🩹 Remove Barrier check from actsOn method @burgholzer (#402)
  • πŸ› Fix Compute Table Performance @burgholzer (#386)
  • πŸ› Fix DD node leak @burgholzer (#385)
  • πŸ”§ Disable NullDereference clang-tidy check @burgholzer (#383)
  • πŸ› Make MSVC work @burgholzer (#361)
  • 🩹 avoid header confusion @burgholzer (#355)
  • Actually Populate the Params list from Qobjs @hillmich (#333)

πŸ“„ Documentation

  • πŸ“ added project acknowledgements @burgholzer (#469)
  • βœ¨β™»οΈ Refactor QuantumComputation API and Expose to Python @pehamTom (#371)
  • β™»οΈπŸ“ Un-template and document complex number handling in DD package @burgholzer (#372)
  • πŸ“ Initial RtD setup @burgholzer (#356)
  • πŸ”’ add security policy @burgholzer (#354)
  • ✨ add community health files @burgholzer (#352)
  • 🚚 Fix links from qfr to mqt-core @burgholzer (#349)

πŸ€– CI

  • πŸ”§ Ruff config finetuning @burgholzer (#467)
  • 🩹 temporarily disable editable installs in nox jobs @burgholzer (#454)
  • 🩹 Reusable workflow corrections @burgholzer (#433)
  • πŸ› Fix broken manylinux wheels @burgholzer (#422)
  • 🚸 Make reusable workflows more generic @burgholzer (#407)
  • πŸ§‘β€πŸ’» Extensive and Reusable CI/CD Setup @burgholzer (#396)
  • πŸŽ‰πŸ Initial mqt.core Python Package Configuration @burgholzer (#359)
  • πŸ”§ Disable IPO per default @burgholzer (#353)
  • ✨ add Issue and PR templates @burgholzer (#351)
  • ✨ Add release drafter setup @burgholzer (#350)
  • πŸ‘·πŸΌπŸš¨β¬†οΈ Update clang-tidy and use cpp-linter action @burgholzer (#325)
  • πŸ‘¨β€πŸ’» introduce mold as default linker under Linux @burgholzer (#324)
  • πŸ‘¨β€πŸ’» introduce compiler cache @burgholzer (#323)
  • πŸ‘·βš‘ speed up CI with independent coverage job @burgholzer (#322)

πŸ“¦ Packaging

  • ⬆️ update scikit-build-core @burgholzer (#477)
  • ♻️ switch back from nanobind to pybind @burgholzer (#432)
  • πŸ› Fix broken manylinux wheels @burgholzer (#422)
  • πŸ“¦ Enable target support from scikit-build-core @burgholzer (#397)

🧹 Code Quality

  • 🚨 small ruff updates @burgholzer (#472)
  • πŸ”§ Ruff config finetuning @burgholzer (#467)
  • ✨ adopt ruff formatter @burgholzer (#464)
  • 🎨 Miscellaneous code style improvements in DD package @burgholzer (#455)
  • ⚑ Small unique table lookup improvement @burgholzer (#451)
  • ♻️ simpler gate matrices @burgholzer (#449)
  • ♻️ Replace static zero and one members with constexpr functions @burgholzer (#448)
  • βœ¨β™»οΈ Refactor QuantumComputation API and Expose to Python @pehamTom (#371)
  • ♻️ Trim dd/Package.hpp @burgholzer (#434)
  • ♻️ Refactor handling of Barrier operations @burgholzer (#394)
  • πŸ”₯ Remove Snapshot and ShowProbabilities instructions from MQT Core @burgholzer (#393)
  • πŸ”₯♻️ Consolidate qc::Control and dd::Control @burgholzer (#379)
  • ♻️ Unified DD memory management and streamlined complex number handling @burgholzer (#373)
  • β™»οΈπŸ“ Un-template and document complex number handling in DD package @burgholzer (#372)
  • πŸš¨β™»οΈ Fix some warnings and improve code quality @burgholzer (#369)
  • πŸ› Make MSVC work @burgholzer (#361)
  • 🚨 CodeQL Fixes @burgholzer (#330)

⬆️ Dependencies

38 changes - ⬆️ update `scikit-build-core` @burgholzer (#477) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#470) - 🚨 Adapt to latest Qiskit version @burgholzer (#471) - Bump the submodules group with 3 updates @dependabot (#468) - ✨ adopt ruff formatter @burgholzer (#464) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#450) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#443) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#438) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#436) - Bump the submodules group with 3 updates @dependabot (#435) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#431) - Bump the github-actions group with 1 update @dependabot (#430) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#428) - Bump the github-actions group with 1 update @dependabot (#421) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#420) - Bump the github-actions group with 1 update @dependabot (#413) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#412) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#409) - Bump the submodules group with 3 updates @dependabot (#408) - 🚸 Make reusable workflows more generic @burgholzer (#407) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#406) - ♻️ Switch `pybind11` from submodule to `find_package` @burgholzer (#405) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#398) - πŸ“¦ Enable target support from scikit-build-core @burgholzer (#397) - Bump pypa/cibuildwheel from 2.14 to 2.15 @dependabot (#392) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#390) - Bump extern/pybind11 from `2fb3d7c` to `f3e0602` @dependabot (#388) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#387) - Bump extern/googletest from `be03d00` to `6f6ab42` @dependabot (#389) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#382) - Bump pypa/cibuildwheel from 2.13 to 2.14 @dependabot (#378) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#377) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#370) - Bump extern/googletest from `06f44bc` to `be03d00` @dependabot (#368) - Bump extern/json from `6af826d` to `5d27543` @dependabot (#366) - Bump extern/pybind11 from `d0232b1` to `2fb3d7c` @dependabot (#367) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#362) - ⬆️πŸͺ update pre-commit hooks @pre-commit-ci (#357)

Full Changelog: https://github.com/cda-tum/mqt-core/compare/v1.11.1...v2.0.0

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] about 2 years ago

MQT Core - MQT Core 2.0.0 Release - Beta 1

πŸ‘€ What Changed

With https://github.com/cda-tum/mqt-core/pull/371 being in, we are getting closer to a full release. This constitutes the first (pre-)release of MQT Core that ships with fully-fledged Python bindings for the QuantumComputation class and class relevant to it. Any top level projects may now start to switch to using MQT Core from Python and switch to the native Python integration with Qiskit.

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] about 2 years ago

MQT Core - MQT Core 2.0.0 Release - Alpha 4

πŸ‘€ What Changed

Yet another publishing test release. Moved trusted publishing out of reusable workflow.

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] over 2 years ago

MQT Core - MQT Core 2.0.0 Release - Alpha 3

πŸ‘€ What Changed

Just another PR for testing the publishing pipeline. The Python package does not contain any substantial functionality yet.

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] over 2 years ago

MQT Core - MQT Core 2.0.0 Release - Alpha 2

πŸ‘€ What Changed

Another pre-release for testing the publishing pipeline.

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] over 2 years ago

MQT Core - MQT Core 2.0.0 Release - Alpha 1

πŸ‘€ What Changed

This is just an alpha release to test the publishing pipeline.

Scientific Software - Peer-reviewed - C++
Published by github-actions[bot] over 2 years ago

MQT Core - Version 1.11.1 Release

This will be the last release as part of the MQT QFR project before moving forward with the transition towards MQT Core (#318). This will also be the last release that includes the mqt.qfr Python package. That package will not be updated any further beyond this point.

What's Changed

  • Bump pypa/cibuildwheel from 2.12.0 to 2.12.1 by @dependabot in https://github.com/cda-tum/qfr/pull/282
  • ⬆️ Update DD package submodule by @aaronleesander in https://github.com/cda-tum/qfr/pull/283
  • ♻️ Refactor global phase handling by @burgholzer in https://github.com/cda-tum/qfr/pull/284
  • βͺ Add back a opTypeFromString method by @burgholzer in https://github.com/cda-tum/qfr/pull/285
  • Add opaque teleportation gate by @hillmich in https://github.com/cda-tum/qfr/pull/286
  • ⬆️πŸͺ update pre-commit hooks by @pre-commit-ci in https://github.com/cda-tum/qfr/pull/287
  • Bump extern/json from 8fa0d7b to 6af826d by @dependabot in https://github.com/cda-tum/qfr/pull/291
  • Bump extern/dd_package from baa0df6 to 753ef1d by @dependabot in https://github.com/cda-tum/qfr/pull/290
  • Bump extern/pybind11 from 3cc7e42 to 4ce0517 by @dependabot in https://github.com/cda-tum/qfr/pull/289
  • Bump extern/zx from c9d8fe5 to 653f767 by @dependabot in https://github.com/cda-tum/qfr/pull/288
  • ⬆️πŸͺ update pre-commit hooks by @pre-commit-ci in https://github.com/cda-tum/qfr/pull/292
  • ⬆️πŸͺ update pre-commit hooks by @pre-commit-ci in https://github.com/cda-tum/qfr/pull/293
  • Bump codecov/codecov-action from 3.1.1 to 3.1.2 by @dependabot in https://github.com/cda-tum/qfr/pull/294
  • ⬆️πŸͺ update pre-commit hooks by @pre-commit-ci in https://github.com/cda-tum/qfr/pull/295
  • Bump pypa/cibuildwheel from 2.12.1 to 2.12.2 by @dependabot in https://github.com/cda-tum/qfr/pull/296
  • ⬆️πŸͺ update pre-commit hooks by @pre-commit-ci in https://github.com/cda-tum/qfr/pull/297
  • Bump pypa/cibuildwheel from 2.12.2 to 2.12.3 by @dependabot in https://github.com/cda-tum/qfr/pull/298
  • Bump codecov/codecov-action from 3.1.2 to 3.1.3 by @dependabot in https://github.com/cda-tum/qfr/pull/299
  • Bump extern/pybind11 from 4ce0517 to 956390a by @dependabot in https://github.com/cda-tum/qfr/pull/300
  • Bump extern/dd_package from 753ef1d to f0e933e by @dependabot in https://github.com/cda-tum/qfr/pull/301
  • Bump extern/zx from 653f767 to 9bcc6ef by @dependabot in https://github.com/cda-tum/qfr/pull/302
  • ⬆️πŸͺ update pre-commit hooks by @pre-commit-ci in https://github.com/cda-tum/qfr/pull/303
  • 🚸 only add CMake targets if they do not exist by @burgholzer in https://github.com/cda-tum/qfr/pull/305
  • ⬆️πŸͺ update pre-commit hooks by @pre-commit-ci in https://github.com/cda-tum/qfr/pull/306
  • ⬆️πŸͺ update pre-commit hooks by @pre-commit-ci in https://github.com/cda-tum/qfr/pull/307
  • Bump codecov/codecov-action from 3.1.3 to 3.1.4 by @dependabot in https://github.com/cda-tum/qfr/pull/308
  • ⬆️πŸͺ update pre-commit hooks by @pre-commit-ci in https://github.com/cda-tum/qfr/pull/310
  • Bump pypa/cibuildwheel from 2.12.3 to 2.13.0 by @dependabot in https://github.com/cda-tum/qfr/pull/311
  • Bump extern/pybind11 from 956390a to d0232b1 by @dependabot in https://github.com/cda-tum/qfr/pull/313

New Contributors

  • @aaronleesander made their first contribution in https://github.com/cda-tum/qfr/pull/283

Full Changelog: https://github.com/cda-tum/qfr/compare/v1.11.0...v1.11.1

Scientific Software - Peer-reviewed - C++
Published by burgholzer over 2 years ago

MQT Core - Version 1.11.0 Release

The last release in this repository is quite old and a lot has happened since.

What's Changed

  • πŸ› add some missing synonymous operation names by @burgholzer in https://github.com/cda-tum/qfr/pull/90
  • ✨ add native support for sx and sxdg gates to qasm parser by @burgholzer in https://github.com/cda-tum/qfr/pull/95
  • ✨ Measurements from output permutation by @burgholzer in https://github.com/cda-tum/qfr/pull/96
  • ✨ CNOT Cancellation Optimization Pass by @burgholzer in https://github.com/cda-tum/qfr/pull/101
  • Make Usage of Single Header JSON Lib Explicit by @hillmich in https://github.com/cda-tum/qfr/pull/125
  • 🚸 Extended Operation Recognition by @burgholzer in https://github.com/cda-tum/qfr/pull/127
  • πŸ› Fix for Qiskit Layout import by @burgholzer in https://github.com/cda-tum/qfr/pull/133
  • πŸ› Fix bug in cancelCNOTs optimization by @burgholzer in https://github.com/cda-tum/qfr/pull/134
  • Qubit sanity check by @pehamTom in https://github.com/cda-tum/qfr/pull/135
  • Update timezones for dependabot by @hillmich in https://github.com/cda-tum/qfr/pull/139
  • ✨ Integrate MQT ZX Package by @pehamTom in https://github.com/cda-tum/qfr/pull/128
  • β¬†οΈπŸ“¦πŸ› Update ZX package by @burgholzer in https://github.com/cda-tum/qfr/pull/140
  • Integrate changes of noise aware simulation by @33Gjl1Xe in https://github.com/cda-tum/qfr/pull/126
  • Global phase by @pehamTom in https://github.com/cda-tum/qfr/pull/166
  • ✨ support reset operations in Qiskit circuit import by @burgholzer in https://github.com/cda-tum/qfr/pull/172
  • πŸ› Fix dynamic circuit transformation by @burgholzer in https://github.com/cda-tum/qfr/pull/173
  • 🚸 Check whether a logical qubit is contained in a circuit by @burgholzer in https://github.com/cda-tum/qfr/pull/201
  • πŸ› Fix ancillary and garbage tracking when adding ancilla qubits by @burgholzer in https://github.com/cda-tum/qfr/pull/202
  • Update version of publish action by @hillmich in https://github.com/cda-tum/qfr/pull/206
  • Symbolic by @pehamTom in https://github.com/cda-tum/qfr/pull/199
  • πŸ›βš‘ Enable qiskit-terra>=0.22.0 compatibility by @burgholzer in https://github.com/cda-tum/qfr/pull/207
  • β™»οΈπŸ“¦ Modernize Python packaging by @burgholzer in https://github.com/cda-tum/qfr/pull/208
  • Updated DD Package submodule by @hillmich in https://github.com/cda-tum/qfr/pull/217
  • ✨ Add Method for Determining Number of Single-Qubit Gates by @burgholzer in https://github.com/cda-tum/qfr/pull/220
  • πŸ› Fix unicode literals for C++20 by @burgholzer in https://github.com/cda-tum/qfr/pull/223
  • ✨ Convenience features by @burgholzer in https://github.com/cda-tum/qfr/pull/226
  • πŸ”₯ Drop LGTM and set up CodeQL by @burgholzer in https://github.com/cda-tum/qfr/pull/231
  • 🚨 Introduce pre-commit for consistent styling by @burgholzer in https://github.com/cda-tum/qfr/pull/232
  • πŸ”§ CI Config Update by @burgholzer in https://github.com/cda-tum/qfr/pull/237
  • ♻️ DD-independent QFR-Core by @burgholzer in https://github.com/cda-tum/qfr/pull/244
  • 🚸 Better DD package templating by @burgholzer in https://github.com/cda-tum/qfr/pull/247
  • ♻️ Refactor CMake Configuration and add Clang-Tidy by @burgholzer in https://github.com/cda-tum/qfr/pull/246
  • ✨ ECC Framework by @pichristoph in https://github.com/cda-tum/qfr/pull/210
  • Fixed a wrong property in CMake by @hillmich in https://github.com/cda-tum/qfr/pull/257
  • 🚸 Add barrier before measurements by @burgholzer in https://github.com/cda-tum/qfr/pull/258
  • ♻️ Simplify output permutation computation in circuit import by @burgholzer in https://github.com/cda-tum/qfr/pull/264
  • πŸ› Fix controlled u-gate OpenQASM output by @JoachimMarin in https://github.com/cda-tum/qfr/pull/266
  • 🩹 Fix strip idle qubits corner case by @burgholzer in https://github.com/cda-tum/qfr/pull/277
  • 🩹 Allow removing logical qubits used in the output permutation by force by @burgholzer in https://github.com/cda-tum/qfr/pull/279
  • ✨ Gate Extensions and ♻️ QASM Parser Refactor by @burgholzer in https://github.com/cda-tum/qfr/pull/280

New Contributors

  • @pehamTom made their first contribution in https://github.com/cda-tum/qfr/pull/135
  • @33Gjl1Xe made their first contribution in https://github.com/cda-tum/qfr/pull/126
  • @pre-commit-ci made their first contribution in https://github.com/cda-tum/qfr/pull/243
  • @pichristoph made their first contribution in https://github.com/cda-tum/qfr/pull/210
  • @JoachimMarin made their first contribution in https://github.com/cda-tum/qfr/pull/266

Full Changelog: https://github.com/cda-tum/qfr/compare/v1.10.0...v1.11.0

Scientific Software - Peer-reviewed - C++
Published by burgholzer almost 3 years ago

MQT Core - v1.10.0 Release: Templated DD Package and Separation of Concerns

This PR adapts the QFR to support the new DD package version. It also includes some convenience fixes such as #pragma once for header includes and fixes for the webpage links in file headers.

What's Changed

  • Separate DD package functionality by @burgholzer in https://github.com/cda-tum/qfr/pull/75

Full Changelog: https://github.com/cda-tum/qfr/compare/v1.9.0...v1.10.0

Scientific Software - Peer-reviewed - C++
Published by burgholzer over 3 years ago

MQT Core - v1.9.0 Release: Bugfix and Dependency Update

What's Changed

  • Bump actions/checkout from 2 to 3 by @dependabot in https://github.com/cda-tum/qfr/pull/64
  • Bump extern/pybind11 from f495dfc to 465b2e0 by @dependabot in https://github.com/cda-tum/qfr/pull/63
  • Bump extern/dd_package from 0333030 to 2345841 by @dependabot in https://github.com/cda-tum/qfr/pull/67
  • Bump extern/json from e4643d1 to 700b95f by @dependabot in https://github.com/cda-tum/qfr/pull/65
  • Bump extern/pybind11 from 465b2e0 to 2dd5254 by @dependabot in https://github.com/cda-tum/qfr/pull/66
  • Bump extern/pybind11 from 2dd5254 to f8a532a by @dependabot in https://github.com/cda-tum/qfr/pull/69
  • Bump extern/dd_package from 2345841 to 03f72e2 by @dependabot in https://github.com/cda-tum/qfr/pull/70
  • Bump extern/pybind11 from f8a532a to b22ee64 by @dependabot in https://github.com/cda-tum/qfr/pull/71
  • Bump extern/dd_package from 03f72e2 to 65f6287 by @dependabot in https://github.com/cda-tum/qfr/pull/72
  • ✨Equality checks for Operations by @burgholzer in https://github.com/cda-tum/qfr/pull/73
  • Bugfixes for QCEC by @burgholzer in https://github.com/cda-tum/qfr/pull/74

Full Changelog: https://github.com/cda-tum/qfr/compare/v1.8.0...v1.9.0

Scientific Software - Peer-reviewed - C++
Published by burgholzer almost 4 years ago

MQT Core - Version 1.8.0 Release

This release provides the functionality under the new MQT branding.

  • :truck: Replace JKQ with MQT
  • :pencil2: Type in README.md

Scientific Software - Peer-reviewed - C++
Published by hillmich almost 4 years ago

MQT Core - Version 1.7.3 Release

This minor release brings the improvements from #22, #23, #24: - ⚑ significantly improves the probability extraction routine for dynamic circuits - ⚑ improves built-in algorithms - πŸ› fixes some bugs in the simulation routine with measurements - πŸ› adjusts the parameter tolerance to incur less approximation - ✨ introduces a new optimization pass that allows to reorder the operations in a QuantumComputation to achieve a canonical ordering - ✨ allows to extract the circuit name from a Qiskit QuantumCircuit object - πŸ—οΈ switches to PEP 517 pyproject.toml - πŸ› 🍎: fixes Apple Silicon wheels - ⬆️ updates all external dependencies to their latest version.

For details, see the respective pull requests.

Scientific Software - Peer-reviewed - C++
Published by burgholzer about 4 years ago

MQT Core - Version 1.7.2 Bugfix Release

This release adds: - πŸ› a bugfix regarding the realisation of RZ gates in our underlying package (see iic-jku/dd_package#25). - 🐧 wheels for 64bit musllinux

Scientific Software - Peer-reviewed - C++
Published by burgholzer about 4 years ago

MQT Core - Version 1.7.1 Release

This release adds minor improvements from #16, #18, and #20: - ✨ added the possibility to dump a tensor network representation of a given QuantumComputation - ✨ the Qiskit QuantumCircuit import now natively supports ancillary registers and c3x/c4x gates. - ⚑ actually enables -march=native -mtune=native for source builds via pip - 🚨 fixed some compiler warnings in the bindings code - ⬆️ updated all external submodules to their most recent version - ⚑ setup.py now runs on as many threads as available - 🍎 added pre-built wheels for Apple silicon - πŸš€ added Python 3.10 wheels - πŸ’š cleaned up the CI script - πŸ“ updated documentation

Scientific Software - Peer-reviewed - C++
Published by burgholzer about 4 years ago

MQT Core - Version 1.7.0 Release

This release adds the improvements from #14 and #15 - ✨ improved QASM parser to handle mcphase gates and to ignore definitions of gates that are inherently known to the parser - πŸ› addresses a compilation error when changing the dd::Qubit type (iic-jku/qcec#7) - πŸ“Ή updates the visualization to (optionally) use polar coordinates - ⚑ incorporates lots of minor performance and stability improvements from the DD package repository

Scientific Software - Peer-reviewed - C++
Published by burgholzer over 4 years ago

MQT Core - Version 1.6.0 Release

  • QuantumComputations can be cloned now
  • Shortcuts to most operations for easier usage

Scientific Software - Peer-reviewed - C++
Published by hillmich over 4 years ago

MQT Core - Version 1.5.0 Release

The JKQ QFR Python bindings unnecessarily used JSON as an intermediate layer between C++ and Python. This Release refactors the bindings to directly use Python objects for that purpose. Overall, this should result in a marginal performance increase. Furthermore, the underlying CI pipeline is modified to test the codebase more rigorously.

Scientific Software - Peer-reviewed - C++
Published by burgholzer over 4 years ago

MQT Core - Version 1.4.2 Release

This minor release enables the new sorted buckets feature of the DDPackage submodule which should increase performance across the board.

Scientific Software - Peer-reviewed - C++
Published by burgholzer over 4 years ago

MQT Core - Version 1.4.1 Release

This release adds the essential functionality to the JKQ QFR library to support hybrid SchrΓΆdinger-Feynman simulation. The main change is that operations now support a start qubit for generating DDs not starting from 0, which is needed for splitting the circuit horizontally.

For details on the exact changes, see the corresponding pull request (#6).

Scientific Software - Peer-reviewed - C++
Published by burgholzer over 4 years ago

MQT Core - Version 1.4.0 Release

This release marks the update to the new JKQ DD Package version released recently, which increases the performance of practically all decision diagram-related routines. For example, using the JKQ QFR Python library to construct a functional representation of - the Quantum Fourier Transform is now ~20% faster when using the sequential strategy, and ~30% faster when using the recursive strategy - Grover's algorithm is now ~40% faster on average (up to 80% or more for larger instances) when using the sequential strategy, and ~25% faster when using the recursive strategy

✨ separation of matrix and vector DDs ✨ dynamic qubit numbers for DD package ✨ introduce Definitions.hpp containing the most used definitions/constants ⚑ improved garbage collection ⚑ improved hashing ⚑ improved memory allocation πŸ”₯ removed line parameter 🎨 unsigned short to dd::Qubit for qubits, unsigned short to dd::QubitCount for numbers of qubits, std::size_t mostly everywhere else for consistency ♻️ controls are no longer a vector but a set ♻️ Measurement operations now hold separate vectors for qubits and classical registers ♻️ moved DD generation routines (e.g. for SWAP) to DD Package πŸ› fix bug where permutation was not correctly accounted for in recursive functionality construction πŸ› fix bug where reference counting was not done correctly when recursively building the functionality of Grover's algorithm πŸ› fix reference counting bug in reduceAncillary and reduceGarbage methods

Scientific Software - Peer-reviewed - C++
Published by burgholzer over 4 years ago

MQT Core - Version 1.3.1 Release

This release acts as a tag for the last version of the JKQ QFR repository that uses the old JKQ DD Package. Future releases will use JKQ DD Package version 2.0 and higher.

Scientific Software - Peer-reviewed - C++
Published by burgholzer over 4 years ago

MQT Core - Version 1.3.0 Release

This release introduces the JKQ QFR Python package jkq.qfr for efficiently constructing functional representations of quantum circuits based on methods proposed in [1].

[1] L. Burgholzer, R. Raymond, I. Sengupta, and R. Wille. "Efficient Construction of Functional Representations for Quantum Algorithms". arXiv:2103.08281, 2021

In order to start using it, install the package using bash pip install jkq.qfr Then, in Python, the functionality of a given circuit (provided, e.g., as Qiskit QuantumCircuit) can be constructed with: ```python from jkq import qfr from qiskit import QuantumCircuit

create your quantum circuit

qc = <...>

construct the functionality of the circuit

results = qfr.construct(qc)

print the results

print(results) ```

See the README for more details.

Scientific Software - Peer-reviewed - C++
Published by burgholzer almost 5 years ago