Changelog
Deprecated
- Deprecate `PauliList` estimator observables (11055)
- Remove validation methods from primitive base classes (11052)
- Deprecate legacy primitive attributes in base classes (11051)
- Deprecate the discrete pulse library (11110)
Added
- Ensure `QuantumCircuit.append` validates captures in control-flow (10974)
- Decomposition of single R gate in RR basis should be one R gate, not two (11304)
- Add pow as supported operation for ParameterExpression (11235)
- Add representation of storage-owning `Var` nodes (10944)
- Add support for Python 3.12 (11262)
- Add pass to filter ops and label inserted barriers (10323)
- Oxidize `QuantumCircuit._data` and intern `CircuitInstruction` args (10827)
- Fixed Issue 11026: SparsePauliOp.apply_layout should do nothing if given None (11041)
- Add new transpiler exception class for too many qubits (11241)
- Singletonized `Measure` and `Reset` instructions (11170)
- Improved Documentation and Error-Signaling of VF2PostLayout (11090)
- Update and expand DAGDependency drawer (11103)
- List support for coupling map in pass manager (11063)
- Add disable_validation option to SymbolicPulse (11029)
- Track runtime variables in control-flow builders (10977)
Changed
- Replace `qiskit` metapackage with `qiskit-terra` (11271)
- Update platform support and require symengine (10902)
Removed
- Remove legacy qasm2 parser (11308)
- Remove leftover algorithm/opflow utils (11324)
- Remove alg_globals and validation (11252)
- Remove deprecated `opflow` module, `QuantumInstance` and related `utils` (11111)
- Remove __qiskit_version__ (deprecated in Qiskit Terra 0.25) (11305)
- Remove deprecated `IntegerComparator.num_ancilla_qubits` (11306)
- Fixed issue 11143 by removing deprecated code (11159)
- removed the deprecated code since `0.23` (`qiskit.visualization.pulse`) (11213)
- Remove the discrete pulse library (11277)
- Remove deprecated ``qiskit.algorithms`` module (11086)
- Remove namespace packaging hooks (11223)
- Expire deprecation on `qargs=None` in DAG appends (11190)
Fixed
- Don't substitute ideal gates in target with Optimize1qGatesDecomposition (11351)
- Update `Instruction.condition_bits` for runtime classical expressions (11325)
- Avoid routing 2q barriers in SabreSwap (11295)
- Fix backend_util.py and test cases to support Aer 0.13 (11172)
- Fix issue with ScheduleBlock qpy serialization and use_symengine (11261)
- Allow correct retrieval of circuit with initialize instruction from qpy file (11206)
- Fix `QuantumCircuit.barrier` argument conversion (11272)
- Do not ignore global phases when comparing unitary gates (11247)
- Fix pickling of conditioned custom gates from OpenQASM 2 import (11175)
- Fix `Channel.__hash__` in multiprocessing contexts (11251)
- Speed up InverseCancellation when there's nothing to cancel (11211)
- Allow barriers in overlap circuit inputs (11179)
- Removed 2pi wrapping for global phase parameter (10631)
- Fix circuit drawer returning qubit[register] names for input (11096)
- Fix build ordering of `BlueprintCircuit._append` (11181)
- Collect classical registers using a set (10496) (10505)
- Fix lack of alternative for `Optimizer` in `AQC` (11099)
- Emit a descriptive error when the QPY version is too new (11074)
- Plot State City Visualization Fixes (10590)
- Fix Barrier broadcast arguments (11113)
- Fix calling backend.name() for backendV2 (11065)
- Fix Sabre extended set population order (10651)