Qiskit/qiskit: Qiskit 2.3.0
Abstract
Changelog Deprecated Deprecate unsafe legacy format in Solovay Kitaev (#15360) Deprecate annotated=None in control methods (#15356) Added Add ways to retrieve operations from the QkTarget (#15283) Add Statevector.from_circuit to mirror Operator.from_circuit (#14981) Add PauliLindbladMap.parity_sample method (#15335) Support simple IfElseOp conditionals in OpenQASM 2 export (#14556) Add qk_dag_compose to the C API (#15329) Add ways to iterate over the Target in C. (#15208) Added Reverse topology iterator in DAG (#15060) Using Ross-Selinger in Qiskit (#15270) Allow user-specified unitary synthesis methods for Clifford+T transpilation (#14952) Add the argument fallback_on_default to UnitarySynthesis (#15287) Add qk_transpile_stage_routing() to the C API (#15358) Add substitute_node_with_dag to c api (#15374) Add qk_transpile_stage_optimization() to the C API (#15295) Enable commutation checks among Pauli-based gates (#15359) Add qk_transpile_stage_translation() to the C API (#15293) Add method wrappers for circuit and DAG converters (#15043) Add DAG copy-empty-like to the C API (#15320) Add qk_transpile_stage_layout() to the C API (#15241) Add SolovayKitaev as part of the default unitary synthesis plugin (#15285) Unified commutative optimization (#15047) Add instruction_supported to QkTarget. (#14566) Converting RX/RY/RZ rotations to {Clifford,T,Tdg} (#15321) Add QkDag instruction appliers and getter to C API (#15313) Add qk_dag_successors and qk_dag_predecessors to the C API (#15346) Expose both forms of VF2 layout passes in the C API (#14864) Add qk_circuit_to_dag and qk_dag_to_circuit to the C API (#15247) Adding qk_dag_topological_op_nodes to C API (#15297) Add qk_transpile_stage_init() to the C API (#15207) Port VF2PostLayout to Rust (#14863) Add UnitaryGate handling to QkDag C API (#15363) Add no-overhead ParameterExpression.num_parameters attribute (#15354) Split VF2 call_limit to before and after first layout (#14862) Extend LitinskiTransformation pass to handle measurements (#15217) Create PauliProductMeasurement instruction (#15126) Add DAG typed node support to C API. (#15206) Optimize the OptimizeCliffordT transpiler pass. (#14996) Expose Neighbors in the C API (#15236) Encapsulate VF2 configuration and return types (#14861) Add Clifford prepend gates internal methods to improve Clifford.dot (#15166) Add QkDag with registers to the C API. (#15200) Improve performance of quantum_info predicates (#15118) Add quantum volume generator function to C API (#15037) Add QkParam to the C API (#14837) Rust Implementation for using SparseObservable in sampled_expectation_value (#14516) Unbias directionality in VF2 priority queue (#14859) Handle VF2 coupling-map shuffling in Rust (#14860) Use QSD from rust in default unitary synthesis plugin (#15003) Make VF2 fully generic over index types and semantics (#14858) Use on-the-fly scoring in VF2Layout (#14857) Rust Shannon Decomposition (#14797) Changed Move preferred location of WrapAngles default registry (#15101) Drop support for Python 3.9 (#15371) adding name to qktarget (#15334) Cleanup of circuit library control methods (#15209) Swap to setuptools>=77.0 licence specification (#15128) Drop macOS x86_64 to tier 2 (#15041) Lower limits on VF2PostLayout in exact mode (#15068) Fixed Represent non-fixed params as NaN for QkTargetOp (#15463) (#15525) Fix param extraction for arrays with a single element (backport #15436) (#15522) QPY serialization of SparseObservable (#15263) Fix timeline drawer for gates without unitary in target (#15421) Stop using a parallel sort in disjoint utils (#15410) Bug fix for Clifford+T transpilation: passing incorrect argument to generate_unroll_3q (#15401) fix: preserve identity 'I' characters in PauliEvolutionGate labels (#15173) Fix operator @ quantumstate multiplication (#14963) Fix text drawer layering for classical wires (#15262) Pauli.evolve() recognize common rotations by (n*pi/2) as Clifford gates (#15289) Unitary synthesis bug fix (#15286) Change the rust structure of expr.Value (#15272) Fix reuse of ConsolidateBlocks instances (#15258) Fix qpy.dump failure with gzip write streams in QPY v16 (backward seek unsupported) (#15158) Raise exception not panic on bad ConsolidateBlocks input (#15110) Fix schedule analysis passes with empty circuits (#15147) Fix qubit mapping in ConsolidateBlocks control-flow blocks (#15083) Fixing inverse methods for MCPhase and MCU1 gates (#15181) Fix textdrawer for controlflow with different regs (#15155) Deepcopy BoxOp bodies when copying circuits (#14918) Fix incorrect mapping of ControlFlow block qargs in BasisTranslator (#15143) Check target gates are parameterized in optimize1qgatesdecomposition (#15131) Avoid panics in Optimize1qGatesDecomposition (#15117) Fix passmanager to preserve falsy pass outputs instead of reverting to input (#14943) Fix pickling of SabreSwap (#15074) Fix edge-order non-determinism when adding DAG nodes (#15040) Fix SparsePauliOp.is_unitary() to respect input tolerance values (#14676) Preserve registers in output TranspileLayout (#15024) (#15025) Preserve registers in output TranspileLayout (#15024) Fix variable remapping of Delay expressions in QuantumCircuit.compose (#15020) (#15023) Fix variable remapping of Delay expressions in QuantumCircuit.compose (#15020) fix: Statevector.to_dict(decimals= 3) does not round results and ignores the decimals keyword (#12113) Fix VF2PostLayout with uncoupled qubits in strict_direction=True (#14998) (#15001) Fix VF2PostLayout with uncoupled qubits in strict_direction=True (#14998)
Publication details
- Journal / source
- Zenodo (CERN European Organization for Nuclear Research)
- Publication date
- 8 January 2026