diff --git a/packages/py-bluepyefe/package.py b/packages/py-bluepyefe/package.py index df41cbc82b834f1dff745497c9870c3f64a8850a..fdbba84896df2fe30bfec9da68871e87523f7f82 100644 --- a/packages/py-bluepyefe/package.py +++ b/packages/py-bluepyefe/package.py @@ -12,9 +12,10 @@ class PyBluepyefe(PythonPackage): """Blue Brain Python E-feature extraction""" homepage = "https://github.com/BlueBrain/BluePyEfe" - pypi = "bluepyefe/bluepyefe-0.3.13.tar.gz" + pypi = "bluepyefe/bluepyefe-2.2.18.tar.gz" git = "https://github.com/BlueBrain/BluePyEfe.git" + version("2.3.6", sha256="e52117372c41bfa3796e7a340d04b9c4b14f9ebcaacb9d36e947f3d041eb7e35") version("2.2.18", sha256="bfb50c6482433ec2ffb4b65b072d2778bd89ae50d92dd6830969222aabb30275") depends_on("py-setuptools", type="build") @@ -25,8 +26,7 @@ class PyBluepyefe(PythonPackage): depends_on("py-efel", type=("build", "run")) depends_on("py-scipy", type=("build", "run")) depends_on("py-h5py", type=("build", "run")) - depends_on("py-igor", type=("build", "run")) + depends_on("py-igor2", type=("build", "run"), when="@2.3.6:") - def setup_run_environment(self, env): - env.set("NEURON_INIT_MPI", "0") - env.unset("PMI_RANK") + depends_on("py-numpy@:1.23", type=("build", "run"), when="@2.2.18") + depends_on("py-igor", type=("build", "run"), when="@2.2.18") \ No newline at end of file diff --git a/packages/py-bluepymm/package.py b/packages/py-bluepymm/package.py index 5fa0d410efb5f17afb9c0b097d9103a06329fc71..7b1a4c2c57c21cc53b04efab833fa99f8f4a89f6 100644 --- a/packages/py-bluepymm/package.py +++ b/packages/py-bluepymm/package.py @@ -14,15 +14,12 @@ class PyBluepymm(PythonPackage): homepage = "https://github.com/BlueBrain/BluePyMM" pypi = "bluepymm/bluepymm-0.7.49.tar.gz" + version("0.8.7", sha256="f0e5d4e113b19f71398d0796d5182f322c48c2ab07793ce8d0e4771a251914ab") version("0.7.65", sha256="024b009decd8d967b3b885421196d53670e3c0a6b75aaaa55559f148b0b0d7d4") depends_on("py-setuptools", type="build") depends_on("py-bluepyopt", type="run") depends_on("py-matplotlib", type="run") - # The below dependency should disappear once - # the matplotlib package is fixed - # not needed with EBRAINS python version: - # depends_on("py-backports-functools-lru-cache", type="run", when="^python@:3.3.99") depends_on("py-pandas", type="run") depends_on("py-numpy", type="run") depends_on("py-ipyparallel", type="run") diff --git a/packages/py-bluepyopt/package.py b/packages/py-bluepyopt/package.py index 16a10d59fbbbaaf96b1ab3a48c39535655efddb1..72589be7fdae330482547ee75ae1f8f318fb5512 100644 --- a/packages/py-bluepyopt/package.py +++ b/packages/py-bluepyopt/package.py @@ -15,35 +15,26 @@ class PyBluepyopt(PythonPackage): pypi = "bluepyopt/bluepyopt-1.9.27.tar.gz" # NOTE : while adding new release check pmi_rank.patch compatibility - version("1.13.86", sha256="37b4abcc4a53ed5af50fa0b3bc4d0003332b7f2f2b6e4d9f0b9de8638254e753") - version("1.10.38", sha256="fb1411c6a8fbfac52d36b837225bae882fd6524acfb4d0580189312ef3c1cfcc") - version("1.9.37", sha256="4399af71de48b288832e92f0de73c431bf88d6e76e2c4ea250c3b38fb38a45a8") - version("1.9.27", sha256="4cce15b92b32311c808cae5e005b664deb6e8dc5df4ca13ea7b59252ae346522") - version("1.8.68", sha256="b9d432840aab89d4863c935d3dc604816441eba02d731422b92056cee751ca9c") - version("1.6.56", sha256="1c57c91465ca4b947fe157692e7004a3e6df02e4151e3dc77a8831382a8f1ab9") - version("1.8.68", sha256="b9d432840aab89d4863c935d3dc604816441eba02d731422b92056cee751ca9c") - version("1.9.12", sha256="7b623ab9168f460a85d952719ca5249248fc95e6f7a02658b0673b2baa0a8fc6") + version("1.14.4", sha256="7567fd736053250ca06030f67ad93c607b100c2b98df8dc588c26b64cb3e171c") # patch required to avoid hpe-mpi linked mechanism library - patch("pmi_rank.patch", when="@1.9.27:") + patch("pmi_rank.patch") - variant("neuron", default=True, description="Use BluePyOpt together with NEURON") + variant("scoop", default=False, description="Use BluePyOpt together with py-scoop") depends_on("py-setuptools", type="build") - depends_on("py-numpy", type=("build", "run")) - depends_on("py-pandas", type=("build", "run")) - depends_on("py-deap", type=("build", "run")) - depends_on("py-deap@1.3.3:", type=("build","run"), when="@1.13.86:") - depends_on("py-efel", type=("build", "run")) + depends_on("py-numpy@1.6:", type=("build", "run")) + depends_on("py-pandas@0.18:", type=("build", "run")) + depends_on("py-deap@1.3.3:", type=("build", "run")) + depends_on("py-efel@2.13:", type=("build", "run")) depends_on("py-ipyparallel", type=("build", "run")) - depends_on("py-pickleshare", type=("build", "run")) - depends_on("py-jinja2", type=("build", "run")) + depends_on("py-pickleshare@0.7.3:", type=("build", "run")) + depends_on("py-jinja2@2.8:", type=("build", "run")) depends_on("py-future", type=("build", "run")) - depends_on("py-pebble@4.3.10:", type=("build", "run")) - depends_on("py-scoop@0.7:", type=("build", "run"), when="@:1.9.37") - depends_on("neuron", type=("build", "run"), when="+neuron") + depends_on("py-pebble@4.6:", type=("build", "run")) + depends_on("py-scoop@0.7:", type=("build", "run"), when="+scoop") + depends_on("neuron@7.4:", type=("build", "run")) def setup_run_environment(self, env): env.unset("PMI_RANK") env.set("NEURON_INIT_MPI", "0") - env.prepend_path("PATH", self.spec["py-ipyparallel"].prefix.bin) diff --git a/packages/py-efel/package.py b/packages/py-efel/package.py index c7b5d571240653f1b86b62a9d5277a7e07eee98f..f2c0b639e5ae406980b3c1c2a9549e10d1667f5f 100644 --- a/packages/py-efel/package.py +++ b/packages/py-efel/package.py @@ -21,8 +21,11 @@ class PyEfel(PythonPackage): homepage = "https://github.com/BlueBrain/eFEL" pypi = "efel/efel-3.0.80.tar.gz" - version("4.0.4", sha256="258c506776df609edc799338fd773e78f0f0315fd6f3e2f969478bda401a8894") + version("5.5.7", sha256="28fdd07ccb027c8a35823d3ff4c407b3704a7023754eec6110674825dc7b749d") + version("5.2.0", sha256="ed2c5efe22a4c703a4d9e47775b939009e1456713ac896898ebabf177c60b1dc") depends_on("py-setuptools", type="build") - depends_on("py-numpy", type="run") - depends_on("py-six", type="run") + + depends_on("py-neo@0.5.2:", type=("build", "run")) + depends_on("py-typing-extensions@4.8:", type=("build", "run")) + depends_on("py-numpy@1.6:", type=("build", "run")) diff --git a/packages/py-igor2/package.py b/packages/py-igor2/package.py new file mode 100644 index 0000000000000000000000000000000000000000..ad6c60c3de9303b51df6c670cf6fe63cf505374f --- /dev/null +++ b/packages/py-igor2/package.py @@ -0,0 +1,27 @@ +# Copyright 2013-2024 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 * + + +# begin EBRAINS: package is backported from Spack develop (b70cb60) +class PyIgor2(PythonPackage): + """igor2: interface for reading binary IGOR files.""" + + # pypi only has no sdist + homepage = "https://github.com/AFM-analysis/igor2" + url = "https://pypi.io/packages/py3/i/igor2/igor2-0.5.3-py3-none-any.whl" + + license("LGPL-3.0-or-later") + + version( + "0.5.3", + sha256="bb7b54a5926ec640e0e9176f46e0dd88ad956fec2d17ba3b0a7687eba82cefee", + expand=False, + ) + + depends_on("python@3.8:3", type=("build", "run")) + depends_on("py-numpy@1.25.1:", type=("build", "run")) +# end EBRAINS diff --git a/packages/py-libsonata/package.py b/packages/py-libsonata/package.py index b8b9695afd610e318efe161acbd6baab951a0283..b833c75b6d4e3f2253ae3e41f273d89d6d46d786 100644 --- a/packages/py-libsonata/package.py +++ b/packages/py-libsonata/package.py @@ -15,27 +15,22 @@ class PyLibsonata(PythonPackage): git = "https://github.com/BlueBrain/libsonata.git" pypi = "libsonata/libsonata-0.1.14.tar.gz" - submodules = True - - version("develop", branch="master", get_full_repo=True) - version("0.1.23", sha256="815aac5bdaa5d025b5f3558ac4d3acb9ebcb070594109af4c0844f47ec701c1d") - version("0.1.22", sha256="4adbb32ed2fac5d3c74bde03a5e2adb319724d324318a2a7dc2ef3c30f817b2c") - version("0.1.21", sha256="5b280d82cb21a745d9cdb736c00446e0209494c21d2d17a2c878fabf23a08b68") - version("0.1.20", sha256="f2e63a26dcf045bb7424e236e12f9b9ef8c46c356e953d26555f313f5763651e") - version("0.1.18", sha256="1b13728cbffbcb74cc864c7bc186e568945e25c260f732ffa872437c081fd9b4") - version("0.1.17", sha256="d122dd9fce82c8ce1621746ed9029e7db0d319fb94f6a737fb14f572f632f7b4") - version("0.1.16", sha256="49ced56992ba8be8aa6638525e8078b7e3ce0d5c05c34ee90746cab02bb5185a") - version("0.1.15", sha256="8c7c509db692b482cba5b0453579747db5a981ce5b3c13da96b14ae0332a6e81") - version("0.1.14", sha256="a5c75df1c3ef6fac10d92fb6781643e0834e5c35debe77693686dab8bfcf221f") - version("0.1.13", sha256="8263938e49b501c477f626b4c25e0c74e91152268830c69aabc96eeb263c6eea") - version("0.1.12", sha256="f0fa0f3b129d28e41b337ce2c39c3604990752de8e485327ec9df3bf0360e9c1") - version("0.1.11", sha256="95f302818971fec3f19ef18febd5c31c580490692138c8e4fe3534104d88b5e0") - version("0.1.10", sha256="7ef9f911f7ea31da5ff5306d8372ec194d223850aede0878ac2a921ce049bbb2") - - depends_on("cmake@3.3:", type="build") - depends_on("hdf5") - depends_on("py-pybind11") - - depends_on("py-numpy@1.17:", type=("build", "run")) - depends_on("py-setuptools", type="build", when="@0.1:") - depends_on("py-setuptools-scm", type="build", when="@0.1:") + maintainers("tristan0x") + + version("master", branch="master") + version("0.1.25", sha256="b332efa718123ee265263e1583a5998eaa945a13b8a22903873764cf1d8173fa") + + depends_on("catch2@2.13:", type="test") + depends_on("cmake@3.16:", type="build") + depends_on("fmt@7.1:") + depends_on("hdf5@1.14:") + depends_on("highfive@2.9:") + depends_on("nlohmann-json@3.9.1") + depends_on("py-pybind11@2.11.0:") + + depends_on("py-numpy@1.17.3:", type=("build", "run")) + depends_on("py-setuptools@42:", type="build", when="@0.1:") + depends_on("py-setuptools-scm@3.4:", type="build", when="@0.1:") + + def patch(self): + filter_file("-DEXTLIB_FROM_SUBMODULES=ON", "-DEXTLIB_FROM_SUBMODULES=OFF", "setup.py") diff --git a/packages/py-morph-tool/package.py b/packages/py-morph-tool/package.py index 3c483b74f26e3609cba86f8a68aeff0ddd4aa318..5ba36dd023b1fefa9f2c28ec04dc8bd22653b234 100644 --- a/packages/py-morph-tool/package.py +++ b/packages/py-morph-tool/package.py @@ -15,26 +15,27 @@ class PyMorphTool(PythonPackage): git = "https://github.com/BlueBrain/morph-tool.git" pypi = "morph-tool/morph-tool-2.9.1.tar.gz" - version("develop", branch="master") + version("master", branch="master") version("2.9.1", sha256="305e9456c8047726588b23dfa070eb95ccbe5573e9fea3e0a83dc93eacdf61dc") version("2.9.0", sha256="c60d4010e17ddcc3f53c864c374fffee05713c8f8fd2ba4eed7706041ce1fa47") - variant("neuron", default=False, description="Enable additional neuron support") + variant("nrn", default=False, description="Enable additional neuron support") + variant("plot", default=False, description="Enable additional plotly support") + variant("parallel", default=False, description="Enable additional parallel support") - depends_on("py-setuptools", type=("build", "run")) + depends_on("py-setuptools", type="build") + depends_on("py-setuptools-scm", type="build") depends_on("py-click@6.7:", type=("build", "run")) depends_on("py-deprecation@2.1.0:", type=("build", "run")) depends_on("py-more-itertools@8.6.0:", type=("build", "run")) + depends_on("py-morphio@3", type=("build", "run")) + depends_on("py-neurom@3", type=("build", "run")) depends_on("py-numpy@1.14:", type=("build", "run")) depends_on("py-pandas@1.0.3:", type=("build", "run")) - depends_on("py-xmltodict@0.12:", type=("build", "run")) + depends_on("py-xmltodict@0.12.0:", type=("build", "run")) - depends_on("py-plotly@4.1:", type=("build", "run")) - depends_on("py-dask@2.19:", type=("build", "run")) - depends_on("neuron+python@7.8:", type=("build", "run")) - depends_on("py-bluepyopt@1.9.37:", type=("build", "run"), when="+neuron") - - depends_on("py-neurom@3.0:3.999,develop", type=("build", "run")) - depends_on("py-morphio@3.3.6:3,develop", type=("build", "run"), when="@2.9.1:") - depends_on("py-morphio@3.0:3,develop", type=("build", "run"), when="@2.9.0") + depends_on("py-plotly@4.1.0:", type=("build", "run"), when="+plot") + depends_on("py-dask+bag@2.19.0:", type=("build", "run"), when="+parallel") + depends_on("neuron+python@7.8:", type=("build", "run"), when="+nrn") + depends_on("py-bluepyopt@1.9.37:", type=("build", "run"), when="+nrn") diff --git a/packages/py-morphio/package.py b/packages/py-morphio/package.py index a2957888bc407e5fb41895837c43e10b55bf2b74..1b76b365a0a8b8c556fe401e9f37e169c8da1774 100644 --- a/packages/py-morphio/package.py +++ b/packages/py-morphio/package.py @@ -5,6 +5,8 @@ # # SPDX-License-Identifier: (Apache-2.0 OR MIT) +import sys + from spack.package import * @@ -15,21 +17,16 @@ class PyMorphio(PythonPackage): git = "https://github.com/BlueBrain/MorphIO.git" pypi = "morphio/MorphIO-3.3.2.tar.gz" - version("develop", branch="master", submodules=True) - version("unifurcation", branch="unifurcation", submodules=True) + version("master", branch="master", submodules=True) version("3.3.6", sha256="0f2e55470d92a3d89f2141ae905ee104fd16257b93dafb90682d90171de2f4e6") - version("3.3.5", sha256="9e6cfebaea32080131b2b08a4a32dfbe92b18427a3e557861e27c4131f7542ac") - version("3.3.4", sha256="b70c6884e9b835560501f798c75c9cc7eaf3162cba1d930b5a9b854bb9ea60dc") - version("3.3.3", sha256="f6d91970cfd734b2e5fb8f9239a0bfa00519fe082dd8e403e4cc204dbdf0a9fa") - version("3.3.2", sha256="fc961defbfbfb3f11360954fb3ec51373eaff25b154fa31d6b31decca6937780") - version("3.1.1", sha256="ad9f0e363f09f03c6eda54f5f3b006d204236677d2f2c9675421e0441033a503") - version("2.7.1", sha256="3f3e2229da85e874527775fce080f712b6dc287edc44b90b6de35d17b34badff") - - depends_on("py-setuptools", type="build") + + depends_on("py-setuptools@24.2:", type="build") depends_on("py-setuptools-scm", type="build") depends_on("ninja", type="build") depends_on("cmake@3.2:", type="build") - depends_on("py-numpy@1.14.1:", type="run") - depends_on("hdf5") + depends_on("py-numpy@1.14.1:", type=("build", "run")) + depends_on("py-h5py@3", when="platform=windows", type=("build", "run")) + if sys.platform != "win32": + depends_on("hdf5") diff --git a/packages/py-neurom/package.py b/packages/py-neurom/package.py index b902984e57d086b767acbbe0e9af3fa2c7182830..3ff50b1985b7fe3685d5bed780849d363cc517ed 100644 --- a/packages/py-neurom/package.py +++ b/packages/py-neurom/package.py @@ -15,23 +15,23 @@ class PyNeurom(PythonPackage): git = "https://github.com/BlueBrain/NeuroM.git" pypi = "neurom/neurom-2.2.1.tar.gz" - version("develop", branch="master") - version("3.2.2", sha256="bc442cf5193289b893a66d5e541868f84bb120b03395b03ce2423c19729b92de") + version("master", branch="master") + version("3.2.4", sha256="a584e0979b54deee906dd716ea90de20773e20b527d83960d0fe655b0905eb4a") variant("plotly", default=False, description="Enable plotly support") - depends_on("py-setuptools@0.42:", type=("build", "run")) + depends_on("py-setuptools@42:", type=("build", "run")) depends_on("py-setuptools-scm", type="build") - depends_on("py-wheel", type="build") + depends_on("python@3.8:", type=("build", "run")) depends_on("py-click@7.0:", type=("build", "run")) + depends_on("py-matplotlib@3.2.1:", type=("build", "run")) + depends_on("py-morphio@3.3.6:", type=("build", "run")) depends_on("py-numpy@1.8.0:", type=("build", "run")) + depends_on("py-pandas@1.0.5:", type=("build", "run")) depends_on("py-pyyaml@3.10:", type=("build", "run")) - depends_on("py-tqdm@4.8.4:", type=("build", "run")) - depends_on("py-matplotlib@3.2.1:", type=("build", "run")) depends_on("py-scipy@1.2.0:", type=("build", "run")) + depends_on("py-tqdm@4.8.4:", type=("build", "run")) + depends_on("py-plotly@3.6.0:", type=("build", "run"), when="+plotly") depends_on("py-psutil@5.5.1:", type=("build", "run"), when="+plotly") - - depends_on("py-morphio@3.1.1:", type=("build", "run")) - depends_on("py-pandas@1.0.5:", type=("build", "run")) diff --git a/spack.yaml b/spack.yaml index b697a1d0011f5e78404c6e2442bcbcdc304a997a..1a3e20b729c25a1cb5fedb252a879b3a574022ee 100644 --- a/spack.yaml +++ b/spack.yaml @@ -16,13 +16,13 @@ spack: - nest@3.7 +sonata - neuron@8.2.3 +mpi - jaxsnn@8.0-a4 - - py-bluepyefe@2.2.18 - - py-bluepymm@0.7.65 - - py-bluepyopt@1.13.86 + - py-bluepyefe@2.3.6 + - py-bluepymm@0.8.7 + - py-bluepyopt@1.14.4 - py-bsb@4.0.0a57 - py-ebrains-drive@0.5.1 - py-ebrains-kg-core@0.9.15 - - py-efel@4.0.4 + - py-efel@5.5.7 - py-elephant@1.1.0 - py-fairgraph@0.11.1 - py-frites@0.4.4 @@ -33,11 +33,11 @@ spack: - py-lfpy@2.3 - py-lfpykit@0.5.1 - py-libneuroml@0.4.1 - - py-libsonata@0.1.23 + - py-libsonata@0.1.25 - py-neo@0.13.0 - py-nestml@7.0.1 - py-netpyne@1.0.5 - - py-neurom@3.2.2 + - py-neurom@3.2.4 - py-neuror@1.6.4 - py-pynn@0.12.2 +mpi - py-pyunicore@0.15.0