Pennylane-lightning

Latest version: v0.39.0

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

Scan your dependencies

Page 1 of 7

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.38.0

New features since last release

* Add `qml.StatePrep()` and `qml.QubitStateVector()` support to `lightning.tensor`. [(849)](https://github.com/PennyLaneAI/pennylane-lightning/pull/849)

* Add analytic `qml.probs()` measurement support to `lightning.tensor`. [(830)](https://github.com/PennyLaneAI/pennylane-lightning/pull/830)

* Add `qml.state()` measurement support to `lightning.tensor`. [(827)](https://github.com/PennyLaneAI/pennylane-lightning/pull/827)

* Add Lightning-GPU Linux (AArch64 + GraceHopper) wheels to PyPI. [(815)](https://github.com/PennyLaneAI/pennylane-lightning/pull/815)

* Add `var` support to `lightning.tensor`. Note that `var` support is added via `obs**2` and this implementation scales as `O(num_obs**2)`. [(804)](https://github.com/PennyLaneAI/pennylane-lightning/pull/804)

Breaking changes

* Update python packaging to follow PEP 517/518/621/660 standards. [(832)](https://github.com/PennyLaneAI/pennylane-lightning/pull/832)

* Add `getData()` in the `lightning.tensor` C++ backend. Users are responsible for ensuring sufficient host memory is allocated for the full state vector. [(827)](https://github.com/PennyLaneAI/pennylane-lightning/pull/827)

* Remove `NDpermuter.hpp` which is no longer required. [(795)](https://github.com/PennyLaneAI/pennylane-lightning/pull/795)

* Remove temporary steps from the CI, such as downgrading Scipy to <1.14 and installing Kokkos v4.2 for `lightning-version == 'stable'`. [(792)](https://github.com/PennyLaneAI/pennylane-lightning/pull/792)

* Do not run GPU tests and Docker workflows on release. [(788)](https://github.com/PennyLaneAI/pennylane-lightning/pull/788)

Improvements

* Update Lightning tests to support the generalization of basis state preparation. [(864)](https://github.com/PennyLaneAI/pennylane-lightning/pull/864)

* Add `SetState` and `SetBasisState` to `LightningKokkosSimulator`. [(861)](https://github.com/PennyLaneAI/pennylane-lightning/pull/861)

* Remove use of the deprecated `Operator.expand` in favour of `Operator.decomposition`. [(846)](https://github.com/PennyLaneAI/pennylane-lightning/pull/846)

* The `setBasisState` and `setStateVector` methods of `StateVectorLQubit` and `StateVectorKokkos` are overloaded to support PennyLane-like parameters. [(843)](https://github.com/PennyLaneAI/pennylane-lightning/pull/843)

* Move `setBasisState`, `setStateVector` and `resetStateVector` from `StateVectorLQubitManaged` to `StateVectorLQubit`. [(841)](https://github.com/PennyLaneAI/pennylane-lightning/pull/841)

* Update `generate_samples` in `LightningKokkos` and `LightningGPU` to support `qml.measurements.Shots` type instances. [(839)](https://github.com/PennyLaneAI/pennylane-lightning/pull/839)

* Add a Catalyst-specific wrapping class for Lightning Kokkos. [(837)](https://github.com/PennyLaneAI/pennylane-lightning/pull/837) [(#770)](https://github.com/PennyLaneAI/pennylane-lightning/pull/770)

* Lightning-Qubit natively supports the `PauliRot` gate. [(834)](https://github.com/PennyLaneAI/pennylane-lightning/pull/834)

* Multiple calls to the `append_mps_final_state()` API is allowed in `lightning.tensor`. [(830)](https://github.com/PennyLaneAI/pennylane-lightning/pull/830)

* Add `initial_state_prep` option to Catalyst TOML file. [(826)](https://github.com/PennyLaneAI/pennylane-lightning/pull/826)

* `ENABLE_LAPACK` is `OFF` by default for all Lightning backends. [(825)](https://github.com/PennyLaneAI/pennylane-lightning/pull/825)

* Update `ctrl_decomp_zyz` tests with `len(control_wires) > 1`. [(821)](https://github.com/PennyLaneAI/pennylane-lightning/pull/821)

* Update the Catalyst-specific wrapping class for Lightning Kokkos to track Catalyst's new support for MCM seeding. [(819)](https://github.com/PennyLaneAI/pennylane-lightning/pull/819)

* Replace ``size_t`` by ``std::size_t`` everywhere. [(816)](https://github.com/PennyLaneAI/pennylane-lightning/pull/816/)

* Shot batching is made more efficient by executing all the shots in one go on Lightning-Qubit. [(814)](https://github.com/PennyLaneAI/pennylane-lightning/pull/814)

* Lightning-Qubit calls `generate_samples(wires)` on a minimal subset of wires when executing in finite-shot mode. [(813)](https://github.com/PennyLaneAI/pennylane-lightning/pull/813)

* Update `LightingQubit.preprocess` to work with changes to preprocessing for mid-circuit measurements. [(812)](https://github.com/PennyLaneAI/pennylane-lightning/pull/812)

* Avoid unnecessary memory reset in Lightning-Qubit's state vector class constructor. [(811)](https://github.com/PennyLaneAI/pennylane-lightning/pull/811)

* Add `generate_samples(wires)` support in Lightning-Qubit, which samples faster for a subset of wires. [(809)](https://github.com/PennyLaneAI/pennylane-lightning/pull/809)

* Optimize the OpenMP parallelization of Lightning-Qubit's `probs` for all number of targets. [(807)](https://github.com/PennyLaneAI/pennylane-lightning/pull/807)

* Optimize `probs(wires)` of Lightning-Kokkos using various kernels. Which kernel is to be used depends on the device, number of qubits and number of target wires. [(802)](https://github.com/PennyLaneAI/pennylane-lightning/pull/802)

* Add GPU device compute capability check for Lightning-Tensor. [(803)](https://github.com/PennyLaneAI/pennylane-lightning/pull/803)

* Refactor CUDA utils Python bindings to a separate module. [(801)](https://github.com/PennyLaneAI/pennylane-lightning/pull/801)

* Parallelize Lightning-Qubit `probs` with OpenMP when using the `-DLQ_ENABLE_KERNEL_OMP=1` CMake argument. [(800)](https://github.com/PennyLaneAI/pennylane-lightning/pull/800)

* Implement `probs(wires)` using a bit-shift implementation akin to the gate kernels in Lightning-Qubit. [(795)](https://github.com/PennyLaneAI/pennylane-lightning/pull/795)

* Enable setting the PennyLane version when invoking, for example, `make docker-build version=master pl_version=master`. [(791)](https://github.com/PennyLaneAI/pennylane-lightning/pull/791)

Documentation

* The installation instructions for all lightning plugins have been improved. [(858)](https://github.com/PennyLaneAI/pennylane-lightning/pull/858) [(#851)](https://github.com/PennyLaneAI/pennylane-lightning/pull/851)

* Updated the README and added citation format for Lightning arXiv preprint. [(818)](https://github.com/PennyLaneAI/pennylane-lightning/pull/818)

Bug fixes

* Point to the right Lightning root folder independently from the invocation location, when configuring the project. [(874)](https://github.com/PennyLaneAI/pennylane-lightning/pull/874)

* Update dependencies and `build` command options following changes in the build system. [(863)](https://github.com/PennyLaneAI/pennylane-lightning/pull/863)

* Replace structured bindings by variables in `GateImplementationsLM.hpp`. [(856)](https://github.com/PennyLaneAI/pennylane-lightning/pull/856)

* Remove wrong `-m` when calling `setup.py`. [(854)](https://github.com/PennyLaneAI/pennylane-lightning/pull/854)

* Fix plugin-test-matrix CI/CD workflows. [(850)](https://github.com/PennyLaneAI/pennylane-lightning/pull/850)

* Set the `immutable` parameter value as `false` for the `cutensornetStateApplyTensorOperator` to allow the following `cutensornetStateUpdateTensorOperator` call. [(845)](https://github.com/PennyLaneAI/pennylane-lightning/pull/845)

* Fix cuQuantum SDK path pass-thought in CMake. [(831)](https://github.com/PennyLaneAI/pennylane-lightning/pull/831)

* Fix CUDA sync issues on AArch64 + GraceHopper. [(823)](https://github.com/PennyLaneAI/pennylane-lightning/pull/823)

* Check for the number of wires for Hermitian observables in Lightning-Tensor. Only 1-wire Hermitian observables are supported as of `cuTensorNet-v24.03.0`. [(806)](https://github.com/PennyLaneAI/pennylane-lightning/pull/806)

* Set `PL_BACKEND` for the entire `build-wheel-lightning-gpu` Docker-build stage to properly build the Lightning-GPU wheel. [(791)](https://github.com/PennyLaneAI/pennylane-lightning/pull/791)

* Fix conditions for skipping build & push steps in the Docker build workflows. [(790)](https://github.com/PennyLaneAI/pennylane-lightning/pull/790)

* Downgrade Scipy on Lightning stable version tests. [(783)](https://github.com/PennyLaneAI/pennylane-lightning/pull/783)

* Fix checkout command in test workflows for rc branches. [(777)](https://github.com/PennyLaneAI/pennylane-lightning/pull/777)

Contributors

This release contains contributions from (in alphabetical order):

Ali Asadi, Astral Cai, Ahmed Darwish, Amintor Dusko, Vincent Michaud-Rioux, Erick Ochoa Lopez, Lee J. O'Riordan, Mudit Pandey, Shuli Shu, Raul Torres, Paul Haochen Wang

0.37.0

New features since last release

* Implement Python interface to the `lightning.tensor` device. [(748)](https://github.com/PennyLaneAI/pennylane-lightning/pull/748)

* Add `inverse` support for gate operations in `lightning.tensor` in the C++ layer. [(753)](https://github.com/PennyLaneAI/pennylane-lightning/pull/753)

* Add `observable` and `expval` support to the `cutensornet`-backed `lightning.tensor` C++ layer. [(728)](https://github.com/PennyLaneAI/pennylane-lightning/pull/728)

* Add gate support to `cutensornet`-backed `lightning.tensor` C++ layer. [(718)](https://github.com/PennyLaneAI/pennylane-lightning/pull/718)

* Add `cutensornet`-backed `MPS` C++ layer to `lightning.tensor`. [(704)](https://github.com/PennyLaneAI/pennylane-lightning/pull/704)

* Add support for `C(BlockEncode)` to Lightning devices. [(743)](https://github.com/PennyLaneAI/pennylane-lightning/pull/743)

Breaking changes

* Removed the `QuimbMPS` class and the corresponding backend from `lightning.tensor`. [(737)](https://github.com/PennyLaneAI/pennylane-lightning/pull/737)

* Changed the name of `default.tensor` to `lightning.tensor` with the `quimb` backend. [(730)](https://github.com/PennyLaneAI/pennylane-lightning/pull/730)

* `dynamic_one_shot` uses shot-vectors in the auxiliary tape to tell the device how many times to repeat the tape. Lightning-Qubit is updated accordingly. [(724)](https://github.com/PennyLaneAI/pennylane-lightning/pull/724)

* `dynamic_one_shot` deals with post-selection during the post-processing phase, so Lightning-Qubit does not return `None`-valued measurements for mismatching samples anymore. [(720)](https://github.com/PennyLaneAI/pennylane-lightning/pull/720)

Improvements

* Release candidate branches automatically use the new large GitHub runner pool. [(769)](https://github.com/PennyLaneAI/pennylane-lightning/pull/769)

* Lightning-Kokkos dev wheels for MacOS (x86_64, ARM64) and Linux (aarch64) are uploaded to TestPyPI upon merging a pull request. [(765)](https://github.com/PennyLaneAI/pennylane-lightning/pull/765)

* Lightning-Kokkos Linux (x86_64) dev wheels are pushed to [Test PyPI](https://test.pypi.org/project/PennyLane-Lightning-Kokkos/) upon merging a pull request. [(#763)](https://github.com/PennyLaneAI/pennylane-lightning/pull/763)

* Change the type of tensor network objects passed to `ObservablesTNCuda` and `MeasurementsTNCuda` classes from `StateTensorT` to `TensorNetT`. [(759)](https://github.com/PennyLaneAI/pennylane-lightning/pull/759)

* Silence `NDPermuter` linting warnings. [(750)](https://github.com/PennyLaneAI/pennylane-lightning/pull/750)

* Rationalize MCM tests, removing most end-to-end tests from the native MCM test file, but keeping one that validates multiple mid-circuit measurements with any allowed return. [(754)](https://github.com/PennyLaneAI/pennylane/pull/754)

* Rename `lightning.tensor` C++ libraries. [(755)](https://github.com/PennyLaneAI/pennylane-lightning/pull/755)

* Set `state_tensor` as `const` for the `MeasurementTNCuda` class. [(753)](https://github.com/PennyLaneAI/pennylane-lightning/pull/753)

* Updated Kokkos version and support to 4.3.01. [(725)](https://github.com/PennyLaneAI/pennylane-lightning/pull/725)

* Lightning-Kokkos' functors are rewritten as functions wrapping around generic gate and generator functors templated over a coefficient interaction function. This reduces boilerplate while clarifying how the various kernels differ from one another. [(640)](https://github.com/PennyLaneAI/pennylane-lightning/pull/640)

* Update C++ and Python GitHub actions names to include the matrix info. [(717)](https://github.com/PennyLaneAI/pennylane-lightning/pull/717)

* Remove `CPhase` in favour of `CPhaseShift` in Lightning devices. [(717)](https://github.com/PennyLaneAI/pennylane-lightning/pull/717)

* The various OpenMP configurations of Lightning-Qubit are tested in parallel on different Github Actions runners. [(712)](https://github.com/PennyLaneAI/pennylane-lightning/pull/712)

* Update Linux wheels to use `manylinux_2_28` images. [(667)](https://github.com/PennyLaneAI/pennylane-lightning/pull/667)

* Add support for `qml.expval` and `qml.var` in the `lightning.tensor` device for the `quimb` interface and the MPS method. [(686)](https://github.com/PennyLaneAI/pennylane-lightning/pull/686)

* Changed the name of `lightning.tensor` to `default.tensor` with the `quimb` backend. [(719)](https://github.com/PennyLaneAI/pennylane-lightning/pull/719)

* `lightning.qubit` and `lightning.kokkos` adhere to user-specified mid-circuit measurement configuration options. [(736)](https://github.com/PennyLaneAI/pennylane-lightning/pull/736)

* Patch the C++ `Measurements.probs(wires)` method in Lightning-Qubit and Lightning-Kokkos to `Measurements.probs()` when called with all wires.
This will trigger a more optimized implementation for calculating the probabilities of the entire system. [(744)](https://github.com/PennyLaneAI/pennylane-lightning/pull/744)

* Remove the daily schedule from the "Compat Check w/PL - release/release" GitHub action. [(746)](https://github.com/PennyLaneAI/pennylane-lightning/pull/746)

* Remove the required `scipy` config file for LightningQubit. The support is now maintained by passing `SCIPY_LIBS_PATH` to the compiler. [(775)](https://github.com/PennyLaneAI/pennylane-lightning/pull/775)

Documentation

* Add installation instructions and documentation for `lightning.tensor`. [(756)](https://github.com/PennyLaneAI/pennylane-lightning/pull/756)

Bug fixes

* Don't route `probs(wires=[])` to `probs(all_wires)` in Lightning-Kokkos. [(762)](https://github.com/PennyLaneAI/pennylane-lightning/pull/762)

* `ControlledQubitUnitary` is present in the Python device but not the TOML files. It is added to the decomposition gates since it can be implemented in its alternate form of `C(QubitUnitary)`. [(767)](https://github.com/PennyLaneAI/pennylane-lightning/pull/767)

* Update the Lightning TOML files to indicate that non-commuting observables are supported. [(764)](https://github.com/PennyLaneAI/pennylane-lightning/pull/764)

* Fix regex matching issue with auto on-boarding of release candidate branch to using the large runner queue. [(774)](https://github.com/PennyLaneAI/pennylane-lightning/pull/774)

* Fix random CI failures for `lightning.tensor` Python unit tests and ignore `lightning_tensor` paths. [(761)](https://github.com/PennyLaneAI/pennylane-lightning/pull/761)

* `lightning.qubit` and `lightning.kokkos` use `qml.ops.Conditional.base` instead of `qml.ops.Conditional.then_op`. [(752)](https://github.com/PennyLaneAI/pennylane-lightning/pull/752)

* The preprocessing step in `lightning.qubit` now uses interface information to properly support the hardware-like postselection for mid-circuit measurements. [(760)](https://github.com/PennyLaneAI/pennylane-lightning/pull/760)

* Fix AVX streaming operation support with newer GCC. [(729)](https://github.com/PennyLaneAI/pennylane-lightning/pull/729)

* Revert changes calling the templated `IMAG`, `ONE`, `ZERO` functions in Kokkos kernels since they are incompatible with device execution. [(733)](https://github.com/PennyLaneAI/pennylane-lightning/pull/733)

* The `tests_lkcpu_python.yml` workflow properly checks out the release or stable version of Lightning-Qubit during the test job. [(723)](https://github.com/PennyLaneAI/pennylane-lightning/pull/723)

* Fix PennyLane Lightning-Kokkos and LightningQubit tests for stable/stable configuration. [(734)](https://github.com/PennyLaneAI/pennylane-lightning/pull/734)

* Remove the Autoray dependency from requirement files. [(736)](https://github.com/PennyLaneAI/pennylane-lightning/pull/736)

* Fix the `cuda-runtime-12-0` dependency issue on RHEL8. [(739)](https://github.com/PennyLaneAI/pennylane-lightning/pull/739)

* Fix the memory segmentation fault when initializing zero-wire Lightning-Kokkos. [(757)](https://github.com/PennyLaneAI/pennylane-lightning/pull/757)

* Remove `pennylane.ops.op_math.controlled_decompositions.ctrl_decomp_zyz` tests with `len(control_wires) > 1`. [(757)](https://github.com/PennyLaneAI/pennylane-lightning/pull/757)

* Add support for Scipy v1.14. [(776)](https://github.com/PennyLaneAI/pennylane-lightning/pull/776)

* Add pickle support for the `DevPool` object in `lightning.gpu`. [(772)](https://github.com/PennyLaneAI/pennylane-lightning/pull/772)

Contributors

This release contains contributions from (in alphabetical order):

Ali Asadi, Amintor Dusko, Lillian Frederiksen, Pietropaolo Frisoni, David Ittah, Vincent Michaud-Rioux, Lee James O'Riordan, Mudit Pandey, Shuli Shu, Jay Soni

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

Page 1 of 7

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.