Skip to content

Commit

Permalink
Merge branch 'v0.36.0_rc' into bugfix/nd_permuter
Browse files Browse the repository at this point in the history
  • Loading branch information
mlxd authored May 3, 2024
2 parents 611f7ac + 834ca47 commit 669770b
Show file tree
Hide file tree
Showing 21 changed files with 13,869 additions and 521 deletions.
18 changes: 12 additions & 6 deletions .github/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
* `lightning.kokkos` supports mid-circuit measurements.
[(#672)](https://github.com/PennyLaneAI/pennylane-lightning/pull/672)

* Add dynamic linking to LAPACK/OpenBlas shared objects in scipy.libs for both C++ and Python layer.
* Add dynamic linking to LAPACK/OpenBlas shared objects in `scipy.libs` for both C++ and Python layer.
[(#653)](https://github.com/PennyLaneAI/pennylane-lightning/pull/653)

* `lightning.qubit` supports mid-circuit measurements.
Expand All @@ -26,7 +26,7 @@
* Add analytic-mode `qml.probs` and `qml.var` support in `lightning.qubit2`.
[(#627)](https://github.com/PennyLaneAI/pennylane-lightning/pull/627)

* Add LightningAdjointJacobian to support `lightning.qubit2`.
* Add `LightningAdjointJacobian` to support `lightning.qubit2`.
[(#631)](https://github.com/PennyLaneAI/pennylane-lightning/pull/631)

* Add `lightning.qubit2` device which uses the new device API.
Expand All @@ -41,6 +41,9 @@

### Breaking changes

* Split Lightning-Qubit and Lightning-Kokkos CPU Python tests with `pytest-split`. Remove `SERIAL` from Kokkos' `exec_model` matrix. Remove `all` from Lightning-Kokkos' `pl_backend` matrix. Move `clang-tidy` checks to `tidy.yml`. Avoid editable `pip` installations.
[(#696)](https://github.com/PennyLaneAI/pennylane-lightning/pull/696)

* Update `lightning.gpu` and `lightning.kokkos` to raise an error instead of falling back to `default.qubit`.
[(#689)](https://github.com/PennyLaneAI/pennylane-lightning/pull/689)

Expand All @@ -65,7 +68,7 @@

### Improvements

* Add tests for Windows Wheels, fix ill-defined caching, and set the proper backend for LKokkos wheels.
* Add tests for Windows Wheels, fix ill-defined caching, and set the proper backend for `lightning.kokkos` wheels.
[(#693)](https://github.com/PennyLaneAI/pennylane-lightning/pull/693)

* Replace string comparisons by `isinstance` checks where possible.
Expand Down Expand Up @@ -108,14 +111,17 @@
* Fix wire order permutations when using `qml.probs` with out-of-order wires.
[(#707)](https://github.com/PennyLaneAI/pennylane-lightning/pull/707)

* Lightning Qubit once again respects the wire order specified on device instantiation.
[(#705)](https://github.com/PennyLaneAI/pennylane-lightning/pull/705)

* `dynamic_one_shot` was refactored to use `SampleMP` measurements as a way to return the mid-circuit measurement samples. `LightningQubit`'s `simulate` is modified accordingly.
[(#694)](https://github.com/PennyLaneAI/pennylane/pull/694)
[(#694)](https://github.com/PennyLaneAI/pennylane-lightning/pull/694)

* `LightningQubit` correctly decomposes state prep operations when used in the middle of a circuit.
[(#687)](https://github.com/PennyLaneAI/pennylane/pull/687)
[(#687)](https://github.com/PennyLaneAI/pennylane-lightning/pull/687)

* `LightningQubit` correctly decomposes `qml.QFT` and `qml.GroverOperator` if `len(wires)` is greater than 9 and 12 respectively.
[(#687)](https://github.com/PennyLaneAI/pennylane/pull/687)
[(#687)](https://github.com/PennyLaneAI/pennylane-lightning/pull/687)

* Specify `isort` `--py` (Python version) and `-l` (max line length) to stabilize `isort` across Python versions and environments.
[(#647)](https://github.com/PennyLaneAI/pennylane-lightning/pull/647)
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build_and_cache_Kokkos_linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
steps:
- name: Kokkos execution strategy
id: exec_model
run: echo "exec_model=[\"SERIAL\", \"OPENMP\"]" >> $GITHUB_OUTPUT
run: echo "exec_model=[\"OPENMP\"]" >> $GITHUB_OUTPUT

- name: Kokkos version
id: kokkos_version
Expand Down
13 changes: 10 additions & 3 deletions .github/workflows/compat-check-latest-latest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,16 @@ jobs:
lightning-version: latest
pennylane-version: latest
secrets: inherit
tests_linux_python:
name: Lightning Compatibility test (tests_linux_python) - latest/latest
uses: ./.github/workflows/tests_linux_python.yml
tests_lqcpu_python:
name: Lightning Compatibility test (tests_lqcpu_python) - latest/latest
uses: ./.github/workflows/tests_lqcpu_python.yml
with:
lightning-version: latest
pennylane-version: latest
secrets: inherit
tests_lkcpu_python:
name: Lightning Compatibility test (tests_lkcpu_python) - latest/latest
uses: ./.github/workflows/tests_lkcpu_python.yml
with:
lightning-version: latest
pennylane-version: latest
Expand Down
13 changes: 10 additions & 3 deletions .github/workflows/compat-check-latest-stable.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,16 @@ jobs:
lightning-version: latest
pennylane-version: stable
secrets: inherit
tests_linux_python:
name: Lightning Compatibility test (tests_linux_python) - latest/stable
uses: ./.github/workflows/tests_linux_python.yml
tests_lqcpu_python:
name: Lightning Compatibility test (tests_lqcpu_python) - latest/stable
uses: ./.github/workflows/tests_lqcpu_python.yml
with:
lightning-version: latest
pennylane-version: stable
secrets: inherit
tests_lkcpu_python:
name: Lightning Compatibility test (tests_lkcpu_python) - latest/stable
uses: ./.github/workflows/tests_lkcpu_python.yml
with:
lightning-version: latest
pennylane-version: stable
Expand Down
13 changes: 10 additions & 3 deletions .github/workflows/compat-check-release-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,16 @@ jobs:
lightning-version: release
pennylane-version: release
secrets: inherit
tests_linux_python:
name: Lightning Compatibility test (tests_linux_python) - release/release
uses: ./.github/workflows/tests_linux_python.yml
tests_lqcpu_python:
name: Lightning Compatibility test (tests_lqcpu_python) - release/release
uses: ./.github/workflows/tests_lqcpu_python.yml
with:
lightning-version: release
pennylane-version: release
secrets: inherit
tests_lkcpu_python:
name: Lightning Compatibility test (tests_lkcpu_python) - release/release
uses: ./.github/workflows/tests_lkcpu_python.yml
with:
lightning-version: release
pennylane-version: release
Expand Down
13 changes: 10 additions & 3 deletions .github/workflows/compat-check-stable-latest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,16 @@ jobs:
lightning-version: stable
pennylane-version: latest
secrets: inherit
tests_linux_python:
name: Lightning Compatibility test (tests_linux_python) - stable/latest
uses: ./.github/workflows/tests_linux_python.yml
tests_lqcpu_python:
name: Lightning Compatibility test (tests_lqcpu_python) - stable/latest
uses: ./.github/workflows/tests_lqcpu_python.yml
with:
lightning-version: stable
pennylane-version: latest
secrets: inherit
tests_lkcpu_python:
name: Lightning Compatibility test (tests_lkcpu_python) - stable/latest
uses: ./.github/workflows/tests_lkcpu_python.yml
with:
lightning-version: stable
pennylane-version: latest
Expand Down
13 changes: 10 additions & 3 deletions .github/workflows/compat-check-stable-stable.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,16 @@ jobs:
lightning-version: stable
pennylane-version: stable
secrets: inherit
tests_linux_python:
name: Lightning Compatibility test (tests_linux_python) - stable/stable
uses: ./.github/workflows/tests_linux_python.yml
tests_lqcpu_python:
name: Lightning Compatibility test (tests_lqcpu_python) - stable/stable
uses: ./.github/workflows/tests_lqcpu_python.yml
with:
lightning-version: stable
pennylane-version: stable
secrets: inherit
tests_lkcpu_python:
name: Lightning Compatibility test (tests_lkcpu_python) - stable/stable
uses: ./.github/workflows/tests_lkcpu_python.yml
with:
lightning-version: stable
pennylane-version: stable
Expand Down
37 changes: 1 addition & 36 deletions .github/workflows/format.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ concurrency:
cancel-in-progress: true

jobs:
black:
format-python:
name: Format (Python)
runs-on: ubuntu-22.04
steps:
Expand Down Expand Up @@ -42,38 +42,3 @@ jobs:

- name: Run formatter
run: PATH=$PATH:/home/ubuntu/.local/bin/:$(dirname $(which python3))/ ./bin/format --check ./pennylane_lightning/core/src

tidy-cpp:
strategy:
matrix:
os: [ubuntu-22.04]
pl_backend: ["lightning_qubit"]

name: Tidy (C++)
runs-on: ${{ matrix.os }}

steps:
- name: Checkout PennyLane-Lightning
uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11'

- name: Install dependencies
run: sudo apt update && sudo apt -y install cmake gcc-11 g++-11 ninja-build libomp-14-dev && python -m pip install -r requirements-dev.txt
env:
DEBIAN_FRONTEND: noninteractive

- name: Run clang-tidy compilation
run: |
cmake -BBuild -G Ninja . \
-DENABLE_CLANG_TIDY=ON \
-DCLANG_TIDY_BINARY=$(dirname $(which python))/clang-tidy \
-DBUILD_TESTS=ON \
-DENABLE_WARNINGS=ON \
-DPL_BACKEND=${{ matrix.pl_backend }} \
-DCMAKE_CXX_COMPILER="$(which g++-11)" \
-DCMAKE_C_COMPILER="$(which gcc-11)"
cmake --build ./Build
Loading

0 comments on commit 669770b

Please sign in to comment.