From ad0a06acfae87cda08b39eef7067864b50da8fae Mon Sep 17 00:00:00 2001
From: Johannes Hjorth <hjorth@kth.se>
Date: Thu, 8 May 2025 14:52:46 +0200
Subject: [PATCH 1/3] feat(py-quantities): add version 0.16.2

---
 packages/py-quantities/package.py | 5 +++--
 spack.yaml                        | 2 +-
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/packages/py-quantities/package.py b/packages/py-quantities/package.py
index e5d14e95..623671aa 100644
--- a/packages/py-quantities/package.py
+++ b/packages/py-quantities/package.py
@@ -10,9 +10,10 @@ class PyQuantities(PythonPackage):
     """Support for physical quantities with units, based on numpy"""
 
     homepage = "https://python-quantities.readthedocs.org"
-    pypi = "quantities/quantities-0.16.0.tar.gz"
+    pypi = "quantities/quantities-0.16.2.tar.gz"
     maintainers = ['apdavison']
-    
+
+    version('0.16.2', sha256='1f7c24f10d9ff57ddf751a358ea2fdfa9914516722f06a788ef4a2924c77d21c')
     version('0.16.0', sha256='211cce2d268da7e202abab5c2533ce3200ff619dd8ac2a3cd98f861b8a57c6eb')
     version('0.15.0', sha256='9ea31e2a0d7517cf24d546b14146def9292639993a616cca61b875ef796b4b2b')
     version('0.14.1', sha256='efeafffc0c0364f891a9327239cd12496bccb55cd037a6d1bf44de706f722877')
diff --git a/spack.yaml b/spack.yaml
index 819bca79..f8426907 100644
--- a/spack.yaml
+++ b/spack.yaml
@@ -49,7 +49,7 @@ spack:
     - py-pynn@0.12.3 +mpi
     - py-pyunicore@1.1.1
     - py-quantities-scidash@0.12.4.3
-    - py-quantities@0.16.0
+    - py-quantities@0.16.2
     - py-siibra@1.0a9
     - py-snudda@2.1.11
     - py-spynnaker@7.3.0
-- 
GitLab


From e6684599626b2d3a2a62a36dc58df22a094209b7 Mon Sep 17 00:00:00 2001
From: Johannes Hjorth <hjorth@kth.se>
Date: Thu, 8 May 2025 14:52:46 +0200
Subject: [PATCH 2/3] feat(py-snudda): add versions 2.1.12-2.1.17

---
 packages/py-snudda/package.py | 6 ++++++
 spack.yaml                    | 2 +-
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/packages/py-snudda/package.py b/packages/py-snudda/package.py
index 092e410b..0bf79d53 100644
--- a/packages/py-snudda/package.py
+++ b/packages/py-snudda/package.py
@@ -14,6 +14,11 @@ class PySnudda(PythonPackage):
 
     maintainers = ["hjorth"]
 
+    version("2.1.17", "6a89065cf6722c2da512a0d5fa60a3c8")
+    version("2.1.14.1", "913b613055030183a8f30a67a0410def")
+    version("2.1.14", "a0a88d4822a500b8390db9a47c628f50")
+    version("2.1.13", "e5f7bc57a848e489352f8fb1f16b164a")
+    version("2.1.12", "8f8cbbcf3d6f12c4092160a6e9312ae1")
     version("2.1.11", "5cb71667a6f8c708279fc5dc94883ba3")
     version("2.1.10", "a1f5bf39ee0418e7ce8a0783042c59c8")
     version("2.1.2", "5d61a548995f88f95f680bf124534287")
@@ -39,6 +44,7 @@ class PySnudda(PythonPackage):
     depends_on("py-cython",             type=("build","run"))
     depends_on("py-numba@0.60.0:",      type=("build","run"))
     depends_on("open3d+python@0.18:",   type=("build","run"), when="@2:")
+    depends_on("py-quantities@0.16.2:", type=("build","run"), when="@2.1.14:")
 
     # snudda tarballs in pypi do not include the tests/ dir: just use default spack tests for now
     # @run_after('install')
diff --git a/spack.yaml b/spack.yaml
index f8426907..aa9f8e43 100644
--- a/spack.yaml
+++ b/spack.yaml
@@ -51,7 +51,7 @@ spack:
     - py-quantities-scidash@0.12.4.3
     - py-quantities@0.16.2
     - py-siibra@1.0a9
-    - py-snudda@2.1.11
+    - py-snudda@2.1.17
     - py-spynnaker@7.3.0
     - py-tvb-framework@2.9
     - py-tvb-contrib@2.9.1
-- 
GitLab


From a1aff9be18366b0f2207f6a9acc49f41067955c8 Mon Sep 17 00:00:00 2001
From: Johannes Hjorth <hjorth@kth.se>
Date: Thu, 8 May 2025 14:52:46 +0200
Subject: [PATCH 3/3] feat(py-snudda): add post-installation tests

---
 packages/py-snudda/package.py | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/packages/py-snudda/package.py b/packages/py-snudda/package.py
index 0bf79d53..0638483d 100644
--- a/packages/py-snudda/package.py
+++ b/packages/py-snudda/package.py
@@ -46,11 +46,15 @@ class PySnudda(PythonPackage):
     depends_on("open3d+python@0.18:",   type=("build","run"), when="@2:")
     depends_on("py-quantities@0.16.2:", type=("build","run"), when="@2.1.14:")
 
-    # snudda tarballs in pypi do not include the tests/ dir: just use default spack tests for now
-    # @run_after('install')
-    # @on_package_attributes(run_tests=True)
-    # def install_test(self):
-    #     python('-m', 'unittest', 'discover', '-v', '-s' './tests')
+    @run_after('install')
+    @on_package_attributes(run_tests=True)
+    def install_test(self):
+        with working_dir("tests"):
+            from pathlib import Path
+            excluded_tests = ['test_sonata.py', 'test_snudda_path.py', 'test_frequency']
+            test_files = [str(p) for p in Path(".").rglob('test_*.py') if p.name not in excluded_tests]
+            if test_files:
+                python('-m', 'unittest', '-v', *test_files)
 
     # blender is for now an optional dependency: leave out of import_modules to avoid errors in tests
     skip_modules = ['snudda.plotting.Blender', 'snudda.plotting.Blender.io_mesh_swc', 'snudda.plotting.Blender.visualisation']
-- 
GitLab