Skip to content

Enable Qiskit 2.0 support#2754

Merged
billti merged 5 commits intomainfrom
iadavis/qiskit-2.0-support
Oct 30, 2025
Merged

Enable Qiskit 2.0 support#2754
billti merged 5 commits intomainfrom
iadavis/qiskit-2.0-support

Conversation

@idavis
Copy link
Collaborator

@idavis idavis commented Oct 23, 2025

Closes #2486

This work introduces a breaking change effectively removing the QirTarget class based on issues and doc updates from Qiskit, see Qiskit/qiskit#15142 (comment) .

PR Summary: Qiskit 2.x enablement

  • Broadened optional qiskit dependency ranges (pyproject.toml, qdk_package/pyproject.toml) so our pip and meta packages install with either Qiskit [1.22, 2.0) or [2.0,3.0).
  • Refactored QirTarget into a factory (create_target) and updated BackendBase to request it, matching the Qiskit 2.0 Target API and allowing callers to inject a qubit count without subclassing.
  • Hardened integration and resource-estimator tests for multi-version runs: install requirements once, then execute each suite against both Qiskit major versions, capture version-dependent logical-count baselines, and rely on skip_transpilation where needed.
  • Adjusted notebook automation so only notebooks with “qiskit” in their filename execute under the version matrix; other samples still run once per build.
  • Trimmed shared test requirements (Qiskit now supplied via the build matrix) and touched the Qiskit sample notebook metadata to keep it aligned.

@idavis idavis self-assigned this Oct 23, 2025
@idavis idavis mentioned this pull request Oct 23, 2025
@idavis idavis force-pushed the iadavis/qiskit-2.0-support branch from 1393ced to a20779d Compare October 28, 2025 16:06
Copy link
Collaborator

@swernli swernli left a comment

Choose a reason for hiding this comment

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

A few minor comments and nitpicks, but otherwise a much more scoped update that I was worried it would be!

@idavis
Copy link
Collaborator Author

idavis commented Oct 29, 2025

@microsoft-github-policy-service rerun

@idavis idavis added this pull request to the merge queue Oct 30, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Oct 30, 2025
@billti billti merged commit 7421e7d into main Oct 30, 2025
40 of 46 checks passed
@billti billti deleted the iadavis/qiskit-2.0-support branch October 30, 2025 23:14
billti pushed a commit that referenced this pull request Nov 14, 2025
Closes #2486

This work introduces a breaking change effectively removing the
`QirTarget` class based on issues and doc updates from Qiskit, see
Qiskit/qiskit#15142 (comment) .

PR Summary: Qiskit 2.x enablement

- Broadened optional qiskit dependency ranges (pyproject.toml,
qdk_package/pyproject.toml) so our pip and meta packages install with
either Qiskit `[1.22, 2.0)` or `[2.0,3.0)`.
- Refactored QirTarget into a factory (create_target) and updated
`BackendBase` to request it, matching the Qiskit 2.0 Target API and
allowing callers to inject a qubit count without subclassing.
- Hardened integration and resource-estimator tests for multi-version
runs: install requirements once, then execute each suite against both
Qiskit major versions, capture version-dependent logical-count
baselines, and rely on `skip_transpilation` where needed.
- Adjusted notebook automation so only notebooks with “qiskit” in their
filename execute under the version matrix; other samples still run once
per build.
- Trimmed shared test requirements (Qiskit now supplied via the build
matrix) and touched the Qiskit sample notebook metadata to keep it
aligned.

---------

Co-authored-by: Stefan J. Wernli <swernli@microsoft.com>
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.

Qiskit 2 support

4 participants