Skip to content

Release 0.4.0#515

Closed
elenbaasc wants to merge 1054 commits intomainfrom
release-0.4.0
Closed

Release 0.4.0#515
elenbaasc wants to merge 1054 commits intomainfrom
release-0.4.0

Conversation

@elenbaasc
Copy link
Collaborator

No description provided.

GuyPuts and others added 30 commits November 14, 2024 17:11
- Change default_gates.py into default_instructions.py.
- Change @named_gate to @named_instruction.
- Add Instruction and NonGate classes to IR.
- Add default_non_gate_set to default_instructions.py.
- Remove GateLibrary, MeasureLibrary, and ResetLibrary.
- Remove default_{directives,measures,resets}.py
- Remove Directive class from IR.
- Update tutorial.md.
- Pass tests.

TODO:
- Pass linters.
- Fix statement.get_qubit_operands() warnings.
- Do we need add_gate and add_non_gate or can we just have add_instruction?
- Do we need InstructionLibrary.{get_gate_f,get_non_gate_f} or just get_instruction_f?
* CQT-250 add barrier directives

* Happify tests

* Add tests and reformulate logic

* Apply ambitious do-over

* Apply ambitious do-over

* Happify ruff

* Apply review

* Ungatify barrier

* Move tests, remove optimise call

* Update opensquirrel/merger/general_merger.py

Co-authored-by: Roberto Turrado Camblor <rturrado@gmail.com>

* Modify merge statement

* Apply suggestions from code review

Co-authored-by: Roberto Turrado Camblor <rturrado@gmail.com>

* Fix reviews

* Sticky gate updates

* Sticky gate updates

* Reimplement rearrange_barriers.

* Fix merge_single_qubit_gates to work with barriers.
Rename test_merger.py back to test_general_merger.py.
Remove test_sticky_barriers.

* Remove flatten_irregular_list.

* Allow asserts everywhere in the code.

* Run linters.

* Remove rearrange_barriers call from within merge_single_qubit_gates.
Change test_rearrange_barriers so that it doesn't invoke merge_single_qubit_gates.

* Modify flatten_irregular_list

* Fix flatten_irregular_list

* Update check in group_linked_barriers.

* Merged + more tests

* Remake test

* Update test/merger/test_general_merger.py

Co-authored-by: Roberto Turrado Camblor <rturrado@gmail.com>

---------

Co-authored-by: Juan Boschero <juan.boschero@tno.nl>
Co-authored-by: Roberto Turrado Camblor <rturrado@gmail.com>
Bumps [mypy](https://github.com/python/mypy) from 1.12.0 to 1.13.0.
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](python/mypy@v1.12.0...v1.13.0)

---
updated-dependencies:
- dependency-name: mypy
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
- Pass linters.
- Fix statement.get_qubit_operands() warnings.

TODO:
- Do we need add_gate and add_non_gate or can we just have add_instruction?
- Do we need InstructionLibrary.{get_gate_f,get_non_gate_f} or just get_instruction_f?
…into CQT-151-Disentangle-internal-functionalities-from-compilation-passes
Bumps [coverage](https://github.com/nedbat/coveragepy) from 7.6.3 to 7.6.7.
- [Release notes](https://github.com/nedbat/coveragepy/releases)
- [Changelog](https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst)
- [Commits](coveragepy/coveragepy@7.6.3...7.6.7)

---
updated-dependencies:
- dependency-name: coverage
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
- Change default_gate_set and default_non_gate_set into Mapping's.

TODO:
- Can we keep named_gate and non_gate decorators?
- Remove named_instruction decorator.
- Add named_gate and non_gate decorator.
- Reuse wrapper implementation.
- Pass linters.
…-them-all

# Conflicts:
#	opensquirrel/circuit_builder.py
#	opensquirrel/default_instructions.py
#	opensquirrel/instruction_library.py
#	opensquirrel/ir.py
#	opensquirrel/merger/general_merger.py
#	opensquirrel/writer/writer.py
#	test/merger/test_general_merger.py
- Add Unitary class.
- Change NonGate class to NonUnitary class.

Instruction set:
- Add default_unitary_set.
- Change default_non_gate_set to default_non_unitary_set.
…ude-them-all

[CQT-267] Remove all libraries except for InstructionLibrary
Change CircuitBuilder so that it doesn't accept comments.
…l-functionalities-from-compilation-passes

[CQT-151] Move compilation passes to passes folder
…-0.27.0

Bump mkdocstrings from 0.26.2 to 0.27.0
- Offering a get_gate_set and a get_non_unitary_set API.
- On top of the previously existing get_gate_f and get_non_unitary_f.

Parser and CircuitBuilder just use the InstructionLibrary singleton.

Add Singleton at utils/singleton.py.

Pass tests and linters.

Extra (not belonging to this PR):
- Small tweaks in utils/check_mapper.py.
- Update utils/__init__.py.
- Remove utils/checks folder.
Bumps [tox](https://github.com/tox-dev/tox) from 4.21.2 to 4.23.2.
- [Release notes](https://github.com/tox-dev/tox/releases)
- [Changelog](https://github.com/tox-dev/tox/blob/main/docs/changelog.rst)
- [Commits](tox-dev/tox@4.21.2...4.23.2)

---
updated-dependencies:
- dependency-name: tox
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [pytest-cov](https://github.com/pytest-dev/pytest-cov) from 5.0.0 to 6.0.0.
- [Changelog](https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst)
- [Commits](pytest-dev/pytest-cov@v5.0.0...v6.0.0)

---
updated-dependencies:
- dependency-name: pytest-cov
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Make Parser.{_get_gate_f,_get_non_unitary_f} static methods.
dependabot bot and others added 28 commits March 5, 2025 14:20
Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 9.6.5 to 9.6.7.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](squidfunk/mkdocs-material@9.6.5...9.6.7)

---
updated-dependencies:
- dependency-name: mkdocs-material
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* [CQT-346]: Add shortest path router pass.

* [CQT-346]: Modify route function, reorganise tests and update changelog.md file.

* Fix linting error

* Update pyproject.toml

Co-authored-by: Chris Elenbaas <67630508+elenbaasc@users.noreply.github.com>

* Update test/router/test_shortest_path_router.py

Co-authored-by: Chris Elenbaas <67630508+elenbaasc@users.noreply.github.com>

* Update opensquirrel/passes/router/shortest_path_router.py

Co-authored-by: Chris Elenbaas <67630508+elenbaasc@users.noreply.github.com>

* Update opensquirrel/passes/router/shortest_path_router.py

Co-authored-by: Chris Elenbaas <67630508+elenbaasc@users.noreply.github.com>

* Add custom exception, necessary changes and modify poetry.lock file.

---------

Co-authored-by: Oancea <rares.oancea@tno.nl>
Co-authored-by: Chris Elenbaas <67630508+elenbaasc@users.noreply.github.com>
Bumps [ruff](https://github.com/astral-sh/ruff) from 0.9.9 to 0.9.10.
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](astral-sh/ruff@0.9.9...0.9.10)

---
updated-dependencies:
- dependency-name: ruff
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [mkdocstrings](https://github.com/mkdocstrings/mkdocstrings) from 0.28.2 to 0.29.0.
- [Release notes](https://github.com/mkdocstrings/mkdocstrings/releases)
- [Changelog](https://github.com/mkdocstrings/mkdocstrings/blob/main/CHANGELOG.md)
- [Commits](mkdocstrings/mkdocstrings@0.28.2...0.29.0)

---
updated-dependencies:
- dependency-name: mkdocstrings
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [tox](https://github.com/tox-dev/tox) from 4.24.1 to 4.24.2.
- [Release notes](https://github.com/tox-dev/tox/releases)
- [Changelog](https://github.com/tox-dev/tox/blob/main/docs/changelog.rst)
- [Commits](tox-dev/tox@4.24.1...4.24.2)

---
updated-dependencies:
- dependency-name: tox
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Bump libqasm from 0.6.9 to 1.0.0

Bumps [libqasm](https://github.com/QuTech-Delft/libqasm) from 0.6.9 to 1.0.0.
- [Release notes](https://github.com/QuTech-Delft/libqasm/releases)
- [Changelog](https://github.com/QuTech-Delft/libqasm/blob/develop/CHANGELOG.md)
- [Commits](QuTech-Delft/libqasm@0.6.9...1.0.0)

---
updated-dependencies:
- dependency-name: libqasm
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update poetry.lock file.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Chris Elenbaas <chris.elenbaas@tno.nl>
Update 2-qubit interactions in test circuit.
* Change parser to accept list of instruction parameters instead of single parameter.
Update libQASM to 1.1.0 in pyproject.toml and poetry.lock file.

* Update Changelog.

* Update opensquirrel/parser/libqasm/parser.py

Co-authored-by: Roberto Turrado Camblor <rturrado@gmail.com>

* Resolve comment: form Changelog entry.

---------

Co-authored-by: Roberto Turrado Camblor <rturrado@gmail.com>
* [CQT-352]: Implement A Star router pass.

* Made an Enum for heuristics and fixed variable names and docstrings.

* Update opensquirrel/passes/router/heuristics.py

Co-authored-by: Chris Elenbaas <67630508+elenbaasc@users.noreply.github.com>

* Update opensquirrel/passes/router/astar_router.py

Co-authored-by: Chris Elenbaas <67630508+elenbaasc@users.noreply.github.com>

* Update opensquirrel/passes/router/astar_router.py

Co-authored-by: Chris Elenbaas <67630508+elenbaasc@users.noreply.github.com>

* Update test/router/test_astar_router.py

Co-authored-by: Chris Elenbaas <67630508+elenbaasc@users.noreply.github.com>

* Merge branch 'develop' into CQT-346-Implement-shortest-path-Routing-pass

* Merged the distance functions into 1 function within the Enum class

---------

Co-authored-by: Oancea <rares.oancea@tno.nl>
Co-authored-by: Chris Elenbaas <67630508+elenbaasc@users.noreply.github.com>
* Add Rn gate to IR.

* Add Rn gate to codebase.
Update get_gate_arguments to accept lists of parameters.
Add general test for all supported instructions.

* Add entry to the Changelog.
Prep and update CHANGELOG.md.
@elenbaasc elenbaasc closed this Apr 28, 2025
@elenbaasc elenbaasc deleted the release-0.4.0 branch April 28, 2025 12:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants