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

Qiskit / qiskit / 26518729305
88%
main: 88%

Build:
Build:
LAST BUILD BRANCH: gh-readonly-queue/stable/2.4/pr-16319-fee118b7b5f0fbf70175f7b2efa147eabab6d0a2
DEFAULT BRANCH: main
Ran 27 May 2026 03:15PM UTC
Jobs 1
Files 944
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

27 May 2026 02:48PM UTC coverage: 87.609% (-0.003%) from 87.612%
26518729305

push

github

web-flow
Use public `qiskit.circuit` APIs in `qiskit.synthesis` (#16253)

* Use public `qiskit.circuit` APIs in `qiskit.synthesis`

We have a long-standing problem of `qiskit.circuit` reversing the module
hierarchy and including import-time imports of `qiskit.synthesis`.  The
synthesis module is supposed to be higher level than `circuit`, and only
used to provide the "default" (`Instruction.definition`) syntheses of
various library objects.  Those imports should be done at runtime of the
`_define` methods.

This ensures that `qiskit.synthesis` is only using `qiskit.circuit` via
its public interface, which is how the module API-boundary separation is
supposed to work.  This is a little more code churn than is ideal, but
my hope is that this is a good stepping stone along the way to properly
fixing the import structure of Qiskit, and that now `synthesis`'s
imports look right everywhere, any new files will copy the correct
style.

I've done the same for `qiskit.quantum_info` where possible, but there's
a couple of places that are using items that _aren't_ publicly exported
(`operators.predicates` is a big one, and might be an oversight in the
`qiskit.quantum_info` module).

* Remove unused import

96 of 98 new or added lines in 35 files covered. (97.96%)

21 existing lines in 5 files now uncovered.

108598 of 123957 relevant lines covered (87.61%)

960796.0 hits per line

Uncovered Changes

Lines Coverage ∆ File
1
97.06
qiskit/synthesis/multi_controlled/gray_code.py
1
89.76
0.53% qiskit/synthesis/two_qubit/xx_decompose/decomposer.py

Coverage Regressions

Lines Coverage ∆ File
7
73.8
-0.29% crates/circuit/src/parameter/symbol_expr.rs
6
91.52
-0.51% crates/qasm2/src/lex.rs
6
97.63
0.47% crates/qasm2/src/parse.rs
1
93.82
-0.24% crates/qasm2/src/expr.rs
1
21.72
0.72% qiskit/synthesis/unitary/qsd.py
Jobs
ID Job ID Ran Files Coverage
1 26518729305.1 27 May 2026 03:15PM UTC 944
87.61
GitHub Action Run
Source Files on build 26518729305
  • Tree
  • List 944
  • Changed 39
  • Source Changed 35
  • Coverage Changed 31
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #26518729305
  • f0fae6f3 on github
  • Prev Build on gh-readonly-queue/main/pr-16254-973c31b83a6e1556bdf80fb684f941b50cedffd0 (#26508690579)
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