Releases: Qiskit/qiskit
Releases · Qiskit/qiskit
Qiskit Terra 0.16.3
Qiskit Terra 0.16.2
Changelog
Fixed
- Update the definition of the Hellinger fidelity (bp #5595) (#5703)
- Fix global phase tracking around DAGCircuit.substitute_node. (bp #5618) (#5673)
- More efficient C3X implementation (bp #5668) (#5669)
- Fix U2Gate decomposition in QuantumCircuit.u2 deprecation message. (#5660) (#5663)
- [Stable] Improve 1q decomposition pass with multiple matching basis (#5431) (#5655)
- Fix global phase in OneQubitEulerDecomposer using PSX and ZSX basis and in Diagonal gate (#5474) (#5652)
- Make optimize_1q_gates U and P aware (#5429) (#5651)
- Durations populated from calibrations (#5562) (#5616)
- Convert delays to instructions when assembling (#5481) (#5615)
- Use actual gate name in backend monitor (bp #5546) (#5589)
- Add ZSX Euler basis to UnitarySynthesis pass. (#5583) (#5585)
- Fix global phase handling in circuit.repeat (#5588) (#5592)
- transpile singleton (#5298) (#5507)
- Fix compensate_phase of pulse.builder.frequency_offset (#5489) (#5497)
- Add missing layout data for ibmq_casablanca. (#5492) (#5500)
- Fix bug when multiplying SparsePauliOp by np.int64 (#5417) (#5419)
Qiskit Terra 0.16.1
Changelog
Fixed
Qiskit Terra 0.16.0
Changelog
Deprecated
- Deprecate QuantumCircuit.u1/2/3 (#5083)
- Deprecate MSGate (#4979)
- Deprecate MSBasisDecomposer and remove references in transpiler.py (#5009)
Added
- Add Optimize1qGatesDecomposition to optimize 1q gates using Euler Decomposer (#5216)
- Probability distribution circuits (#5068)
- Add lightweight v2 provider interface starter (#5086)
- Classical Function compiler (#4522)
- Added spherical coords functionality to plot_bloch_vector (#4803)
- Add (piecewise) linear amplitude function to the circuit library (#5110)
- Schedules with Parameters (#5073)
- basicaer handling of global_phase. (#4915)
- [WIP] Pulse Gates: Transpiler changes (part 2) (#5080)
- Make InstructionScheduleMap support ParameterExpressions (#4940)
- Passmanager.remove(index) (#5024)
- Add Grover operator to the circuit library (#4828)
- Pulse Schedule disassembler (#4735)
- User API: support pulse gate calibrations (#4859)
Changed
- Allow ParameterExpressions to be cast to ints (#5001)
Removed
- Remove deprecated DAGNode dict constructor argument (#5201)
- Drop support for python 3.5 (#4926)
- Remove deprecated gate keyword arguments (#4935)
- Removing deprecated gates (#4593)
Fixed
- substitute_node only in single-qubit gates with singleton decompositions (#5225)
- Fixed issue 4697 by updating append method (#4887)
- Build BlueprintCircuit before inverse and compose (#5170)
- Fix in the circuit text drawer when a custom gate with even-length label is controlled (#5091)
- The lookahead_swap pass is global_phase aware (#5172)
- HoareOptimizer pass does preserve state between runs anymore (#5138)
- fix qasm loading of sx/sxdg/u/phase (#5156)
- Layout.from_intlist: Integer list length must equal number of qubits in circuit (#4913)
- Circuit.mcry with mode 'basic' uses MCXVChain (#4787)
- allow integer qarg in QuantumCircuit.unitary (#4955)
- Fix box aspect ratio for Bloch sphere and QSphere (#4893)
- Fix/5056 composite instruction to qasm (#5059)
- Fix global phase for qobj assembly (#5126)
- Fix handling of ancillas in functional Pauli rotations (#5079)
- Fix for a rounding error in plot_state_qsphere() (#4797)
- execute(..., backend=..., passmanager=...) has not conflicting args (#5051)
- Fix latex circuit drawer handling of circuits without gates (#5035)
- Fix random crashes on TextProgressBar (#5034)
- QuantumCircuit.extend updates cached bits (#5039)
- Fix DAGCircuit.compose condition map when handling multiple cregs. (#5026)
- Inverse of MCX gates to include ancillae (#5020)
- Fix Counts object creation with empty input (#5018)
- Fix/5015 QuantumCircuit eq should always return a Bool (#5016)
- Fix inverse in controlled gates (#4976)
- Update PhaseGate.control(n) to return MCPhaseGate (#4994)
- Fix decomposition in UnitaryGate.definition for 1Q gates (#4996)
- Fix pi_check not handling large numbers properly (#4853)
- fixes MCPhaseGate definition (#4989)
- Fix pulse transforms recursion bug fix that was lost in merge conflict (#4974)
- Fix on _bloch_multivector_data (utils.py) when number of qubit is 1 (#4948)
- redress global_phase in controlled UnitaryGate (#4799)
- Update backend snapshots with new conf or defs (#4897)
- Changed default labels for sdg, tdg, sx, and sxdg to None (#4885)
Qiskit Terra 0.15.2
Changelog
Fixed
- QuantumCircuit.extend updates cached bits (#5039) (#5041)
- Fix DAGCircuit.compose condition map when handling multiple cregs. (#5026) (#5029)
- Inverse of MCX gates to include ancillae (#5020) (#5027)
- Fix Counts object creation with empty input (#5018) (#5022)
- Fix inverse in controlled gates (#4976) (#5007)
- Update PhaseGate.control(n) to return MCPhaseGate (#4994) (#5003)
- fixes MCPhaseGate definition (#4989) (#4995)
Qiskit Terra 0.15.1
Qiskit Terra 0.15.0
Changelog
Deprecated
- Cleanup leftover SamplePulse mentions (#4730)
- Update plots to work with quantum state classes (#4324)
- Create metaclass to handle tolerances through atol and rtol for Operators and States (#4141)
- Finish issue 4167: SamplePulse->Waveform (#4670)
- Finish issue 4168 (#4662)
- Remove the interactive visualizations (#4438)
- New mpl drawer fixes open issues and adds proportional font text width spacing and labels (#4616)
- Removing
condition
argument fromapply_operation_back
(#4135) - Circuit reverse_bits operation (#4509)
- Unused variables (such as qasm(..., prec)) are being removed (#4192)
- Cache dag qubits/clbits (#4535)
- Remove deprecated multi-qubit acquire instructions (#4505)
Added
- Support for backends with defective qubits and gates (#4782)
- Allow Generator object for seed in QuantumVolume circuit (#4867)
- Sqrt(X) and C-Sqrt(X) gates (#4638)
- Add U and Phase gate (#4765)
- Quadratic form on binary variables circuit (#4800)
- Add synthesis-based translation method. (#4763)
- add global_phase to QuantumCircuit class (#4565)
- Add fake backends for Bogota, Montreal, and Toronto (#4733)
- Add phase estimation circuit to the library (#4685)
- Ancilla qubit type (#4686)
- Pulse builder interface (#4174)
- Add Counts object (#4501)
- Circuit control (#4627)
- Parameter conjugate (#4619)
- Adds BasisTanslator, UnrollCustomDefinitions to default levels. (#4446)
- Sabre layout and routing transpiler passes (#4537)
- Circuit reverse_bits operation (#4509)
- Add SetPhase instruction to pulse (#4540)
- Add rep delay (#4539)
- Add circuit.repeat (#4521)
- Add DAGDependency (#3581)
- Add BasisTranslator and UnrollCustomDefinitions passes. (#4442)
- Add from_networkx method to DAGCircuit class (#4255)
- Add ShiftFrequency instruction to pulse (#4390)
- Add init qubits flag to qobj (#4432)
- add DensityMatrix.to_statevector() for pure states (#4433)
- Add equivalence_library kwarg to circuit_to_{gate,inst} converters. (#4431)
- Update qsphere plots to show state labels and phases (#4384)
- Add support for substituting a Parameter with a ParameterExpression. (#4200)
- Add len to Schedule in Pulse along with related tests. (#4394)
- Add shift frequency qobj instruction -
shiftf
to schema (#4359) - Add EquivalenceLibrary.draw() method. (#4196)
Changed
- Update plots to work with quantum state classes (#4324)
- Create metaclass to handle tolerances through atol and rtol for Operators and States (#4141)
- Finish issue 4167: SamplePulse->Waveform (#4670)
- Finish issue 4168 (#4662)
- Removing
condition
argument fromapply_operation_back
(#4135) - QuantumCircuit.to_gate(..., label=...) support (#4478)
- Bugfix: Modified Pulse Style to default to RCParams. (#4470)
- fixed issue 4391 by updating idle_wires() in dagcircuit (#4481)
- Adding support for cregbundle in latex drawer (#4410)
- Allow transformation passes to modify the property set (#4387)
- Rename rescheduler to transform (#4251)
- Remove marshmallow from result/ and requirements (#4030)
Removed
- Remove switchable DAGCircuit implementation (#4386)
- Remove the interactive visualizations (#4438)
- remove deprecated qi functions (#4579)
- Remove almost-one-year-old deprecated methods (warning was inserted in #2683) (#4498)
- remove draw(..., line_length, ...) (deprecated after #3108) (#4507)
- Draw method: remove deprecated channels_to_plot argument (#4508)
- Remove deprecated multi-qubit acquire instructions (#4505)
- Remove circuit_instruction_map deprecated attribute (#4503)
- Remove marshmallow from result/ and requirements (#4030)
Fixed
- Drawers support for "partial" layout (#4795)
- fix dag_visualization in windows (#4794)
- Allow numbers.Integral instead of only built-in int for QuantumRegister index (#4591)
- pi_check qasm includes * between num and pi (#4732)
- Fix broadcast acquire config (#4654)
- QuantumCircuit.num_nonlocal_gates to count only Gate instances. (#4517)
- Fixes DAGCircuit.substitute_node_with_dag mutating input_dag if node has a condition (#4734)
- Fix transpiler failure with circuits containing conditions (#4695)
- Fix cnot method on QuantumCircuit (#4713)
- For DAGCircuit.compose remap condition bits (#4626)
- Fixes bug with cregbundle and conditional gates (#4597)
- New mpl drawer fixes open issues and adds proportional font text width spacing and labels (#4616)
- Add composite circuit definition when calling circuit.qasm() (#3748)
- disallow specifying controlled gate with zero controls. (#4584)
- fixes issue of crashing on unroll of 3+ qubit gates (#4577). (#4596)
- Issue #4182 Initializer should use at most 2^(n+1)-2n cnots (#4183)
- Fix ZZFeatureMap barriers (#4586)
- Set register name for definition of ControlledGates with ctrl_state. (#4582)
- Give MCX implementations more specific names. (#4568)
- Added num_ctrl_bits and ctrl_state to UnitaryGate call to ControlledGate (#4551)
- fix bug in unrolling open controlled basis gates. (#4444)
- Cache dag qubits/clbits (#4535)
- fixed issue 4391 by updating idle_wires() in dagcircuit (#4481)
- Fix #4445 | Bug in scheduler if circuit is empty (#4472)
- Fix disassemble of isometry and added test_disassemble_isometry (#4402)
- Circuit library NLocal string circuit drawer issue (#4468)
- Bugfix: Hz -> GHz conversion for SetFrequency -> PulseQobjInstruction (#4399)
- label support for controlled unitary (#4429)
- Allow bypassing parallel mode at init (#4345)
- MPL circuit drawer can handle multiple super/sub script commands in register name (#3827)
- Fix import of deprecated gates from qiskit.extensions (#4366)
Qiskit Terra 0.14.2
Changelog
Fixed
- Set register name for definition of ControlledGates with ctrl_state. (#4582) (#4583)
- Give MCX implementations more specific names. (#4568) (#4570)
- fix bug in unrolling open controlled basis gates. (#4444) (#4561)
- [Stable] Cache dag qubits/clbits (#4535) (#4558)
- fixed issue 4391 by updating idle_wires() in dagcircuit (#4481) (#4553)
- Circuit library NLocal string circuit drawer issue (#4468) (#4543)
- Add equivalence_library kwarg to circuit_to_{gate,inst} converters. (#4431) (#4534)
- Fix the circuit gate links in docs (#4487) (#4514)
- fixed issue 4133 by updating U3 and U2 definitions (#4165) (#4474)
- Fix #4445 | Bug in scheduler if circuit is empty (#4472) (#4476)
- Add missing T gate to documentation (#4409) (#4428)
- Bugfix: Hz -> GHz conversion for SetFrequency -> PulseQobjInstruction (#4399) (#4434)
- Fix bug in visualization/pulse/matplotlib (#4403) (#4405)
Qiskit Terra 0.14.1
Qiskit Terra 0.14.0
Changelog
Deprecated
- Stop monkeypatching standard gates and move them to circuit/library/standard_gates (#4035)
- add circuit.compose() method (#4190)
- Boolean logic AND and OR to circuit library (#4130)
Added
- Add
from_int
method toStatevector
andDensityMatrix
(#4289) - Global MS gate in circuit library (#4333)
- Iqp circuit added to circuit library (#4266)
- Add new fake backends FakeAthens and FakeRome (#4330)
- Circuit library: GraphState, HLF (#4259)
- Multi-control multi-target gate (#4028)
- N-local circuits for circuit library (#4211)
- Support for cregbundle in text circuit drawer (#4274)
- #3891 | PulseCompression (#4114)
- Add Cifford.from_label method (#4222)
- Use isometry for decomposition of 3+ qubit unitary gates (#4243)
- Blueprint circuit for the circuit library (#4185)
- Add EquivalenceLibrary.has_entry. (#4214)
- Diagonal in circuit library (#4186)
- HamiltonianGate (#4071)
- New fake backends: Cambridge, Paris, London, Valencia, Essex, Armonk (#4129)
- Boolean logic AND and OR to circuit library (#4130)
- Add methods to retrieve info from channels config in backends (#4097)
- Circuit library: QFT (#4072)
- Show instance name in output of pulse drawer (#4122)
- Hoare optimization transpiler pass (#3185)
Changed
- Stop monkeypatching standard gates and move them to circuit/library/standard_gates (#4035)
- add circuit.compose() method (#4190)
- ParametricPulses: rename constantpulse to constant (#4077)
- Remove marshmallow from providers/ (#4016)
Fixed
- Timeslot error fix and tests (#4335)
- missing pass_manager_drawer(..., filename=None) (#4331)
- fixed issue 4292 by updating latex drawer (#4322)
- QuantumCircuit.data modification methods to reset ParameterTable. (#4319)
- text-draw gates when are controlled and with a label (#4262)
- controlled gates label awareness (#4218)
- Fix bug in random_clifford (#4287)
- Transpiling with basis_gates=None disables unrolling (#4263)
- Error checking for time inputs to schedules and instructions (#4224)
- Adds ability to set ctrl_state on standard gates (#4076)
- Handle error on import if pygments < 2.4 is installed (#4229)
- Fix ParameterExpression.subs not detecting parameter name conflicts. (#4199)
- Instruction.is_parameterized to return False when fully bound. (#4198)
-
- Fixed SetFrequency name sf -> setf in pulse instructions. (#4213)
- Correct display of cx & ccx gates and fix bug on multi-control gates in text_drawer (#4173)
- For appended circuit add padding for wire labels in text drawing mode (#4095)
- Properly copy registers on circuit copy (#4178)
- Changed pi_check to handle parameter values where possible (#3876)
- fixed issue 3427 by updating interpolation module functions (#3854)
- Fix conversion of numpy.number instruction params to python types. (#4152)