-
Notifications
You must be signed in to change notification settings - Fork 2.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Removed Deprecated Pulse Call Instruction #11537
Conversation
One or more of the the following people are requested to review this:
|
Pull Request Test Coverage Report for Build 7532353892Warning: This coverage report may be inaccurate.We've detected an issue with your CI configuration that might affect the accuracy of this pull request's coverage report.
💛 - Coveralls |
…/Qiskit into deprecation-0.25-pulse
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The removal procedure looks well executed :), I think I don't have enough pulse expertise to judge if any additional unit test is necessary to compensate for the removal of Call
.
from qiskit.test import QiskitTestCase | ||
|
||
|
||
class ParameterTestBase(QiskitTestCase): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I haven't taken the time to analyze the test in depth, but would it make sense to keep it and only delete/replace the schedule.Call
line?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for taking a look! :) Yes, there are a couple of test cases that could qualify for removal or rephrasing. The discussion in issue #10103 lead me to believe there are already alternatives for test cases using Pulse.Call
, allowing for current Pulse.Call
test cases to be removed... Do you suggest to rephrase all test cases using builder.call
instead of Pulse.Call
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You shouldn't remove these tests. This file covers the test cases for schedule parameter assignment.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @sbrandhsn for taking care of this. I really appreciate. My comment is largely about these two:
- You can revert changes to symbolic pulse, since this is done by Remove complex amp support for
ScalableSymbolicPulse
#11403 - Please do NOT delete the entire parameter assignment test
test.python.pulse.test_parameter_manager
. You can just remove dependency onCall
from the reference object.
releasenotes/notes/deprecate-pulse-instruction-call-52dca0dd26e1c768.yaml
Outdated
Show resolved
Hide resolved
from qiskit.test import QiskitTestCase | ||
|
||
|
||
class ParameterTestBase(QiskitTestCase): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You shouldn't remove these tests. This file covers the test cases for schedule parameter assignment.
|
||
self.assertEqual(assigned, ref_obj) | ||
|
||
def test_nested_assignment_partial_bind(self): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please keep this test. You can just remove dependency on Call and add subroutine directly here because subroutine is ScheduleBlock.
…e1c768.yaml Co-authored-by: Naoki Kanazawa <[email protected]>
Arigatou gozaimashita, @nkanazawa1989 ! :-) I was not familiar with the pulse part of qiskit, thanks for clarifying the deprecation of Pulse.Call! This PR also removes:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@sbrandhsn Thanks for quick update!
* removed deprecated pulse.Call * up reno right location * doc fix * fixes qpy error * fix temporary files * updated release note * Update releasenotes/notes/deprecate-pulse-instruction-call-52dca0dd26e1c768.yaml Co-authored-by: Naoki Kanazawa <[email protected]> * reintroduced testcases that used Pulse.Call --------- Co-authored-by: Naoki Kanazawa <[email protected]>
Summary
Removed pulse call instruction deprecated in #10247 and #10103
Details and comments
I was a bit unsure about removing all test cases that use
pulse.Call
since it seemed thatpulse.Call
sometimes only provides reference values for some of these, but proceeded after reading the discussion in #10103. I hope that was okay.But just to be sure, it would be great if you (maybe @nkanazawa1989 ? :-) ) can check that all removed test cases are indeed included in https://github.com/Qiskit/qiskit/blob/main/test/python/pulse/test_builder.py or https://github.com/Qiskit/qiskit/blob/main/test/python/pulse/test_builder_v2.py.
I'm especially sceptical that everything in
TestParameterGetter
andTestParameterSetter
could be removed -- there,pulse.Call
was used to create some reference values.