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

Qiskit / qiskit / 17219028946
88%

Build:
DEFAULT BRANCH: main
Ran 25 Aug 2025 08:25PM UTC
Jobs 1
Files 850
Run time 3min
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

25 Aug 2025 07:20PM UTC coverage: 88.372% (-0.06%) from 88.433%
17219028946

push

github

web-flow
Make `BasisTranslator` rust-native. (#14659)

* TBD

* TBD 0

* TBD: Moved most of the operations in compose_transform to be rust native.

* Fix: Revert any removals related to `ParameterExpression`.
- We cannot get away with not using `ParameterExpression` to create unique parameters. Until a better alternative comes around, we should stick to using it.

* Fix: Remove `LazyLock`.
- As of 1.79, `LazyLock` was not yet made stable, these commits remove `LazyLock` in favor of `OnceLock`.

* Fix: Remove most pytokens by avoiding building a dict.
- Skipping the dict builds and using `Python::with_gil` avoids using python tokens when not necessary during the `replace_node` method in `run_basis_translator`.
    - The dictionary in question was only really needed when an instance of `ParameterExpression` is present on the gate. So it is optionally built if an instance of Parameter expression is found.
- The last remaining usage of py tokens exists during `compose_transforms` which still builds a parameter vector.

* Filter to only parameter expression when building parameter_map.
- In `replace_node` we will first filter out `ParameterExpression` keys in the parameter map. If the collection comes out empty, we don't build the mapping.

* Fix: Use rust native parameters.

* Fix: Re-add "fixedbitset"

* Fix: Convert to `Param::Float` if a real value is obtained

* Fix: Second rebase

* Add: Leverage use of rust-native `substitute_node_with_py`.

* Fix: Implement native errors for `BasisTranslator`.
- Use `Matrix::Identity` based on the provided matrices.
- Add trait `ToPyErr` that ensures any new error is converted to its respective Python counterpart.
- Remove indexing from `ParameterExpression` creation in `compose_transforms`.
- Remove incorrect coercion into value from `replace_node`.

* Add: global operation extraction from Rust.
- Modify `Target::get_non_global_operation_names` to not return an option.

* Fix: Remove unused import in python `BasisTranslato... (continued)

344 of 469 new or added lines in 5 files covered. (73.35%)

24 existing lines in 5 files now uncovered.

89888 of 101716 relevant lines covered (88.37%)

488288.24 hits per line

New Missed Lines in Diff

Lines Coverage ∆ File
3
82.81
-0.59% crates/circuit/src/parameter/parameter_expression.rs
3
57.14
crates/transpiler/src/passes/basis_translator/errors.rs
23
85.35
-11.87% crates/transpiler/src/passes/basis_translator/compose_transforms.rs
96
80.59
-5.48% crates/transpiler/src/passes/basis_translator/mod.rs

Uncovered Existing Lines

Lines Coverage ∆ File
1
85.28
-0.02% crates/circuit/src/dag_circuit.rs
2
92.53
1.03% crates/qasm2/src/lex.rs
4
82.81
-0.59% crates/circuit/src/parameter/parameter_expression.rs
5
85.35
-0.28% crates/circuit/src/operations.rs
12
97.09
-0.94% crates/qasm2/src/parse.rs
Jobs
ID Job ID Ran Files Coverage
1 17219028946.1 25 Aug 2025 08:25PM UTC 850
88.37
GitHub Action Run
Source Files on build 17219028946
  • Tree
  • List 850
  • Changed 12
  • Source Changed 5
  • Coverage Changed 11
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #17219028946
  • 4b6c45d6 on github
  • Prev Build on gh-readonly-queue/main/pr-14934-3f1719502bd60d3d05b70c43c8435166d6e2caaa (#17211260115)
  • Next Build on main (#17224291436)
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