Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-cirq for openSUSE:Factory 
checked in at 2023-02-02 18:08:12
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-cirq (Old)
 and      /work/SRC/openSUSE:Factory/.python-cirq.new.32243 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-cirq"

Thu Feb  2 18:08:12 2023 rev:7 rq:1061911 version:1.1.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-cirq/python-cirq.changes  2022-11-17 
17:24:49.237165780 +0100
+++ /work/SRC/openSUSE:Factory/.python-cirq.new.32243/python-cirq.changes       
2023-02-02 18:32:16.156895566 +0100
@@ -1,0 +2,30 @@
+Sat Jan 28 19:10:55 UTC 2023 - Ben Greiner <[email protected]>
+
+- Update to 1.1.0
+  * This Cirq release focuses on tracking and improving performance
+    of key workflows like circuit construction, parameter
+    resolution etc. The release also adds a new transformers
+    framework for qubit routing and provides an efficient
+    implementation of the qubit routing algorithm described in
+    arXiv:1902.08091 [quant-ph]
+  ## Backwards Incompatible Changes
+  * 7892143 Print multi-qubit circuit with asymmetric depolarizing
+    noise correctly (#5931) by Paige
+  * af1267d Allow repeated measurements in deferred transformer
+    (#5857) by Dax Fohl
+  ## What's New
+  * New top level objects in cirq-core:
+    - RoutingSwapTag
+    - AbstractInitialMapper
+    - HardCodedInitialMapper
+    - LineInitialMapper
+    - MappingManager
+    - RouteCQC
+    - routed_circuit_with_mapping
+- Add subpackage for cirq_core[contrib]
+- Enable -rigetti package: pyquil and all its dependants are
+  available (gh#quantumlib/Cirq#5681)
+- Drop fix-tests.patch
+- Add cirq-pr5991-np1.24.patch -- gh#quantumlib/Cirq#5991
+
+-------------------------------------------------------------------

Old:
----
  Cirq-1.0.0.tar.gz
  fix-tests.patch

New:
----
  Cirq-1.1.0.tar.gz
  cirq-pr5991-np1.24.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-cirq.spec ++++++
--- /var/tmp/diff_new_pack.DauoYB/_old  2023-02-02 18:32:16.616898396 +0100
+++ /var/tmp/diff_new_pack.DauoYB/_new  2023-02-02 18:32:16.640898544 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package python-cirq
 #
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -16,22 +16,21 @@
 #
 
 
-%define packagename Cirq
-%define skip_python2 1
 %define plainpython python
-# not all requirements available right now
-%bcond_with rigetti
-%define cirqmodules core aqt google ionq pasqal web %{?_with_rigetty:rigetty}
+%define cirqmodules core aqt google ionq pasqal web rigetti
 Name:           python-cirq
-Version:        1.0.0
+Version:        1.1.0
 Release:        0
 Summary:        Library for writing quantum circuits
 License:        Apache-2.0
 URL:            https://github.com/quantumlib/Cirq
-Source:         
https://github.com/quantumlib/Cirq/archive/v%{version}.tar.gz#/%{packagename}-%{version}.tar.gz
-# PATCH-FIX-UPSTREAM fix-tests.patch gh#quantumlib/Cirq#5911
-Patch:          fix-tests.patch
+Source:         
https://github.com/quantumlib/Cirq/archive/v%{version}.tar.gz#/Cirq-%{version}.tar.gz
+# PATCH-FIX-UPSTREAM cirq-pr5991-np1.24.patch gh#quantumlib/Cirq#5991
+Patch0:         cirq-pr5991-np1.24.patch
+BuildRequires:  %{python_module base >= 3.7}
+BuildRequires:  %{python_module pip}
 BuildRequires:  %{python_module setuptools}
+BuildRequires:  %{python_module wheel}
 BuildRequires:  fdupes
 BuildRequires:  python-rpm-macros
 # SECTION cirq-core
@@ -56,30 +55,13 @@
 # google-api-core[grpc]
 BuildRequires:  %{python_module grpcio}
 # /SECTION
-%if %{with rigetti}
-BuildRequires:  %{python_module attrs >= 20.3}
-BuildRequires:  %{python_module certifi >= 2021.5.30}
-BuildRequires:  %{python_module h11 >= 0.9.0}
-BuildRequires:  %{python_module httpcore >= 0.11.1}
-BuildRequires:  %{python_module httpx >= 0.15.5}
-BuildRequires:  %{python_module idna >= 2.10}
-BuildRequires:  %{python_module iso8601 >= 0.1.14}
-BuildRequires:  %{python_module pydantic >= 1.8.2}
-BuildRequires:  %{python_module pyjwt >= 1.7.1}
-BuildRequires:  %{python_module pyquil >= 3.0.0}
-BuildRequires:  %{python_module python-dateutil >= 2.8.1}
-BuildRequires:  %{python_module qcs-api-client >= 0.8.0}
-BuildRequires:  %{python_module retrying >= 1.3.3}
-BuildRequires:  %{python_module rfc3339 >= 6.2}
-BuildRequires:  %{python_module rfc3986 >= 1.5.0}
-BuildRequires:  %{python_module sniffio >= 1.2.0}
-BuildRequires:  %{python_module toml >= 0.10.2}
-%endif
-# SECTION cirq-core/contrib
-BuildRequires:  %{python_module ply}
+BuildRequires:  %{python_module pyquil >= 3.2.0}
+# SECTION cirq-core[contrib]
+BuildRequires:  %{python_module autoray}
 BuildRequires:  %{python_module PyLaTeX >= 1.3.0}
 BuildRequires:  %{python_module numba >= 0.53}
-BuildRequires:  %{python_module pyquil}
+BuildRequires:  %{python_module opt-einsum}
+BuildRequires:  %{python_module ply >= 3.6}
 BuildRequires:  %{python_module quimb}
 # /SECTION
 # SECTION test
@@ -87,6 +69,8 @@
 BuildRequires:  %{python_module filelock}
 BuildRequires:  %{python_module freezegun >= 0.3.15}
 BuildRequires:  %{python_module pytest-asyncio}
+BuildRequires:  %{python_module pytest-randomly}
+BuildRequires:  %{python_module pytest-xdist}
 BuildRequires:  %{python_module pytest}
 #/SECTION
 Requires:       %plainpython(abi) = %python_version
@@ -95,10 +79,8 @@
 Requires:       python-cirq-google
 Requires:       python-cirq-ionq
 Requires:       python-cirq-pasqal
-Requires:       python-cirq-web
-%if %{with rigetti}
 Requires:       python-cirq-rigetti
-%endif
+Requires:       python-cirq-web
 # quimb does not support 32 bit arch.
 ExcludeArch:    %ix86 %arm ppc
 BuildArch:      noarch
@@ -131,6 +113,19 @@
 This module contains everything you'd need to write quantum algorithms for 
NISQ devices and run them on the built-in Cirq simulators.
 In order to run algorithms on a given quantum hardware platform, you'll have 
to install the right cirq module as well.
 
+%package core-contrib
+Summary:        Cirq quantum algorithms for NISQ devices
+Requires:       python-PyLaTeX >= 1.3.0
+Requires:       python-autoray
+Requires:       python-cirq-core = %{version}
+Requires:       python-numba >= 0.53
+Requires:       python-opt-einsum
+Requires:       python-ply >= 3.6
+Requires:       python-quimb
+
+%description core-contrib
+The cirq-core[contrib] extra
+
 %package aqt
 Summary:        Cirq quantum algorithms on AQT quantum computers
 Requires:       python-cirq-core = %{version}
@@ -178,25 +173,9 @@
 their own visualizations to the module.
 
 %package rigetti
-Summary:        A Cirq package to simulate and connect to Rigetti quantum 
computers and Quil QVM
-Requires:       python-attrs >= 20.3
-Requires:       python-certifi >= 2021.5.30
+Summary:        Cirq package for Rigetti quantum computers and Quil QVM
 Requires:       python-cirq-core = %{version}
-Requires:       python-h11 >= 0.9.0
-Requires:       python-httpcore >= 0.11.1
-Requires:       python-httpx >= 0.15.5
-Requires:       python-idna >= 2.10
-Requires:       python-iso8601 >= 0.1.14
-Requires:       python-pydantic >= 1.8.2
-Requires:       python-pyjwt >= 1.7.1
-Requires:       python-pyquil >= 3.0.0
-Requires:       python-python-dateutil >= 2.8.1
-Requires:       python-qcs-api-client >= 0.8.0
-Requires:       python-retrying >= 1.3.3
-Requires:       python-rfc3339 >= 6.2
-Requires:       python-rfc3986 >= 1.5.0
-Requires:       python-sniffio >= 1.2.0
-Requires:       python-toml >= 0.10.2
+Requires:       python-pyquil >= 3.2.0
 
 %description rigetti
 Cirq is a Python library for writing, manipulating, and optimizing quantum
@@ -205,36 +184,31 @@
 This module provides everything you'll need to run Cirq quantum algorithms on 
Rigetti quantum computers.
 
 %prep
-%autosetup -p1 -n %{packagename}-%{version}
+%autosetup -p1 -n Cirq-%{version}
 
 %build
 for p in %cirqmodules; do
   pushd cirq-$p
-  %python_build
+  %pyproject_wheel
   popd
 done
-%python_build
+%pyproject_wheel
 
 %install
 for p in %cirqmodules; do
-  pushd cirq-$p
-  %python_install
-  popd
+  cp cirq-$p/dist/*.whl dist/
 done
-%python_install
+%python_expand cp dist/*.whl build/
+%pyproject_install
 %python_expand %fdupes %{buildroot}%{$python_sitelib}
 
 %check
 # tests assume testfiles and import path to be the same, but we test BUILDROOT
 donttest="test_json_test_data_coverage"
 donttest="$donttest or test_json_and_repr_data"
-# mock error
-donttest="$donttest or test_get_engine_sampler"
-# version in release isn't updated in this test
-donttest="$donttest or test_version"
 for p in %cirqmodules; do
   pushd cirq-$p
-  %pytest -k "not ($donttest)"
+  %pytest -v -k "not ($donttest)" -n auto
   popd
 done
 
@@ -249,6 +223,10 @@
 %{python_sitelib}/cirq
 %{python_sitelib}/cirq_core-%{version}*-info
 
+%files %{python_files core-contrib}
+%doc cirq-core/README.rst
+%license cirq-core/LICENSE
+
 %files %{python_files aqt}
 %doc cirq-aqt/README.rst
 %license cirq-aqt/LICENSE
@@ -280,12 +258,10 @@
 %{python_sitelib}/cirq_web
 %{python_sitelib}/cirq_web-%{version}*-info
 
-%if %{with rigetti}
 %files %{python_files rigetti}
 %doc cirq-rigetti/README.rst
 %license cirq-rigetti/LICENSE
 %{python_sitelib}/cirq_rigetti
 %{python_sitelib}/cirq_rigetti-%{version}*-info
-%endif
 
 %changelog

++++++ Cirq-1.0.0.tar.gz -> Cirq-1.1.0.tar.gz ++++++
/work/SRC/openSUSE:Factory/python-cirq/Cirq-1.0.0.tar.gz 
/work/SRC/openSUSE:Factory/.python-cirq.new.32243/Cirq-1.1.0.tar.gz differ: 
char 13, line 1

++++++ cirq-pr5991-np1.24.patch ++++++
Index: Cirq-1.1.0/cirq-core/cirq/_compat.py
===================================================================
--- Cirq-1.1.0.orig/cirq-core/cirq/_compat.py
+++ Cirq-1.1.0/cirq-core/cirq/_compat.py
@@ -138,9 +138,7 @@ def proper_repr(value: Any) -> str:
         return Printer().doprint(value)
 
     if isinstance(value, np.ndarray):
-        if np.issubdtype(value.dtype, np.datetime64):
-            return f'np.array({value.tolist()!r}, dtype=np.{value.dtype!r})'
-        return f'np.array({value.tolist()!r}, dtype=np.{value.dtype})'
+        return f'np.array({value.tolist()!r}, dtype=np.{value.dtype!r})'
 
     if isinstance(value, pd.MultiIndex):
         return f'pd.MultiIndex.from_tuples({repr(list(value))}, 
names={repr(list(value.names))})'
Index: Cirq-1.1.0/cirq-core/cirq/_compat_test.py
===================================================================
--- Cirq-1.1.0.orig/cirq-core/cirq/_compat_test.py
+++ Cirq-1.1.0/cirq-core/cirq/_compat_test.py
@@ -110,7 +110,7 @@ def test_dataclass_repr_numpy():
             return dataclass_repr(self, namespace='cirq.testing')
 
     tc = TestClass2(np.ones(3))
-    assert repr(tc) == "cirq.testing.TestClass2(x=np.array([1.0, 1.0, 1.0], 
dtype=np.float64))"
+    assert repr(tc) == "cirq.testing.TestClass2(x=np.array([1.0, 1.0, 1.0], 
dtype=np.dtype('float64')))"
 
 
 def test_proper_eq():
Index: Cirq-1.1.0/cirq-core/cirq/linalg/decompositions_test.py
===================================================================
--- Cirq-1.1.0.orig/cirq-core/cirq/linalg/decompositions_test.py
+++ Cirq-1.1.0/cirq-core/cirq/linalg/decompositions_test.py
@@ -367,12 +367,12 @@ def test_kak_repr():
 cirq.KakDecomposition(
     interaction_coefficients=(0.5, 0.25, 0),
     single_qubit_operations_before=(
-        np.array([[0j, (1+0j)], [(1+0j), 0j]], dtype=np.complex128),
-        np.array([[0j, -1j], [1j, 0j]], dtype=np.complex128),
+        np.array([[0j, (1+0j)], [(1+0j), 0j]], dtype=np.dtype('complex128')),
+        np.array([[0j, -1j], [1j, 0j]], dtype=np.dtype('complex128')),
     ),
     single_qubit_operations_after=(
-        np.array([[1.0, 0.0], [0.0, 1.0]], dtype=np.float64),
-        np.array([[(1+0j), 0j], [0j, (-1+0j)]], dtype=np.complex128),
+        np.array([[1.0, 0.0], [0.0, 1.0]], dtype=np.dtype('float64')),
+        np.array([[(1+0j), 0j], [0j, (-1+0j)]], dtype=np.dtype('complex128')),
     ),
     global_phase=1)
 """.strip()
Index: Cirq-1.1.0/cirq-core/cirq/ops/kraus_channel_test.py
===================================================================
--- Cirq-1.1.0.orig/cirq-core/cirq/ops/kraus_channel_test.py
+++ Cirq-1.1.0/cirq-core/cirq/ops/kraus_channel_test.py
@@ -105,8 +105,8 @@ def test_kraus_channel_repr():
         repr(x_meas)
         == """\
 cirq.KrausChannel(kraus_ops=[\
-np.array([[(0.5+0j), (0.5+0j)], [(0.5+0j), (0.5+0j)]], dtype=np.complex64), \
-np.array([[(0.5+0j), (-0.5+0j)], [(-0.5+0j), (0.5+0j)]], dtype=np.complex64)], 
\
+np.array([[(0.5+0j), (0.5+0j)], [(0.5+0j), (0.5+0j)]], 
dtype=np.dtype('complex64')), \
+np.array([[(0.5+0j), (-0.5+0j)], [(-0.5+0j), (0.5+0j)]], 
dtype=np.dtype('complex64'))], \
 key='x_meas')"""
     )
 
Index: Cirq-1.1.0/cirq-core/cirq/ops/measurement_gate_test.py
===================================================================
--- Cirq-1.1.0.orig/cirq-core/cirq/ops/measurement_gate_test.py
+++ Cirq-1.1.0/cirq-core/cirq/ops/measurement_gate_test.py
@@ -317,23 +317,23 @@ def test_op_repr():
             b,
             key='out',
             invert_mask=(False, True),
-            confusion_map={(0,): np.array([[0, 1], [1, 0]], dtype=np.int64)},
+            confusion_map={(0,): np.array([[0, 1], [1, 0]], 
dtype=np.dtype('int64'))},
         )
     ) == (
         "cirq.measure(cirq.LineQubit(0), cirq.LineQubit(1), "
         "key=cirq.MeasurementKey(name='out'), "
         "invert_mask=(False, True), "
-        "confusion_map={(0,): np.array([[0, 1], [1, 0]], dtype=np.int64)})"
+        "confusion_map={(0,): np.array([[0, 1], [1, 0]], 
dtype=np.dtype('int64'))})"
     )
 
 
 def test_repr():
     gate = cirq.MeasurementGate(
-        3, 'a', (True, False), (1, 2, 3), {(2,): np.array([[0, 1], [1, 0]], 
dtype=np.int64)}
+        3, 'a', (True, False), (1, 2, 3), {(2,): np.array([[0, 1], [1, 0]], 
dtype=np.dtype('int64'))}
     )
     assert repr(gate) == (
         "cirq.MeasurementGate(3, cirq.MeasurementKey(name='a'), (True, False), 
"
-        "qid_shape=(1, 2, 3), confusion_map={(2,): np.array([[0, 1], [1, 0]], 
dtype=np.int64)})"
+        "qid_shape=(1, 2, 3), confusion_map={(2,): np.array([[0, 1], [1, 0]], 
dtype=np.dtype('int64'))})"
     )
 
 
Index: Cirq-1.1.0/cirq-core/cirq/ops/mixed_unitary_channel_test.py
===================================================================
--- Cirq-1.1.0.orig/cirq-core/cirq/ops/mixed_unitary_channel_test.py
+++ Cirq-1.1.0/cirq-core/cirq/ops/mixed_unitary_channel_test.py
@@ -95,16 +95,16 @@ def test_matrix_mixture_str():
 
 def test_matrix_mixture_repr():
     mix = [
-        (0.5, np.array([[1, 0], [0, 1]], dtype=np.complex64)),
-        (0.5, np.array([[0, 1], [1, 0]], dtype=np.complex64)),
+        (0.5, np.array([[1, 0], [0, 1]], dtype=np.dtype('complex64'))),
+        (0.5, np.array([[0, 1], [1, 0]], dtype=np.dtype('complex64'))),
     ]
     half_flip = cirq.MixedUnitaryChannel(mix, key='flip')
     assert (
         repr(half_flip)
         == """\
 cirq.MixedUnitaryChannel(mixture=[\
-(0.5, np.array([[(1+0j), 0j], [0j, (1+0j)]], dtype=np.complex64)), \
-(0.5, np.array([[0j, (1+0j)], [(1+0j), 0j]], dtype=np.complex64))], \
+(0.5, np.array([[(1+0j), 0j], [0j, (1+0j)]], dtype=np.dtype('complex64'))), \
+(0.5, np.array([[0j, (1+0j)], [(1+0j), 0j]], dtype=np.dtype('complex64')))], \
 key='flip')"""
     )
 
Index: Cirq-1.1.0/cirq-core/cirq/sim/density_matrix_simulator_test.py
===================================================================
--- Cirq-1.1.0.orig/cirq-core/cirq/sim/density_matrix_simulator_test.py
+++ Cirq-1.1.0/cirq-core/cirq/sim/density_matrix_simulator_test.py
@@ -951,9 +951,9 @@ def test_density_matrix_step_result_repr
             )
         )
         == 
"cirq.DensityMatrixStepResult(sim_state=cirq.DensityMatrixSimulationState("
-        "initial_state=np.array([[(0.5+0j), (0.5+0j)], [(0.5+0j), (0.5+0j)]], 
dtype=np.complex64), "
+        "initial_state=np.array([[(0.5+0j), (0.5+0j)], [(0.5+0j), (0.5+0j)]], 
dtype=np.dtype('complex64')), "
         "qubits=(cirq.LineQubit(0),), "
-        "classical_data=cirq.ClassicalDataDictionaryStore()), 
dtype=np.complex64)"
+        "classical_data=cirq.ClassicalDataDictionaryStore()), 
dtype=np.dtype('complex64'))"
     )
 
 
@@ -1034,9 +1034,9 @@ def test_density_matrix_trial_result_rep
     expected_repr = (
         "cirq.DensityMatrixTrialResult("
         "params=cirq.ParamResolver({'s': 1}), "
-        "measurements={'m': np.array([[1]], dtype=np.int32)}, "
+        "measurements={'m': np.array([[1]], dtype=np.dtype('int32'))}, "
         "final_simulator_state=cirq.DensityMatrixSimulationState("
-        "initial_state=np.array([[(0.5+0j), (0.5+0j)], [(0.5+0j), (0.5+0j)]], 
dtype=np.complex64), "
+        "initial_state=np.array([[(0.5+0j), (0.5+0j)], [(0.5+0j), (0.5+0j)]], 
dtype=np.dtype('complex64')), "
         "qubits=(cirq.LineQubit(0),), "
         "classical_data=cirq.ClassicalDataDictionaryStore()))"
     )
Index: Cirq-1.1.0/cirq-core/cirq/sim/sparse_simulator_test.py
===================================================================
--- Cirq-1.1.0.orig/cirq-core/cirq/sim/sparse_simulator_test.py
+++ Cirq-1.1.0/cirq-core/cirq/sim/sparse_simulator_test.py
@@ -775,9 +775,9 @@ def test_sparse_simulator_repr():
     # No equality so cannot use cirq.testing.assert_equivalent_repr
     assert (
         repr(step) == 
"cirq.SparseSimulatorStep(sim_state=cirq.StateVectorSimulationState("
-        "initial_state=np.array([[0j, (1+0j)], [0j, 0j]], dtype=np.complex64), 
"
+        "initial_state=np.array([[0j, (1+0j)], [0j, 0j]], 
dtype=np.dtype('complex64')), "
         "qubits=(cirq.LineQubit(0), cirq.LineQubit(1)), "
-        "classical_data=cirq.ClassicalDataDictionaryStore()), 
dtype=np.complex64)"
+        "classical_data=cirq.ClassicalDataDictionaryStore()), 
dtype=np.dtype('complex64'))"
     )
 
 
Index: Cirq-1.1.0/cirq-core/cirq/sim/sparse_simulator.py
===================================================================
--- Cirq-1.1.0.orig/cirq-core/cirq/sim/sparse_simulator.py
+++ Cirq-1.1.0/cirq-core/cirq/sim/sparse_simulator.py
@@ -282,5 +282,5 @@ class SparseSimulatorStep(
         # Dtype doesn't have a good repr, so we work around by invoking 
__name__.
         return (
             f'cirq.SparseSimulatorStep(sim_state={self._sim_state!r},'
-            f' dtype=np.{self._dtype.__name__})'
+            f' dtype=np.{np.dtype(self._dtype)!r})'
         )
Index: Cirq-1.1.0/cirq-core/cirq/sim/state_vector_simulator_test.py
===================================================================
--- Cirq-1.1.0.orig/cirq-core/cirq/sim/state_vector_simulator_test.py
+++ Cirq-1.1.0/cirq-core/cirq/sim/state_vector_simulator_test.py
@@ -35,9 +35,9 @@ def test_state_vector_trial_result_repr(
     expected_repr = (
         "cirq.StateVectorTrialResult("
         "params=cirq.ParamResolver({'s': 1}), "
-        "measurements={'m': np.array([[1]], dtype=np.int32)}, "
+        "measurements={'m': np.array([[1]], dtype=np.dtype('int32'))}, "
         "final_simulator_state=cirq.StateVectorSimulationState("
-        "initial_state=np.array([0j, (1+0j)], dtype=np.complex64), "
+        "initial_state=np.array([0j, (1+0j)], dtype=np.dtype('complex64')), "
         "qubits=(cirq.NamedQubit('a'),), "
         "classical_data=cirq.ClassicalDataDictionaryStore()))"
     )
Index: Cirq-1.1.0/cirq-core/cirq/sim/density_matrix_simulator.py
===================================================================
--- Cirq-1.1.0.orig/cirq-core/cirq/sim/density_matrix_simulator.py
+++ Cirq-1.1.0/cirq-core/cirq/sim/density_matrix_simulator.py
@@ -303,7 +303,7 @@ class DensityMatrixStepResult(simulator_
         # Dtype doesn't have a good repr, so we work around by invoking 
__name__.
         return (
             f'cirq.DensityMatrixStepResult(sim_state={self._sim_state!r},'
-            f' dtype=np.{self._dtype.__name__})'
+            f' dtype=np.{np.dtype(self._dtype)!r})'
         )
 
 

Reply via email to