Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ jobs:
clang-version: 20
cmake-args: -DBUILD_MQT_DDSIM_BINDINGS=ON
files-changed-only: true
install-pkgs: "nanobind==2.11.0"
install-pkgs: "nanobind==2.12.0"
setup-python: true
cpp-linter-extra-args: "-std=c++20"

Expand Down
12 changes: 6 additions & 6 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -45,14 +45,14 @@ repos:

## Check pyproject.toml file
- repo: https://github.com/henryiii/validate-pyproject-schema-store
rev: 2026.04.11
rev: 2026.04.21
hooks:
- id: validate-pyproject
priority: 0

## Ensure uv.lock is up to date
- repo: https://github.com/astral-sh/uv-pre-commit
rev: 0.11.6
rev: 0.11.7
hooks:
- id: uv-lock
priority: 0
Expand All @@ -69,7 +69,7 @@ repos:

## Check for typos
- repo: https://github.com/adhtruong/mirrors-typos
rev: v1.45.0
rev: v1.45.1
hooks:
- id: typos
priority: 3
Expand Down Expand Up @@ -102,7 +102,7 @@ repos:

## Format configuration files with prettier
- repo: https://github.com/rbubley/mirrors-prettier
rev: v3.8.2
rev: v3.8.3
hooks:
- id: prettier
types_or: [yaml, markdown, html, css, scss, javascript, json, json5]
Expand All @@ -120,15 +120,15 @@ repos:

## Format C++ files with clang-format
- repo: https://github.com/pre-commit/mirrors-clang-format
rev: v22.1.3
rev: v22.1.4
hooks:
- id: clang-format
types_or: [c++, c, cuda]
priority: 5

## Format and lint Python files with ruff
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.15.10
rev: v0.15.11
hooks:
- id: ruff-format
types_or: [python, pyi, jupyter, markdown]
Expand Down
13 changes: 12 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,15 @@ This project adheres to [Semantic Versioning], with the exception that minor rel

## [Unreleased]

_If you are upgrading: please see [`UPGRADING.md`](UPGRADING.md#230)._

## [2.3.0] - 2026-04-23

### Changed

- ⬆️ Update `mqt-core` to version 3.5.1 ([#847]) ([**@burgholzer**])
- ⬆️ Update `nanobind` to version 2.12.0 ([#847]) ([**@burgholzer**])

## [2.2.0] - 2026-02-19

_If you are upgrading: please see [`UPGRADING.md`](UPGRADING.md#220)._
Expand Down Expand Up @@ -88,14 +97,16 @@ _📚 Refer to the [GitHub Release Notes] for previous changelogs._

<!-- Version links -->

[unreleased]: https://github.com/munich-quantum-toolkit/ddsim/compare/v2.2.0...HEAD
[unreleased]: https://github.com/munich-quantum-toolkit/ddsim/compare/v2.3.0...HEAD
[2.3.0]: https://github.com/munich-quantum-toolkit/ddsim/releases/tag/v2.3.0
[2.2.0]: https://github.com/munich-quantum-toolkit/ddsim/releases/tag/v2.2.0
[2.1.0]: https://github.com/munich-quantum-toolkit/ddsim/releases/tag/v2.1.0
[2.0.0]: https://github.com/munich-quantum-toolkit/ddsim/releases/tag/v2.0.0
[1.24.0]: https://github.com/munich-quantum-toolkit/ddsim/releases/tag/v1.24.0

<!-- PR links -->

[#847]: https://github.com/munich-quantum-toolkit/ddsim/pull/847
[#779]: https://github.com/munich-quantum-toolkit/ddsim/pull/779
[#773]: https://github.com/munich-quantum-toolkit/ddsim/pull/773
[#770]: https://github.com/munich-quantum-toolkit/ddsim/pull/770
Expand Down
7 changes: 6 additions & 1 deletion UPGRADING.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,10 @@ This document describes breaking changes and how to upgrade. For a complete list

## [Unreleased]

## [2.3.0]

This release updates the minimum required `mqt-core` version to `v3.5.1` as well as the `nanobind` version to `v2.12.0`.

## [2.2.0]

### Python wheels
Expand Down Expand Up @@ -88,7 +92,8 @@ The default compilers of our test systems support all relevant features of the s

<!-- Version links -->

[unreleased]: https://github.com/munich-quantum-toolkit/ddsim/compare/v2.2.0...HEAD
[unreleased]: https://github.com/munich-quantum-toolkit/ddsim/compare/v2.3.0...HEAD
[2.3.0]: https://github.com/munich-quantum-toolkit/ddsim/compare/v2.2.0...v2.3.0
[2.2.0]: https://github.com/munich-quantum-toolkit/ddsim/compare/v2.1.0...v2.2.0
[2.1.0]: https://github.com/munich-quantum-toolkit/ddsim/compare/v2.0.0...v2.1.0
[2.0.0]: https://github.com/munich-quantum-toolkit/ddsim/compare/v1.24.0...v2.0.0
Expand Down
6 changes: 3 additions & 3 deletions cmake/ExternalDependencies.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -33,11 +33,11 @@ if(BUILD_MQT_DDSIM_BINDINGS)
endif()

# cmake-format: off
set(MQT_CORE_MINIMUM_VERSION 3.4.1
set(MQT_CORE_MINIMUM_VERSION 3.5.1
CACHE STRING "MQT Core minimum version")
set(MQT_CORE_VERSION 3.4.1
set(MQT_CORE_VERSION 3.5.1
CACHE STRING "MQT Core version")
set(MQT_CORE_REV "8747a89766dfb943d62ed100d383cd1823d2356c"
set(MQT_CORE_REV "3c0ba57083ca797bcdca24e8813ba46acf5da5f5"
CACHE STRING "MQT Core identifier (tag, branch or commit hash)")
set(MQT_CORE_REPO_OWNER "munich-quantum-toolkit"
CACHE STRING "MQT Core repository owner (change when using a fork)")
Expand Down
2 changes: 1 addition & 1 deletion include/PathSimulator.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
#include <list>
#include <map>
#include <memory>
#include <nlohmann/json_fwd.hpp>
#include <nlohmann/json.hpp>
#include <stdexcept>
#include <string>
#include <taskflow/core/async.hpp> // IWYU pragma: keep
Expand Down
26 changes: 13 additions & 13 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,10 @@

[build-system]
requires = [
"nanobind~=2.11.0",
"nanobind~=2.12.0",
"scikit-build-core>=0.12.2",
"setuptools-scm>=9.2.2",
"mqt.core~=3.4.1",
"mqt.core~=3.5.1",
]
build-backend = "scikit_build_core.build"

Expand Down Expand Up @@ -48,7 +48,7 @@ classifiers = [
]
requires-python = ">=3.10"
dependencies = [
"mqt.core[qiskit]~=3.4.1",
"mqt.core[qiskit]~=3.5.1",
"qiskit>=1.1",
]
dynamic = ["version"]
Expand Down Expand Up @@ -299,10 +299,10 @@ test-skip = [
environment = { DEPLOY = "ON" }
# The SOVERSION needs to be updated when the shared libraries are updated.
repair-wheel-command = """auditwheel repair -w {dest_dir} {wheel} \
--exclude libmqt-core-ir.so.3.4 \
--exclude libmqt-core-qasm.so.3.4 \
--exclude libmqt-core-circuit-optimizer.so.3.4 \
--exclude libmqt-core-dd.so.3.4"""
--exclude libmqt-core-ir.so.3.5 \
--exclude libmqt-core-qasm.so.3.5 \
--exclude libmqt-core-circuit-optimizer.so.3.5 \
--exclude libmqt-core-dd.so.3.5"""

[tool.cibuildwheel.macos]
environment = { MACOSX_DEPLOYMENT_TARGET = "11.0" }
Expand Down Expand Up @@ -337,10 +337,10 @@ mqt-ddsim = { workspace = true }

[dependency-groups]
build = [
"nanobind~=2.11.0",
"nanobind~=2.12.0",
"scikit-build-core>=0.12.2",
"setuptools-scm>=9.2.2",
"mqt.core~=3.4.1",
"mqt.core~=3.5.1",
]
docs = [
"breathe>=4.36.0",
Expand All @@ -359,8 +359,8 @@ docs = [
"qiskit[visualization]>=1.0.0",
]
test = [
"pytest>=9.0.1",
"pytest-cov>=7.0.0",
"pytest>=9.0.3",
"pytest-cov>=7.1.0",
"pytest-sugar>=1.1.1",
"pytest-xdist>=3.8.0",
"numpy>=2.1; python_version >= '3.13'",
Expand All @@ -369,6 +369,6 @@ test = [
dev = [
{include-group = "build"},
{include-group = "test"},
"nox>=2025.11.12",
"ty==0.0.29",
"nox>=2026.04.10",
"ty==0.0.32",
]
2 changes: 1 addition & 1 deletion python/mqt/ddsim/provider.py
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ def backends(
filters: Additional filtering criteria.
kwargs: Additional filtering criteria.
"""
backends = [
backends: list[Backend] = [
backend_cls() for backend_name, backend_cls in self._BACKENDS if name is None or backend_name == name
]
return cast("list[BackendV2]", filter_backends(backends, filters=filters, **kwargs))
Expand Down
8 changes: 4 additions & 4 deletions python/mqt/ddsim/pyddsim.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -62,8 +62,8 @@ class StochasticNoiseSimulator:
seed: int = -1,
noise_effects: str = "APD",
noise_probability: float = 0.01,
amp_damping_probability: float = 0.02,
multi_qubit_gate_factor: float | None = 2,
amp_damping_probability: float | None = 0.02,
multi_qubit_gate_factor: float = 2,
) -> None: ...
def get_number_of_qubits(self) -> int:
"""Get the number of qubits."""
Expand Down Expand Up @@ -102,8 +102,8 @@ class DeterministicNoiseSimulator:
seed: int = -1,
noise_effects: str = "APD",
noise_probability: float = 0.01,
amp_damping_probability: float = 0.02,
multi_qubit_gate_factor: float | None = 2,
amp_damping_probability: float | None = 0.02,
multi_qubit_gate_factor: float = 2,
) -> None: ...
def get_number_of_qubits(self) -> int:
"""Get the number of qubits."""
Expand Down
Loading
Loading