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

Qiskit / qiskit / 16146286725
88%
main: 88%

Build:
Build:
LAST BUILD BRANCH: substitute_pi4_rotations
DEFAULT BRANCH: main
Ran 08 Jul 2025 03:06PM UTC
Jobs 1
Files 829
Run time 10min
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

08 Jul 2025 02:35PM UTC coverage: 87.763% (+0.02%) from 87.748%
16146286725

push

github

web-flow
Move classical variables and stretches to CircuitData (#14421)

* Add groundwork for vars storage in CircuitData

Adding basic support for vars and identifier storage and access, using
the same approach implemented in DAGCircuit with `ObjectRegsitry` and
various var-types structs. In addition updating `QuantumCircuit` to use
`CircuitData` for input vars.

* Handle captured and declared vars in QuantumCircuit

* Move stretch to CircuitData

* Handle vars & stretches in Rust in dag_to_circuit

* Add pickle/unpickle support + minor misc. stuff

* Use CircuitData'a vars/stretches natively in QuantumCircuitData

* Clone interners in CircuitData::copy_empty_like

* Add scoping rule checks to CircuitData

This commit adds checks to CircuitData::add_var and CircuitData::add_stretch
functions to enforce variable scoping rules. It also includes minor refactoring
and miscellaneous cleanups.

* Update BlueprintCircuit & twirling and cleanup

* Add unit tests. Some refactoring and cleanups

* Minor touches

* Lint and comment

* Fix metadata handling following changes in high_level_synthesis.rs

Since this PR no longer uses a custom function to convert a circuit to DAG in
run_high_level_synthesis, we should use DAGCircuit::from_circuit
with QuantumCircuitData initialized with both name and metadata from
the original DAG.

* Address some of Jake's review comments

Relax equality checking to allow variable order independence (modulo the declared stretches).
Minor refactoring.

* Use the `VarsMode` enum in Python's `copy_empty_like`

Following PR #14557, this commit switches to using the `VarsMode` enum
in the Pyo3 function `CircuitData::copy_empty_like`.
Additionaly, since the enum is now used both by `CircuitData` and `DAGCircuit`
and in various placed, it has been moved to the crate level.

* Update crates/circuit/src/circuit_data.rs

Co-authored-by: Raynel Sanchez <87539502+raynelfss@users.noreply.github.com>

* Update qiskit/circuit/quantumcircuit.py

Co-authore... (continued)

570 of 604 new or added lines in 11 files covered. (94.37%)

25 existing lines in 7 files now uncovered.

81609 of 92988 relevant lines covered (87.76%)

547445.01 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
1
80.45
0.0% crates/cext/src/circuit.rs
1
88.11
-0.47% crates/transpiler/src/passes/high_level_synthesis.rs
2
85.49
0.11% crates/circuit/src/dag_circuit.rs
30
91.92
0.36% crates/circuit/src/circuit_data.rs

Uncovered Existing Lines

Lines Coverage ∆ File
1
91.92
0.36% crates/circuit/src/circuit_data.rs
1
93.63
-0.25% crates/qasm2/src/expr.rs
1
93.37
0.0% crates/transpiler/src/passes/unitary_synthesis.rs
2
73.9
-0.04% crates/circuit/src/symbol_expr.rs
6
91.24
-1.29% crates/qasm2/src/lex.rs
6
96.62
-0.47% crates/qasm2/src/parse.rs
8
85.49
0.11% crates/circuit/src/dag_circuit.rs
Jobs
ID Job ID Ran Files Coverage
1 16146286725.1 08 Jul 2025 03:06PM UTC 829
87.76
GitHub Action Run
Source Files on build 16146286725
  • Tree
  • List 829
  • Changed 24
  • Source Changed 18
  • Coverage Changed 18
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #16146286725
  • 2d73c6b2 on github
  • Prev Build on gh-readonly-queue/main/pr-14317-3f247830137c7d584e1e76b2f653b4e84306796f (#16144776592)
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