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

Qiskit / qiskit / 17330105778
88%

Build:
DEFAULT BRANCH: main
Ran 29 Aug 2025 05:57PM UTC
Jobs 1
Files 862
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

29 Aug 2025 04:48PM UTC coverage: 88.357% (-0.07%) from 88.43%
17330105778

push

github

web-flow
Add angle bound support to target constraints (#14406)

* Add angle bound support to target constraints

This commit adds a new capability to the target for representing angle
bounds on a gate in the target and a transpiler pass to enforce the
bounds are respected. To enable this functionality it requires that the
target constructor provides a function to do the angle wrapping/folding
so that the transpiler knows how to do the transformation of arbitrary
gate appropriately. Since the transpiler can't make any assumption about
the bounds or the angles in use, or the gates that will have bounds
applied. So coming up with a general transpiler pass is not possible,
however a user providing the conversion function when applying a bound
makes it possible for the preset pass maangers to reason about gates
with angle bounds and work with them.

This new feature is strictly additive to the Target which keeps it
backwards compatible. It does mean that for existing workflows a user
will need to opt-in to checking the angle bounds.

Fixes #13784

* Fix lint

* Add missing pickle of angle bounds

* Fix fold rzz function and fix failing test

* Add in bounds angle to workflow test

* Missing imports from release note example

* Handle no-target in translation generation

* Fix release note example

* Fix gitignore

* Pivot to standalone registry

This commit pivots the user interface to the wrapping callbacks. Instead
of putting it all in the target this adds a separate data structure
analgous to the equivalence library for the basis translator but for
WrapAngles. This makes the target solely concerned with the QPU
constraints (which is it's purpose) and the backend provider is
responsible for populating the global registry instance to make the pass
work.

* Change default on check_angle_bounds param

* Rename gate_has_angle_bound -> gate_has_angle_bounds

* Fix lint

* Remove unsound PyCapsule usage

Returning a PyCapsule of the function pointer from Rust to pickl... (continued)

211 of 291 new or added lines in 13 files covered. (72.51%)

33 existing lines in 4 files now uncovered.

91269 of 103296 relevant lines covered (88.36%)

480443.65 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
5
90.38
crates/transpiler/src/passes/wrap_angles.rs
5
77.27
crates/transpiler/src/target/bounds.rs
15
82.95
-17.05% crates/transpiler/src/passes/gates_in_basis.rs
22
84.53
-0.68% crates/transpiler/src/target/mod.rs
33
54.79
crates/transpiler/src/angle_bound_registry.rs

Uncovered Existing Lines

Lines Coverage ∆ File
1
82.79
0.0% crates/circuit/src/parameter/parameter_expression.rs
7
72.78
-0.25% crates/circuit/src/parameter/symbol_expr.rs
7
91.24
-1.55% crates/qasm2/src/lex.rs
18
96.62
-1.42% crates/qasm2/src/parse.rs
Jobs
ID Job ID Ran Files Coverage
1 17330105778.1 29 Aug 2025 05:57PM UTC 862
88.36
GitHub Action Run
Source Files on build 17330105778
  • Tree
  • List 862
  • Changed 16
  • Source Changed 11
  • Coverage Changed 16
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #17330105778
  • a7764569 on github
  • Prev Build on gh-readonly-queue/main/pr-14965-34e9f03933eb6db31a41846a51f1ece36d271690 (#17325035211)
  • Next Build on main (#17407774945)
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