Skip to content

Latest commit

 

History

History
429 lines (350 loc) · 25.7 KB

File metadata and controls

429 lines (350 loc) · 25.7 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on a mixture of Keep a Changelog and Common Changelog. This project adheres to Semantic Versioning, with the exception that minor releases may include breaking changes.

Added

  • ✨ Add authentication support for QDMI sessions with token, username/password, auth file, auth URL, and project ID parameters (#1355) (@marcelwa)
  • ✨ Add a new QDMI device that represents a superconducting architecture featuring a coupling map (#1328) (@ystade)
  • ✨ Add bi-directional iterator that traverses the def-use chain of a qubit value (#1310) (@MatthiasReumann)
  • ✨ Add OptionalDependencyTester to lazily handle optional Python dependencies like Qiskit (#1243) (@marcelwa, @burgholzer)
  • ✨ Expose the QDMI job interface through FoMaC (#1243) (@marcelwa, @burgholzer)
  • ✨ Add Qiskit backend wrapper with job submission support for QDMI devices through a provider interface (#1243) (@marcelwa, @burgholzer)
  • ✨ Support QDMI_DEVICE_PROPERTY_SUPPORTEDPROGRAMFORMATS in the NA QDMI Device and the DDSIM QDMI Device (#1243) (@marcelwa, @burgholzer)
  • ✨ Support QDMI_DEVICE_JOB_PROPERTY_PROGRAM in the NA QDMI Device (#1243) (@marcelwa, @burgholzer)

Changed

Fixed

  • 🐛 Fix custom QDMI property and parameter handling in SC and NA devices (#1355) (@burgholzer)
  • 🚨 Fix argument naming of QuantumComputation and CompoundOperation dunder methods for properly implementing the MutableSequence protocol (#1338) (@burgholzer)
  • 🐛 Fix memory management in dynamic QDMI device by making it explicit (#1336) (@ystade)

Removed

  • 🔥 Remove wheel builds for Python 3.13t (#1371) (@burgholzer)
  • 🔥 Remove the evaluation extra from the MQT Core Python package (#1327) (@burgholzer)
  • 🔥 Remove the mqt-core-dd-compare entry point from the MQT Core Python package (#1327) (@burgholzer)

3.3.3 - 2025-11-10

Added

  • ✨ Add support for bridge gates for the neutral atom hybrid mapper (#1293) (@lsschmid)

Fixed

3.3.2 - 2025-11-04

Added

  • ✨ Add DD-based simulator QDMI device (#1287) (@burgholzer)
  • ✨ A --reuse-qubits pass implementing an advanced form of qubit reuse to reduce the qubit count of quantum circuits (#1108) (@DRovara)
  • ✨ A --lift-measurements pass that attempts to move measurements up as much as possible, used for instance to enable better qubit reuse (#1108) (@DRovara)
  • ✨ Add native support for R(theta, phi) gate (#1283) (@burgholzer)
  • ✨ Add A*-search-based routing algorithm to MLIR transpilation routines (#1237, #1271, #1279) (@MatthiasReumann)

Fixed

3.3.1 - 2025-10-14

Fixed

  • 🐛 Ensure spdlog dependency can be found from mqt-core install (#1263) (@burgholzer)

3.3.0 - 2025-10-13

If you are upgrading: please see UPGRADING.md.

Added

Changed

  • ♻️ Replace custom AllocOp, DeallocOp, ExtractOp, and InsertOp with MLIR-native memref operations (#1211) (@denialhaag)
  • 🚚 Rename MLIR pass ElidePermutations to SwapReconstructionAndElision (#1207) (@taminob)
  • ⬆️ Require LLVM 21 for building the MLIR library (#1180) (@denialhaag)
  • ⬆️ Update to version 21 of clang-tidy (#1180) (@denialhaag)
  • 🚚 Rename MLIR pass CancelConsecutiveInverses to GateElimination (#1140) (@taminob)
  • 🚚 Rename xxminusyy to xx_minus_yy and xxplusyy to xx_plus_yy in MLIR dialects (#1071) (@BertiFlorea, @denialhaag)
  • 🚸 Add custom assembly format for operations in the MLIR dialects (#1139) (@burgholzer)
  • 🚸 Enable InferTypeOpInterface in the MLIR dialects to reduce explicit type information (#1139) (@burgholzer)
  • 🚚 Rename check-quantum-opt test target to mqt-core-mlir-lit-test (#1139) (@burgholzer)
  • ♻️ Update the measure operations in the MLIR dialects to no longer support more than one qubit being measured at once (#1106) (@DRovara)
  • 🚚 Rename XXminusYY to XXminusYYOp and XXplusYY to XXplusYYOp in MLIR dialects (#1099) (@denialhaag)
  • 🚚 Rename MQTDyn MLIR dialect to MQTRef (#1098) (@MatthiasReumann)

Removed

Fixed

3.2.1 - 2025-08-01

Fixed

  • 🐛 Fix usage of std::accumulate by changing accumulator parameter from reference to value (#1089) (@denialhaag)
  • 🐛 Fix erroneous contains check in DD package (#1088) (@denialhaag)

3.2.0 - 2025-07-31

Added

Changed

3.1.0 - 2025-07-11

If you are upgrading: please see UPGRADING.md.

Added

Fixed

  • 🐛 Fix bug in MLIR roundtrip passes caused by accessing an invalidated iterator after erasure in a loop (#932) (@flowerthrower)
  • 🐛 Add missing support for sxdg gates in Qiskit circuit import (#930) (@burgholzer)
  • 🐛 Fix bug related to initialization of operations with duplicate operands (#964) (@ystade)
  • 🐛 Open issue for Qiskit upstream test only when the test is actually failing not when it was cancelled (#973) (@ystade)
  • 🐛 Fix parsing of GPhase in the MQTOpt MLIR dialect (#1042) (@ystade, @DRovara)

Changed

  • ⬆️ Bump shared library ABI version from 3.0 to 3.1 (#1047) (@denialhaag)
  • ♻️ Switch from reference counting to mark-and-sweep garbage collection in decision diagram package (#1020) (@MatthiasReumann, [burgholzer], q-inho)
  • ♻️ Move the C++ code for the Python bindings to the top-level bindings directory (#982) (@denialhaag)
  • ♻️ Move all Python code (no tests) to the top-level python directory (#982) (@denialhaag)
  • ⚡ Improve performance of getNqubits for StandardOperations (#959) (@ystade)
  • ♻️ Move Make-State Functionality To StateGeneration (#984) (@MatthiasReumann)
  • ♻️ Outsource definition of standard operations from MLIR dialects to reduce redundancy (#933) (@ystade)
  • ♻️ Unify operands and results in MLIR dialects (#931) (@ystade)
  • ⏪️ Restore support for (MLIR and) LLVM v19 (#934) (@flowerthrower, @ystade)
  • ⬆️ Update nlohmann_json to v3.12.0 (#921) (@burgholzer)

3.0.2 - 2025-04-07

Added

Fixed

3.0.1 - 2025-04-07

Fixed

  • 🐛 Fix doxygen build on RtD to include C++ API docs (#912) (@burgholzer)

3.0.0 - 2025-04-06

If you are upgrading: please see UPGRADING.md.

Added

Changed

Removed

  • Breaking: 🔥 Remove the Teleportation gate from the IR (#882) (@burgholzer)
  • Breaking: 🔥 Remove parsers for .real, .qc, .tfc, and GRCS files (#822) (@burgholzer)
  • Breaking: 🔥 Remove tensor dump functionality (#798) (@burgholzer)
  • Breaking: 🔥 Remove extract_probability_vector functionality (#883) (@burgholzer)

Fixed

2.7.0 - 2024-10-08

📚 Refer to the GitHub Release Notes for previous changelogs.