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

Qiskit / qiskit / 17301318576
88%

Build:
DEFAULT BRANCH: main
Ran 28 Aug 2025 04:51PM UTC
Jobs 1
Files 857
Run time 3min
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

28 Aug 2025 03:35PM UTC coverage: 88.442% (+0.03%) from 88.409%
17301318576

push

github

web-flow
Transpile C API (#14760)

* Add transpiler C API

This commit adds the initial transpiler C API to Qiskit, it provides a
function for running the transpiler to compile a single circuit for a
provided target. This function is not designed to replace the Python
transpiler and should only be used with circuits defined solely using
the C API. It is backed by the same Rust implementation of the
trnaspiler passes, but when coming from the C/Rust API several
assumptions are made that the circuits only contain the feature set
defined in the C API and the results are only valid when called
with circuits built solely using the C API.

As this function is the initial version of the transpiler in C/Rust
there are still a few limitations beyond just the circuits come from C
and only have the features exposed to C. The first is that multi qubit
unitary synthesis does not exist in C yet, so if you construct any
3 or more qubit UnitaryGates the transpiler will error. Additionally,
there is no scheduling stage yet in the C transpiler yet, so there
are no options for scheduling circuits available. Finally, there is no
pluggability to the transpiler, unlike Python where the preset pass
managers and the transpile() function provide a great deal of
configurability and customization via composing your own passes or
using the plugin interface, these concepts do no exist in the C
transpiler. The limitations will be addressed in future releases,
but this first function is about enabling initial circuit
compilation support from C.

* Add docs files

* Fix routing and level 0

* Fix clippy

* Fix VF2 layout allocation with idle qubits

Co-authored-by: Jake Lishman <jake.lishman@ibm.com>
Co-authored-by: Eli Arbel <46826214+eliarbel@users.noreply.github.com>

* Remove commented out vf2postlayout code

Co-authored-by: Jake Lishman <jake@binhbar.com>

* Run idle qubits test

* Add release note

* Move MinPointState definition outside transpile func and simplify interface

* Apply s... (continued)

651 of 732 new or added lines in 8 files covered. (88.93%)

13 existing lines in 5 files now uncovered.

90993 of 102884 relevant lines covered (88.44%)

482348.14 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
5
91.18
-0.22% crates/transpiler/src/passes/vf2/vf2_layout.rs
6
97.72
-0.68% crates/transpiler/src/transpile_layout.rs
34
58.02
crates/cext/src/transpiler/transpile_function.rs
36
93.01
crates/transpiler/src/transpiler.rs

Uncovered Existing Lines

Lines Coverage ∆ File
1
82.8
0.0% crates/circuit/src/parameter/parameter_expression.rs
1
92.24
-0.1% crates/transpiler/src/passes/unitary_synthesis.rs
1
91.18
-0.22% crates/transpiler/src/passes/vf2/vf2_layout.rs
2
92.53
0.77% crates/qasm2/src/lex.rs
8
72.86
-0.33% crates/circuit/src/parameter/symbol_expr.rs
Jobs
ID Job ID Ran Files Coverage
1 17301318576.1 28 Aug 2025 04:51PM UTC 857
88.44
GitHub Action Run
Source Files on build 17301318576
  • Tree
  • List 857
  • Changed 17
  • Source Changed 8
  • Coverage Changed 13
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #17301318576
  • b712f98b on github
  • Prev Build on gh-readonly-queue/main/pr-14956-28aa4bdaad6dd8281d3fe304555312b5c82f78dd (#17299800530)
  • Next Build on main (#17301825722)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc