From 506098965c18a63674e19be543975760c23d9728 Mon Sep 17 00:00:00 2001 From: Naoki Kanazawa Date: Wed, 31 Jan 2024 03:14:58 +0900 Subject: [PATCH] Remove deprecated functions in pulse qobj converter (#11410) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Removed deprecated functions in pulse qobj converter * Minor reno suggestion --------- Co-authored-by: Elena Peña Tapia <57907331+ElePT@users.noreply.github.com> --- qiskit/qobj/converters/pulse_instruction.py | 192 +----------------- ...cs-in-qobj-converter-402408e84b3043bb.yaml | 27 +++ 2 files changed, 30 insertions(+), 189 deletions(-) create mode 100644 releasenotes/notes/remove-deprecated-funcs-in-qobj-converter-402408e84b3043bb.yaml diff --git a/qiskit/qobj/converters/pulse_instruction.py b/qiskit/qobj/converters/pulse_instruction.py index a19d25085369..b8b96e7dc4bf 100644 --- a/qiskit/qobj/converters/pulse_instruction.py +++ b/qiskit/qobj/converters/pulse_instruction.py @@ -30,7 +30,6 @@ from qiskit.pulse.schedule import Schedule from qiskit.qobj import QobjMeasurementOption, PulseLibraryItem, PulseQobjInstruction from qiskit.qobj.utils import MeasLevel -from qiskit.utils.deprecation import deprecate_func class ParametricPulseShapes(Enum): @@ -63,18 +62,10 @@ def from_instance( Raises: QiskitError: When pulse instance is not recognizable type. """ - if isinstance(instance, library.SymbolicPulse): + try: return cls(instance.pulse_type) - if isinstance(instance, library.parametric_pulses.Gaussian): - return ParametricPulseShapes.gaussian - if isinstance(instance, library.parametric_pulses.GaussianSquare): - return ParametricPulseShapes.gaussian_square - if isinstance(instance, library.parametric_pulses.Drag): - return ParametricPulseShapes.drag - if isinstance(instance, library.parametric_pulses.Constant): - return ParametricPulseShapes.constant - - raise QiskitError(f"'{instance}' is not valid pulse type.") + except ValueError as ex: + raise QiskitError(f"'{instance}' is not valid pulse type.") from ex @classmethod def to_type(cls, name: str) -> library.SymbolicPulse: @@ -502,78 +493,6 @@ def _convert_bundled_acquire( return self._qobj_model(**command_dict) - @deprecate_func( - additional_msg="Instead, call converter instance directory.", - since="0.23.0", - package_name="qiskit-terra", - ) - def convert_acquire(self, shift, instruction): - return self._convert_instruction(instruction, shift) - - @deprecate_func( - additional_msg="Instead, call converter instance directory.", - since="0.23.0", - package_name="qiskit-terra", - ) - def convert_bundled_acquires(self, shift, instructions_): - return self._convert_bundled_acquire(instructions_, shift) - - @deprecate_func( - additional_msg="Instead, call converter instance directory.", - since="0.23.0", - package_name="qiskit-terra", - ) - def convert_set_frequency(self, shift, instruction): - return self._convert_instruction(instruction, shift) - - @deprecate_func( - additional_msg="Instead, call converter instance directory.", - since="0.23.0", - package_name="qiskit-terra", - ) - def convert_shift_frequency(self, shift, instruction): - return self._convert_instruction(instruction, shift) - - @deprecate_func( - additional_msg="Instead, call converter instance directory.", - since="0.23.0", - package_name="qiskit-terra", - ) - def convert_set_phase(self, shift, instruction): - return self._convert_instruction(instruction, shift) - - @deprecate_func( - additional_msg="Instead, call converter instance directory.", - since="0.23.0", - package_name="qiskit-terra", - ) - def convert_shift_phase(self, shift, instruction): - return self._convert_instruction(instruction, shift) - - @deprecate_func( - additional_msg="Instead, call converter instance directory.", - since="0.23.0", - package_name="qiskit-terra", - ) - def convert_delay(self, shift, instruction): - return self._convert_instruction(instruction, shift) - - @deprecate_func( - additional_msg="Instead, call converter instance directory.", - since="0.23.0", - package_name="qiskit-terra", - ) - def convert_play(self, shift, instruction): - return self._convert_instruction(instruction, shift) - - @deprecate_func( - additional_msg="Instead, call converter instance directory.", - since="0.23.0", - package_name="qiskit-terra", - ) - def convert_snapshot(self, shift, instruction): - return self._convert_instruction(instruction, shift) - class QobjToInstructionConverter: """Converts Qobj data into Qiskit Pulse in-memory representation. @@ -967,108 +886,3 @@ def _convert_generic( f"Instruction {instruction.name} on {msg} is not found " "in Qiskit namespace. This instruction cannot be deserialized." ) - - @deprecate_func( - additional_msg="Instead, call converter instance directory.", - since="0.23.0", - package_name="qiskit-terra", - ) - def convert_acquire(self, instruction): - t0 = instruction.t0 - schedule = Schedule() - for inst in self._convert_acquire(instruction=instruction): - schedule.insert(t0, inst, inplace=True) - return schedule - - @deprecate_func( - additional_msg="Instead, call converter instance directory.", - since="0.23.0", - package_name="qiskit-terra", - ) - def convert_set_phase(self, instruction): - t0 = instruction.t0 - schedule = Schedule() - for inst in self._convert_setp(instruction=instruction): - schedule.insert(t0, inst, inplace=True) - return schedule - - @deprecate_func( - additional_msg="Instead, call converter instance directory.", - since="0.23.0", - package_name="qiskit-terra", - ) - def convert_shift_phase(self, instruction): - t0 = instruction.t0 - schedule = Schedule() - for inst in self._convert_fc(instruction=instruction): - schedule.insert(t0, inst, inplace=True) - return schedule - - @deprecate_func( - additional_msg="Instead, call converter instance directory.", - since="0.23.0", - package_name="qiskit-terra", - ) - def convert_set_frequency(self, instruction): - t0 = instruction.t0 - schedule = Schedule() - for inst in self._convert_setf(instruction=instruction): - schedule.insert(t0, inst, inplace=True) - return schedule - - @deprecate_func( - additional_msg="Instead, call converter instance directory.", - since="0.23.0", - package_name="qiskit-terra", - ) - def convert_shift_frequency(self, instruction): - t0 = instruction.t0 - schedule = Schedule() - for inst in self._convert_shiftf(instruction=instruction): - schedule.insert(t0, inst, inplace=True) - return schedule - - @deprecate_func( - additional_msg="Instead, call converter instance directory.", - since="0.23.0", - package_name="qiskit-terra", - ) - def convert_delay(self, instruction): - t0 = instruction.t0 - schedule = Schedule() - for inst in self._convert_delay(instruction=instruction): - schedule.insert(t0, inst, inplace=True) - return schedule - - @deprecate_func( - additional_msg="Instead, call converter instance directory.", - since="0.23.0", - package_name="qiskit-terra", - ) - def bind_pulse(self, pulse): - if pulse.name not in self._pulse_library: - self._pulse_library[pulse.name] = pulse.samples - - @deprecate_func( - additional_msg="Instead, call converter instance directory.", - since="0.23.0", - package_name="qiskit-terra", - ) - def convert_parametric(self, instruction): - t0 = instruction.t0 - schedule = Schedule() - for inst in self._convert_parametric_pulse(instruction=instruction): - schedule.insert(t0, inst, inplace=True) - return schedule - - @deprecate_func( - additional_msg="Instead, call converter instance directory.", - since="0.23.0", - package_name="qiskit-terra", - ) - def convert_snapshot(self, instruction): - t0 = instruction.t0 - schedule = Schedule() - for inst in self._convert_snapshot(instruction=instruction): - schedule.insert(t0, inst, inplace=True) - return schedule diff --git a/releasenotes/notes/remove-deprecated-funcs-in-qobj-converter-402408e84b3043bb.yaml b/releasenotes/notes/remove-deprecated-funcs-in-qobj-converter-402408e84b3043bb.yaml new file mode 100644 index 000000000000..b54c36ac950e --- /dev/null +++ b/releasenotes/notes/remove-deprecated-funcs-in-qobj-converter-402408e84b3043bb.yaml @@ -0,0 +1,27 @@ +--- +upgrade: + - | + Removed deprecated methods in :class:`.InstructionToQobjConverter` + and :class:`.QobjToInstructionConverter`. This includes + + * :meth:`.InstructionToQobjConverter.convert_acquire` + * :meth:`.InstructionToQobjConverter.convert_bundled_acquires` + * :meth:`.InstructionToQobjConverter.convert_set_frequency` + * :meth:`.InstructionToQobjConverter.convert_shift_frequency` + * :meth:`.InstructionToQobjConverter.convert_set_phase` + * :meth:`.InstructionToQobjConverter.convert_shift_phase` + * :meth:`.InstructionToQobjConverter.convert_delay` + * :meth:`.InstructionToQobjConverter.convert_play` + * :meth:`.InstructionToQobjConverter.convert_snapshot` + * :meth:`.QobjToInstructionConverter.convert_acquire` + * :meth:`.QobjToInstructionConverter.convert_set_phase` + * :meth:`.QobjToInstructionConverter.convert_shift_phase` + * :meth:`.QobjToInstructionConverter.convert_set_frequency` + * :meth:`.QobjToInstructionConverter.convert_shift_frequency` + * :meth:`.QobjToInstructionConverter.convert_delay` + * :meth:`.QobjToInstructionConverter.bind_pulse` + * :meth:`.QobjToInstructionConverter.convert_parametric` + * :meth:`.QobjToInstructionConverter.convert_snapshot` + + These public methods are all replaced with protected ones which are implicitly called from + the single entry point, i.e. call dunder method of the classes.