Pennylane-lightning

Latest version: v0.36.0

Safety actively analyzes 628989 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 6

0.47942554

Improvements

* Remove deprecated `set-output` commands from workflow files.
[(437)](https://github.com/PennyLaneAI/pennylane-lightning/pull/437)

* Lightning wheels are now checked with `twine check` post-creation for PyPI compatibility.
[(430)](https://github.com/PennyLaneAI/pennylane-lightning/pull/430)

* Lightning has been made compatible with the change in return types specification.
[(427)](https://github.com/PennyLaneAI/pennylane-lightning/pull/427)

* Lightning is compatible with clang-tidy version 16.
[(429)](https://github.com/PennyLaneAI/pennylane-lightning/pull/429)

Contributors

This release contains contributions from (in alphabetical order):

Christina Lee, Vincent Michaud-Rioux, Lee James O'Riordan, Chae-Yeun Park, Matthew Silverman

0.36.0

New features since last release

* Add compile-time support for AVX2/512 streaming operations in `lightning.qubit`. [(664)](https://github.com/PennyLaneAI/pennylane-lightning/pull/664)

* `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. [(653)](https://github.com/PennyLaneAI/pennylane-lightning/pull/653)

* `lightning.qubit` supports mid-circuit measurements. [(650)](https://github.com/PennyLaneAI/pennylane-lightning/pull/650)

* Add finite shots support in `lightning.qubit2`. [(630)](https://github.com/PennyLaneAI/pennylane-lightning/pull/630)

* Add `collapse` and `normalize` methods to the `StateVectorLQubit` classes, enabling "branching" of the wavefunction. Add methods to create and seed an RNG in the `Measurements` modules. [(645)](https://github.com/PennyLaneAI/pennylane-lightning/pull/645)

* Add two new python classes (LightningStateVector and LightningMeasurements) to support `lightning.qubit2`. [(613)](https://github.com/PennyLaneAI/pennylane-lightning/pull/613)

* 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`. [(631)](https://github.com/PennyLaneAI/pennylane-lightning/pull/631)

* Add `lightning.qubit2` device which uses the new device API. [(607)](https://github.com/PennyLaneAI/pennylane-lightning/pull/607) [(#628)](https://github.com/PennyLaneAI/pennylane-lightning/pull/628)

* Add Vector-Jacobian Product calculation support to `lightning.qubit`. [(644)](https://github.com/PennyLaneAI/pennylane-lightning/pull/644)

* Add support for using new operator arithmetic as the default. [(649)](https://github.com/PennyLaneAI/pennylane-lightning/pull/649)

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)

* Add `paths` directives to test workflows to avoid running tests that cannot be impacted by changes. [(699)](https://github.com/PennyLaneAI/pennylane-lightning/pull/699) [(#695)](https://github.com/PennyLaneAI/pennylane-lightning/pull/695)

* Move common components of `/src/simulator/lightning_gpu/utils/` to `/src/utils/cuda_utils/`. [(676)](https://github.com/PennyLaneAI/pennylane-lightning/pull/676)

* Deprecate static LAPACK linking support. [(653)](https://github.com/PennyLaneAI/pennylane-lightning/pull/653)

* Migrate `lightning.qubit` to the new device API. [(646)](https://github.com/PennyLaneAI/pennylane-lightning/pull/646)

* Introduce `ci:build_wheels` label, which controls wheel building on `pull_request` and other triggers. [(648)](https://github.com/PennyLaneAI/pennylane-lightning/pull/648)

* Remove building wheels for Lightning Kokkos on Windows. [(693)](https://github.com/PennyLaneAI/pennylane-lightning/pull/693)

Improvements

* 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. [(691)](https://github.com/PennyLaneAI/pennylane-lightning/pull/691)

* Refactor `cuda_utils` to remove its dependency on `custatevec.h`. [(681)](https://github.com/PennyLaneAI/pennylane-lightning/pull/681)

* Add `test_templates.py` module where Grover and QSVT are tested. [(684)](https://github.com/PennyLaneAI/pennylane-lightning/pull/684)

* Create `cuda_utils` for common usage of CUDA related backends. [(676)](https://github.com/PennyLaneAI/pennylane-lightning/pull/676)

* Refactor `lightning_gpu_utils` unit tests to remove the dependency on statevector class. [(675)](https://github.com/PennyLaneAI/pennylane-lightning/pull/675)

* Upgrade GitHub actions versions from v3 to v4. [(669)](https://github.com/PennyLaneAI/pennylane-lightning/pull/669)

* Initialize the private attributes `gates_indices_` and `generators_indices_` of `StateVectorKokkos` using the definitions of the `Pennylane::Gates::Constant` namespace. [(641)](https://github.com/PennyLaneAI/pennylane-lightning/pull/641)

* Add `isort` to `requirements-dev.txt` and run before `black` upon `make format` to sort Python imports. [(623)](https://github.com/PennyLaneAI/pennylane-lightning/pull/623)

* Improve support for new operator arithmetic with `QuantumScriptSerializer.serialize_observables`. [(670)](https://github.com/PennyLaneAI/pennylane-lightning/pull/670)

* Add `workflow_dispatch` to wheels recipes; allowing developers to build wheels manually on a branch instead of temporarily changing the headers. [(679)](https://github.com/PennyLaneAI/pennylane-lightning/pull/679)

* Add the `ENABLE_LAPACK` compilation flag to toggle dynamic linking to LAPACK library. [(678)](https://github.com/PennyLaneAI/pennylane-lightning/pull/678)

Documentation

Bug fixes

* 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-lightning/pull/694)

* `LightningQubit` correctly decomposes state prep operations when used in the middle of a circuit. [(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-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)

* Fix random `coverage xml` CI issues. [(635)](https://github.com/PennyLaneAI/pennylane-lightning/pull/635)

* `lightning.qubit` correctly decomposed state preparation operations with adjoint differentiation. [(661)](https://github.com/PennyLaneAI/pennylane-lightning/pull/661)

* Fix the failed observable serialization unit tests. [(683)](https://github.com/PennyLaneAI/pennylane-lightning/pull/683)

* Update the `LightningQubit` new device API to work with Catalyst. [(665)](https://github.com/PennyLaneAI/pennylane-lightning/pull/665)

* Update the version of `codecov-action` to v4 and fix the CodeCov issue with the PL-Lightning check-compatibility actions. [(682)](https://github.com/PennyLaneAI/pennylane-lightning/pull/682)

* Refactor of dev prerelease auto-update-version workflow. [(685)](https://github.com/PennyLaneAI/pennylane-lightning/pull/685)

* Remove gates unsupported by catalyst from toml file. [(698)](https://github.com/PennyLaneAI/pennylane-lightning/pull/698)

* Increase tolerance for a flaky test. [(703)](https://github.com/PennyLaneAI/pennylane-lightning/pull/703)

Contributors

This release contains contributions from (in alphabetical order):

Ali Asadi, Amintor Dusko, Thomas Germain, Christina Lee, Erick Ochoa Lopez, Vincent Michaud-Rioux, Rashid N H M, Lee James O'Riordan, Mudit Pandey, Shuli Shu

0.35.1

Improvements

* Use the `adjoint` gate parameter to apply `qml.Adjoint` operations instead of matrix methods in `lightning.qubit`.
[(632)](https://github.com/PennyLaneAI/pennylane-lightning/pull/632)

Bug fixes

* Fix `qml.Adjoint` support in `lightning.gpu` and `lightning.kokkos`.
[(632)](https://github.com/PennyLaneAI/pennylane-lightning/pull/632)

* Fix finite shots support in `lightning.qubit`, `lightning.gpu` and `lightning.kokkos`. The bug would impact calculations with measurements on observables with non-trivial diagonalizing gates and calculations with shot vectors.
[(632)](https://github.com/PennyLaneAI/pennylane-lightning/pull/632)

Contributors

This release contains contributions from (in alphabetical order):

Vincent Michaud-Rioux

0.35.0

New features since last release

* All backends now support `GlobalPhase` and `C(GlobalPhase)` in forward pass.
[(579)](https://github.com/PennyLaneAI/pennylane-lightning/pull/579)

* Add Hermitian observable support for shot-noise measurement and Lapack support.
[(569)](https://github.com/PennyLaneAI/pennylane-lightning/pull/569)

Breaking changes

* Migrate `lightning.gpu` to CUDA 12.
[(606)](https://github.com/PennyLaneAI/pennylane-lightning/pull/606)

Improvements

* Expand error values and strings returned from CUDA libraries.
[(617)](https://github.com/PennyLaneAI/pennylane-lightning/pull/617)

* `C(MultiRZ)` and `C(Rot)` gates are natively supported (with `LM` kernels).
[(614)](https://github.com/PennyLaneAI/pennylane-lightning/pull/614)

* Add adjoint support for `GlobalPhase` in Lightning-GPU and Lightning-Kokkos.
[(615)](https://github.com/PennyLaneAI/pennylane-lightning/pull/615)

* Lower the overheads of Windows CI tests.
[(610)](https://github.com/PennyLaneAI/pennylane-lightning/pull/610)

* Decouple LightningQubit memory ownership from numpy and migrate it to Lightning-Qubit managed state-vector class.
[(601)](https://github.com/PennyLaneAI/pennylane-lightning/pull/601)

* Expand support for Projector observables on Lightning-Kokkos.
[(601)](https://github.com/PennyLaneAI/pennylane-lightning/pull/601)

* Split Docker build cron job into two jobs: master and latest. This is mainly for reporting in the `plugin-test-matrix` repo.
[(600)](https://github.com/PennyLaneAI/pennylane-lightning/pull/600)

* The `BlockEncode` operation from PennyLane is now supported on all Lightning devices.
[(599)](https://github.com/PennyLaneAI/pennylane-lightning/pull/599)

* OpenMP acceleration can now be enabled at compile time for all `lightning.qubit` gate kernels using the "-DLQ_ENABLE_KERNEL_OMP=1" CMake argument.
[(510)](https://github.com/PennyLaneAI/pennylane-lightning/pull/510)

* Enable building Docker images for any branch or tag. Set the Docker build cron job to build images for the latest release and `master`.
[(598)](https://github.com/PennyLaneAI/pennylane-lightning/pull/598)

* Enable choosing the PennyLane-Lightning version and disabling push to Docker Hub in the Docker build workflow. Add a cron job calling the Docker build workflow.
[(597)](https://github.com/PennyLaneAI/pennylane-lightning/pull/597)

* Pull Kokkos v4.2.00 from the official Kokkos repository to test Lightning-Kokkos with the CUDA backend.
[(596)](https://github.com/PennyLaneAI/pennylane-lightning/pull/596)

* Remove deprecated MeasurementProcess.name.
[(605)](https://github.com/PennyLaneAI/pennylane-lightning/pull/605)

Documentation

* Update requirements to build the documentation.
[(594)](https://github.com/PennyLaneAI/pennylane-lightning/pull/594)

Bug fixes

* Downgrade auditwheel due to changes with library exclusion list.
[(620)](https://github.com/PennyLaneAI/pennylane-lightning/pull/620)

* List `GlobalPhase` gate in each device's TOML file.
[(615)](https://github.com/PennyLaneAI/pennylane-lightning/pull/615)

* Lightning-GPU's gate cache failed to distinguish between certain gates.
For example, `MultiControlledX([0, 1, 2], "111")` and `MultiControlledX([0, 2], "00")` were applied as the same operation.
This could happen with (at least) the following gates: `QubitUnitary`,`ControlledQubitUnitary`,`MultiControlledX`,`DiagonalQubitUnitary`,`PSWAP`,`OrbitalRotation`.
[(579)](https://github.com/PennyLaneAI/pennylane-lightning/pull/579)

* Ensure the stopping condition decompositions are respected for larger templated QFT and Grover operators.
[(609)](https://github.com/PennyLaneAI/pennylane-lightning/pull/609)

* Move concurrency group specifications from reusable Docker build workflow to the root workflows.
[(604)](https://github.com/PennyLaneAI/pennylane-lightning/pull/604)

* Fix `lightning-kokkos-cuda` Docker build and add CI workflow to build images and push to Docker Hub.
[(593)](https://github.com/PennyLaneAI/pennylane-lightning/pull/593)

* Update jax.config imports.
[(619)](https://github.com/PennyLaneAI/pennylane-lightning/pull/619)

* Fix apply state vector when using a Lightning handle.
[(622)](https://github.com/PennyLaneAI/pennylane-lightning/pull/622)

* Pinning Pytest to a version compatible with Flaky.
[(624)](https://github.com/PennyLaneAI/pennylane-lightning/pull/624)

Contributors

This release contains contributions from (in alphabetical order):

Amintor Dusko, David Ittah, Vincent Michaud-Rioux, Lee J. O'Riordan, Shuli Shu, Matthew Silverman

0.34.0

New features since last release

* Support added for Python 3.12 wheel builds. [(541)](https://github.com/PennyLaneAI/pennylane-lightning/pull/541)

* Lightning-Qubit support arbitrary controlled gates (any wires and any control values). The kernels are implemented in the `LM` module. [(576)](https://github.com/PennyLaneAI/pennylane-lightning/pull/576)

* Shot-noise related methods now accommodate observable objects with arbitrary eigenvalues. Add a Kronecker product method for two diagonal matrices. [(570)](https://github.com/PennyLaneAI/pennylane-lightning/pull/570)

* Add shot-noise support for probs in the C++ layer. Probabilities are calculated from generated samples. All Lightning backends support this feature. Please note that target wires should be sorted in ascending manner. [(568)](https://github.com/PennyLaneAI/pennylane-lightning/pull/568)

* Add `LM` kernels to apply arbitrary controlled operations efficiently. [(516)](https://github.com/PennyLaneAI/pennylane-lightning/pull/516)

* Add shots support for variance value, probs, sample, counts calculation for given observables (`NamedObs`, `TensorProd` and `Hamiltonian`) based on Pauli words, `Identity` and `Hadamard` in the C++ layer. All Lightning backends support this support feature. [(561)](https://github.com/PennyLaneAI/pennylane-lightning/pull/561)

* Add shots support for expectation value calculation for given observables (`NamedObs`, `TensorProd` and `Hamiltonian`) based on Pauli words, `Identity` and `Hadamard` in the C++ layer by adding `measure_with_samples` to the measurement interface. All Lightning backends support this support feature. [(556)](https://github.com/PennyLaneAI/pennylane-lightning/pull/556)

* `qml.QubitUnitary` operators can be included in a circuit differentiated with the adjoint method. Lightning handles circuits with arbitrary non-differentiable `qml.QubitUnitary` operators. 1,2-qubit `qml.QubitUnitary` operators with differentiable parameters can be differentiated using decomposition. [(540)](https://github.com/PennyLaneAI/pennylane-lightning/pull/540)

Breaking changes

* Set the default version of Kokkos to 4.2.00 throughout the project (CMake, CI, etc.) [(578)](https://github.com/PennyLaneAI/pennylane-lightning/pull/578)

* Overload `applyOperation` with a fifth `matrix` argument to all state vector classes to support arbitrary operations in `AdjointJacobianBase`. [(540)](https://github.com/PennyLaneAI/pennylane-lightning/pull/540)

Improvements

* Ensure aligned memory used for numpy arrays with state-vector without reallocations. [(572)](https://github.com/PennyLaneAI/pennylane-lightning/pull/572)

* Unify error messages of shot measurement related unsupported observables to better Catalyst. [(577)](https://github.com/PennyLaneAI/pennylane-lightning/pull/577)

* Add configuration files to improve compatibility with Catalyst. [(566)](https://github.com/PennyLaneAI/pennylane-lightning/pull/566)

* Refactor shot-noise related methods of MeasurementsBase class in the C++ layer and eigenvalues are not limited to `1` and `-1`. Add `getObs()` method to Observables class. Refactor `applyInPlaceShots` to allow users to get eigenvalues of Observables object. Deprecated `_preprocess_state` method in `MeasurementsBase` class for safer use of the `LightningQubitRaw` backend. [(570)](https://github.com/PennyLaneAI/pennylane-lightning/pull/570)

* Modify `setup.py` to use backend-specific build directory (`f"build_{backend}"`) to accelerate rebuilding backends in alternation. [(540)](https://github.com/PennyLaneAI/pennylane-lightning/pull/540)

* Update Dockerfile and rewrite the `build-wheel-lightning-gpu` stage to build Lightning-GPU from the `pennylane-lightning` monorepo. [(539)](https://github.com/PennyLaneAI/pennylane-lightning/pull/539)

* Add the MPI test CI workflows of Lightning-GPU in compatibility cron jobs. [(536)](https://github.com/PennyLaneAI/pennylane-lightning/pull/536)

* Add MPI synchronization in places to safely handle communicated data. [(538)](https://github.com/PennyLaneAI/pennylane-lightning/pull/538)

* Add release option in compatibility cron jobs to test the release candidates of PennyLane and the Lightning plugins against one another. [(531)](https://github.com/PennyLaneAI/pennylane-lightning/pull/531)

* Add GPU workflows in compatibility cron jobs to test Lightning-GPU and Lightning-Kokkos with the Kokkos CUDA backend. [(528)](https://github.com/PennyLaneAI/pennylane-lightning/pull/528)

Documentation

* Fixed a small typo in the documentation page for the PennyLane-Lightning GPU device. [(563)](https://github.com/PennyLaneAI/pennylane-lightning/pull/563)

* Add OpenGraph social preview for Lightning docs. [(574)](https://github.com/PennyLaneAI/pennylane-lightning/pull/574)

Bug fixes

* Fix CodeCov file contention issue when uploading data from many workloads. [(584)](https://github.com/PennyLaneAI/pennylane-lightning/pull/584)

* Ensure the `lightning.gpu` intermediate wheel builds are uploaded to TestPyPI. [(575)](https://github.com/PennyLaneAI/pennylane-lightning/pull/575)

* Allow support for newer clang-tidy versions on non-x86_64 platforms. [(567)](https://github.com/PennyLaneAI/pennylane-lightning/pull/567)

* Do not run C++ tests when testing for compatibility with PennyLane, hence fixing plugin-matrix failures. Fix Lightning-GPU workflow trigger. [(571)](https://github.com/PennyLaneAI/pennylane-lightning/pull/571)

* Revert single-node multi-GPU batching behaviour to match https://github.com/PennyLaneAI/pennylane-lightning-gpu/pull/27. [(#564)](https://github.com/PennyLaneAI/pennylane-lightning/pull/564)

* Move deprecated `stateprep` `QuantumScript` argument into the operation list in `mpitests/test_adjoint_jacobian.py`. [(540)](https://github.com/PennyLaneAI/pennylane-lightning/pull/540)

* Fix MPI Python unit tests for the adjoint method. [(538)](https://github.com/PennyLaneAI/pennylane-lightning/pull/538)

* Fix the issue with assigning kernels to ops before registering kernels on macOS. [(582)](https://github.com/PennyLaneAI/pennylane-lightning/pull/582)

* Update `MANIFEST.in` to include device config files and `CHANGELOG.md`. [(585)](https://github.com/PennyLaneAI/pennylane-lightning/pull/585)

Contributors

This release contains contributions from (in alphabetical order):

Ali Asadi, Isaac De Vlugt, Amintor Dusko, Vincent Michaud-Rioux, Erick Ochoa Lopez, Lee James O'Riordan, Shuli Shu

0.33.1

New features since last release

* pip-installed CUDA runtime libraries can now be accessed from a virtualenv. (543 )

Bug fixes

* The pybind11 compiled module RPATH linkage has been restored to pre-0.33 behaviour. (543 )

Contributors

This release contains contributions from (in alphabetical order):

Lee J. O'Riordan

Page 1 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.