diff --git a/var/spack/repos/builtin/packages/py-linear-tree/package.py b/var/spack/repos/builtin/packages/py-linear-tree/package.py new file mode 100644 index 00000000000..25d96ef577a --- /dev/null +++ b/var/spack/repos/builtin/packages/py-linear-tree/package.py @@ -0,0 +1,21 @@ +# Copyright Spack Project Developers. See COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + +from spack.package import * + + +class PyLinearTree(PythonPackage): + """A python library to build Model Trees with Linear Models at the leaves.""" + + homepage = "https://github.com/cerlymarco/linear-tree" + pypi = "linear-tree/linear-tree-0.3.5.tar.gz" + git = "https://github.com/cerlymarco/linear-tree.git" + + version("0.3.5", sha256="2db9fc976bcd693a66d8d92fdd7f97314125b3330eea4778885bfe62190d586c") + + depends_on("python@3.8:", type=("build", "run")) + depends_on("py-setuptools", type="build") + depends_on("py-scikit-learn@0.24.2:", type=("build", "run")) + depends_on("py-numpy", type=("build", "run")) + depends_on("py-scipy", type=("build", "run")) diff --git a/var/spack/repos/builtin/packages/py-pyomo/package.py b/var/spack/repos/builtin/packages/py-pyomo/package.py index 4ed84791ec8..4fb9ccf7157 100644 --- a/var/spack/repos/builtin/packages/py-pyomo/package.py +++ b/var/spack/repos/builtin/packages/py-pyomo/package.py @@ -14,9 +14,13 @@ class PyPyomo(PythonPackage): pypi = "Pyomo/Pyomo-5.6.6.tar.gz" git = "https://github.com/Pyomo/pyomo.git" - # Maintainer accurate as of 2024-02-21 + # Maintainer accurate as of 2024-12-17 maintainers("mrmundt") + version("6.8.2", sha256="40d8f7b216ad1602bb254f4296591608dd94fe2c961dc1e63ca6b84fb397bed6") + version("6.8.1", sha256="dc3369193a915d6fa9a59382f1c02c17f6bf540584f641b9bd20d1f1a7f8ba8c") + version("6.8.0", sha256="a204a78d8ed5fa7ad8fa94d3c8ed4f6da38b5c02a68b8fe446bc694f16c8d1ea") + version("6.7.3", sha256="b7f0441c405af4f42f38527ae38826a5c0a4984dd7bea1fe07172789d8594770") version("6.7.2", sha256="53bef766854f7607ca1fcfe3f218594ab382f137a275cee3d925d2b2f96876bf") version("6.7.1", sha256="735b66c45937f1caa43f073d8218a4918b6de658914a699397d38d5b8c219a40") version("6.7.0", sha256="a245ec609ef2fd907269f0b8e0923f74d5bf868b2ec0e62bf2a30b3f253bd17b") @@ -76,7 +80,10 @@ class PyPyomo(PythonPackage): ############################ # python_requires - depends_on("python@3.8:3.12", when="@6.7:", type=("build", "run")) + # Preemptively tagging 3.8:3.13 for 6.8.1 and 6.8.2; 3.8 support will + # be removed in 6.9.0(MRM - Dec 2024) + depends_on("python@3.8:3.13", when="@6.8.1:6.8.2", type=("build", "run")) + depends_on("python@3.8:3.12", when="@6.7:6.8.0", type=("build", "run")) depends_on("python@3.7:3.11", when="@6.4:6.6", type=("build", "run")) depends_on("python@3.6:3.10", when="@6.3", type=("build", "run")) depends_on("python@3.6:3.9", when="@6.0:6.2", type=("build", "run")) @@ -98,9 +105,9 @@ class PyPyomo(PythonPackage): # when tests is requested depends_on("py-coverage", when="@6.1:+tests", type=("run")) depends_on("py-nose", when="@6.1:6.2+tests", type=("run")) + depends_on("py-parameterized", when="@6.1:+tests", type=("run")) depends_on("py-pytest", when="@6.3:+tests", type=("run")) depends_on("py-pytest-parallel", when="@6.3:+tests", type=("run")) - depends_on("py-parameterized", when="@6.1:+tests", type=("run")) depends_on("py-pybind11", when="@6.1:+tests", type=("run")) # when docs is requested @@ -112,18 +119,19 @@ class PyPyomo(PythonPackage): depends_on("py-sphinxcontrib-napoleon", when="@6.1:+docs", type=("run")) depends_on("py-sphinx-toolbox@2.16:", when="@6.7.1:+docs", type=("run")) depends_on("py-sphinx-jinja2-compat@0.1.1:", when="@6.7.1:+docs", type=("run")) - depends_on("py-enum-tools", when="@6.7.1:+docs", type=("run")) - # Pyomo does not support NumPy2 (May 9, 2024) - depends_on("py-numpy@1", when="@6.1:+docs", type=("run")) + depends_on("py-enum-tools", when="@6.7.1:6.8.0+docs", type=("run")) + depends_on("py-numpy@1", when="@6.1:6.7+docs", type=("run")) + depends_on("py-numpy", when="@6.8:+docs", type=("run")) depends_on("py-scipy", when="@6.4.2:+docs", type=("run")) # when optional is requested depends_on("py-dill", when="@6.1:+optional", type=("run")) depends_on("py-ipython", when="@6.1:+optional", type=("run")) + depends_on("py-linear-tree", when="@6.8:+optional", type=("run")) depends_on("py-matplotlib@:3.6.0,3.6.2:", when="@6.1:+optional", type=("run")) depends_on("py-networkx", when="@6.1:+optional", type=("run")) - # Pyomo does not support NumPy2 (May 9, 2024) - depends_on("py-numpy@1", when="@6.1:+optional", type=("run")) + depends_on("py-numpy@1", when="@6.1:6.7+optional", type=("run")) + depends_on("py-numpy", when="@6.8:+optional", type=("run")) depends_on("py-openpyxl", when="@6.1:+optional", type=("run")) depends_on("py-pint", when="@6.1:+optional", type=("run")) depends_on("py-plotly", when="@6.6:+optional", type=("run"))