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

Qiskit / qiskit / 14525693623
88%

Build:
DEFAULT BRANCH: main
Ran 17 Apr 2025 10:32PM UTC
Jobs 1
Files 789
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

17 Apr 2025 09:23PM UTC coverage: 88.265% (+0.05%) from 88.213%
14525693623

push

github

web-flow
Add new API for inserting multiple operations into the `DAGCircuit` in Rust. (#13335)

* Initial: Add `DAGCircuitConcat` struct and new insertion API.
- Add struct that allows continuous addition of instructions into the back of the `DAGCircuit` by performing edge modifications in the output nodes at the end of the additions.
- The new struct includes the following new methods:
    - `push_operation_back` which pushes a valid `PackedInstruction` into the back of the `DAGCircuit`. It behaves very similarly to `push_back`.
    - `apply_operation_back` which inserts a new operation into the back of the `DAGCircuit`. It has two variants which depend on the ownership of the bit indices (`Qubit`, `Clbit`).
    - `pack_instruction`: private method that basically does just that, it creates a valid instance of `PackedInstruction` based on other provided atributes.
- Modified `DAGCircuit::extend` to use this new API, without any considerable losses.

* Add: `OwnedOrSlice<T>`
- Add struct that allows usage of both slice or owned collections of bit indices.
- Leverage use of `as_concat()` in `circuit_to_dag`.

* Add: Optional qargs/cargs in `apply_operation_back`
- Leverage usage of new methods in `UnitarySynthesis` after #13141 merged.

* Fix: Leverage usage in `BasisTranslator`

* Fix: Replace `OnceCell` with `OnceLock`

* Fix: Remove `SliceOrOwned` in favor of `Cow`

* Fix: Expose the interners via references within `DAGCircuitConcat`.

* Refactor: `DAGCircuit::as_concat` to `DAGCircuit::into_concat`.
- Allow `DAGCircuitConcat` to take ownership of the original `DAGCircuit` it is being called from, and allow `DAGCircuitConcat::end` to return the original `DAGCircuit`.
- Bypass taking ownership of the `DAGCircuit` during `DAGCircuit::extend` calls by swapping with a temporary replacement.

* Fix: Remove inefficient code from `UnitarySynthesis`
- A previous commit added some inefficient code into the `apply_synth_dag` function in `UnitarySynthesis`. The newer co... (continued)

281 of 283 new or added lines in 3 files covered. (99.29%)

5 existing lines in 2 files now uncovered.

73818 of 83632 relevant lines covered (88.27%)

440297.22 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
2
86.88
0.2% crates/circuit/src/dag_circuit.rs

Uncovered Existing Lines

Lines Coverage ∆ File
2
89.48
0.51% crates/accelerate/src/basis/basis_translator/mod.rs
3
91.48
0.25% crates/qasm2/src/lex.rs
Jobs
ID Job ID Ran Files Coverage
1 14525693623.1 17 Apr 2025 10:32PM UTC 789
88.27
GitHub Action Run
Source Files on build 14525693623
  • Tree
  • List 789
  • Changed 7
  • Source Changed 3
  • Coverage Changed 7
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #14525693623
  • ba4dd7a0 on github
  • Prev Build on gh-readonly-queue/main/pr-14219-13db91cdcb3978863cbf66076453b5a82f686717 (#14524778404)
  • Next Build on main (#14535929003)
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