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

Qiskit / qiskit / 17243441617
88%
main: 88%

Build:
Build:
LAST BUILD BRANCH: dynamic_range_expr
DEFAULT BRANCH: main
Ran 26 Aug 2025 04:28PM UTC
Jobs 1
Files 852
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

26 Aug 2025 03:50PM UTC coverage: 88.388% (-0.02%) from 88.405%
17243441617

push

github

web-flow
Burn inverse cancellation (#14840)

* Add Python free path to inverse_cancellation

This commit adds a Python free path to the inverse cancellation
transpiler pass. Previously, the only way to run the pass required Python
because the pass handles arbitrary gates to cancel which can include
custom gates from Python. This meant to validate the gates were equal we
would need the Python interpreter. This commit opts to add a new
entrypoint for Rust as working under the constraints that we're only
having StandardGates can lead to a more efficient implementation.
Additionally, for the preset pass managers we always used the same fixed
set of standard gates which don't take parameters to cancel. Since the
initial goal of the C API is to expose the preset pass managers this new
entrypoint only uses this set which simplifies the checking necessary.
This provides an optimized path for the preset pass managers too. For the
standalone C function in #14444 we don't need to make the pass
configurable. If we decide eventually to expand this it is trivial to add
an updated entrypoint, but for the first MVP it's not necessary.

Since this new entrypoint is also more efficient for the use case of the
preset pass managers the Python side pass is updated to use it in the
default case. This enables the preset pass managers to run the pass
faster.

Related to #14444

* Fix copy paste error in inverse pair path

The inverse pair path was incorrectly checking the same gate twice
instead of the gate and the next one in a run. This was just a copy and
paste error where code was supposed to operate on n and n+1 but it was
doing n twice. This commit fixes this and expands the testing to ensure
we have direct coverage of the new code path instead of relying on the
transpiler tests testing indirectly.

* Apply suggestions from code review

Co-authored-by: Alexander Ivrii <alexi@il.ibm.com>

* Rename collect_1q_runs_by() -> collect_runs_by()

* Fix short circuit conditions for inve... (continued)

11 of 13 new or added lines in 1 file covered. (84.62%)

29 existing lines in 3 files now uncovered.

90118 of 101957 relevant lines covered (88.39%)

489496.89 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
2
84.62
crates/cext/src/transpiler/passes/inverse_cancellation.rs

Uncovered Existing Lines

Lines Coverage ∆ File
4
92.01
0.52% crates/qasm2/src/lex.rs
12
97.09
-0.47% crates/qasm2/src/parse.rs
13
72.66
-0.53% crates/circuit/src/parameter/symbol_expr.rs
Jobs
ID Job ID Ran Files Coverage
1 17243441617.1 26 Aug 2025 04:28PM UTC 852
88.39
GitHub Action Run
Source Files on build 17243441617
  • Tree
  • List 852
  • Changed 3
  • Source Changed 0
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #17243441617
  • 9f6a2253 on github
  • Prev Build on gh-readonly-queue/main/pr-14848-dd8269969763866dd828128369a500e624c49c83 (#17238020576)
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