Qiskit Terra 0.25.0
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
qasmfromInstructionand 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
Exprsupport toStochasticSwap(#10506) (#10510) - Allow circuits w/ control flow in O2 and O3 (#10372)
- Optimize
ConsolidateBlockspass (#10365) - Add
Exprsupport 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_layersandcollect_from_back(#10254) - Add in qpy the support for Discriminator and Kernel (#10327)
- Add
Exprsupport toDAGCircuit.substitute_node_with_dag(#10381) - Add
Exprsupport inDAGCircuit.substitute_node(#10382) - Add a new argument concurrent_measurements to target class (#10258)
- Add
Exprsupport toDAGCircuit.replace_block_with_node(#10383) - Add find_bit method to DAGCircuit to get mapping of bits to positional index (#10128)
- Add
Exprsupport to QPY for conditions and targets (#10392) - Add
Exprsupport to the control-flow builders (#10400) - Add
Exprsupport toDAGCircuit.compose(#10377) - Add
Exprsupport toQuantumCircuit.compose(#10375) - Add separable_circuits method to DAGCircuit class (#9471)
- Add support for semantic equality checking of
Exprs inDAGCircuit(#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
Exprsupprt toDAGCircuitsimple constructors (#10362) - Linear function usability improvements (#10053)
- Add
Exprsupport toControlFlowOprepresentation (#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_decompositionfunction toquantum_info(#10104) - Adding the feature of calculating entanglement measures negativity (#10134)
- Add
HAS_PYGMENTSlazy 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
StatePreparationandInitialize(#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_strandfrom_qasm_fileto new parser (#9955) - Drop support for Python 3.7 (#10009)
- Set
max_trialsforVF2Layoutin 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
Exprsupport to OpenQASM 3 exporter (#10408) - Improve parameter-binding performance of large instructions (#10284)
- Add
Exprsupport inDAGCircuit.substitute_node(#10382) - Add
Exprsupport 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
deepcopyfor new-styleBit(#10411) - Fix
DiagonalGateQPY serialisation (#10376) - Add support for QuantumCircuit.layout to qpy (#10148)
- Fix
CheckMapwith 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_transposeto 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
switchstatements inQuantumCircuit.compose(#10164) - Fixing BlockCollapser with Clbits (#9823)
- Fix
initial_layoutintranspilewith 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_mapforibm_seattle(#10089) - Switch
QuantumCircuit.from_qasm_strandfrom_qasm_fileto new parser (#9955) - Fix interaction graph vf2 scoring to include 1q component (#10084)
- Set
max_trialsforVF2Layoutin preset pass managers. (#10054) (#10061) - Set
max_trialsforVF2Layoutin 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)