Skip to content

Commit

Permalink
Prepare 1.3.2 (#13678)
Browse files Browse the repository at this point in the history
* update version to 1.3.2

* adjusting release notes

* adding release notes

Co-authored-by: Shelly Garion <shelly@il.ibm.com>

* Addressing Julien's and Abby's comments; fixing broken links

---------

Co-authored-by: Shelly Garion <shelly@il.ibm.com>
  • Loading branch information
alexanderivrii and ShellyGarion authored Jan 20, 2025
1 parent a623960 commit 7254fb4
Show file tree
Hide file tree
Showing 15 changed files with 66 additions and 53 deletions.
10 changes: 5 additions & 5 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ members = ["crates/*"]
resolver = "2"

[workspace.package]
version = "1.3.1"
version = "1.3.2"
edition = "2021"
rust-version = "1.70" # Keep in sync with README.md and rust-toolchain.toml.
license = "Apache-2.0"
Expand Down
2 changes: 1 addition & 1 deletion docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
# The short X.Y version
version = "1.3"
# The full version, including alpha/beta/rc tags
release = "1.3.1"
release = "1.3.2"

language = "en"

Expand Down
2 changes: 1 addition & 1 deletion qiskit/VERSION.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.3.1
1.3.2
Original file line number Diff line number Diff line change
@@ -1,18 +1,19 @@
---
fixes:
- |
Commutation relations of :class:`~.circuit.Instruction`\ s with float-only ``params``
were eagerly cached by the :class:`.CommutationChecker`, using the ``params`` as key to
query the relation. This could lead to faulty results, if the instruction's definition
depended on additional information that just the :attr:`~.circuit.Instruction.params`
attribute, such as e.g. the case for :class:`.PauliEvolutionGate`.
This behavior is now fixed, and the commutation checker only conservatively caches
commutations for Qiskit-native standard gates. This can incur a performance cost if you were
relying on your custom gates being cached, however, we cannot guarantee safe caching for
custom gates, as they might rely on information beyond :attr:`~.circuit.Instruction.params`.
Previously, the :class:`.CommutationChecker` eagerly cached the commutation relations of
:class:`~.circuit.Instruction`\ s with float-only ``params`` as key to query the relation.
This could lead to incorrect results if the instruction's definition
depended on additional information beyond just the :attr:`~.circuit.Instruction.params`
attribute, as, for example, in the case of :class:`.PauliEvolutionGate`.
This behavior is now fixed, and the commutation checker eagerly caches
commutations only for Qiskit-native standard gates.
For custom gates, this change might incur a performance cost; however, guarantees correct
results by avoiding unsafe caching.
- |
Fixed a bug in the :class:`.CommmutationChecker`, where checking commutation of instruction
with non-numeric values in the :attr:`~.circuit.Instruction.params` attribute (such as the
:class:`.PauliGate`) could raise an error.
Fixed a bug in the :class:`.CommutationChecker`, where checking commutation relations of
an instruction
with non-numeric values in the :attr:`~.circuit.Instruction.params` attribute (as in the
case of :class:`.PauliGate`) could raise an error.
Fixed `#13570 <https://github.com/Qiskit/qiskit/issues/13570>`__.
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
---
fixes:
- |
The :class:`.CommutationChecker` did not handle commutations of the :class:`.CRXGate`,
:class:`.CRYGate` and :class:`.CRZGate` correctly for angles
:math:`\pi(4k + 2)` for :math:`k \in \mathbb Z`.
In these cases, the controlled rotations were falsely assumed to commute with any gate.
Now these gates correctly commute with any gate if the rotation angle is a multiple of
:math:`4\pi`.
The :class:`.CommutationChecker` did not correctly handle commutations of the
:class:`.CRXGate`, :class:`.CRYGate` and :class:`.CRZGate` for rotation angles
of the form :math:`(4k + 2)\pi`, with :math:`k \in \mathbb Z`.
In these cases, these gates were incorrectly assumed to commute with any gate.
This behavior is now fixed, and these gates correctly commute with any gate only when the rotation
angle is a multiple of :math:`4\pi`.
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
fixes:
- |
Fixed a bug that caused the circuit library functions :func:`.efficient_su2`,
:func:`.real_amplitudes`, :func:`.excitation_preserving` and :func:`.pauli_two_design`
to error out when constructed for ``num_qubits==1``. For a single qubit these
circuits will not contain any 2-qubit gates.
Fixed a bug that caused the following circuit library functions to produce errors
when called with ``num_qubits=1``:
:func:`~qiskit.circuit.library.efficient_su2`,
:func:`~qiskit.circuit.library.real_amplitudes`,
:func:`~qiskit.circuit.library.excitation_preserving` and
:func:`~qiskit.circuit.library.pauli_two_design`
(for a single qubit, these circuits do not contain any 2-qubit gates).
Fixed `#13480 <https://github.com/Qiskit/qiskit/issues/13480>`__.
19 changes: 10 additions & 9 deletions releasenotes/notes/fix-mcmt-to-gate-ec84e1c625312444.yaml
Original file line number Diff line number Diff line change
@@ -1,15 +1,16 @@
---
fixes:
- |
Fixed a bug where any instruction called ``"mcmt"`` would be passed into the high-level
synthesis routine for a :class:`.MCMTGate`, which causes a failure or invalid result.
In particular, this could happen accidentally when handling the :class:`.MCMT` _circuit_,
named ``"mcmt"``, and implicitly converting it into an instruction e.g. when appending
it to a circuit.
Fixed a bug where any instruction named ``"mcmt"`` was incorrectly passed to the
high-level synthesis routine for a :class:`.MCMTGate`, leading to a failure or an
invalid result. This issue could happen, for example, when handling the :class:`.MCMT`
*circuit*, named ``"mcmt"``, and implicitly converting it into an instruction
(e.g., when appending it to another circuit).
Fixed `#13563 <https://github.com/Qiskit/qiskit/issues/13563>`__.
upgrade_synthesis:
- |
The plugins for :class:`.LinearFunction` no longer raise an error if another object
than :class:`.LinearFunction` is passed into the ``run`` method. Instead, ``None`` is
returned, which is consistent with the other plugins. If you relied on this error being raised,
you can manually perform an instance-check.
The high-level synthesis plugins for :class:`.LinearFunction` no longer raise an
error when an object other than :class:`.LinearFunction` is passed into the ``run``
method. Instead, they now return ``None``, which is consistent with other plugins.
If you relied on this error being raised, you can manually perform an instance-check.
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
---
fixes:
- |
The :class:`.PauliEvolutionGate`, if used with a product formula synthesis (this is the default),
Fixed a bug where the default product formula synthesis for :class:`.PauliEvolutionGate`
did not correctly handle all-identity terms in the operator. The all-identity term
should introduce a global phase equal to ``-evolution_time``, but was off by a factor of 2
and could break for parameterized times. This behavior is now fixed.
should introduce a global phase equal to ``-evolution_time``, but was off by a factor
of 2 and could break for parameterized times.
Fixed `#13625 <https://github.com/Qiskit/qiskit/issues/13625>`__.
Fixed `#13675 <https://github.com/Qiskit/qiskit/issues/13675>`__.
Fixed `#13644 <https://github.com/Qiskit/qiskit/issues/13644>`__.
9 changes: 5 additions & 4 deletions releasenotes/notes/fix-pauli-sympify-ea9acceb2a923aff.yaml
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
---
fixes:
- |
Fixed an inconsistency in the circuit generated by a Pauli evolution synthesis
with :class:`.SuzukiTrotter` or :class:`.LieTrotter` (the default) method.
Fixed an inconsistency in the circuit generated by Pauli evolution synthesis
using :class:`.SuzukiTrotter` or :class:`.LieTrotter` (the default) method.
For parameterized evolution times, the resulting circuits contained parameters
with a spurious, zero complex part, which affected the output of
:meth:`.ParameterExpression.sympify`. The output now correctly is only real.
with a spurious zero complex part, which affected the output of
:meth:`.ParameterExpression.sympify`. The output now correctly contains only real
values.
Fixed `#13642 <https://github.com/Qiskit/qiskit/pull/13642>`__.
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@
fixes:
- |
Fixed a bug that caused :meth:`.PauliList.insert` with ``qubit=True`` to produce a `phase`
attribute with the wrong shape when the original object was length 1.
attribute with the wrong shape when the original object was of length 1.
Fixed `#13623 <https://github.com/Qiskit/qiskit/issues/13623>`__.
5 changes: 3 additions & 2 deletions releasenotes/notes/fix-qasm-3-unitary-2da190be6ba25bbd.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
---
fixes:
- |
Fix a bug in :class:`.qasm3.Exporter` that caused the exporter to crash when
handling a unitary gate due to incorrect processing of its ``params`` field.
Fixed a bug in :class:`.qasm3.Exporter` that caused the exporter to crash when
handling a unitary gate due to an incorrect processing of its ``params`` field.
Fixed `#13362 <https://github.com/Qiskit/qiskit/issues/13362>`__.
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@
fixes:
- |
Fixed a bug in the :meth:`.Target.instruction_supported` method where
targets with ``self.num_qubits==None`` would always return ``false``
independently of the supported basis set.
targets with ``self.num_qubits==None`` would always return ``False``
independently of the supported basis set.
3 changes: 3 additions & 0 deletions releasenotes/notes/prepare-1.3.2-7ac29fe370568aab.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
prelude: >
Qiskit 1.3.2 is a minor bugfix release for the 1.3 series.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
fixes:
- |
Fixed a bug where a initializing :class:`.SparsePauliOp` with a large
Fixed a bug where initializing :class:`.SparsePauliOp` with a large
number of Pauli-``Y`` terms (typically :math:`\geq 100`) and no explicit
``coeffs`` would result in a coefficient close to 1 but with a floating point
error. The coefficient is now correctly 1 per default.
Fixed `#13522 <https://github.com/Qiskit/qiskit/issues/13522>`__.
Fixed `#13522 <https://github.com/Qiskit/qiskit/issues/13522>`__.

0 comments on commit 7254fb4

Please sign in to comment.