Skip to content

Releases: Qiskit/qiskit

Qiskit 1.1.2

09 Aug 14:11
1.1.2
a7e6f66
Compare
Choose a tag to compare

Changelog

Fixed

  • Fix dag visualization with Var wires (#12848) (#12923)
  • Fix parsing of huge OpenQASM 2 conditionals (#12774) (#12853)
  • Make BitArray.{slice_bits,slice_shots,__getitem__} raise IndexError when indices are not valid (backport #12755) (#12844)
  • Fix BitArray.from_counts/from_samples to not fail for input with only 0 outcome and num_bits=None (#12800) (#12821)
  • fix issue/12311 with fractional gate in basis (#12511) (#12813)
  • Add clifford gates to collect_cliffords (backport #12750) (#12763)
  • Fix C3SXGate to_matrix method (backport #12742) (#12745)
  • Fix replace_block_with_op on operations with wrong number of qubits (#12637) (#12700)
  • GenericBackendV2 should fail when the backend cannot allocate the basis gate because its size (#12653) (#12667)
  • Fix some bugs in loading Solovay Kitaev decompositions (#12579) (#12664)
  • Invalidate parameters cache on circuit copy (backport #12619) (#12621)

Qiskit 1.2.0rc1

01 Aug 16:58
1.2.0rc1
57bf058
Compare
Choose a tag to compare
Qiskit 1.2.0rc1 Pre-release
Pre-release

Changelog

Deprecated

  • Deprecate BackendV1 and qiskit.providers.models (backport #12629) (#12864)
  • Deprecate fake backends based on BackendV1 (backport #12660) (#12837)
  • fixes #9355 deprecate visualize_transition (#12287) (#12822)
  • Deprecate V1 Primitives and their utils (#12575)
  • Deprecate Qobj and assemble (#12649)
  • Deprecate accidentally public internal helper methods on QuantumCircuit (#12785)
  • Improve the performance of the ProductFormula synthesizers (#12724)
  • Add warning for bad justify input, in circuit_drawer (#12458)
  • Deprecate tuple-like access to CircuitInstruction (#12640)

Added

  • 'Peephole' optimization - or: collecting and optimizing two-qubit blocks - before routing (#12727) (#12881)
  • Avoid operator creation in transpiler (#12826) (#12875)
  • Port star_preroute to rust (backport #12761) (#12846)
  • Add config option to leverage all cores for sabre (#12780) (#12841)
  • Bitarray postselect (#12693) (#12836)
  • Add AnnotatedOperation.params and fix some control issues (#12752) (#12828)
  • Move generate_preset_pass_manager to a standalone file (#12762)
  • Update version of OpenQASM 3.0 standard library (#12387)
  • Port synth_permutation_depth_lnn_kms to Rust (#12746)
  • Rewrite OpenQASM 3 exporter symbol table (#12776)
  • Port synth_clifford_bm to Rust. (#12714)
  • Update MCX recursive synthesis method to reduce number of CX gates (#12772)
  • Barebone generic backend options (#12747)
  • Adding QFT gate to natively reason about Quantum Fourier Transforms (#11463)
  • Improve the performance of the ProductFormula synthesizers (#12724)
  • Improved MCXVChain with dirty auxiliary qubits (#9687)
  • Oxidize synth_cnot_count_full_pmh (#12588)
  • Add Uniform State Preparation (#12112)
  • Port synth_clifford_greedy to Rust (#12601)
  • Oxidize synth_permutation_acg (#12543)
  • improving quantum_causal_cone method in python (#12668)
  • binary matrices utils in rust (#12456)
  • Add infrastructure for gates, instruction, and operations in Rust (#12459)
  • Add option to user config to control idle_wires in circuit drawer (#12462)
  • [unitaryHACK] Controlling the Insertion of Multi-Qubit Gates in the Generation of Random Circuits #12059 (#12483)
  • Add pos for Parameter (#12496)
  • Update transpile() and generate_preset_pass_manager to convert loose input of constraints to a Target with Target.from_configuration() (#12185)
  • Add DenseLayout trial to SabreLayout (#12453)
  • add insert_barrier argument to UnitaryOverlap (#12321)
  • Add new method for single bitstring target when measuring stabilizerstate probabilities_dict (#12147)
  • Replace initialization method by Isometry in StatePreparation (#12178)

Changed

  • Update metadata of Primitives V2 (#12784) (#12857)
  • Change the default routing_method to sabre (#12806) (#12847)
  • Use rustworkx 0.15.0 features in DAGCircuit.remove_op_node (#12756)
  • Add infrastructure for gates, instruction, and operations in Rust (#12459)

Fixed

  • Fix parsing of huge OpenQASM 2 conditionals (#12774) (#12854)
  • Fix StatevectorSampler to raise an error if a circuit with c_if is passed (#12842) (#12851)
  • Make BitArray.{slice_bits,slice_shots,__getitem__} raise IndexError when indices are not valid (#12755) (#12845)
  • Add AnnotatedOperation.params and fix some control issues (#12752) (#12828)
  • Fix BitArray.from_counts/from_samples to not fail for input with only 0 outcome and num_bits=None (#12800) (#12820)
  • fix issue/12311 with fractional gate in basis (#12511)
  • Validate order kwarg in BitArray.from_bool_array() (#12686)
  • Rewrite OpenQASM 3 exporter symbol table (#12776)
  • Fixing and documenting how the Estimator calculates stds (#12670)
  • Add clifford gates to collect_cliffords (#12750)
  • Fix C3SXGate to_matrix method (#12742)
  • Oxidize synth_cnot_count_full_pmh (#12588)
  • Fix replace_block_with_op on operations with wrong number of qubits (#12637)
  • Enable the new efficient MCX decompose (#12628)
  • GenericBackendV2 should fail when the backend cannot allocate the basis gate because its size (#12653)
  • Fix some bugs in loading Solovay Kitaev decompositions (#12579)
  • Invalidate parameters cache on circuit copy (#12619)
  • Fix v2 pulse drawer (#12608)
  • Use hash of numeric value for bound parameter expressions (#12488)
  • Fix bugs with VF2Layout pass and Qiskit Aer 0.13 (#11585)
  • Fix QuantumCircuit.depth with zero-operands and Expr nodes (#12429)
  • Avoid exception in Target.has_calibration for instruction without properties (#12526)
  • Implement __array__ for qasm2._DefinedGate (#12119)
  • Fix a bug in isometry.rs (#12469)
  • Avoid lossing precision when scaling frequencies (#12392) (#12416)
  • Avoid lossing precision when scaling frequencies (#12392)
  • Fix unnecessary serialisation of PassManager in serial contexts (#12410) (#12413)
  • Fix unnecessary serialisation of PassManager in serial contexts (#12410)
  • Handle huge integers in OpenQASM 2 expression evaluator (#12140) (#12400)
  • Fix a corner case of SparsePauliOp.apply_layout (#12375) (#12402)
  • Fix a corner case of SparsePauliOp.apply_layout (#12375)
  • Handle huge integers in OpenQASM 2 expression evaluator (#12140)
  • Fix {Pauli,SparsePauliOp}.apply_layout to raise an error with negative or duplicate indices (#12385) (#12386)
  • Fix {Pauli,SparsePauliOp}.apply_layout to raise an error with negative or duplicate indices (#12385)
  • fix edge coloring bug in plot_coupling_map (#12369) (#12379)
  • Fix missing layout in Commuting2qGateRouter (#12137) (#12383)
  • Fix missing layout in Commuting2qGateRouter (#12137)
  • fix edge coloring bug in plot_coupling_map (#12369)

Qiskit 1.1.1

21 Jun 06:44
1.1.1
9092ee7
Compare
Choose a tag to compare

Changelog

Fixed

  • Fix a bug in isometry.rs (backport #12469) (#12471)
  • Implement __array__ for qasm2._DefinedGate (backport #12119) (#12523)
  • Avoid exception in Target.has_calibration for instruction without properties (backport #12526) (#12527)
  • Fix QuantumCircuit.depth with zero-operands and Expr nodes (backport #12429) (#12528)
  • Fix bugs with VF2Layout pass and Qiskit Aer 0.13 (backport #11585) (#12537)
  • Use hash of numeric value for bound parameter expressions (backport #12488) (#12548)
  • Do not retain and expose old elements of ParameterVector (backport #12561) (#12565)
  • Fix v2 pulse drawer (backport #12608) (#12614)

Qiskit 0.46.2

20 Jun 17:33
2b2be03
Compare
Choose a tag to compare

Changelog

Added

  • [0.46] Finalise support for Numpy 2.0 (#12189)

Fixed

  • Fix v2 pulse drawer (#12608) (#12613)
  • Fix bugs with VF2Layout pass and Qiskit Aer 0.13 (#11585) (#12536)
  • Fix unnecessary serialisation of PassManager in serial contexts (backport #12410) (#12500)
  • Fix Instruction.repeat with conditionals (#11940) (#12499)
  • Fix evolved operator ansatz (#11682) (#12479)
  • Avoid lossing precision when scaling frequencies (#12392) (#12480)
  • Handle huge integers in OpenQASM 2 expression evaluator (#12140) (#12401)
  • Default init plugin was not properly raising when called with an invalid optimization level (#12170) (#12175)
  • Fix mpl circuit drawer with fold=-1 hanging with ControlFlow ops (backport #12016) (#12036)

Qiskit 1.1.0

16 May 20:20
1.1.0
7d29dc1
Compare
Choose a tag to compare

Release notes: https://docs.quantum.ibm.com/api/qiskit/release-notes/1.1#110

Changelog

Added

  • Conjugate reduction in optimize annotated pass (#11811)
  • Add star to linear pre-routing pass (#11387)
  • Add enhancement to BitArray (#12158)
  • Add ElidePermutations transpiler pass (#9523)
  • Support standalone Var throughout transpiler (#12322)
  • Add indexing and bitshift expressions (#12310)
  • Support standalone Vars in OQ3 exporter (#12308)
  • Add minimal support for standalone Var to visualisers (#12307)
  • Support Var in circuit-substitution methods (#12215)
  • Add representation of expr.Var to DAGCircuit (#12204)
  • Promote arm64 macOS to tier 1 (#12102)
  • Support standalone expr.Var in QPY (#11651)
  • Extend the basis gates of BasicSimulator (#12186)
  • Add reverse permutation for LNN connectivity (#12181)
  • Add Rust-based SparsePauliOp.to_matrix and Miri tests (#11388)
  • Finalise support for Numpy 2.0 (#11999)
  • Rename show_idle and show_barrier to idle_wires and plot_barriers (#11878)
  • Add fast-path construction to NLocal (#12099)
  • Add mapping-like features to data_bin (#12129)
  • Expose plugin options (#12107)
  • Update gate dictionary in two_local.py (#12009)
  • Add .apply_layout()method to Pauli class (#12066)
  • Improve performance and randomness of QuantumVolume (#12097)
  • Add copy keyword argument to QuantumCircuit.append (#12098)
  • Added the ctrl_state param to the mcp() function & MCPhaseGate() class (#12094)
  • Oxidize two qubit basis decomposer (#12010)
  • Added the ctrl_state parameter to mcx() function (#12050)
  • Compose multiple final_layout attributes in routing (#11399)
  • Fix custom constraints in transpile with BackendV2 (#12042)
  • Add BackendSamplerV2 (#11928)
  • Add BackendEstimatorV2 (#11931)
  • Oxidize TwoQubitWeylDecomposition (#11946)
  • Adapt commutation checker to abstract circuits (#11948)
  • Expose PauliList.noncommutation_graph in public API (#11795)
  • Add ElidePermutations pass to optimization level 3 (#12111)
  • replace CXCancellation with InverseCancellation (#11937)
  • Add support for returning a DAGCircuit to TwoQubitBasisDecomposer (#12109)
  • Assignment of parameters in pulse Schedule/ScheduleBlock doable through parameter name (#12088)
  • Add SamplerPubResult (#12143)
  • HLSConfig option to run multiple plugins and to choose the best decomposition (#12108)
  • Update transpile() to convert BackendV1 inputs to BackendV2 with BackendV2Converter (#11996)
  • Add commutative cancellation to preset passmanagers level 2 and 3 (#11929)
  • Add RemoveFinalReset pass (#11266)
  • ParameterVector support for pulse parameter assignment (#12045)
  • Adding annotated argument to power methods (#12101)

Deprecated

  • Deprecating Provider ABC, as abstraction is not very useful (#12145)
  • pending deprecations from 0.21 (#11902)
  • Deprecate Python 3.8 support (#12103)

Changed

  • Increase heuristic effort for optimization level 2 (#12149)
  • Improve performance and randomness of QuantumVolume (#12097)

Fixed

  • Rework handling of instruction durations in preset pass managers (#12183)
  • Improve performance of BackendSamplerV2 and EstimatorV2 (#12291)
  • Treat Reset like Measure in ConstrainedReschedule (#11756)
  • Support ECR gates in Pauli.evolve(QuantumCircuit) (#12095)
  • Default init plugin was not properly raising when called with an invalid optimization level (#12170)
  • Add copy keyword argument to QuantumCircuit.append (#12098)
  • Update the code for decomposing MCX and MCPhase gates, so that the number of CX gates won't grow exponentially (#11993)
  • Fix custom constraints in transpile with BackendV2 (#12042)
  • fix typo in soft_compare (#12054)
  • Fix incorrect signage in qDRIFT synthesis (#11321)
  • Fix mpl circuit drawer with fold=-1 hanging with ControlFlow ops (#12016)
  • Fix build() default alignment (#12029)
  • Fix pulse parameter value formatter bug (#11972)
  • Fix evolved operator ansatz (#11682)
  • Remove old graph structure during EquivalenceLibrary.set_entry (#11959)
  • Fix Instruction.repeat with conditionals (#11940)
  • Fix performance issue in parsing bit indices in QPY (#11944)
  • Bug Fix for missing qubit property (#11880)
  • Fix improper handling of BindingsArray in SamplerPub.coerce() (#11913)
  • Fix transpilation of control flow to no hardware (#11907)
  • Fixing bug in qcstyle that modified custom style dict (#11874)
  • Fix handling of control flow instructions in convert_to_target() (#11877)
  • Fix improper handling of BindingsArray in EstimatorPub.coerce (#11871)
  • Fix Observables.coerce() for 0-d inputs (#11868)
  • Ensure that Parameters compare equal when they have the same hash (#11652)
  • Fix an unchecked condition in InverseCancellation (#11834)
  • Fix PropertySet re-use in BasePassManager.run (#11787)
  • Fix custom pulse instruction conversion to Qobj. (#11829)
  • Fix scheduling units (#11782)
  • bug loading MPL style from the configuration (#11750)
  • Fix qpy.dump()'s use_symengine when passed a truthy object (#11730)
  • Update Commutation Checker to Support UTF-8 Encoded Gate Names (#12061)
  • Fixing Operator.from_circuit for circuits with final layouts and a non-trivial initial layout (#12057)
  • Avoid lossing precision when scaling frequencies (#12392)
  • Fix unnecessary serialisation of PassManager in serial contexts (#12410)
  • Handle huge integers in OpenQASM 2 expression evaluator (#12140)
  • Fix a corner case of SparsePauliOp.apply_layout (#12375)
  • Fix QuantumCircuit.compose with Index exprs (#12396)
  • Fix {Pauli,SparsePauliOp}.apply_layout to raise an error with negative or duplicate indices (#12385)
  • fix edge coloring bug in plot_coupling_map (#12369)
  • Fix missing layout in Commuting2qGateRouter (#12137)

Qiskit 1.1.0rc1

03 May 15:56
1.1.0rc1
7882eb1
Compare
Choose a tag to compare
Qiskit 1.1.0rc1 Pre-release
Pre-release

Changelog

Added

  • Conjugate reduction in optimize annotated pass (#11811)
  • Add star to linear pre-routing pass (#11387)
  • Add enhancement to BitArray (#12158)
  • Add ElidePermutations transpiler pass (#9523)
  • Support standalone Var throughout transpiler (#12322)
  • Add indexing and bitshift expressions (#12310)
  • Support standalone Vars in OQ3 exporter (#12308)
  • Add minimal support for standalone Var to visualisers (#12307)
  • Support Var in circuit-substitution methods (#12215)
  • Add representation of expr.Var to DAGCircuit (#12204)
  • Promote arm64 macOS to tier 1 (#12102)
  • Support standalone expr.Var in QPY (#11651)
  • Extend the basis gates of BasicSimulator (#12186)
  • Add reverse permutation for LNN connectivity (#12181)
  • Add Rust-based SparsePauliOp.to_matrix and Miri tests (#11388)
  • Finalise support for Numpy 2.0 (#11999)
  • Rename show_idle and show_barrier to idle_wires and plot_barriers (#11878)
  • Add fast-path construction to NLocal (#12099)
  • Add mapping-like features to data_bin (#12129)
  • Expose plugin options (#12107)
  • Update gate dictionary in two_local.py (#12009)
  • Add .apply_layout()method to Pauli class (#12066)
  • Improve performance and randomness of QuantumVolume (#12097)
  • Add copy keyword argument to QuantumCircuit.append (#12098)
  • Added the ctrl_state param to the mcp() function & MCPhaseGate() class (#12094)
  • Oxidize two qubit basis decomposer (#12010)
  • Added the ctrl_state parameter to mcx() function (#12050)
  • Compose multiple final_layout attributes in routing (#11399)
  • Fix custom constraints in transpile with BackendV2 (#12042)
  • Add BackendSamplerV2 (#11928)
  • Add BackendEstimatorV2 (#11931)
  • Oxidize TwoQubitWeylDecomposition (#11946)
  • Adapt commutation checker to abstract circuits (#11948)
  • Expose PauliList.noncommutation_graph in public API (#11795)
  • Add ElidePermutations pass to optimization level 3 (#12111)
  • replace CXCancellation with InverseCancellation (#11937)
  • Add support for returning a DAGCircuit to TwoQubitBasisDecomposer (#12109)
  • Assignment of parameters in pulse Schedule/ScheduleBlock doable through parameter name (#12088)
  • Add SamplerPubResult (#12143)
  • HLSConfig option to run multiple plugins and to choose the best decomposition (#12108)
  • Update transpile() to convert BackendV1 inputs to BackendV2 with BackendV2Converter (#11996)
  • Add commutative cancellation to preset passmanagers level 2 and 3 (#11929)
  • Add RemoveFinalReset pass (#11266)
  • ParameterVector support for pulse parameter assignment (#12045)
  • Adding annotated argument to power methods (#12101)

Deprecated

  • Deprecating Provider ABC, as abstraction is not very useful (#12145)
  • pending deprecations from 0.21 (#11902)
  • Deprecate Python 3.8 support (#12103)

Changed

  • Increase heuristic effort for optimization level 2 (#12149)
  • Improve performance and randomness of QuantumVolume (#12097)

Fixed

  • Rework handling of instruction durations in preset pass managers (#12183)
  • Improve performance of BackendSamplerV2 and EstimatorV2 (#12291)
  • Treat Reset like Measure in ConstrainedReschedule (#11756)
  • Support ECR gates in Pauli.evolve(QuantumCircuit) (#12095)
  • Default init plugin was not properly raising when called with an invalid optimization level (#12170)
  • Add copy keyword argument to QuantumCircuit.append (#12098)
  • Update the code for decomposing MCX and MCPhase gates, so that the number of CX gates won't grow exponentially (#11993)
  • Fix custom constraints in transpile with BackendV2 (#12042)
  • fix typo in soft_compare (#12054)
  • Fix incorrect signage in qDRIFT synthesis (#11321)
  • Fix mpl circuit drawer with fold=-1 hanging with ControlFlow ops (#12016)
  • Fix build() default alignment (#12029)
  • Fix pulse parameter value formatter bug (#11972)
  • Fix evolved operator ansatz (#11682)
  • Remove old graph structure during EquivalenceLibrary.set_entry (#11959)
  • Fix Instruction.repeat with conditionals (#11940)
  • Fix performance issue in parsing bit indices in QPY (#11944)
  • Bug Fix for missing qubit property (#11880)
  • Fix improper handling of BindingsArray in SamplerPub.coerce() (#11913)
  • Fix transpilation of control flow to no hardware (#11907)
  • Fixing bug in qcstyle that modified custom style dict (#11874)
  • Fix handling of control flow instructions in convert_to_target() (#11877)
  • Fix improper handling of BindingsArray in EstimatorPub.coerce (#11871)
  • Fix Observables.coerce() for 0-d inputs (#11868)
  • Ensure that Parameters compare equal when they have the same hash (#11652)
  • Fix an unchecked condition in InverseCancellation (#11834)
  • Fix PropertySet re-use in BasePassManager.run (#11787)
  • Fix custom pulse instruction conversion to Qobj. (#11829)
  • Fix scheduling units (#11782)
  • bug loading MPL style from the configuration (#11750)
  • Fix qpy.dump()'s use_symengine when passed a truthy object (#11730)
  • Update Commutation Checker to Support UTF-8 Encoded Gate Names (#12061)
  • Fixing Operator.from_circuit for circuits with final layouts and a non-trivial initial layout (#12057)

Qiskit 0.46.1

08 Mar 17:28
0.46.1
e43d5f1
Compare
Choose a tag to compare

Changelog

Fixed

  • Fixing monitor tools (#11414)
  • Remove old graph structure during EquivalenceLibrary.set_entry (#11959) (#11963)
  • Fix handling of control flow instructions in convert_to_target() (#11922)
  • Fix PropertySet re-use in BasePassManager.run (#11787) (#11863)
  • Add missing gate properties and configuration to FakeOpenPulse2Q (from #11609) (#11788)
  • Construct subclasses of InstructionDurations from backend (#11501) (#11727)

Qiskit 1.0.2

08 Mar 20:52
1.0.2
30a22e4
Compare
Choose a tag to compare

Release notes: https://docs.quantum.ibm.com/api/qiskit/release-notes/1.0

Changelog

Fixed

  • Ensure that Parameters compare equal when they have the same hash (#11652) (#11875)
  • Fix improper handling of BindingsArray in EstimatorPub.coerce() (#11871) (#11881)
  • Fix transpilation of control flow to no hardware (#11907) (#11915)
  • Fix type hint and doc of StatevectorEstimator.default_precision (#11910) (#11918)
  • Fix handling of control flow instructions in convert_to_target() (#11877) (#11884)
  • Bugfix for missing qubit property (#11880) (#11927)
  • Fix performance issue in parsing bit indices in QPY (#11944) (#11945)
  • Remove old graph structure during EquivalenceLibrary.set_entry (#11959) (#11962)
  • Fix improper handling of BindingsArray in SamplerPub.coerce() (#11913) (#11920)
  • Fix Observables.coerce() for 0-d inputs (#11868) (#11876)
  • Fix evolved operator ansatz (#11682) (#11965)

Qiskit 1.0.1

22 Feb 22:38
1.0.1
ee81e3e
Compare
Choose a tag to compare

Release notes: https://docs.quantum.ibm.com/api/qiskit/release-notes/1.0

Changelog

Fixed:

  • Fix an unchecked condition in InverseCancellation (#11834)
  • Fix PropertySet re-use in BasePassManager.run (#11787)
  • Fix custom pulse instruction conversion to Qobj (#11829)
  • Fix scheduling units (#11817)

Qiskit 1.0.0

15 Feb 20:42
1.0.0
21b11b9
Compare
Choose a tag to compare

Release notes: https://docs.quantum.ibm.com/api/qiskit/release-notes/1.0

Changelog

Added

  • Add generic V1 Fake Backends, replace use in tests (#10952)
  • Native OpenQASM 3 importer (#11584)
  • Support stabilised syntax for OpenQASM 3 switch (#11417)
  • Library of Unparameterizable Standard Gates Commutations (#11192)
  • Add version flag to qpy dump (#11644)
  • Rename BasicAer to BasicProvider and refactor interface to follow BackendV2 (#11422)
  • Token swapper permutation synthesis plugin (#10657)
  • Add reference implementation of EstimatorV2 (#11227)
  • Add fake generic and modify tests (#10266)
  • Add uuid property to Parameter (#11647)
  • Extend CommutativeInverseCancellation to cancel pairs of gates up-to-phase (#11248)
  • Add circuit generation from set of stabilizers (#11483)
  • Use "tensorised-Pauli decomposition" in SparsePauliOp.from_operator (#11133)
  • Warn on import failures within optional dependencies (#11522)
  • Allow string keys in QuantumCircuit.assign_parameters (#11432)
  • Add QuantumCircuit.get_parameter to retrieve by name (#11431)
  • use faster aqc objective function evaluation by default (#11479)
  • Add qpy deprecation warning class (#11260)
  • Add ParameterExpression.numeric to cast to number (#11109)
  • Document how to use high level synthesis plugins (#11389)
  • QFT circuit synthesis for linear nearest neighbor connectivity (#11236)
  • 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)
  • Update gate.inverse() to return AnnotatedOperation (#11593)
  • Fix qpy support for Annotated Operations (#11505)
  • Update gate.control() to return AnnotatedOperation (#11433)
  • Introduction of ExperimentalWarning (#11326)
  • New OptimizeAnnotated transpiler pass (#11476)
  • Reimplement two_qubit_decompose.num_basis_gates in rust (#11019)
  • Add a kwarg for num_processes in the transpiler (#11554)
  • Supporting floating-point exponents in Operator.power (#11534)
  • Add Statevector-based SamplerV2 (#11566)
  • Add BaseEstimatorV2 (#11527)
  • Add BaseSamplerV2 (#11529)
  • List support for coupling map in pass manager (#11063)
  • Add disable_validation option to SymbolicPulse (#11029)

Changed

  • Fix approximation_degree default in generate_preset_pass_maanger (#11695)
  • Handle custom operations with overlapping names in QPY (#11646)
  • Legacy code removal in pass manager (#11448)
  • Bump MSRV to 1.70 (#11493)
  • Replace qiskit metapackage with qiskit-terra (#11271)
  • Update platform support and require symengine (#10902)

Removed

  • Remove provider-specific fake backends,FakeProvider class and related tools in 1.0 (#11376)
  • Effect final removals from Qiskit 1.0 (#11711)
  • Remove deprecated features in 0.46 in primitives (#11576)
  • Remove pulse scoped_parameters and search_parameters (#11692)
  • Rename BasicAer to BasicProvider and refactor interface to follow BackendV2 (#11422)
  • Remove deprecated functions in pulse qobj converter (#11410)
  • Remove deprecated feature in 0.45 in unroller (#11581)
  • Remove visualization code deprecated in 0.22 (released on October 13, 2022) (#10989)
  • Remove qiskit.quantum_info.synthesis for Qiskit 1.0 release (#11592)
  • Remove qiskit.transpiler.synthesis for Qiskit 1.0 release (#11570)
  • Remove execute() function (#11565)
  • Remove deprecated features in 0.45 in quantumcircuit (#11577)
  • Deprecate qiskit/quantum_info/synthesis and move to qiskit/synthesis (#11460)
  • Remove psutil as a dependency (#11336)
  • Remove Aer and imports from qiskit.providers.aer (#11442)
  • Remove qiskit.extensions (#11488)
  • remove PauliList support as observable type for Estimator.run (#11521)
  • Remove ConfigurableFakeBackend (#11568)
  • Removed Deprecated Pulse Call Instruction (#11537)
  • remove deprecated clifford get/set item (#11555)
  • Remove most of qiskit.test (#11445)
  • Make iqp the matplotlib default style (#11536)
  • remove deprecated aquire alignment (#11553)
  • Removed Deprecated Instruction.qasm Function (#11538)
  • Remove qiskit.tools module (#11515)
  • Removed Deprecated VF2 Call Limit (#11540)
  • Remove deprecated IBMQ dependent functionality (#11513)
  • Legacy code removal in pass manager (#11448)
  • Remove deprecated top-level classicalfunction imports (#11486)
  • Remove QuantumCircuit.bind_parameters (#11434)
  • Remove Bit.register and Bit.index (#10996)
  • add release note (#11395)
  • Remove NoiseAdaptiveLayout and CrosstalkAdaptiveSchedule (#11400)
  • Remove deprecated legacy pulse builder commands (#11191)
  • Remove deprecated ParametricPulse classes (#11024)
  • 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)
  • Remove qiskit.test (#10998)
  • Remove complex amp support for ScalableSymbolicPulse (#11403)
  • Remove validation methods from primitive base classes (#11052)

Fixed

  • bug loading MPL style from the configuration (#11750)
  • Fix qpy.dump()'s use_symengine when passed a truthy object (#11730)
  • use pulse_alignment from Target in PadDynamicalDecoupling (#11660)
  • Handle custom operations with overlapping names in QPY (#11646)
  • Fix split barriers leaking during disjoint layout processing (#11655)
  • Fix SetLayout to error with invalid int list input (#11653)
  • Backend converter bugfix (edge case) (#11609)
  • Followup of #11095 (#11404)
  • Restrict version-number output of OpenQASM 3 exporter (#11418)
  • Fix qpy support for Cliffords (#11495)
  • Fix a bug of missing pulse library entry in PulseQobj parsing (#11397)
  • Fix broadcasting of QuantumCircuit.delay (#11447)
  • Detect duplicates in QuantumCircuit.compose (#11451)
  • Construct subclasses of InstructionDurations from backend (#11501)
  • Fix global-phase of copied BlueprintCircuits (#11456)
  • Fix text overwriting end of box for empty default case in mpl drawer (#11366)
  • Add drawer support for AnnotatedOperations (#11202)
  • Ensure TemplateOptimization returns native-symbolic objects (#11107)
  • Add missing parameter in standard-gate mapping (#11411)
  • Fix a bug is StabilizerState repr (#11368)
  • Fixed bug in OptimizeSwapBeforeMeasure (#11413)
  • Raise error eagerly on bad unitary synthesis method (#11367)
  • 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 text drawer AnnotatedOperations (#11466)
  • Fix Sabre extended set population order (#10651)