summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWouter Deconinck <wdconinc@gmail.com>2023-02-27 13:51:13 -0600
committerGitHub <noreply@github.com>2023-02-27 13:51:13 -0600
commitd6ff426d4816fdfcaa1d4c3ba43b857f3532e1d9 (patch)
tree33ca7adc8da52805bdc5c526ee2397f821268125
parentc4311a250a151228e76b7b29e32f9497d79b1c0c (diff)
downloadspack-d6ff426d4816fdfcaa1d4c3ba43b857f3532e1d9.tar.gz
spack-d6ff426d4816fdfcaa1d4c3ba43b857f3532e1d9.tar.bz2
spack-d6ff426d4816fdfcaa1d4c3ba43b857f3532e1d9.tar.xz
spack-d6ff426d4816fdfcaa1d4c3ba43b857f3532e1d9.zip
py-awkward: new version 1.10.*, 2.0.* (#35549)
* py-awkward: new version 1.10.*, 2.0.* Lots of changes in 2.0.*, see https://github.com/scikit-hep/awkward/releases. This will need some extra testing. * py-awkward: hatchling * Update var/spack/repos/builtin/packages/py-awkward/package.py * Update var/spack/repos/builtin/packages/py-awkward/package.py * py-scikit-build-core: new and improved py-scikit-build * py-awkward-cpp: new package * py-awkward: add depends_on py-awkward-cpp * py-awkward: depends_on py-packaging * py-awkward-cpp: new versions pinned by py-awkward * py-scikit-build-core: additional depends_on * py-awkward: branch master deprecated * py-pytest-subprocess: new package * py-pytest: new version 7.2.1 * py-scikit-build-core: add tests dependencies * [@spackbot] updating style on behalf of wdconinc * py-scikit-build-core: two more test dependencies * py-pytest: depends_on py-exceptiongroup * py-awkward: add pytest support * py-pytest: suggestions from review * py-scikit-build-core: suggestions from review * Update var/spack/repos/builtin/packages/py-awkward-cpp/package.py Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com> * py-awkward: depends_on pyyaml when @:1, order old deps last * [@spackbot] updating style on behalf of wdconinc * py-awkward: move some opt deps to test, order test deps * py-awkward: remove test dependencies --------- Co-authored-by: wdconinc <wdconinc@users.noreply.github.com> Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
-rw-r--r--var/spack/repos/builtin/packages/py-awkward-cpp/package.py31
-rw-r--r--var/spack/repos/builtin/packages/py-awkward/package.py43
-rw-r--r--var/spack/repos/builtin/packages/py-pytest-subprocess/package.py21
-rw-r--r--var/spack/repos/builtin/packages/py-pytest/package.py15
-rw-r--r--var/spack/repos/builtin/packages/py-scikit-build-core/package.py58
5 files changed, 157 insertions, 11 deletions
diff --git a/var/spack/repos/builtin/packages/py-awkward-cpp/package.py b/var/spack/repos/builtin/packages/py-awkward-cpp/package.py
new file mode 100644
index 0000000000..e187e8a82e
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-awkward-cpp/package.py
@@ -0,0 +1,31 @@
+# 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 PyAwkwardCpp(PythonPackage):
+ """py-awkward-cpp provides precompiled routines for the py-awkward package.
+ It is not useful on its own, only as a dependency for py-awkward."""
+
+ git = "https://github.com/scikit-hep/awkward.git"
+ pypi = "awkward-cpp/awkward-cpp-9.tar.gz"
+ homepage = "https://awkward-array.org"
+
+ maintainers("vvolkl", "wdconinc")
+
+ version("9", sha256="db1c91c21f88b89a39b46176edc67a08b37f7283c16a2ed5159e3c874613c61a")
+ version("8", sha256="a51b554490b3197fc5433822becb2e8208bf78fca82ffa314d839b72b3cc4169")
+ version("7", sha256="dde733575b2a5ae5b946fe8667b4ae842d937d3b36ebb383d53dc53ea86ea65d")
+ version("6", sha256="58e32afa8aa44c365e764f4b5d07637c79a79be2da7cfbaa3469d8bd26b0bfa2")
+ version("5", sha256="e5d6a90d98a14dab36598015e69243b9f83b8851556104cbe778ca9c79923656")
+ version("4", sha256="fbc4b5e552873e00ffb6286941efc7b629e4fbc4752e28afb9b54854128937f7")
+ version("3", sha256="6070557762bd95d3642ad9c585609db51f899a1e79ce4f41568835efd7d6e066")
+ version("2", sha256="5e63f43e3135f76db81e0924a74ecf4870f585c11a9f432568b377c04028868c")
+
+ depends_on("python@3.7:", type=("build", "run"))
+ depends_on("py-scikit-build-core@0.1.3:+pyproject", type="build")
+ depends_on("py-pybind11", type=("build", "link"))
+ depends_on("py-numpy@1.14.5:", type=("build", "run"))
diff --git a/var/spack/repos/builtin/packages/py-awkward/package.py b/var/spack/repos/builtin/packages/py-awkward/package.py
index d81393d918..d033d25a29 100644
--- a/var/spack/repos/builtin/packages/py-awkward/package.py
+++ b/var/spack/repos/builtin/packages/py-awkward/package.py
@@ -15,7 +15,20 @@ class PyAwkward(PythonPackage):
maintainers("vvolkl")
- version("master", branch="master")
+ version("main", branch="main")
+ version("master", branch="main", deprecated=True)
+ version("2.0.8", sha256="32a57c29e13a2ae3bc1e6ac53637825bbd22c4286696163bd41a1dec284a8ee5")
+ version("2.0.7", sha256="05397d659a5a8889c8afae193c0ea51585683038ecc7f666f3da9835ba2f6492")
+ version("2.0.6", sha256="9e5133ba6be89ff1210d862edf83824fe0c1f21dccfe1d52161329760ffac821")
+ version("2.0.5", sha256="2a07bb0409411782fea226de5c817eb6e48db06d64323977581e4f304f911029")
+ version("2.0.4", sha256="fc36ef5934ced78b6d8a40bc94d3ea59667725516b36afea5ed1ef794263a7c7")
+ version("2.0.3", sha256="563bb70ef7673ba4dd9dd7116493d1b661bba729305d1fa50efa8cc38ab43da9")
+ version("2.0.2", sha256="c7b8194be5f9b1f19ed64c2a4b01d96b1b5a9a357e5a96186c6692d6b4cf439b")
+ version("2.0.1", sha256="97fa7e119cc31f479b660a8213df5ba8c938b66f76aadf90b8bdb956c5b5654b")
+ version("2.0.0", sha256="3782b34643083d6ee7644e9fdb3daeafc4b6030a667f219fd61cb7b234976b68")
+ version("1.10.2", sha256="303bc0919f0932db3e78a9254c17fcdeb125e4be65cd894b40dfbc3bfddfc054")
+ version("1.10.1", sha256="c6394ed25fb14a086d63621d9d84fdc228f5d42a64586f215731b36fde17034b")
+ version("1.10.0", sha256="1d89c7244e6184b35f4bce6bd08ff82eb2ef60be67f572923bc6aaee35dab544")
version("1.9.0", sha256="cad799237e4370b50f77e716e78dd3565a7b3fd82fcd5a41a76aa1512d51075d")
version("1.8.0", sha256="6655fa22d1b1d1dcb9ccee0d502350ab90c53467a10b540b7624422b594d2e72")
version("1.7.0", sha256="e4e642dfe496d2acb245c90e37dc18028e25d5e936421e7371ea6ba0fde6435a")
@@ -31,13 +44,33 @@ class PyAwkward(PythonPackage):
patch("pybind11.patch", when="@:1.2.2")
patch("pybind11_02.patch", when="@1.2.3:1.8.0")
- depends_on("py-setuptools@42.0:", type=("build", "run"))
- depends_on("py-pyyaml", type="build")
+ depends_on("py-hatchling@1.10:", when="@2:", type="build")
+ depends_on("py-hatch-fancy-pypi-readme", when="@2:", type="build")
+ depends_on("py-setuptools@42.0:", when="@:1", type=("build", "run"))
+ depends_on("py-pyyaml", when="@:1", type="build")
+
+ _awkward_to_awkward_cpp_map = [
+ ("@2.0.0", "@2"),
+ ("@2.0.1", "@3"),
+ ("@2.0.2", "@4"),
+ ("@2.0.3:2.0.4", "@5"),
+ ("@2.0.5", "@6"),
+ ("@2.0.6", "@7"),
+ ("@2.0.7", "@8"),
+ ("@2.0.8", "@9"),
+ ]
+ for _awkward, _awkward_cpp in _awkward_to_awkward_cpp_map:
+ depends_on("py-awkward-cpp{}".format(_awkward_cpp), when=_awkward, type=("build", "run"))
depends_on("python@2.7:2.8,3.5:", type=("build", "run"))
- depends_on("python@3.6:", when="@1.9.0:", type=("build", "run"))
- depends_on("py-numpy@1.13.1:", type=("build", "run"))
+ depends_on("python@3.6:", when="@1.9:", type=("build", "run"))
+ depends_on("python@3.7:", when="@1.10:", type=("build", "run"))
+ depends_on("py-numpy@1.13.1:", when="@:1", type=("build", "run"))
+ depends_on("py-numpy@1.14.5:", when="@2:", type=("build", "run"))
depends_on("py-pybind11", type=("build", "link"))
+ depends_on("py-importlib-resources", when="@2: ^python@:3.8", type=("build", "run"))
+ depends_on("py-typing-extensions@4.1:", when="@2: ^python@:3.10", type=("build", "run"))
+ depends_on("py-packaging", when="@2:", type=("build", "run"))
depends_on("dlpack", when="@1.0.0:")
depends_on("rapidjson")
depends_on("cmake@3.13:", type="build")
diff --git a/var/spack/repos/builtin/packages/py-pytest-subprocess/package.py b/var/spack/repos/builtin/packages/py-pytest-subprocess/package.py
new file mode 100644
index 0000000000..f825c1f8fb
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-pytest-subprocess/package.py
@@ -0,0 +1,21 @@
+# 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 PyPytestSubprocess(PythonPackage):
+ """A plugin to fake subprocess for pytest."""
+
+ homepage = "https://pytest-subprocess.readthedocs.io/en/latest/"
+ pypi = "pytest-subprocess/pytest-subprocess-1.5.0.tar.gz"
+ git = "https://github.com/aklajnert/pytest-subprocess"
+
+ maintainers("wdconinc")
+
+ version("1.5.0", sha256="d7693b96f588f39b84c7b2b5c04287459246dfae6be1dd4098937a728ad4fbe3")
+
+ depends_on("py-setuptools", type="build")
+ depends_on("py-pytest@4:", type=("build", "run"))
diff --git a/var/spack/repos/builtin/packages/py-pytest/package.py b/var/spack/repos/builtin/packages/py-pytest/package.py
index ff7ba5b428..fcbf83c9f0 100644
--- a/var/spack/repos/builtin/packages/py-pytest/package.py
+++ b/var/spack/repos/builtin/packages/py-pytest/package.py
@@ -12,6 +12,7 @@ class PyPytest(PythonPackage):
homepage = "https://pytest.org/"
pypi = "pytest/pytest-5.2.1.tar.gz"
+ version("7.2.1", sha256="d45e0952f3727241918b8fd0f376f5ff6b301cc0777c6f9a556935c92d8a7d42")
version("7.1.3", sha256="4f365fec2dff9c1162f834d9f18af1ba13062db0c708bf7b946f8a5c76180c39")
version("6.2.5", sha256="131b36680866a76e6781d13f101efb86cf674ebb9762eb70d3082b6f29889e89")
version("6.2.4", sha256="50bcad0a0b9c5a72c8e4e7c9855a3ad496ca6a881a3641b4260605450772c54b")
@@ -63,17 +64,19 @@ class PyPytest(PythonPackage):
depends_on("py-pluggy@0.7:", when="@3.7:4.3", type=("build", "run"))
depends_on("py-pluggy@0.5:0.7", when="@3.6.4:3.6", type=("build", "run"))
depends_on("py-pluggy@0.5:0.6", when="@:3.6.3", type=("build", "run"))
- depends_on("py-py@1.8.2:", when="@6:", type=("build", "run"))
- depends_on("py-py@1.5.0:", when="@3.3:5", type=("build", "run"))
- depends_on("py-py@1.4.33:", when="@3.1.2:3.2.3,3.2.5:3.2", type=("build", "run"))
- depends_on("py-py@1.4.33:1.4", when="@3.2.4", type=("build", "run"))
- depends_on("py-py@1.4.29:", when="@:3.1.1", type=("build", "run"))
- depends_on("py-tomli@1:", when="@7:", type=("build", "run"))
depends_on("py-colorama", when="platform=windows", type=("build", "run"))
+ depends_on("py-exceptiongroup@1:", when="@7: ^python@:3.10", type=("build", "run"))
depends_on("py-importlib-metadata@0.12:", when="@4.6:5.0", type=("build", "run"))
depends_on("py-importlib-metadata@0.12:", when="@5.1: ^python@:3.7", type=("build", "run"))
+ depends_on("py-tomli@1:", when="@7.1: ^python@:3.10", type=("build", "run"))
+ depends_on("py-tomli@1:", when="@7.0", type=("build", "run"))
# Historic dependencies
+ depends_on("py-py@1.8.2:", when="@6:7.1", type=("build", "run"))
+ depends_on("py-py@1.5.0:", when="@3.3:5", type=("build", "run"))
+ depends_on("py-py@1.4.33:", when="@3.1.2:3.2.3,3.2.5:3.2", type=("build", "run"))
+ depends_on("py-py@1.4.33:1.4", when="@3.2.4", type=("build", "run"))
+ depends_on("py-py@1.4.29:", when="@:3.1.1", type=("build", "run"))
depends_on("py-atomicwrites@1.0:", when="@5.3:7.1.2 platform=windows", type=("build", "run"))
depends_on("py-atomicwrites@1.0:", when="@3.6:5.2", type=("build", "run"))
depends_on("py-toml", when="@6", type=("build", "run"))
diff --git a/var/spack/repos/builtin/packages/py-scikit-build-core/package.py b/var/spack/repos/builtin/packages/py-scikit-build-core/package.py
new file mode 100644
index 0000000000..1733dc7706
--- /dev/null
+++ b/var/spack/repos/builtin/packages/py-scikit-build-core/package.py
@@ -0,0 +1,58 @@
+# 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 PyScikitBuildCore(PythonPackage):
+ """scikit-build-core is a doubly improved build system generator
+ for CPython C/C++/Fortran/Cython extensions. It features several
+ improvements over the classic scikit-build build system generator."""
+
+ homepage = "https://github.com/scikit-build/scikit-build-core"
+ pypi = "scikit_build_core/scikit_build_core-0.2.0.tar.gz"
+ git = "https://github.com/scikit-build/scikit-build-core"
+
+ maintainers("wdconinc")
+
+ version("0.2.0", sha256="d2a76d9447a412038dc5e25dd259b03c25278661a0c7c3da766bb971c1a9acd2")
+
+ variant("pyproject", default=False, description="Enable pyproject.toml support")
+
+ depends_on("python@3.7:", type=("build", "run"))
+
+ # Build system
+ depends_on("py-hatchling", type="build")
+ depends_on("py-hatch-vcs", type="build")
+
+ # Dependencies
+ depends_on("py-exceptiongroup", when="^python@:3.10", type=("build", "run"))
+ depends_on("py-importlib-resources@1.3:", when="^python@:3.8", type=("build", "run"))
+ depends_on("py-packaging@20.9:", type=("build", "run"))
+ depends_on("py-tomli@1.1:", when="^python@:3.10", type=("build", "run"))
+ depends_on("py-typing-extensions@3.10:", when="^python@:3.7", type=("build", "run"))
+ depends_on("cmake@3.15:", type=("build", "run"))
+
+ # Optional dependencies
+ depends_on("py-pyproject-metadata@0.5:", when="+pyproject", type=("build", "run"))
+ depends_on("py-pathspec@0.10.1:", when="+pyproject", type=("build", "run"))
+
+ # Test dependencies
+ depends_on("py-build +virtualenv", type="test")
+ depends_on("py-cattrs@22.2:", type="test")
+ depends_on("py-importlib-metadata", when="^python@:3.7", type="test")
+ depends_on("py-pathspec@0.10.1:", type="test")
+ depends_on("py-pybind11", type="test")
+ depends_on("py-pyproject-metadata@0.5:", type="test")
+ depends_on("py-pytest@7:", type="test")
+ depends_on("py-pytest-subprocess@1.5:", type="test")
+ depends_on("py-setuptools", type="test")
+ depends_on("py-wheel", type="test")
+
+ @run_after("install")
+ @on_package_attributes(run_tests=True)
+ def install_test(self):
+ with working_dir("tests"):
+ which("pytest")()