From b5f546b72b2bc77c798f52e2d6a5144bee6200cc Mon Sep 17 00:00:00 2001 From: Benjamin Meyers Date: Tue, 25 Apr 2023 21:53:12 -0400 Subject: New: py-ax-platform; Update: py-botorch, py-gpytorch, py-linear-operator, py-pyro-ppl, py-typeguard (#37143) --- .../builtin/packages/py-ax-platform/package.py | 37 ++++++++++++++++++++++ .../repos/builtin/packages/py-botorch/package.py | 21 +++++++++--- .../repos/builtin/packages/py-gpytorch/package.py | 6 +++- .../builtin/packages/py-linear-operator/package.py | 4 +++ .../repos/builtin/packages/py-plotly/package.py | 8 ++++- .../repos/builtin/packages/py-pyro-ppl/package.py | 3 +- .../repos/builtin/packages/py-typeguard/package.py | 18 ++++++++--- 7 files changed, 85 insertions(+), 12 deletions(-) create mode 100644 var/spack/repos/builtin/packages/py-ax-platform/package.py diff --git a/var/spack/repos/builtin/packages/py-ax-platform/package.py b/var/spack/repos/builtin/packages/py-ax-platform/package.py new file mode 100644 index 0000000000..139468bc13 --- /dev/null +++ b/var/spack/repos/builtin/packages/py-ax-platform/package.py @@ -0,0 +1,37 @@ +# 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 PyAxPlatform(PythonPackage): + """Adaptive experimentation is the machine-learning guided process of + iteratively exploring a (possibly infinite) parameter space in order to identify + optimal configurations in a resource-efficient manner. Ax currently supports + Bayesian optimization and bandit optimization as exploration strategies. Bayesian + optimization in Ax is powered by BoTorch, a modern library for Bayesian + optimization research built on PyTorch.""" + + homepage = "https://github.com/facebook/Ax" + pypi = "ax-platform/ax-platform-0.3.1.tar.gz" + + maintainers("meyersbs") + + version("0.3.1", sha256="0bad1d16155560fdd8644308d2771edf7fd977ad41fea15a7ecf3f224bc36517") + + depends_on("py-setuptools@34.4:", type="build") + depends_on("py-setuptools-scm", type="build") + depends_on("py-botorch@0.8.3:", type=("build", "run")) + depends_on("python@3.8:", type=("build", "run")) + depends_on("py-jinja2", type=("build", "run")) + depends_on("py-pandas", type=("build", "run")) + depends_on("py-scipy", type=("build", "run")) + depends_on("py-scikit-learn", type=("build", "run")) + depends_on("py-ipywidgets", type=("build", "run")) + depends_on("py-typeguard@2.13.3", type=("build", "run")) + depends_on("py-plotly@5.12.0:", type=("build", "run")) + + def setup_build_environment(self, env): + env.set("ALLOW_BOTORCH_LATEST", True) diff --git a/var/spack/repos/builtin/packages/py-botorch/package.py b/var/spack/repos/builtin/packages/py-botorch/package.py index 3c17825aad..1f029ed097 100644 --- a/var/spack/repos/builtin/packages/py-botorch/package.py +++ b/var/spack/repos/builtin/packages/py-botorch/package.py @@ -12,17 +12,30 @@ class PyBotorch(PythonPackage): homepage = "https://botorch.org/" pypi = "botorch/botorch-0.6.4.tar.gz" - maintainers("adamjstewart") + maintainers("adamjstewart", "meyersbs") + version("0.8.4", sha256="e2c17efa8fcda3c9353bbd14ba283ddf237d66151097c0af483bbaaaac61288b") + version("0.8.3", sha256="e529f7adbb2b54f46125ae904682fc0f0d02ab8bdb9067ede521c379b355bf73") version("0.6.4", sha256="3fd28417f55749501a45378f72cd5ca7614e2e05b7b65c6b4eb9b72378bc665a") depends_on("python@3.7:", type=("build", "run")) - # TODO: replace this after concretizer learns how to concretize separate build deps + depends_on("python@3.8:", when="@0.8.3:", type=("build", "run")) depends_on("py-setuptools", type="build") - # depends_on('py-setuptools@:47', type='build') + depends_on("py-setuptools@:47", when="@:0.6.4", type="build") depends_on("py-setuptools-scm", type="build") + depends_on("py-setuptools-scm+toml", when="@0.8.3:", type="build") + depends_on("py-torch@1.12:", when="@0.8.3:", type=("build", "run")) depends_on("py-torch@1.9:", type=("build", "run")) + depends_on("py-gpytorch@1.10:", when="@0.8.4:", type=("build", "run")) + depends_on("py-gpytorch@1.9.1:", when="@0.8.3:", type=("build", "run")) depends_on("py-gpytorch@1.6:", type=("build", "run")) depends_on("py-scipy", type=("build", "run")) depends_on("py-multipledispatch", type=("build", "run")) - depends_on("py-pyro-ppl@1.8.0", type=("build", "run")) + depends_on("py-pyro-ppl@1.8.4:", when="@0.8.3:", type=("build", "run")) + depends_on("py-pyro-ppl@1.8.0", when="@:0.6.4", type=("build", "run")) + depends_on("py-linear-operator@0.4.0:", when="@0.8.4:", type=("build", "run")) + depends_on("py-linear-operator@0.3.0:", when="@0.8.3:", type=("build", "run")) + + def setup_build_environment(self, env): + if self.spec.satisfies("@0.8.3:"): + env.set("ALLOW_LATEST_GPYTORCH_LINOP", True) diff --git a/var/spack/repos/builtin/packages/py-gpytorch/package.py b/var/spack/repos/builtin/packages/py-gpytorch/package.py index dfb4f8fb1a..753081d410 100644 --- a/var/spack/repos/builtin/packages/py-gpytorch/package.py +++ b/var/spack/repos/builtin/packages/py-gpytorch/package.py @@ -15,8 +15,10 @@ class PyGpytorch(PythonPackage): homepage = "https://gpytorch.ai/" pypi = "gpytorch/gpytorch-1.2.1.tar.gz" - maintainers("adamjstewart") + maintainers("adamjstewart", "meyersbs") + version("1.10", sha256="6dc978ab9fbf220a845a4f1ea13104180fc50e6934081f421b37f6120afb7f18") + version("1.9.1", sha256="0bdbba6f6d5957a0f43ef6dc7fec39c47e8a55f632ca33760c6189f259b3ccc3") version("1.9.0", sha256="a0608184c18a1f518d6a102473427abf00f5351421e12a934530953f6887b34b") version("1.8.1", sha256="fe8e412a73a2b07027e30c65c61323de15ebcef439f5bd21200cf26551fd0e30") version("1.8.0", sha256="d6c0c77d9a61f47feac2d19456816ccea1ed48c32c72d7ea33aa13b259e2a455") @@ -40,5 +42,7 @@ class PyGpytorch(PythonPackage): depends_on("py-torch@1.5:", type=("build", "run")) depends_on("py-scikit-learn", when="@1.2:", type=("build", "run")) depends_on("py-linear-operator@0.1.1:", when="@1.9:", type=("build", "run")) + depends_on("py-linear-operator@0.2.0:", when="@1.9.1:", type=("build", "run")) + depends_on("py-linear-operator@0.4.0:", when="@1.10:", type=("build", "run")) depends_on("py-numpy", when="@1.7:1.8", type=("build", "run")) depends_on("py-scipy", when="@1.2:1.8", type=("build", "run")) diff --git a/var/spack/repos/builtin/packages/py-linear-operator/package.py b/var/spack/repos/builtin/packages/py-linear-operator/package.py index 645f53a073..dfd772002f 100644 --- a/var/spack/repos/builtin/packages/py-linear-operator/package.py +++ b/var/spack/repos/builtin/packages/py-linear-operator/package.py @@ -13,6 +13,10 @@ class PyLinearOperator(PythonPackage): homepage = "https://github.com/cornellius-gp/linear_operator/" pypi = "linear_operator/linear_operator-0.1.1.tar.gz" + maintainers("meyersbs") + + version("0.4.0", sha256="7c57c9f8f258c9785c0db4dd7625f4dd03a340313d7314cba0b633644909f5c6") + version("0.3.0", sha256="84bf572631a7e1576de6920d81600ca0fedcf6bda2f29dbaf440d6e72ce6abab") version("0.1.1", sha256="81adc1aea9e98f3c4f07f5608eb77b689bc61793e9beebfea82155e9237bf1be") depends_on("python@3.8:", type=("build", "run")) diff --git a/var/spack/repos/builtin/packages/py-plotly/package.py b/var/spack/repos/builtin/packages/py-plotly/package.py index cd233a90df..8fad0ca14f 100644 --- a/var/spack/repos/builtin/packages/py-plotly/package.py +++ b/var/spack/repos/builtin/packages/py-plotly/package.py @@ -12,13 +12,18 @@ class PyPlotly(PythonPackage): homepage = "https://plot.ly/python/" pypi = "plotly/plotly-2.2.0.tar.gz" + maintainers("meyersbs") + + version("5.14.1", sha256="bcac86d7fcba3eff7260c1eddc36ca34dae2aded10a0709808446565e0e53b93") version("5.2.2", sha256="809f0674a7991daaf4f287964d617d24e9fa44463acd5a5352ebd874cfd98b07") version("2.2.0", sha256="ca668911ffb4d11fed6d7fbb12236f8ecc6a7209db192326bcb64bdb41451a58") depends_on("python@3.6:", when="@5.2.2:", type=("build", "run")) depends_on("py-setuptools", type="build") - depends_on("py-six", type=("build", "run")) + depends_on("py-setuptools@40.8.0:", when="@5.14.1:", type="build") + depends_on("py-jupyterlab@3", when="@5:", type="build") + depends_on("py-six", when="@:5.2.2", type=("build", "run")) depends_on("py-pytz", when="@:2.2.0", type=("build", "run")) depends_on("py-decorator@4.0.6:", when="@:2.2.0", type=("build", "run")) @@ -26,3 +31,4 @@ class PyPlotly(PythonPackage): depends_on("py-requests", when="@:2.2.0", type=("build", "run")) depends_on("py-tenacity@6.2.0:", when="@5.2.2:", type=("build", "run")) + depends_on("py-packaging", when="@5.14.1:", type=("build", "run")) diff --git a/var/spack/repos/builtin/packages/py-pyro-ppl/package.py b/var/spack/repos/builtin/packages/py-pyro-ppl/package.py index ce2459fe7a..50852ef7c4 100644 --- a/var/spack/repos/builtin/packages/py-pyro-ppl/package.py +++ b/var/spack/repos/builtin/packages/py-pyro-ppl/package.py @@ -12,8 +12,9 @@ class PyPyroPpl(PythonPackage): homepage = "https://pyro.ai/" pypi = "pyro-ppl/pyro-ppl-1.8.1.tar.gz" - maintainers("adamjstewart") + maintainers("adamjstewart", "meyersbs") + version("1.8.4", sha256="766fad61e52df48885de96d41213da1f8e8c1b79ecf308ad53189fcd15c1cb41") version("1.8.1", sha256="d7c049eb2e7485a612b4dd99c24c309cc860c7cbc6b1973387034f5436d1c8d6") version("1.8.0", sha256="68e4ea30f219227dd88e55de2550d3f8c20a20adbdb67ad1e13b50868bb2ac0c") diff --git a/var/spack/repos/builtin/packages/py-typeguard/package.py b/var/spack/repos/builtin/packages/py-typeguard/package.py index 6738d13ecd..6a9af85603 100644 --- a/var/spack/repos/builtin/packages/py-typeguard/package.py +++ b/var/spack/repos/builtin/packages/py-typeguard/package.py @@ -3,20 +3,28 @@ # # SPDX-License-Identifier: (Apache-2.0 OR MIT) - from spack.package import * class PyTypeguard(PythonPackage): """ - Run-time type checker for Python + Run-time type checker for Python. """ homepage = "https://github.com/agronholm/typeguard" pypi = "typeguard/typeguard-2.12.1.tar.gz" + maintainers("meyersbs") + + version("3.0.2", sha256="fee5297fdb28f8e9efcb8142b5ee219e02375509cd77ea9d270b5af826358d5a") + version("2.13.3", sha256="00edaa8da3a133674796cf5ea87d9f4b4c367d77476e185e80251cc13dfbb8c4") version("2.12.1", sha256="c2af8b9bdd7657f4bd27b45336e7930171aead796711bc4cfc99b4731bb9d051") - depends_on("python@3.5.3:", type=("build", "run")) - depends_on("py-setuptools@42:", type="build") - depends_on("py-setuptools-scm@3.4:+toml", type="build") + depends_on("python@3.5.3:", when="@:2.13.3", type=("build", "run")) + depends_on("python@3.7.4:", when="@3.0.2:", type=("build", "run")) + depends_on("py-setuptools@42:", when="@:2.13.3", type="build") + depends_on("py-setuptools@64:", when="@3.0.2:", type="build") + depends_on("py-setuptools-scm@3.4:+toml", when="@:2.13.3", type="build") + depends_on("py-setuptools-scm@6.4:+toml", when="@3.0.2:", type="build") + depends_on("py-importlib-metadata@3.6:", when="@3.0.2: ^python@:3.9", type=("build", "run")) + depends_on("py-typing-extensions@4.4.0:", when="@3.0.2: ^python@:3.10", type=("build", "run")) -- cgit v1.2.3-60-g2f50