-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Remove symengine from the requirements list #14389
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
Conversation
In Qiskit#13278 we removed our dependency on symengine and replaced it with our own symbolic engine. However that PR neglected to remove symengine from the requirements list. This commit corrects this oversight and removes it from the requirements list. It also updates the release notes to make them a bit more prescise and document the change in requirements and potential behavior differences with the new engine.
One or more of the following people are relevant to this code:
|
Pull Request Test Coverage Report for Build 15171648126Details
💛 - Coveralls |
I think we can actually drop sympy from the requirements list too. I'll give a try and push up a commit if we can. EDIT: I looked into this, it is possible to remove but there is some more work needed to address the internals of a couple functions to remove a dependency there. I'll work on this in a parallel PR. |
550cf36
to
6980c83
Compare
During QPY deserialization of old payloads that include pulse schedules we are unable to construct the pulse schedule from the payload. For circuits that include pulse gates the strategy for loading those payloads is to emit a warning that the pulse component will be omitted and create the rest of the circuit like normal. To do this the qpy deserialization has to read the size of the payload to seek to the right position. However we don't need to actually parse the expression because it's never used. This commit removes the parsing step it is unnecessary after we do the read that will seek the cursor appropriately.
releasenotes/notes/parameter-expression-rs-6fddbb2556b7e1f7.yaml
Outdated
Show resolved
Hide resolved
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.
There's a merge conflict, otherwise lgtm!
Co-authored-by: Julien Gacon <gaconju@gmail.com>
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.
LGTM, thanks for the updates!
* Remove symengine from the requirements list In Qiskit#13278 we removed our dependency on symengine and replaced it with our own symbolic engine. However that PR neglected to remove symengine from the requirements list. This commit corrects this oversight and removes it from the requirements list. It also updates the release notes to make them a bit more prescise and document the change in requirements and potential behavior differences with the new engine. * Add new optional extra variant for symengine for QPY * Stop parsing sympy and symengine pulse expressions During QPY deserialization of old payloads that include pulse schedules we are unable to construct the pulse schedule from the payload. For circuits that include pulse gates the strategy for loading those payloads is to emit a warning that the pulse component will be omitted and create the rest of the circuit like normal. To do this the qpy deserialization has to read the size of the payload to seek to the right position. However we don't need to actually parse the expression because it's never used. This commit removes the parsing step it is unnecessary after we do the read that will seek the cursor appropriately. * Update releasenotes/notes/parameter-expression-rs-6fddbb2556b7e1f7.yaml Co-authored-by: Julien Gacon <gaconju@gmail.com> * Remove unused arguments --------- Co-authored-by: Julien Gacon <gaconju@gmail.com>
Summary
In #13278 we removed our dependency on symengine and replaced it with our own symbolic engine. However that PR neglected to remove symengine from the requirements list. This commit corrects this oversight and removes it from the requirements list. It also updates the release notes to make them a bit more precise and document the change in requirements and potential behavior differences with the new engine.
Details and comments