• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Qiskit / qiskit / 37006712768
88%
main: 88%

Build:
Build:
LAST BUILD BRANCH: query-c-custom
DEFAULT BRANCH: main
Ran 02 Oct 2026 12:51PM UTC
Jobs 1
Files 987
Run time 6min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

02 Oct 2026 12:26PM UTC coverage: 88.076% (-0.05%) from 88.121%
37006712768

push

github

web-flow
Add implementation of IR handle extraction (#17103)

* Add implementation of IR handle extraction

This is unused in this commit, but is the extraction logic for creating
an internal dynamic implementation of "how to expose this object to
Python", which will be held by passes and the Rust--Python `PassManager`
boundary.

* Split `QuantumCircuit` and `CircuitData` as IRs

There is a significant difference in Python space between the full
`QuantumCircuit` and `CircuitData` IRs, namely `QuantumCircuit.layout`.
The previous system of automatically converting from one to the other in
the native layout _always_ threw away the `layout`, with no way to write
passes on `QuantumCircuit` (or more likely, converting to it at the end)
that didn't throw it away again at the termination of the pass.  By
making a separation between `CircuitData` and `QuantumCircuit`, using
the existing `QuantumCircuit._data` public API field, and requiring an
explicit lowering pass, we push the burden of managing the
Python-specific state into Python-aware passes.

In order to allow custom passes to spell the IR type of
`QuantumCircuit._data`, we have to add the name `CircuitData` to the
public API.

* Add `QuantumCircuit.from_circuit_data` to API

Since we already made `CircuitData` a nameable type that implements
`IR`, we need a way to get back to a full `QuantumCircuit` to complete
the interop story there.

30 of 117 new or added lines in 6 files covered. (25.64%)

8 existing lines in 3 files now uncovered.

122883 of 139520 relevant lines covered (88.08%)

940054.1 hits per line

Uncovered Changes

Lines Coverage ∆ File
84
6.67
-93.33% crates/pyext/src/passmanager.rs
3
85.93
-0.04% crates/circuit/src/dag_circuit.rs

Coverage Regressions

Lines Coverage ∆ File
5
81.53
-0.17% crates/circuit/src/parameter/symbol_expr.rs
2
92.54
0.77% crates/qasm2/src/lex.rs
1
90.32
0.0% crates/circuit/src/parameter/parameter_expression.rs
Jobs
ID Job ID Ran Files Coverage
1 37006712768.1 02 Oct 2026 12:51PM UTC 987
88.08
GitHub Action Run
Source Files on build 37006712768
  • Tree
  • List 987
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #37006712768
  • 3dcab5d7 on github
  • Prev Build on gh-readonly-queue/main/pr-17089-ca000f406e959bf8306bf8a6c31a9d4e6d05f23e (#37006711080)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc