Skip to content
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

Support for qiskit 1.0 #906

Merged
merged 10 commits into from
Feb 22, 2024
Merged

Support for qiskit 1.0 #906

merged 10 commits into from
Feb 22, 2024

Conversation

bharat-thotakura
Copy link
Contributor

@bharat-thotakura bharat-thotakura commented Feb 21, 2024

Adds the bare minimum changes needed to support running qiskit 1.0.0

Changes in this PR:

Copy link

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

@bharat-thotakura bharat-thotakura linked an issue Feb 21, 2024 that may be closed by this pull request
Copy link
Contributor

@richrines1 richrines1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is the 1.0.0 pin necessary? it seems like all of the changes in this pr would be compatible with qiskit>=0.45.0, and the linked upgrading issues shouldn't matter if e.g. someone has 0.45.1 and wants to stay on that version

(we definitely do have to drop 0.44.* though because the qiskit.extensions gates weren't moved until 0.45.0)

cirq-superstaq/cirq_superstaq/compiler_output.py Outdated Show resolved Hide resolved
cirq-superstaq/cirq_superstaq/compiler_output.py Outdated Show resolved Hide resolved
@bharat-thotakura
Copy link
Contributor Author

bharat-thotakura commented Feb 21, 2024

is the 1.0.0 pin necessary? it seems like all of the changes in this pr would be compatible with qiskit>=0.45.0, and the linked upgrading issues shouldn't matter if e.g. someone has 0.45.1 and wants to stay on that version

(we definitely do have to drop 0.44.* though because the qiskit.extensions gates weren't moved until 0.45.0)

I was thinking about dropping the qiskit-ibm-provider>=0.7.2 req actually, and it seems like we may need to because of the failing qiskit-superstaq coverage check. If we do that, then I am imagining we go back to using qiskit.qpy.dump(circuits, buf) but in light of

# Use `qiskit_ibm_provider.qpy` for serialization, which is a delayed copy of `qiskit.qpy`.
# Deserialization can't be done with a QPY version older than that used for serialization, so
# this prevents us from having to force users to update Qiskit the moment we do (this is what
# Qiskit itself does for circuit submission)
we may want to use something like qiskit.qpy.dump(circuits, buf, version=qiskit.qpy.common.QPY_COMPATIBILITY_VERSION). But version was only added in 1.0.0 so it may cause issues for users with qiskit 0.45.1. If not, I think you're right that we should support qiskit>=0.45.0.

Edit: Looks like my concerns can be addressed by bumping to qiskit-ibm-provider>=0.9.0 and keeping qiskit>=0.45.0

@bharat-thotakura bharat-thotakura marked this pull request as ready for review February 21, 2024 22:50
bharat-thotakura and others added 2 commits February 21, 2024 17:19
Co-authored-by: richrines1 <85512171+richrines1@users.noreply.github.com>
Copy link
Contributor

@richrines1 richrines1 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm!

@bharat-thotakura bharat-thotakura merged commit be96674 into main Feb 22, 2024
17 checks passed
@bharat-thotakura bharat-thotakura deleted the qiskit-1-support branch February 22, 2024 21:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Revert Qiskit 1.0 pin
2 participants