From 815bee14dc508d710438880ec746159f998e5371 Mon Sep 17 00:00:00 2001 From: Jim Garrison Date: Mon, 14 Aug 2023 22:43:11 -0700 Subject: [PATCH 1/6] Prepare 0.3.0 release --- docs/circuit_cutting/explanation/index.rst | 2 +- .../tutorials/01_gate_cutting_to_reduce_circuit_width.ipynb | 2 +- .../tutorials/02_gate_cutting_to_reduce_circuit_depth.ipynb | 2 +- pyproject.toml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/circuit_cutting/explanation/index.rst b/docs/circuit_cutting/explanation/index.rst index e8e187a13..ab89d1698 100644 --- a/docs/circuit_cutting/explanation/index.rst +++ b/docs/circuit_cutting/explanation/index.rst @@ -32,7 +32,7 @@ Key terms Current limitations ------------------- -* ``PauliList`` is the only supported observable format until no sooner than CKT v0.3.0. +* ``PauliList`` is the only supported observable format until no sooner than CKT v0.4.0. References ---------- diff --git a/docs/circuit_cutting/tutorials/01_gate_cutting_to_reduce_circuit_width.ipynb b/docs/circuit_cutting/tutorials/01_gate_cutting_to_reduce_circuit_width.ipynb index eb6673e43..7cf3a4a4b 100644 --- a/docs/circuit_cutting/tutorials/01_gate_cutting_to_reduce_circuit_width.ipynb +++ b/docs/circuit_cutting/tutorials/01_gate_cutting_to_reduce_circuit_width.ipynb @@ -75,7 +75,7 @@ "source": [ "### Specify some observables\n", "\n", - "Currently, only `Pauli` observables with phase equal to 1 are supported. Full support for `SparsePauliOp` is expected in CKT v0.3.0." + "Currently, only `Pauli` observables with phase equal to 1 are supported. Full support for `SparsePauliOp` is expected in CKT v0.4.0." ] }, { diff --git a/docs/circuit_cutting/tutorials/02_gate_cutting_to_reduce_circuit_depth.ipynb b/docs/circuit_cutting/tutorials/02_gate_cutting_to_reduce_circuit_depth.ipynb index 36fc29f8e..d55e1af08 100644 --- a/docs/circuit_cutting/tutorials/02_gate_cutting_to_reduce_circuit_depth.ipynb +++ b/docs/circuit_cutting/tutorials/02_gate_cutting_to_reduce_circuit_depth.ipynb @@ -76,7 +76,7 @@ "source": [ "### Specify some observables\n", "\n", - "Currently, only `Pauli` observables with phase equal to 1 are supported. Full support for `SparsePauliOp` is expected in CKT v0.3.0." + "Currently, only `Pauli` observables with phase equal to 1 are supported. Full support for `SparsePauliOp` is expected in CKT v0.4.0." ] }, { diff --git a/pyproject.toml b/pyproject.toml index c94585123..1961fd921 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "circuit-knitting-toolbox" -version = "0.2.0" +version = "0.3.0" description = "A software prototype for a circuit knitting toolbox which connects user applications with runtime primitives" readme = "README.md" license = {file = "LICENSE.txt"} From d6909ec26284306605f431f382ac2c6e0ec9a224 Mon Sep 17 00:00:00 2001 From: Jim Garrison Date: Fri, 18 Aug 2023 06:14:31 -0700 Subject: [PATCH 2/6] Prelude note and revise a few others --- .../deprecate-decompose-gates-318e0393be733b52.yaml | 2 +- releasenotes/notes/ef-results-bug-5aa84ca5611dd827.yaml | 2 +- releasenotes/notes/prepare-0.3-d9049766293a3be7.yaml | 9 +++++++++ .../notes/update-qpdgate-labels-612e7d355ae1c1a3.yaml | 6 +++--- 4 files changed, 14 insertions(+), 5 deletions(-) create mode 100644 releasenotes/notes/prepare-0.3-d9049766293a3be7.yaml diff --git a/releasenotes/notes/deprecate-decompose-gates-318e0393be733b52.yaml b/releasenotes/notes/deprecate-decompose-gates-318e0393be733b52.yaml index 95c3f5253..e3644e71d 100644 --- a/releasenotes/notes/deprecate-decompose-gates-318e0393be733b52.yaml +++ b/releasenotes/notes/deprecate-decompose-gates-318e0393be733b52.yaml @@ -1,4 +1,4 @@ --- deprecations: - | - :func:`~circuit_knitting_toolbox.circuit_cutting.decompose_gates` is deprecated and will be removed no sooner than v0.4.0. Users should migrate to the identical :func:`~cicuit_knitting_toolbox.circuit_cutting.cut_gates` function. + :func:`.decompose_gates` is deprecated and will be removed no sooner than v0.4.0. Users should migrate to the identical :func:`.cut_gates` function. diff --git a/releasenotes/notes/ef-results-bug-5aa84ca5611dd827.yaml b/releasenotes/notes/ef-results-bug-5aa84ca5611dd827.yaml index 30f9b0297..976ab8ee1 100644 --- a/releasenotes/notes/ef-results-bug-5aa84ca5611dd827.yaml +++ b/releasenotes/notes/ef-results-bug-5aa84ca5611dd827.yaml @@ -2,5 +2,5 @@ fixes: - | Fixed a bug in :class:`~circuit_knitting.forging.EntanglementForgingGroundStateSolver` which was causing - ``AttributeError``\ s when instantiating the `~circuit_knitting.forging.EntanglementForgingResult` in certain + ``AttributeError``\ s when instantiating the :class:`~circuit_knitting.forging.EntanglementForgingResult` in certain conditions, such as when reducing the orbitals over which to solve. diff --git a/releasenotes/notes/prepare-0.3-d9049766293a3be7.yaml b/releasenotes/notes/prepare-0.3-d9049766293a3be7.yaml new file mode 100644 index 000000000..cf15c4803 --- /dev/null +++ b/releasenotes/notes/prepare-0.3-d9049766293a3be7.yaml @@ -0,0 +1,9 @@ +--- +prelude: | + The 0.3.0 release introduces significant new features while maining + backwards compatibility with the 0.2.0 release. The most striking + change in this release is the shortened module names: + ``circuit_knitting_toolbox`` has been renamed to + ``circuit_knitting``, ``entanglement_forging`` has been renamed to + ``forging``, and ``circuit_cutting`` has been renamed to + ``cutting``. diff --git a/releasenotes/notes/update-qpdgate-labels-612e7d355ae1c1a3.yaml b/releasenotes/notes/update-qpdgate-labels-612e7d355ae1c1a3.yaml index b10d41fcb..7ecee4a80 100644 --- a/releasenotes/notes/update-qpdgate-labels-612e7d355ae1c1a3.yaml +++ b/releasenotes/notes/update-qpdgate-labels-612e7d355ae1c1a3.yaml @@ -1,8 +1,8 @@ --- upgrade: - | - :class:`~circuit_knitting_toolbox.circuit_cutting.qpd.BaseQPDGate` instances in subcircuits - returned from :func:`~circuit_knitting_toolbox.circuit_cutting.partition_circuit_qubits` - and :func:`~circuit_knitting_toolbox.circuit_cutting.partition_problem` will now have + :class:`.BaseQPDGate` instances in subcircuits + returned from :func:`.partition_circuit_qubits` + and :func:`.partition_problem` will now have labels prefixed with "cut", rather than "qpd". From f2a46ab1ec6301dfe5deace0d672a431b3c2c8b8 Mon Sep 17 00:00:00 2001 From: Jim Garrison Date: Fri, 18 Aug 2023 16:02:02 -0700 Subject: [PATCH 3/6] Move all release notes to `0.3` directory --- .../notes/{ => 0.3}/additional-gates-f4ed6c0e8dc3a9be.yaml | 0 .../{ => 0.3}/automatic-partition-labels-f90428f66ec5543a.yaml | 0 .../notes/{ => 0.3}/batch-by-sampler-c4ae836df9997b1d.yaml | 0 .../{ => 0.3}/cutqc-dynamic-definition-78f8bdfe82c9f839.yaml | 0 .../{ => 0.3}/deprecate-decompose-gates-318e0393be733b52.yaml | 0 .../notes/{ => 0.3}/dx-qpd-inst-bug-fe9c50dad716b848.yaml | 0 releasenotes/notes/{ => 0.3}/ef-results-bug-5aa84ca5611dd827.yaml | 0 .../{ => 0.3}/explicit-numpy-dependency-fdd89846b37a8d4c.yaml | 0 .../notes/{ => 0.3}/fixed-hartree-fock-447c33a956ffea84.yaml | 0 .../{ => 0.3}/generate-qpd-weights-mixture-79c1c420105c8564.yaml | 0 releasenotes/notes/{ => 0.3}/prepare-0.3-d9049766293a3be7.yaml | 0 .../{ => 0.3}/qpd_basis_from_instruction-6f46489c395ba20b.yaml | 0 releasenotes/notes/{ => 0.3}/remove-opflow-177bb07ba0e68002.yaml | 0 .../notes/{ => 0.3}/rename-top-level-import-bad074e7a8f348c9.yaml | 0 .../notes/{ => 0.3}/two-qubit-wire-cutting-27aff379403ea226.yaml | 0 .../notes/{ => 0.3}/update-qpdgate-labels-612e7d355ae1c1a3.yaml | 0 16 files changed, 0 insertions(+), 0 deletions(-) rename releasenotes/notes/{ => 0.3}/additional-gates-f4ed6c0e8dc3a9be.yaml (100%) rename releasenotes/notes/{ => 0.3}/automatic-partition-labels-f90428f66ec5543a.yaml (100%) rename releasenotes/notes/{ => 0.3}/batch-by-sampler-c4ae836df9997b1d.yaml (100%) rename releasenotes/notes/{ => 0.3}/cutqc-dynamic-definition-78f8bdfe82c9f839.yaml (100%) rename releasenotes/notes/{ => 0.3}/deprecate-decompose-gates-318e0393be733b52.yaml (100%) rename releasenotes/notes/{ => 0.3}/dx-qpd-inst-bug-fe9c50dad716b848.yaml (100%) rename releasenotes/notes/{ => 0.3}/ef-results-bug-5aa84ca5611dd827.yaml (100%) rename releasenotes/notes/{ => 0.3}/explicit-numpy-dependency-fdd89846b37a8d4c.yaml (100%) rename releasenotes/notes/{ => 0.3}/fixed-hartree-fock-447c33a956ffea84.yaml (100%) rename releasenotes/notes/{ => 0.3}/generate-qpd-weights-mixture-79c1c420105c8564.yaml (100%) rename releasenotes/notes/{ => 0.3}/prepare-0.3-d9049766293a3be7.yaml (100%) rename releasenotes/notes/{ => 0.3}/qpd_basis_from_instruction-6f46489c395ba20b.yaml (100%) rename releasenotes/notes/{ => 0.3}/remove-opflow-177bb07ba0e68002.yaml (100%) rename releasenotes/notes/{ => 0.3}/rename-top-level-import-bad074e7a8f348c9.yaml (100%) rename releasenotes/notes/{ => 0.3}/two-qubit-wire-cutting-27aff379403ea226.yaml (100%) rename releasenotes/notes/{ => 0.3}/update-qpdgate-labels-612e7d355ae1c1a3.yaml (100%) diff --git a/releasenotes/notes/additional-gates-f4ed6c0e8dc3a9be.yaml b/releasenotes/notes/0.3/additional-gates-f4ed6c0e8dc3a9be.yaml similarity index 100% rename from releasenotes/notes/additional-gates-f4ed6c0e8dc3a9be.yaml rename to releasenotes/notes/0.3/additional-gates-f4ed6c0e8dc3a9be.yaml diff --git a/releasenotes/notes/automatic-partition-labels-f90428f66ec5543a.yaml b/releasenotes/notes/0.3/automatic-partition-labels-f90428f66ec5543a.yaml similarity index 100% rename from releasenotes/notes/automatic-partition-labels-f90428f66ec5543a.yaml rename to releasenotes/notes/0.3/automatic-partition-labels-f90428f66ec5543a.yaml diff --git a/releasenotes/notes/batch-by-sampler-c4ae836df9997b1d.yaml b/releasenotes/notes/0.3/batch-by-sampler-c4ae836df9997b1d.yaml similarity index 100% rename from releasenotes/notes/batch-by-sampler-c4ae836df9997b1d.yaml rename to releasenotes/notes/0.3/batch-by-sampler-c4ae836df9997b1d.yaml diff --git a/releasenotes/notes/cutqc-dynamic-definition-78f8bdfe82c9f839.yaml b/releasenotes/notes/0.3/cutqc-dynamic-definition-78f8bdfe82c9f839.yaml similarity index 100% rename from releasenotes/notes/cutqc-dynamic-definition-78f8bdfe82c9f839.yaml rename to releasenotes/notes/0.3/cutqc-dynamic-definition-78f8bdfe82c9f839.yaml diff --git a/releasenotes/notes/deprecate-decompose-gates-318e0393be733b52.yaml b/releasenotes/notes/0.3/deprecate-decompose-gates-318e0393be733b52.yaml similarity index 100% rename from releasenotes/notes/deprecate-decompose-gates-318e0393be733b52.yaml rename to releasenotes/notes/0.3/deprecate-decompose-gates-318e0393be733b52.yaml diff --git a/releasenotes/notes/dx-qpd-inst-bug-fe9c50dad716b848.yaml b/releasenotes/notes/0.3/dx-qpd-inst-bug-fe9c50dad716b848.yaml similarity index 100% rename from releasenotes/notes/dx-qpd-inst-bug-fe9c50dad716b848.yaml rename to releasenotes/notes/0.3/dx-qpd-inst-bug-fe9c50dad716b848.yaml diff --git a/releasenotes/notes/ef-results-bug-5aa84ca5611dd827.yaml b/releasenotes/notes/0.3/ef-results-bug-5aa84ca5611dd827.yaml similarity index 100% rename from releasenotes/notes/ef-results-bug-5aa84ca5611dd827.yaml rename to releasenotes/notes/0.3/ef-results-bug-5aa84ca5611dd827.yaml diff --git a/releasenotes/notes/explicit-numpy-dependency-fdd89846b37a8d4c.yaml b/releasenotes/notes/0.3/explicit-numpy-dependency-fdd89846b37a8d4c.yaml similarity index 100% rename from releasenotes/notes/explicit-numpy-dependency-fdd89846b37a8d4c.yaml rename to releasenotes/notes/0.3/explicit-numpy-dependency-fdd89846b37a8d4c.yaml diff --git a/releasenotes/notes/fixed-hartree-fock-447c33a956ffea84.yaml b/releasenotes/notes/0.3/fixed-hartree-fock-447c33a956ffea84.yaml similarity index 100% rename from releasenotes/notes/fixed-hartree-fock-447c33a956ffea84.yaml rename to releasenotes/notes/0.3/fixed-hartree-fock-447c33a956ffea84.yaml diff --git a/releasenotes/notes/generate-qpd-weights-mixture-79c1c420105c8564.yaml b/releasenotes/notes/0.3/generate-qpd-weights-mixture-79c1c420105c8564.yaml similarity index 100% rename from releasenotes/notes/generate-qpd-weights-mixture-79c1c420105c8564.yaml rename to releasenotes/notes/0.3/generate-qpd-weights-mixture-79c1c420105c8564.yaml diff --git a/releasenotes/notes/prepare-0.3-d9049766293a3be7.yaml b/releasenotes/notes/0.3/prepare-0.3-d9049766293a3be7.yaml similarity index 100% rename from releasenotes/notes/prepare-0.3-d9049766293a3be7.yaml rename to releasenotes/notes/0.3/prepare-0.3-d9049766293a3be7.yaml diff --git a/releasenotes/notes/qpd_basis_from_instruction-6f46489c395ba20b.yaml b/releasenotes/notes/0.3/qpd_basis_from_instruction-6f46489c395ba20b.yaml similarity index 100% rename from releasenotes/notes/qpd_basis_from_instruction-6f46489c395ba20b.yaml rename to releasenotes/notes/0.3/qpd_basis_from_instruction-6f46489c395ba20b.yaml diff --git a/releasenotes/notes/remove-opflow-177bb07ba0e68002.yaml b/releasenotes/notes/0.3/remove-opflow-177bb07ba0e68002.yaml similarity index 100% rename from releasenotes/notes/remove-opflow-177bb07ba0e68002.yaml rename to releasenotes/notes/0.3/remove-opflow-177bb07ba0e68002.yaml diff --git a/releasenotes/notes/rename-top-level-import-bad074e7a8f348c9.yaml b/releasenotes/notes/0.3/rename-top-level-import-bad074e7a8f348c9.yaml similarity index 100% rename from releasenotes/notes/rename-top-level-import-bad074e7a8f348c9.yaml rename to releasenotes/notes/0.3/rename-top-level-import-bad074e7a8f348c9.yaml diff --git a/releasenotes/notes/two-qubit-wire-cutting-27aff379403ea226.yaml b/releasenotes/notes/0.3/two-qubit-wire-cutting-27aff379403ea226.yaml similarity index 100% rename from releasenotes/notes/two-qubit-wire-cutting-27aff379403ea226.yaml rename to releasenotes/notes/0.3/two-qubit-wire-cutting-27aff379403ea226.yaml diff --git a/releasenotes/notes/update-qpdgate-labels-612e7d355ae1c1a3.yaml b/releasenotes/notes/0.3/update-qpdgate-labels-612e7d355ae1c1a3.yaml similarity index 100% rename from releasenotes/notes/update-qpdgate-labels-612e7d355ae1c1a3.yaml rename to releasenotes/notes/0.3/update-qpdgate-labels-612e7d355ae1c1a3.yaml From a2cd004f55a46a8bea399b2651a100f57949cdae Mon Sep 17 00:00:00 2001 From: Jim Garrison Date: Fri, 18 Aug 2023 16:10:33 -0700 Subject: [PATCH 4/6] Update desired stable branch in docs workflow --- .github/workflows/docs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index f31cb4467..18aaf3f8a 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -44,7 +44,7 @@ jobs: name: html_docs path: ./docs/_build/html - name: Deploy docs - if: ${{ github.ref == 'refs/heads/stable/0.2' }} + if: ${{ github.ref == 'refs/heads/stable/0.3' }} uses: peaceiris/actions-gh-pages@v3 with: github_token: ${{ secrets.GITHUB_TOKEN }} From 1c70289c510beba23e9eac254a7a8dbdef26a285 Mon Sep 17 00:00:00 2001 From: Jim Garrison Date: Fri, 18 Aug 2023 19:43:44 -0400 Subject: [PATCH 5/6] Update releasenotes/notes/0.3/prepare-0.3-d9049766293a3be7.yaml Co-authored-by: Caleb Johnson --- releasenotes/notes/0.3/prepare-0.3-d9049766293a3be7.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/releasenotes/notes/0.3/prepare-0.3-d9049766293a3be7.yaml b/releasenotes/notes/0.3/prepare-0.3-d9049766293a3be7.yaml index cf15c4803..21b5c5c14 100644 --- a/releasenotes/notes/0.3/prepare-0.3-d9049766293a3be7.yaml +++ b/releasenotes/notes/0.3/prepare-0.3-d9049766293a3be7.yaml @@ -1,6 +1,6 @@ --- prelude: | - The 0.3.0 release introduces significant new features while maining + The 0.3.0 release introduces significant new features while maintaining backwards compatibility with the 0.2.0 release. The most striking change in this release is the shortened module names: ``circuit_knitting_toolbox`` has been renamed to From 82ada2b8c5b7392c8365d510b51df19fcb7cac4c Mon Sep 17 00:00:00 2001 From: Jim Garrison Date: Fri, 18 Aug 2023 16:47:55 -0700 Subject: [PATCH 6/6] Add a sentence to prelude release note about significant new cutting features https://github.com/Qiskit-Extensions/circuit-knitting-toolbox/pull/358#discussion_r1298917325 --- releasenotes/notes/0.3/prepare-0.3-d9049766293a3be7.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/releasenotes/notes/0.3/prepare-0.3-d9049766293a3be7.yaml b/releasenotes/notes/0.3/prepare-0.3-d9049766293a3be7.yaml index 21b5c5c14..8954fc57f 100644 --- a/releasenotes/notes/0.3/prepare-0.3-d9049766293a3be7.yaml +++ b/releasenotes/notes/0.3/prepare-0.3-d9049766293a3be7.yaml @@ -6,4 +6,6 @@ prelude: | ``circuit_knitting_toolbox`` has been renamed to ``circuit_knitting``, ``entanglement_forging`` has been renamed to ``forging``, and ``circuit_cutting`` has been renamed to - ``cutting``. + ``cutting``. The new circuit cutting module contains significant + enhancements, including support for wire cutting and for the cutting + of arbitrary two-qubit gates.