Adding py-strawberryfields from Xanadu, and its deps (#34849)

* adding 1st version of py-strawberryfields

* py-strawberryfields: minor edit

* added backbone for 4x new SF dependencies

* edits to SF and its 4x new deps

* added all deps for SF

* added one version to py-lark-parser

* py-quantum-xir with tarball from github

* Update var/spack/repos/builtin/packages/py-strawberryfields/package.py

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>

* updated version for py-quantum-xir : pypy fixed

* py-pennylane: added pythonpackage.maintainers, too

Co-authored-by: Tamara Dahlgren <35777542+tldahlgren@users.noreply.github.com>
This commit is contained in:
Marco De La Pierre 2023-01-14 02:39:29 +08:00 committed by GitHub
parent 88a604e7f4
commit 85e2fb0c4d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 142 additions and 1 deletions

View File

@ -17,6 +17,7 @@ class PyAntlr4Python3Runtime(PythonPackage):
version("4.10", sha256="061a49bc72ae05a35d9b61c0ba0ac36c0397708819f02fbfb20a80e47d287a1b")
version("4.9.3", sha256="f224469b4168294902bb1efa80a8bf7855f24c99aef99cbefc1bcd3cce77881b")
version("4.9.2", sha256="31f5abdc7faf16a1a6e9bf2eb31565d004359b821b09944436a34361929ae85a")
version("4.8", sha256="15793f5d0512a372b4e7d2284058ad32ce7dd27126b105fb0b2245130445db33")
version("4.7.2", sha256="168cdcec8fb9152e84a87ca6fd261b3d54c8f6358f42ab3b813b14a7193bb50b")

View File

@ -12,6 +12,7 @@ class PyLarkParser(PythonPackage):
homepage = "https://github.com/lark-parser/lark/"
pypi = "lark-parser/lark-parser-0.6.2.tar.gz"
version("0.12.0", sha256="15967db1f1214013dca65b1180745047b9be457d73da224fcda3d9dd4e96a138")
version(
"0.11.3",
sha256="e29ca814a98bb0f81674617d878e5f611cb993c19ea47f22c80da3569425f9bd",

View File

@ -13,7 +13,7 @@ class PyPennylane(PythonPackage):
homepage = "https://github.com/XanaduAI/pennylane"
pypi = "PennyLane/PennyLane-0.28.0.tar.gz"
maintainers = ["marcodelapierre"]
maintainers = PythonPackage.maintainers + ["marcodelapierre"]
version("0.28.0", sha256="2a6100c00277c1eb59eab6856cdad7b1237e9d1fbda98b1e15020bd5a64b10a8")

View File

@ -16,8 +16,12 @@ class PyPydantic(PythonPackage):
version("1.9.2", sha256="8cb0bc509bfb71305d7a59d00163d5f9fc4530f0881ea32c74ff4f74c85f3d3d")
version("1.8.2", sha256="26464e57ccaafe72b7ad156fdaa4e9b9ef051f69e175dbbb463283000c05ab7b")
variant("dotenv", default=False, description="Install requirements for pydantic.dotenv")
depends_on("python@3.7:", when="@1.10.2:", type=("build", "run"))
depends_on("python@3.6.1:", type=("build", "run"))
depends_on("py-setuptools", type="build")
depends_on("py-typing-extensions@4.1.0:", when="@1.10.2:", type=("build", "run"))
depends_on("py-typing-extensions@3.7.4.3:", type=("build", "run"))
depends_on("py-python-dotenv@0.10.4:", when="+dotenv", type=("build", "run"))

View File

@ -0,0 +1,26 @@
# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack.package import *
class PyQuantumBlackbird(PythonPackage):
"""Blackbird is a quantum assembly language for continuous-variable quantum
computation, that can be used to program Xanadus quantum photonics
hardware and Strawberry Fields simulator.
"""
homepage = "https://github.com/XanaduAI/blackbird"
pypi = "quantum-blackbird/quantum-blackbird-0.5.0.tar.gz"
version("0.5.0", sha256="065c73bf5263ce8f9b72dcd2b434f3bfbb471f0a6907c97a617ec0c8bde01db3")
depends_on("py-setuptools", type="build")
depends_on("py-numpy@1.16:", type=("build", "run"))
depends_on("py-sympy", type=("build", "run"))
depends_on("py-antlr4-python3-runtime@4.9.2", type=("build", "run"))
depends_on("py-networkx", type=("build", "run"))

View File

@ -0,0 +1,21 @@
# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack.package import *
class PyQuantumXir(PythonPackage):
"""XIR is an intermediate representation language for quantum circuits."""
homepage = "https://github.com/XanaduAI/xir"
pypi = "quantum-xir/quantum-xir-0.2.2.tar.gz"
version("0.2.2", sha256="4b6a60bd3dcddb455e33b036b320cf634c5bd772ecea031b110fc5fb2fcf8a51")
depends_on("python@3.7:", type=("build", "run"))
depends_on("py-setuptools", type="build")
depends_on("py-lark-parser@0.11.0:", type=("build", "run"))

View File

@ -0,0 +1,35 @@
# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack.package import *
class PyStrawberryfields(PythonPackage):
"""Open source library for continuous-variable quantum computation"""
homepage = "https://github.com/XanaduAI/StrawberryFields"
pypi = "StrawberryFields/StrawberryFields-0.23.0.tar.gz"
maintainers = PythonPackage.maintainers + ["marcodelapierre"]
version("0.23.0", sha256="bfe94867cdee8e2904752573f1ff46b78d9f373da16a1cfa31e1bd6cdf2e3cb0")
depends_on("python@3.7:", type=("build", "run"))
depends_on("py-setuptools", type="build")
depends_on("py-networkx@2.0:", type=("build", "run"))
depends_on("py-numba", type=("build", "run"))
depends_on("py-numpy@1.17.4:", type=("build", "run"))
depends_on("py-python-dateutil@2.8.0:", type=("build", "run"))
depends_on("py-quantum-blackbird@0.3.0:", type=("build", "run"))
depends_on("py-requests@2.22.0:", type=("build", "run"))
depends_on("py-scipy@1.0.0:", type=("build", "run"))
depends_on("py-sympy@1.5:", type=("build", "run"))
depends_on("py-thewalrus@0.18.0:", type=("build", "run"))
depends_on("py-toml", type=("build", "run"))
depends_on("py-urllib3@1.25.3:", type=("build", "run"))
depends_on("py-quantum-xir@0.1.1:", type=("build", "run"))
depends_on("py-xanadu-cloud-client@0.2.1:", type=("build", "run"))

View File

@ -0,0 +1,27 @@
# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack.package import *
class PyThewalrus(PythonPackage):
"""A library for the calculation of hafnians, Hermite polynomials and
Gaussian boson sampling.
"""
homepage = "https://github.com/XanaduAI/thewalrus"
pypi = "thewalrus/thewalrus-0.19.0.tar.gz"
version("0.19.0", sha256="06ff07a14cd8cd4650d9c82b8bb8301ef9a58dcdd4bafb14841768ccf80c98b9")
depends_on("python@3.7:", type=("build", "run"))
depends_on("py-setuptools", type="build")
depends_on("py-dask+delayed", type=("build", "run"))
depends_on("py-numba@0.49.1:", type=("build", "run"))
depends_on("py-scipy@1.2.1:", type=("build", "run"))
depends_on("py-sympy@1.5.1:", type=("build", "run"))
depends_on("py-numpy@1.19.2:", type=("build", "run"))

View File

@ -0,0 +1,26 @@
# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack.package import *
class PyXanaduCloudClient(PythonPackage):
"""The Xanadu Cloud Client (XCC) is a Python API and CLI for the Xanadu Cloud."""
homepage = "https://github.com/XanaduAI/xanadu-cloud-client"
pypi = "xanadu-cloud-client/xanadu-cloud-client-0.3.0.tar.gz"
version("0.3.0", sha256="ef65ab7a629e7cd801b20bca8d300d278bf0136c6157c49e12d52c9108171edf")
depends_on("python@3.7:", type=("build", "run"))
depends_on("py-setuptools", type="build")
depends_on("py-appdirs", type=("build", "run"))
depends_on("py-fire", type=("build", "run"))
depends_on("py-numpy", type=("build", "run"))
depends_on("py-pydantic+dotenv", type=("build", "run"))
depends_on("py-python-dateutil", type=("build", "run"))
depends_on("py-requests", type=("build", "run"))