Pennylane-lightning

Latest version: v0.35.1

Safety actively analyzes 619456 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.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

0.33.0

New features since last release

* Add documentation updates for the `lightning_gpu` backend. (525)

* Add `SparseHamiltonian` support for Lightning-Qubit and Lightning-GPU. (526)

* Add `SparseHamiltonian` support for Lightning-Kokkos. (527)

* Integrate python/pybind layer of distributed Lightning-GPU into the Lightning monorepo with python unit tests. (518)

* Integrate the distributed C++ backend of Lightning-GPU into the Lightning monorepo. (514)

* Integrate Lightning-GPU into the Lightning monorepo. The new backend is named `lightning_gpu` and includes all single-GPU features. (499)

* Build Linux wheels for Lightning-GPU (CUDA-11). (517)

* Add `Dockerfile` in `docker` and `make docker` workflow in `Makefile`. The Docker images and documentation are available on [DockerHub](https://hub.docker.com/repository/docker/pennylaneai/pennylane). (#496)

* Add mid-circuit state preparation operation tests. (495)

Improvements

* Improve Python testing for Lightning-GPU (+MPI) by adding jobs in Actions files and adding Python tests to increase code coverage. (522)

* Add support for `pip install pennylane-lightning[kokkos]` for the OpenMP backend. (515)

* Update `setup.py` to allow for multi-package co-existence. The `PennyLane_Lightning` package now is the responsible for the core functionality, and will be depended upon by all other extensions. (504)

* Redesign Lightning-Kokkos `StateVectorKokkos` class to use Kokkos `RangePolicy` together with special functors in `applyMultiQubitOp` to apply 1- to 4-wire generic unitary gates. For more than 4 wires, the general implementation using Kokkos `TeamPolicy` is employed to yield the best all-around performance. (490)

* Redesign Lightning-Kokkos `Measurements` class to use Kokkos `RangePolicy` together with special functors to obtain the expectation value of 1- to 4-wire generic unitary gates. For more than 4 wires, the general implementation using Kokkos `TeamPolicy` is employed to yield the best all-around performance. (489)

* Add tests to increase Lightning-Kokkos coverage. (485)

* Add memory locality tag reporting and adjoint diff dispatch for `lightning.qubit` statevector classes. (492)

* Add support for dependent external packages to C++ core. (482)

* Add support for building multiple backend simulators. (497)

Breaking changes

* Add `tests_gpu.yml` workflow to test the Lightning-Kokkos backend with CUDA-12. (494)

* Implement `LM::GeneratorDoubleExcitation`, `LM::GeneratorDoubleExcitationMinus`, `LM::GeneratorDoubleExcitationPlus` kernels. Lightning-Qubit default kernels are now strictly from the `LM` implementation, which requires less memory and is faster for large state vectors. (512)

* Add workflows validating compatibility between PennyLane and Lightning's most recent stable releases and development (latest) versions. (507) (498)

* Introduce `timeout-minutes` in various workflows, mainly to avoid Windows builds hanging for several hours. (503)

* Cast integral-valued arrays to the device's complex type on entry in `_preprocess_state_vector` to ensure the state is correctly represented with floating-point numbers. (501)

* Update `DefaultQubit` to `DefaultQubitLegacy` on Lightning fallback. (500)

* Enums defined in `GateOperation.hpp` start at `1` (previously `0`). `::BEGIN` is introduced in a few places where it was assumed `0` accordingly. (485) `::BEGIN` was later reverted to `0`, keeping the rest of the changes, to fix a compatibility issue with [Catalyst](https://docs.pennylane.ai/projects/catalyst/en/stable/). (#521)

* Enable pre-commit hooks to format all Python files and linting of all Python source files. (485)

Bug fixes

* Re-add support for `pip install pennylane-lightning[gpu]`. (515)

* Switch most Lightning-Qubit default kernels to `LM`. Add `LM::multiQubitOp` tests, failing when targeting out-of-order wires clustered close to `num_qubits-1`. Fix the `LM::multiQubitOp` kernel implementation by introducing a generic `revWireParity` routine and replacing the `bitswap`-based implementation. Mimic the changes fixing the corresponding `multiQubitOp` and `expval` functors in Lightning-Kokkos. (511)

* Fix RTD builds by removing unsupported `system_packages` configuration option. (491)

Contributors

This release contains contributions from (in alphabetical order):

Ali Asadi, Amintor Dusko, Vincent Michaud-Rioux, Lee J. O'Riordan, Shuli Shu

Page 1 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.