From a3a4cad8db96d97de352737455035795455428cb Mon Sep 17 00:00:00 2001
From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com>
Date: Sat, 21 Dec 2024 16:57:51 +0000
Subject: [PATCH] =?UTF-8?q?=E2=AC=86=EF=B8=8F=F0=9F=AA=9D=20Update=20pre-c?=
=?UTF-8?q?ommit=20hook=20astral-sh/ruff-pre-commit=20to=20v0.8.4=20(#452)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
|
[astral-sh/ruff-pre-commit](https://redirect.github.com/astral-sh/ruff-pre-commit)
| repository | patch | `v0.8.3` -> `v0.8.4` |
Note: The `pre-commit` manager in Renovate is not supported by the
`pre-commit` maintainers or community. Please do not report any problems
there, instead [create a Discussion in the Renovate
repository](https://redirect.github.com/renovatebot/renovate/discussions/new)
if you have any questions.
---
### Release Notes
astral-sh/ruff-pre-commit (astral-sh/ruff-pre-commit)
###
[`v0.8.4`](https://redirect.github.com/astral-sh/ruff-pre-commit/compare/v0.8.3...v0.8.4)
[Compare
Source](https://redirect.github.com/astral-sh/ruff-pre-commit/compare/v0.8.3...v0.8.4)
---
### Configuration
📅 **Schedule**: Branch creation - "every weekend" (UTC), Automerge - At
any time (no schedule defined).
🚦 **Automerge**: Enabled.
â™» **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.
---
- [ ] If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/cda-tum/mqt-bench).
---------
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Nils Quetschlich
---
.pre-commit-config.yaml | 2 +-
tests/devices/test_devices.py | 57 ++++++++++---------
tests/devices/test_ibm_device_support.py | 8 ++-
tests/devices/test_iqm_device_support.py | 4 +-
tests/devices/test_oqc_device_support.py | 8 ++-
.../devices/test_quantinuum_device_support.py | 8 ++-
tests/devices/test_rigetti_device_support.py | 8 ++-
7 files changed, 53 insertions(+), 42 deletions(-)
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 533493232..9267898c2 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -57,7 +57,7 @@ repos:
# Python linting and formatting using ruff
- repo: https://github.com/astral-sh/ruff-pre-commit
- rev: v0.8.3
+ rev: v0.8.4
hooks:
- id: ruff
args: ["--fix", "--show-fixes"]
diff --git a/tests/devices/test_devices.py b/tests/devices/test_devices.py
index 647ff3197..3a8e58484 100644
--- a/tests/devices/test_devices.py
+++ b/tests/devices/test_devices.py
@@ -2,6 +2,7 @@
from __future__ import annotations
+import re
from typing import cast
import pytest
@@ -41,62 +42,62 @@ def test_device_calibration_errors() -> None:
device = Device(name="test", num_qubits=1, basis_gates=[], coupling_map=[], calibration=None)
# Test all methods with no calibration
- with pytest.raises(ValueError, match="Calibration data not available for device test."):
+ with pytest.raises(ValueError, match=re.escape("Calibration data not available for device test.")):
device.get_single_qubit_gate_fidelity("gate1", 0)
- with pytest.raises(ValueError, match="Calibration data not available for device test."):
+ with pytest.raises(ValueError, match=re.escape("Calibration data not available for device test.")):
device.get_single_qubit_gate_duration("gate1", 0)
- with pytest.raises(ValueError, match="Calibration data not available for device test."):
+ with pytest.raises(ValueError, match=re.escape("Calibration data not available for device test.")):
device.get_two_qubit_gate_fidelity("gate2", 0, 1)
- with pytest.raises(ValueError, match="Calibration data not available for device test."):
+ with pytest.raises(ValueError, match=re.escape("Calibration data not available for device test.")):
device.get_two_qubit_gate_duration("gate2", 0, 1)
- with pytest.raises(ValueError, match="Calibration data not available for device test."):
+ with pytest.raises(ValueError, match=re.escape("Calibration data not available for device test.")):
device.get_readout_fidelity(0)
- with pytest.raises(ValueError, match="Calibration data not available for device test."):
+ with pytest.raises(ValueError, match=re.escape("Calibration data not available for device test.")):
device.get_readout_duration(0)
- with pytest.raises(ValueError, match="Calibration data not available for device test."):
+ with pytest.raises(ValueError, match=re.escape("Calibration data not available for device test.")):
device.sanitize_device()
# Test all methods with missing calibration data
device.calibration = DeviceCalibration()
- with pytest.raises(ValueError, match="Gate gate1 not supported by device test."):
+ with pytest.raises(ValueError, match=re.escape("Gate gate1 not supported by device test.")):
device.get_single_qubit_gate_fidelity("gate1", 0)
- with pytest.raises(ValueError, match="Gate gate1 not supported by device test."):
+ with pytest.raises(ValueError, match=re.escape("Gate gate1 not supported by device test.")):
device.get_single_qubit_gate_duration("gate1", 0)
- with pytest.raises(ValueError, match="Gate gate2 not supported by device test."):
+ with pytest.raises(ValueError, match=re.escape("Gate gate2 not supported by device test.")):
device.get_two_qubit_gate_fidelity("gate2", 0, 1)
- with pytest.raises(ValueError, match="Gate gate2 not supported by device test."):
+ with pytest.raises(ValueError, match=re.escape("Gate gate2 not supported by device test.")):
device.get_two_qubit_gate_duration("gate2", 0, 1)
- with pytest.raises(ValueError, match="Readout fidelity values not available."):
+ with pytest.raises(ValueError, match=re.escape("Readout fidelity values not available.")):
device.get_readout_fidelity(0)
- with pytest.raises(ValueError, match="Readout duration values not available."):
+ with pytest.raises(ValueError, match=re.escape("Readout duration values not available.")):
device.get_readout_duration(0)
- with pytest.raises(ValueError, match="Single-qubit gate fidelity values not available."):
+ with pytest.raises(ValueError, match=re.escape("Single-qubit gate fidelity values not available.")):
device.calibration.get_single_qubit_gate_fidelity("gate_type", 0)
- with pytest.raises(ValueError, match="Single-qubit gate duration values not available."):
+ with pytest.raises(ValueError, match=re.escape("Single-qubit gate duration values not available.")):
device.calibration.get_single_qubit_gate_duration("gate_type", 0)
- with pytest.raises(ValueError, match="Two-qubit gate fidelity values not available."):
+ with pytest.raises(ValueError, match=re.escape("Two-qubit gate fidelity values not available.")):
device.calibration.get_two_qubit_gate_fidelity("gate_type", 0, 1)
- with pytest.raises(ValueError, match="Two-qubit gate duration values not available."):
+ with pytest.raises(ValueError, match=re.escape("Two-qubit gate duration values not available.")):
device.calibration.get_two_qubit_gate_duration("gate_type", 0, 1)
- with pytest.raises(ValueError, match="Readout fidelity values not available."):
+ with pytest.raises(ValueError, match=re.escape("Readout fidelity values not available.")):
device.calibration.get_readout_fidelity(0)
- with pytest.raises(ValueError, match="Readout duration values not available."):
+ with pytest.raises(ValueError, match=re.escape("Readout duration values not available.")):
device.calibration.get_readout_duration(0)
- with pytest.raises(ValueError, match="T1 values not available."):
+ with pytest.raises(ValueError, match=re.escape("T1 values not available.")):
device.calibration.get_t1(0)
- with pytest.raises(ValueError, match="T2 values not available."):
+ with pytest.raises(ValueError, match=re.escape("T2 values not available.")):
device.calibration.get_t2(0)
- with pytest.raises(ValueError, match="Single-qubit gate fidelity values not available."):
+ with pytest.raises(ValueError, match=re.escape("Single-qubit gate fidelity values not available.")):
device.calibration.compute_average_single_qubit_gate_fidelity("gate")
- with pytest.raises(ValueError, match="Single-qubit gate duration values not available."):
+ with pytest.raises(ValueError, match=re.escape("Single-qubit gate duration values not available.")):
device.calibration.compute_average_single_qubit_gate_duration("gate")
- with pytest.raises(ValueError, match="Two-qubit gate fidelity values not available."):
+ with pytest.raises(ValueError, match=re.escape("Two-qubit gate fidelity values not available.")):
device.calibration.compute_average_two_qubit_gate_fidelity("gate")
- with pytest.raises(ValueError, match="Two-qubit gate duration values not available."):
+ with pytest.raises(ValueError, match=re.escape("Two-qubit gate duration values not available.")):
device.calibration.compute_average_two_qubit_gate_duration("gate")
- with pytest.raises(ValueError, match="Readout fidelity values not available."):
+ with pytest.raises(ValueError, match=re.escape("Readout fidelity values not available.")):
device.calibration.compute_average_readout_fidelity()
- with pytest.raises(ValueError, match="Readout duration values not available."):
+ with pytest.raises(ValueError, match=re.escape("Readout duration values not available.")):
device.calibration.compute_average_readout_duration()
@@ -105,5 +106,5 @@ def test_provider() -> None:
for provider in get_available_providers():
assert provider.provider_name in ["ibm", "rigetti", "oqc", "ionq", "quantinuum", "iqm"]
- with pytest.raises(NotFoundError, match="Provider 'test' not found among available providers."):
+ with pytest.raises(NotFoundError, match=re.escape("Provider 'test' not found among available providers.")):
get_provider_by_name("test")
diff --git a/tests/devices/test_ibm_device_support.py b/tests/devices/test_ibm_device_support.py
index 0e04ed2f1..ebba4f1b8 100644
--- a/tests/devices/test_ibm_device_support.py
+++ b/tests/devices/test_ibm_device_support.py
@@ -2,6 +2,8 @@
from __future__ import annotations
+import re
+
import pytest
from qiskit_ibm_runtime.fake_provider import FakeMontrealV2
@@ -14,7 +16,7 @@ def test_ibm_provider_methods() -> None:
assert IBMProvider.get_available_basis_gates() == [["id", "rz", "sx", "x", "cx", "measure", "barrier"]]
assert IBMProvider.get_native_gates() == ["id", "rz", "sx", "x", "cx", "measure", "barrier"]
assert IBMProvider.get_max_qubits() == 127
- with pytest.raises(ValueError, match="Device ibm_unknown not found."):
+ with pytest.raises(ValueError, match=re.escape("Device ibm_unknown not found.")):
IBMProvider.get_device("ibm_unknown")
@@ -78,7 +80,7 @@ def test_get_ibm_washington_device() -> None:
for gate in single_qubit_gates:
assert 0 <= device.get_single_qubit_gate_fidelity(gate, q) <= 1
- with pytest.raises(ValueError, match="Single-qubit gate duration values not available."):
+ with pytest.raises(ValueError, match=re.escape("Single-qubit gate duration values not available.")):
device.get_single_qubit_gate_duration(gate, q)
for q0, q1 in device.coupling_map:
@@ -105,7 +107,7 @@ def test_get_ibmq_montreal_device() -> None:
for gate in single_qubit_gates:
assert 0 <= device.get_single_qubit_gate_fidelity(gate, q) <= 1
- with pytest.raises(ValueError, match="Single-qubit gate duration values not available."):
+ with pytest.raises(ValueError, match=re.escape("Single-qubit gate duration values not available.")):
device.get_single_qubit_gate_duration(gate, q)
for q0, q1 in device.coupling_map:
for gate in two_qubit_gates:
diff --git a/tests/devices/test_iqm_device_support.py b/tests/devices/test_iqm_device_support.py
index d978d6ea5..d4fb18359 100644
--- a/tests/devices/test_iqm_device_support.py
+++ b/tests/devices/test_iqm_device_support.py
@@ -2,6 +2,8 @@
from __future__ import annotations
+import re
+
import pytest
from mqt.bench.devices import IQMProvider
@@ -19,7 +21,7 @@ def test_iqm_provider_methods() -> None:
assert IQMProvider.get_available_basis_gates() == [["r", "cz", "measure", "barrier"]]
assert IQMProvider.get_native_gates() == ["r", "cz", "measure", "barrier"]
assert IQMProvider.get_max_qubits() == 20
- with pytest.raises(ValueError, match="Device iqm_unknown not found."):
+ with pytest.raises(ValueError, match=re.escape("Device iqm_unknown not found.")):
IQMProvider.get_device("iqm_unknown")
diff --git a/tests/devices/test_oqc_device_support.py b/tests/devices/test_oqc_device_support.py
index 1c244df0a..ea8a0e705 100644
--- a/tests/devices/test_oqc_device_support.py
+++ b/tests/devices/test_oqc_device_support.py
@@ -2,6 +2,8 @@
from __future__ import annotations
+import re
+
import pytest
from mqt.bench.devices import OQCProvider
@@ -29,16 +31,16 @@ def test_oqc_lucy_device() -> None:
for q in range(device.num_qubits):
assert 0 <= device.get_readout_fidelity(q) <= 1
- with pytest.raises(ValueError, match="Readout duration values not available."):
+ with pytest.raises(ValueError, match=re.escape("Readout duration values not available.")):
device.get_readout_duration(q)
for gate in single_qubit_gates:
assert 0 <= device.get_single_qubit_gate_fidelity(gate, q) <= 1
- with pytest.raises(ValueError, match="Single-qubit gate duration values not available."):
+ with pytest.raises(ValueError, match=re.escape("Single-qubit gate duration values not available.")):
device.get_single_qubit_gate_duration(gate, q)
for q0, q1 in device.coupling_map:
for gate in two_qubit_gates:
assert 0 <= device.get_two_qubit_gate_fidelity(gate, q0, q1) <= 1
- with pytest.raises(ValueError, match="Two-qubit gate duration values not available."):
+ with pytest.raises(ValueError, match=re.escape("Two-qubit gate duration values not available.")):
device.get_two_qubit_gate_duration(gate, q0, q1)
diff --git a/tests/devices/test_quantinuum_device_support.py b/tests/devices/test_quantinuum_device_support.py
index d14beebdc..753035891 100644
--- a/tests/devices/test_quantinuum_device_support.py
+++ b/tests/devices/test_quantinuum_device_support.py
@@ -2,6 +2,8 @@
from __future__ import annotations
+import re
+
import pytest
from mqt.bench.devices import QuantinuumProvider
@@ -29,16 +31,16 @@ def test_quantinuum_h2_device() -> None:
for q in range(device.num_qubits):
assert 0 <= device.get_readout_fidelity(q) <= 1
- with pytest.raises(ValueError, match="Readout duration values not available."):
+ with pytest.raises(ValueError, match=re.escape(r"Readout duration values not available.")):
device.get_readout_duration(q)
for gate in single_qubit_gates:
assert 0 <= device.get_single_qubit_gate_fidelity(gate, q) <= 1
- with pytest.raises(ValueError, match="Single-qubit gate duration values not available."):
+ with pytest.raises(ValueError, match=re.escape(r"Single-qubit gate duration values not available.")):
device.get_single_qubit_gate_duration(gate, q)
for q0, q1 in device.coupling_map:
for gate in two_qubit_gates:
assert 0 <= device.get_two_qubit_gate_fidelity(gate, q0, q1) <= 1
- with pytest.raises(ValueError, match="Two-qubit gate duration values not available."):
+ with pytest.raises(ValueError, match=re.escape(r"Two-qubit gate duration values not available.")):
device.get_two_qubit_gate_duration(gate, q0, q1)
diff --git a/tests/devices/test_rigetti_device_support.py b/tests/devices/test_rigetti_device_support.py
index 6764a8927..5f86bd58b 100644
--- a/tests/devices/test_rigetti_device_support.py
+++ b/tests/devices/test_rigetti_device_support.py
@@ -2,6 +2,8 @@
from __future__ import annotations
+import re
+
import pytest
from mqt.bench.devices import RigettiProvider
@@ -29,16 +31,16 @@ def test_rigetti_aspen_m3_device() -> None:
for q in range(device.num_qubits):
assert 0 <= device.get_readout_fidelity(q) <= 1
- with pytest.raises(ValueError, match="Readout duration values not available."):
+ with pytest.raises(ValueError, match=re.escape("Readout duration values not available.")):
device.get_readout_duration(q)
for gate in single_qubit_gates:
assert 0 <= device.get_single_qubit_gate_fidelity(gate, q) <= 1
- with pytest.raises(ValueError, match="Single-qubit gate duration values not available."):
+ with pytest.raises(ValueError, match=re.escape("Single-qubit gate duration values not available.")):
device.get_single_qubit_gate_duration(gate, q)
for q0, q1 in device.coupling_map:
for gate in two_qubit_gates:
assert 0 <= device.get_two_qubit_gate_fidelity(gate, q0, q1) <= 1
- with pytest.raises(ValueError, match="Two-qubit gate duration values not available."):
+ with pytest.raises(ValueError, match=re.escape("Two-qubit gate duration values not available.")):
device.get_two_qubit_gate_duration(gate, q0, q1)