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

Qiskit / qiskit / 26318790443 / 1
88%
main: 88%

Build:
DEFAULT BRANCH: main
Ran 23 May 2026 01:12AM UTC
Files 945
Run time 32s
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

23 May 2026 12:15AM UTC coverage: 87.506% (-0.002%) from 87.508%
26318790443.1

push

github

web-flow
Use rust-native errors in `DAGCircuit` (#16134)

* Use rust-native errors in `DAGCircuit`

This should be step 1 for splitting `PyDAGCircuit` from `DAGCircuit`.
The following commits assure that any rust accessible method for `DAGCircuit` that:
1. Does not take a `py` token;
2. Is a public method.
does not need to depend on `PyErr` to process any errors.
It is ensured that these errors:
- Maintain the level of detail that the previous ones did.
- Correctly map to the same Python exceptions as before.

The enumeration for these errors is called `DAGCircuitInnerError` (subject to change) and is implemented with `thiserror`. I chose this over `anyhow` because it is better for specifying where the error comes from based on its variant rather than the message it contains.

* Lint: Use names instead of underscores

* Add: `anyhow!` usage for `DAGCircuitError
- Use `anyhow!` for any error types that don't require tracking of any variables coming from the `DAG` or that are part of the function arguments.
- Consolidate the amount of `DAG` error variants down from 40+ to 21. Can be consolidated further.

* Fix: Existing error formatting
- Use `this_error` to fix the formatting of current errors causing conflicts with their messages.
- Add `is_var` argument to differentiate Variables and Stretches in `VariableNotInlined`.

* Fix: consolidate `RegistryAbsentObject` error.

* Add: errors for `size` and `depth`.

* Refactor: `DAGCircuitInnerError` to `DAGError`

* Fix: Add custom `From` impl for `Infallible`
- The new implementation elides `Infallible` by using a 0-variant `match` which will be valid only with `Infallible` and return nothing.

* Fix: Add context to `WireOutOfRange`
- Remove usage of `anyhow` for `WireOutOfRange`.

* Remove: `anyhow` in `General errors
We removed `anyhow` from the circuit crate and instead assumed any error of type `String` should be assigned to a `General` error.

* Rename: `RegisterRef`, `ConcreteWire` to `RegisterType`, `Shareabl... (continued)

108438 of 123920 relevant lines covered (87.51%)

958852.57 hits per line

Source Files on job 26318790443.1
  • Tree
  • List 945
  • Changed 9
  • Source Changed 5
  • Coverage Changed 8
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 26318790443
  • c4d8bee3 on github
  • Prev Job for on main (#26253780246.1)
  • Next Job for on main (#26353094165.1)
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