Skip to content

Releases: Qiskit/qiskit

Qiskit 0.45.2

18 Jan 21:07
0ab44e3
Compare
Choose a tag to compare

Changelog

Fixed

  • Fix qpy support for Cliffords (#11495) (#11582)
  • Fix a bug of missing pulse library entry in PulseQobj parsing (backport #11397) (#11573)
  • Fix broadcasting of QuantumCircuit.delay (#11447) (#11523)
  • Fix global-phase of copied BlueprintCircuits (#11456) (#11485)
  • Fix text overwriting end of box for empty default case in mpl drawer (#11366) (#11482)
  • Fix a bug is StabilizerState repr (#11368) (#11416)
  • Fixed bug in OptimizeSwapBeforeMeasure (#11413) (#11415)
  • Don't substitute ideal gates in target with Optimize1qGatesDecomposition (#11351) (#11359)

Qiskit 1.0.0b1

01 Dec 21:44
1.0.0b1
fa31085
Compare
Choose a tag to compare
Qiskit 1.0.0b1 Pre-release
Pre-release

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)

Qiskit 0.45.1

29 Nov 17:00
0.45.1
58f8d24
Compare
Choose a tag to compare

Changelog

Added

Fixed

  • Update Instruction.condition_bits for runtime classical expressions (#11325) (#11328)
  • Fix backend_util.py and test cases to support Aer 0.13 (#11172) (#11283)
  • Fix issue with ScheduleBlock qpy serialization and use_symengine (#11261) (#11275)
  • Allow correct retrieval of circuit with initialize instruction from qpy file (#11206) (#11274)
  • Fix QuantumCircuit.barrier argument conversion (#11272) (#11273)
  • Fix pickling of conditioned custom gates from OpenQASM 2 import (#11175) (#11258)
  • Fix Channel.__hash__ in multiprocessing contexts (#11251) (#11255)
  • Allow barriers in overlap circuit inputs (#11179) (#11216)
  • Fix circuit drawer returning qubit[register] names for input (#11096) (#11199)

Qiskit 0.45.0

03 Nov 13:08
0.45.0
33ed163
Compare
Choose a tag to compare

Release notes: https://qiskit.org/documentation/release_notes.html#relnotes-0-45-0

Changelog

Deprecated

  • Pass manager refactoring: cleanup internals (#10127)
  • Deprecate passing None to DAGCircuit appenders (#10752)
  • Deprecate Unroller pass (#10607)
  • Fix deprecation warning of unscheduled circuits in timeline drawer (#10851)
  • Deprecation of algorithm utils (algorithm_globals and validation) (#10905)
  • Deprecate bind_parameters in favor of assign_parameters (#10792)
  • Move OpenQASM 2 exporter to qiskit.qasm2 (#10533)
  • Deprecate qiskit.extensions (#10725)
  • Deprecate duplicate circuit gate method (#10797)

Added

  • Merging UnrollCustomDefinitions into HighLevelSynthesis as a single pass (#10965)
  • Add UnitaryOverlap to the circuit library (#10734)
  • schedule() considers instruction map (#10988)
  • Pass manager refactoring: cleanup internals (#10127)
  • Add display of expressions to circuit drawers (#10869)
  • Singleton parameterless controlled gates (#10898)
  • Starting layout analysis pass for sabre (#10829)
  • Rewrite singleton handling including SingletonInstruction (#11014)
  • Annotated operations (#9846)
  • Add apply_layout method to SparsePauliOp (#10947)
  • Fix hash of Parameter and ParameterExpression (#10875)
  • Fix deprecated behaviour in timeline drawer (#10846)
  • Improve the ergonomics of the TranspileLayout class (#10835)
  • Add check_input option to UnitaryGate (#10660)
  • Fix MergeAdjacentBarriers to scale with number of barriers (#10900)
  • Add use_symengine option to qpy.dump (#10820)
  • Update plot_gate_map() family to leverage graphviz for visualization (#10208)
  • #10360 New sign feature in parameterexpression.py (#10571)
  • adding an option to CouplingMap.reduce to allow disconnected coupling maps (#10863)
  • Use singletons for standard library unparameterized, non-controlled gates (#10314)
  • Optimise QuantumCircuit.assign_parameters for single-parameter binding (#10548)
  • Add fast path to Parameter.assign (#10549)
  • Add option to SabreLayout to specify starting layouts (#10721)
  • Allow empty list default initialization for SparsePauliOp (#10765)
  • Add fast-path construction to DAGCircuit methods (#10753)
  • Use BasisTranslator for unroll 3q or more (#10776)
  • Move OpenQASM 2 exporter to qiskit.qasm2 (#10533)
  • Add display of internal circuits for ControlFlowOps to text drawer (#10414)
  • Optimization stage as a plugin. (#10581)
  • constructing cliffords from linear functions and permutation gates (#10423)
  • Adding coupling-map and target to HighLevelSynthesis (#10477)
  • Add draw method to Operator class (#10271)
  • Add tests of Expr support through SabreSwap (#10511)
  • Add full Expr support to StochasticSwap (#10506)
  • limiting matrix-based commutativity check (#10495)
  • Revert "Revert "Pass manager refactoring: add passmanager module (#10124)" (#10454)" (#10474)
  • Add IGate rules to standard equivalence library (#7146)
  • Add NormalizeRXAngle and RXCalibrationBuilder passes (#10634)
  • Preparations to update the default MPL drawer style to "iqx" (#10950)

Changed

  • Pass manager refactoring: cleanup internals (#10127)
  • Deprecate Unroller pass (#10607)
  • Singleton parameterless controlled gates (#10898)
  • Pin Numpy < 2 in requirements (#10893)
  • Update plot_gate_map() family to leverage graphviz for visualization (#10208)
  • Use singletons for standard library unparameterized, non-controlled gates (#10314)
  • Adding h, p and u to basic aer (#10673)
  • qiskit-terra == qiskit, in version libraries (#10425)
  • Keep resets at beginning of circuits (#10591)
  • Migrate init stage to plugins (#10689)
  • Migrate layout stage to plugins (#10622)
  • Cleaning up U3 in the unitary extension (#10597)
  • Update minimum Rust version to 1.64 (#10541)
  • Revert "Revert "Pass manager refactoring: add passmanager module (#10124)" (#10454)" (#10474)

Removed

  • Removed code deprecated in 0.22 [transpiler and providers] (#10872)
  • Removed code deprecated in qiskit-terra 0.21, released on June 2022 (#10754)
  • removed deprecated PauliTable, StabilizerTable and tests (#10815)
  • Remove code deprecated in 0.15 (#10779)
  • Remove deprecated x and z arguments to Pauli (#10717)
  • Removed deprecated functions in qiskit.scheduler.utils (#10879)
  • remove qiskit.utils.deprecation.deprecate_function, deprecated in terra 0.22 (#10881)
  • Remove quantum_info deprecated code in 0.22 (#10861)
  • Remove deprecated code in 0.19 (#10791)
  • Removed code deprecated in 0.20 (#10767)
  • Remove deprecated BIPMapping pass (#10526)
  • Removal of deprecated property num_ancilla_qubits (#10793)

Fixed

  • Fix input normalisation of transpile(initial_layout=...) (#11031)
  • Add base-gate callback to CUGate.params return (#11032)
  • Fix build filter coupling map with mix ideal/physical targets (#11009)
  • schedule() considers instruction map (#10988)
  • Fix commutation analysis to group gates into blocks of pairwise commuting gates (#10618)
  • NoiseAdaptiveLayout to consider inconsistencies in backend (#10859)
  • Use only discrete-basis translations in GateDirection (#10786)
  • Fix qpy for controlled UnitaryGate (#10809)
  • Add global-phase support to control-flow builders (#10800)
  • BackendEstimator support BackendV2 without coupling_map (#10956)
  • Fix hash of Parameter and ParameterExpression (#10875)
  • Fix IQX color schemes (#10941)
  • Support dynamic circuit in BackendEstimator (#9700)
  • Avoid useless deepcopy of target with custom pulse gates in transpile (#10973)
  • Fix bug in qs_decomposition (#10850)
  • Fix issues with ControlFlowOp displays (#10842)
  • Fix Clifford.from_operator to fail with non-Clifford diagonal operators (#10904)
  • Support passing empty lists to Pauli delete method (#10849)
  • fix random statevector distribution (#10866)
  • Allow dynamical decoupling pass to work on circuits with pulse gates (#10834)
  • Fix GateDirection pass (#10825)
  • Fix qpy for multiple controlled parametrized gates (#10758)
  • Track Sabre decay heuristic on physical qubits (#10756)
  • Handle final comments with no terminating newline in OpenQASM 2 (#10773)
  • Support new-style Bit in Pauli convertor from QuantumCircuit (#10757)
  • Add validation to Sampler if there are no measurements (#10642)
  • Fix performance of Sabre rust<->Python boundary (#10652)
  • Fix classical-synthesis label ordering with registerless=False (#9536)
  • Reject bad values in SparsePauliOp.paulis setter (#10437)
  • Fixing the tools for plotting Pauli vec (#10619)
  • Fix open circles and visual circuit tests to .9999 (#10580)
  • Fix multiple nested custom controlled gates in QPY (#10537)
  • Implemented a type check in copy method of QuantumCircuit class (#10521)
  • Force decimal points in OpenQASM 2 floats (#10532)
  • limiting matrix-based commutativity check (#10495)
  • Fix final_layout when VF2PostLayout finds a better layout (#10466)
  • Fix empty-barrier handling in OpenQASM 2 (#10469)
  • Fix Pulse channel index validation (#10476)
  • raise an exception with a custom gate with clbits or no qubits (#10438)

Qiskit 0.25.3

25 Oct 19:17
0.25.3
8fe47fb
Compare
Choose a tag to compare

Release notes: https://qiskit.org/documentation/release_notes.html#qiskit-0-44-3

Changelog

Fixed

  • Fix input normalisation of transpile(initial_layout=...) (backport #11031) (#11058)
  • Fix calling backend.name() for backendV2 (#11065) (#11076) (#11092)
  • Fix build filter coupling map with mix ideal/physical targets (#11009) (#11049)
  • Emit a descriptive error when the QPY version is too new (#11094)
  • BackendEstimator support BackendV2 without coupling_map (#10956) (#11006)
  • Support dynamic circuit in BackendEstimator (#9700) (#10984)
  • Avoid useless deepcopy of target with custom pulse gates in transpile (#10973) (#10978)
  • Fix bug in qs_decomposition (#10850) (#10957)

Qiskit 0.45.0rc1

19 Oct 21:38
0.45.0rc1
fd5399b
Compare
Choose a tag to compare
Qiskit 0.45.0rc1 Pre-release
Pre-release

Changelog

Deprecated

  • Pass manager refactoring: cleanup internals (#10127)
  • Deprecate passing None to DAGCircuit appenders (#10752)
  • Deprecate Unroller pass (#10607)
  • Fix deprecation warning of unscheduled circuits in timeline drawer (#10851)
  • Deprecation of algorithm utils (algorithm_globals and validation) (#10905)
  • Deprecate bind_parameters in favor of assign_parameters (#10792)
  • Move OpenQASM 2 exporter to qiskit.qasm2 (#10533)
  • Deprecate qiskit.extensions (#10725)
  • Deprecate duplicate circuit gate method (#10797)

Added

  • Merging UnrollCustomDefinitions into HighLevelSynthesis as a single pass (#10965)
  • Add UnitaryOverlap to the circuit library (#10734)
  • schedule() considers instruction map (#10988)
  • Pass manager refactoring: cleanup internals (#10127)
  • Add display of expressions to circuit drawers (#10869)
  • Singleton parameterless controlled gates (#10898)
  • Starting layout analysis pass for sabre (#10829)
  • Rewrite singleton handling including SingletonInstruction (#11014)
  • Annotated operations (#9846)
  • Add apply_layout method to SparsePauliOp (#10947)
  • Fix hash of Parameter and ParameterExpression (#10875)
  • Fix deprecated behaviour in timeline drawer (#10846)
  • Improve the ergonomics of the TranspileLayout class (#10835)
  • Add check_input option to UnitaryGate (#10660)
  • Fix MergeAdjacentBarriers to scale with number of barriers (#10900)
  • Add use_symengine option to qpy.dump (#10820)
  • Update plot_gate_map() family to leverage graphviz for visualization (#10208)
  • #10360 New sign feature in parameterexpression.py (#10571)
  • adding an option to CouplingMap.reduce to allow disconnected coupling maps (#10863)
  • Use singletons for standard library unparameterized, non-controlled gates (#10314)
  • Optimise QuantumCircuit.assign_parameters for single-parameter binding (#10548)
  • Add fast path to Parameter.assign (#10549)
  • Add option to SabreLayout to specify starting layouts (#10721)
  • Allow empty list default initialization for SparsePauliOp (#10765)
  • Add fast-path construction to DAGCircuit methods (#10753)
  • Use BasisTranslator for unroll 3q or more (#10776)
  • Move OpenQASM 2 exporter to qiskit.qasm2 (#10533)
  • Add display of internal circuits for ControlFlowOps to text drawer (#10414)
  • Optimization stage as a plugin. (#10581)
  • constructing cliffords from linear functions and permutation gates (#10423)
  • Adding coupling-map and target to HighLevelSynthesis (#10477)
  • Add draw method to Operator class (#10271)
  • Add tests of Expr support through SabreSwap (#10511)
  • Add full Expr support to StochasticSwap (#10506)
  • limiting matrix-based commutativity check (#10495)
  • Revert "Revert "Pass manager refactoring: add passmanager module (#10124)" (#10454)" (#10474)
  • Add IGate rules to standard equivalence library (#7146)
  • Add NormalizeRXAngle and RXCalibrationBuilder passes (#10634)
  • Preparations to update the default MPL drawer style to "iqx" (#10950)

Changed

  • Pass manager refactoring: cleanup internals (#10127)
  • Deprecate Unroller pass (#10607)
  • Singleton parameterless controlled gates (#10898)
  • Pin Numpy < 2 in requirements (#10893)
  • Update plot_gate_map() family to leverage graphviz for visualization (#10208)
  • Use singletons for standard library unparameterized, non-controlled gates (#10314)
  • Adding h, p and u to basic aer (#10673)
  • qiskit-terra == qiskit, in version libraries (#10425)
  • Keep resets at beginning of circuits (#10591)
  • Migrate init stage to plugins (#10689)
  • Migrate layout stage to plugins (#10622)
  • Cleaning up U3 in the unitary extension (#10597)
  • Update minimum Rust version to 1.64 (#10541)
  • Revert "Revert "Pass manager refactoring: add passmanager module (#10124)" (#10454)" (#10474)

Removed

  • Removed code deprecated in 0.22 [transpiler and providers] (#10872)
  • Removed code deprecated in qiskit-terra 0.21, released on June 2022 (#10754)
  • removed deprecated PauliTable, StabilizerTable and tests (#10815)
  • Remove code deprecated in 0.15 (#10779)
  • Remove deprecated x and z arguments to Pauli (#10717)
  • Removed deprecated functions in qiskit.scheduler.utils (#10879)
  • remove qiskit.utils.deprecation.deprecate_function, deprecated in terra 0.22 (#10881)
  • Remove quantum_info deprecated code in 0.22 (#10861)
  • Remove deprecated code in 0.19 (#10791)
  • Removed code deprecated in 0.20 (#10767)
  • Remove deprecated BIPMapping pass (#10526)
  • Removal of deprecated property num_ancilla_qubits (#10793)

Fixed

  • Fix input normalisation of transpile(initial_layout=...) (#11031)
  • Add base-gate callback to CUGate.params return (#11032)
  • Fix build filter coupling map with mix ideal/physical targets (#11009)
  • schedule() considers instruction map (#10988)
  • Fix commutation analysis to group gates into blocks of pairwise commuting gates (#10618)
  • NoiseAdaptiveLayout to consider inconsistencies in backend (#10859)
  • Use only discrete-basis translations in GateDirection (#10786)
  • Fix qpy for controlled UnitaryGate (#10809)
  • Add global-phase support to control-flow builders (#10800)
  • BackendEstimator support BackendV2 without coupling_map (#10956)
  • Fix hash of Parameter and ParameterExpression (#10875)
  • Fix IQX color schemes (#10941)
  • Support dynamic circuit in BackendEstimator (#9700)
  • Avoid useless deepcopy of target with custom pulse gates in transpile (#10973)
  • Fix bug in qs_decomposition (#10850)
  • Fix issues with ControlFlowOp displays (#10842)
  • Fix Clifford.from_operator to fail with non-Clifford diagonal operators (#10904)
  • Support passing empty lists to Pauli delete method (#10849)
  • fix random statevector distribution (#10866)
  • Allow dynamical decoupling pass to work on circuits with pulse gates (#10834)
  • Fix GateDirection pass (#10825)
  • Fix qpy for multiple controlled parametrized gates (#10758)
  • Track Sabre decay heuristic on physical qubits (#10756)
  • Handle final comments with no terminating newline in OpenQASM 2 (#10773)
  • Support new-style Bit in Pauli convertor from QuantumCircuit (#10757)
  • Add validation to Sampler if there are no measurements (#10642)
  • Fix performance of Sabre rust<->Python boundary (#10652)
  • Fix classical-synthesis label ordering with registerless=False (#9536)
  • Reject bad values in SparsePauliOp.paulis setter (#10437)
  • Fixing the tools for plotting Pauli vec (#10619)
  • Fix open circles and visual circuit tests to .9999 (#10580)
  • Fix multiple nested custom controlled gates in QPY (#10537)
  • Implemented a type check in copy method of QuantumCircuit class (#10521)
  • Force decimal points in OpenQASM 2 floats (#10532)
  • limiting matrix-based commutativity check (#10495)
  • Fix final_layout when VF2PostLayout finds a better layout (#10466)
  • Fix empty-barrier handling in OpenQASM 2 (#10469)
  • Fix Pulse channel index validation (#10476)
  • raise an exception with a custom gate with clbits or no qubits (#10438)

Qiskit 0.25.2.1

04 Oct 13:07
0.25.2.1
10e00c9
Compare
Choose a tag to compare

Changelog

This is a post release of 0.25.2 the library source code is identical
between this release and 0.25.2, it fixes some packaging issues that
occurred during the 0.25.2 release.

Qiskit 0.25.2

02 Oct 19:06
cfc697b
Compare
Choose a tag to compare

Changelog

Fixed

  • Fix issues with ControlFlowOp displays (#10842) (#10917)
  • Fix Clifford.from_operator to fail with non-Clifford diagonal operators (#10904) (#10910)
  • Support passing empty lists to Pauli delete method (#10849) (#10896)
  • Allow dynamical decoupling pass to work on circuits with pulse gates (#10834) (#10848)
  • qreg_creg_descending calls deprecated Bit.index (#10843) (#10845)
  • Fix GateDirection pass (#10825) (#10840)
  • Fix qpy for multiple controlled parametrized gates (#10758) (#10795)
  • Handle final comments with no terminating newline in OpenQASM 2 (#10773) (#10778)
  • Support new-style Bit in Pauli convertor from QuantumCircuit (#10757) (#10760)
  • Add validation to Sampler if there are no measurements (#10642) (#10722)

Qiskit Terra 0.25.1

17 Aug 21:27
0.25.1
39b0cb8
Compare
Choose a tag to compare

Release notes: https://qiskit.org/documentation/release_notes.html#terra-0-25-1

Changelog

Fixed

  • Fix performance of Sabre rust<->Python boundary (#10652) (#10659)
  • Fix classical-synthesis label ordering with registerless=False (#9536) (#10647)
  • Reject bad values in SparsePauliOp.paulis setter (#10437) (#10643)
  • Fixing the tools for plotting Pauli vec (#10619) (#10637)
  • Fix open circles and visual circuit tests to .9999 (#10580) (#10609)
  • Force decimal points in OpenQASM 2 floats (#10532) (#10536)

Qiskit Terra 0.25.0

27 Jul 21:41
0.25.0
fa0491b
Compare
Choose a tag to compare

Release notes: https://qiskit.org/documentation/release_notes.html#terra-0-25-0

Changelog

Deprecated

  • Add deprecation warning to algs module (#10406)
  • qiskit_version deprecation (#10242)
  • Remove method qasm from Instruction and all of its subclasses (#10399)
  • Deprecate namespace packaging hooks (#10322)
  • Deprecate pulse Call instruction (#10247)
  • Deprecate get_vf2_call_limit in preset_passmanagers (#10065)
  • Deprecate circuit-library Jupyter magic (#9940)

Added

  • Add full Expr support to StochasticSwap (#10506) (#10510)
  • Allow circuits w/ control flow in O2 and O3 (#10372)
  • Optimize ConsolidateBlocks pass (#10365)
  • Add Expr support to OpenQASM 3 exporter (#10408)
  • Support control flow in ConsolidateBlocks (#10355)
  • Add display of internal circuits for ControlFlowOps to mpl circuit drawer (#10207)
  • Add flatten option to the NLocal family (#10269)
  • Improve parameter-binding performance of large instructions (#10284)
  • Add block collection options split_layers and collect_from_back (#10254)
  • Add in qpy the support for Discriminator and Kernel (#10327)
  • Add Expr support to DAGCircuit.substitute_node_with_dag (#10381)
  • Add Expr support in DAGCircuit.substitute_node (#10382)
  • Add a new argument concurrent_measurements to target class (#10258)
  • Add Expr support to DAGCircuit.replace_block_with_node (#10383)
  • Add find_bit method to DAGCircuit to get mapping of bits to positional index (#10128)
  • Add Expr support to QPY for conditions and targets (#10392)
  • Add Expr support to the control-flow builders (#10400)
  • Add Expr support to DAGCircuit.compose (#10377)
  • Add Expr support to QuantumCircuit.compose (#10375)
  • Add separable_circuits method to DAGCircuit class (#9471)
  • Add support for semantic equality checking of Exprs in DAGCircuit (#10367)
  • Refactor output of OpenQASM 3 exporter to use fewer aliases (#10249)
  • DAGCircuit: Add get_causal_cone method (#10325)
  • Add get_dt_from_backend func to the builder command (#10253)
  • Add Expr supprt to DAGCircuit simple constructors (#10362)
  • Linear function usability improvements (#10053)
  • Add Expr support to ControlFlowOp representation (#10358)
  • Add initial representation of classical expressions (#10332)
  • Relax wire_order restrictions in circuit visualization (#9893)
  • Adding depth-5n synthesis algorithm for -CZ-CX- circuits (#9932)
  • Add schmidt_decomposition function to quantum_info (#10104)
  • Adding the feature of calculating entanglement measures negativity (#10134)
  • Add HAS_PYGMENTS lazy tester (#9944)
  • Allow multiplication of SparsePauliOp and ParameterExpression (#10264)
  • Pass manager refactoring: add passmanager module (#10124)
  • Added classical_predecessors method (#9980)
  • Allow to normalize inputs on StatePreparation and Initialize (#7189)
  • Add more 1q and 2q Pauli rotation equivalences (#7407)
  • Add standard 1q Pauli equivalences to standard library (#10300)
  • add abs method to ParameterExpression (#9309)

Changed

  • Enable Sabre for control flow circuits at O1 (#10371)
  • Refactor output of OpenQASM 3 exporter to use fewer aliases (#10249)
  • Remove cyclic-definition handling from Clifford.from_circuit (#10441)
  • Use rustworkx version of token_swapper (#10001)
  • Use stable Python C API for building Rust extension (#10120)
  • Assign values directly to fully bound parameters in quantum circuits (#10183)
  • Switch QuantumCircuit.from_qasm_str and from_qasm_file to new parser (#9955)
  • Drop support for Python 3.7 (#10009)
  • Set max_trials for VF2Layout in preset pass managers. (#10054)

Removed

  • Remove list argument broadcasting and simplify transpile() (#10291)
  • Remove deprecated InstructionSet circuit_cregs argument (#10302)
  • Remove deprecations from mpl circuit drawer (#10020)

Fixed

  • Fix final_layout when VF2PostLayout finds a better layout (#10466) (#10493)
  • Fix empty-barrier handling in OpenQASM 2 (#10469) (#10491)
  • raise an exception with a custom gate with clbits or no qubits (#10438) (#10485)
  • Fix Pulse channel index validation (#10476) (#10486)
  • Fix UnassignedDurationError of update_from_instruction_schedule_map (#10447)
  • Add Expr support to OpenQASM 3 exporter (#10408)
  • Improve parameter-binding performance of large instructions (#10284)
  • Add Expr support in DAGCircuit.substitute_node (#10382)
  • Add Expr support to the control-flow builders (#10400)
  • fix 1q matrix bug in Quantum Shannon Decomposer (#10126)
  • Add mid-circuit measurement before conditional operation in random_circuit (#10401)
  • Fix inner qubit mapping in UnitarySynthesis pass. (#10405)
  • Fix plot legend don't show up when dataset start with zero (#10176)
  • Fix deepcopy for new-style Bit (#10411)
  • Fix DiagonalGate QPY serialisation (#10376)
  • Add support for QuantumCircuit.layout to qpy (#10148)
  • Fix CheckMap with control-flow builder nested conditionals (#10395)
  • Fix VQD's optimal_values (#10279)
  • Fix qasm export for gates with same name (#10286)
  • Fix deprecation warnings emitted by import qiskit.primitives (#10287)
  • Fix BasicSwap FakeRun Typo (#10274)
  • Improve casting and error message for ParameterExpression (#10244)
  • FullAncillaAllocation for backends witout a coupling map (#10240)
  • Fix the output macros.measure with backendV2 (#10135)
  • Fix QuantumCircuit.draw() not outputting pdf in latex mode (#10212)
  • Fix output of DensityMatrix.partial_transpose to match input dimensions (#10163)
  • Assign values directly to fully bound parameters in quantum circuits (#10183)
  • Fix unitary synthesis for parameterized basis gates in Target (#10090)
  • Fix PassManagerConfig.from_backend with BackendV1 and no CouplingMap (#10172)
  • Fix top-level switch statements in QuantumCircuit.compose (#10164)
  • Fixing BlockCollapser with Clbits (#9823)
  • Fix initial_layout in transpile with loose qubits (#10153)
  • Remove undefined variable (#10117)
  • Fix wrong relative phase of MCRZ (#9836)
  • Fix tweedledum runtime detection in BooleanExpression.from_dimacs_file (#10132)
  • define getstate and setstate for OneQubitGateErrorMap (#10092)
  • Add the qubit_coordinates_map for ibm_seattle (#10089)
  • Switch QuantumCircuit.from_qasm_str and from_qasm_file to new parser (#9955)
  • Fix interaction graph vf2 scoring to include 1q component (#10084)
  • Set max_trials for VF2Layout in preset pass managers. (#10054) (#10061)
  • Set max_trials for VF2Layout in preset pass managers. (#10054)
  • Remove recursion from ConstrainedReschedule pass (#10051) (#10057)
  • Remove recursion from ConstrainedReschedule pass (#10051)
  • Fix for unintended rounding in 'state_to_latex' latex output (#9300) (#10048)
  • Fix for unintended rounding in 'state_to_latex' latex output (#9300)
  • Fix delay padding to respect target's constraints (#10007) (#10038)
  • FIx 0q operation handling in Statevector (#10031) (#10039)
  • circuit: narrow the return type of QuantumCircuit.assign_parameters (#10037)
  • FIx 0q operation handling in Statevector (#10031)
  • Allow decomposing composite gates by name (#9170)
  • Fix delay padding to respect target's constraints (#10007)
  • Use backend_compat module's convert to target (#10016)