Skip to content

Qiskit 1.2.0rc1

Pre-release
Pre-release
Compare
Choose a tag to compare
@qiskit-bot qiskit-bot released this 01 Aug 16:58
· 288 commits to main since this release
1.2.0rc1
57bf058

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)