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, incircuit_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()
andgenerate_preset_pass_manager
to convert loose input of constraints to aTarget
withTarget.from_configuration()
(#12185) - Add
DenseLayout
trial toSabreLayout
(#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
tosabre
(#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__}
raiseIndexError
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 only0
outcome andnum_bits=None
(#12800) (#12820) - fix issue/12311 with fractional gate in basis (#12511)
- Validate
order
kwarg inBitArray.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 andExpr
nodes (#12429) - Avoid exception in
Target.has_calibration
for instruction without properties (#12526) - Implement
__array__
forqasm2._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)