summaryrefslogtreecommitdiff
path: root/var/spack/repos/builtin/packages/py-projectq/package.py
blob: 924304a2335662f0b6c663d08923aeb1adb64dff (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# Copyright 2013-2023 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 PyProjectq(PythonPackage):
    """
    ProjectQ is an open-source software framework for quantum computing started
    at ETH Zurich. It allows users to implement their quantum programs in
    Python using a powerful and intuitive syntax. ProjectQ can then translate
    these programs to any type of back-end, be it a simulator run on a
    classical computer of an actual quantum chip.
    """

    # Homepage and git repository
    homepage = "https://projectq.ch"
    git = "https://github.com/projectq-framework/projectq.git"

    license("Apache-2.0")

    # Versions
    version("develop", branch="develop")
    version("0.3.6", commit="fa484fe037a3a1772127bbd00fe4628ddba34611")

    # Dependencies
    depends_on("py-setuptools", type=("build"))
    depends_on("py-numpy", type=("build", "run"))
    depends_on("py-scipy", type=("build", "run"))
    depends_on("py-future", type=("build", "run"))
    depends_on("py-requests", type=("build", "run"))
    # conflict with pybind11@2.2.0 -> see requirements.txt
    depends_on("py-pybind11@1.7:2.1,2.2.1:", type=("build", "run"))