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

Qiskit / qiskit / 22955033271
88%

Build:
DEFAULT BRANCH: main
Ran 11 Mar 2026 02:01PM UTC
Jobs 1
Files 907
Run time 2min
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

11 Mar 2026 01:03PM UTC coverage: 87.83% (+0.1%) from 87.702%
22955033271

push

github

web-flow
Add `qiskit.capi` module (#15711)

* Add `qiskit.capi` module

This adds a basic `qiskit.capi` module for Python-space interaction with
the C API.  The two initial functions included are `get_include` and
`get_lib`, to get the package include directory and shared-object
library containing the C-API exported symbols, respectively.

Note that while the included header files _are_ complete information to
build against the C API, the file returned from `get_lib` is not
generally useful as part of a _build_ system, but can be used to
interact with the C API live through a Python session.

I hope to follow this patch with two more:

* provide a second "mode" for the packaged header files that allows
  building safe Python extension modules against the C API.  This would
  mean that all the C API function names will be `#define`'d to function
  pointers looked up in a static table stored inside a `PyCapsule` that
  is initialised as part of `_accelerate`'s initialisation.

* generate a `ctypes` wrapper file for the C API as part of the
  `_accelerate` (`pyext`) build script, which would expose all of the C
  API functions directly to Python space, potentially allowing them to
  be jitted through Numba, or allowing direct tests of C API
  functionality (without the manually-written file currently in our test
  suite).

Co-authored-by: Max Rossmannek <max@rossmannek.de>

* Vendor `generated-files` handling from `setuptools-rust`

We need https://github.com/PyO3/setuptools-rust/pull/574 (or something
akin to it) to handle the movement of the generated files from the build
script to the output. This is not yet ready for merge, and is highly
unlikely to be ready in time for the Qiskit 2.4.0 release (or at least
2.4.0rc1), so to avoid blocking ourselves, we vendor in a
monkey-patching reimplementation of the code temporarily.

The allowed range of `setuptools-rust` is _probably_ larger than the
hard pin, but the monkey-patch is so invasive and v1.12.0 is
sufficien... (continued)

33 of 33 new or added lines in 4 files covered. (100.0%)

8 existing lines in 4 files now uncovered.

101321 of 115361 relevant lines covered (87.83%)

1169590.87 hits per line

Uncovered Existing Lines

Lines Coverage ∆ File
1
86.99
0.0% crates/circuit/src/parameter/parameter_expression.rs
1
96.02
-0.18% crates/transpiler/src/passes/unitary_synthesis/decomposers.rs
2
92.03
0.0% crates/qasm2/src/lex.rs
4
74.1
-0.12% crates/circuit/src/parameter/symbol_expr.rs
Jobs
ID Job ID Ran Files Coverage
1 22955033271.1 11 Mar 2026 02:01PM UTC 907
87.83
GitHub Action Run
Source Files on build 22955033271
  • Tree
  • List 907
  • Changed 8
  • Source Changed 2
  • Coverage Changed 8
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #22955033271
  • 676863ee on github
  • Prev Build on gh-readonly-queue/main/pr-15792-7e3ecd2161713bf024eb9bdb7a36a0a0696a6280 (#22931140556)
  • Next Build on main (#22964898919)
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

© 2026 Coveralls, Inc