From b998dac1eac25567267a09c316f61bdfcce2caa2 Mon Sep 17 00:00:00 2001
From: pgleeson
Date: Fri, 13 Jun 2025 17:20:40 +0100
Subject: [PATCH 01/18] Update brian, nrn, nest, pynn
---
omv/engines/getbrian2.py | 2 +-
omv/engines/getnest.py | 2 +-
omv/engines/getnrn.py | 2 +-
omv/engines/getpynn.py | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/omv/engines/getbrian2.py b/omv/engines/getbrian2.py
index e5c4de8..dc42663 100644
--- a/omv/engines/getbrian2.py
+++ b/omv/engines/getbrian2.py
@@ -5,7 +5,7 @@
def install_brian2(version):
if not version:
- version = "2.7.1"
+ version = "2.9.0"
try:
pip_install("brian2", version)
import brian2
diff --git a/omv/engines/getnest.py b/omv/engines/getnest.py
index 6b46388..931fcbd 100644
--- a/omv/engines/getnest.py
+++ b/omv/engines/getnest.py
@@ -8,7 +8,7 @@
def install_nest(version):
if not version:
- version = "3.5"
+ version = "3.7"
inform("Installing NEST", indent=2, verbosity=1)
nestpath = os.path.join(os.environ["HOME"], "nest")
diff --git a/omv/engines/getnrn.py b/omv/engines/getnrn.py
index 4ee83e6..db7260a 100644
--- a/omv/engines/getnrn.py
+++ b/omv/engines/getnrn.py
@@ -10,7 +10,7 @@
def install_neuron(version):
if not version:
if sys.version_info.major == 3:
- version = "8.2.7" # for pynn 0.11.0
+ version = "8.2.7"
else:
version = "7.6"
diff --git a/omv/engines/getpynn.py b/omv/engines/getpynn.py
index dcc6cb6..b969d88 100644
--- a/omv/engines/getpynn.py
+++ b/omv/engines/getpynn.py
@@ -7,7 +7,7 @@
def install_pynn(version=None):
if not version:
- version = "0.11.0"
+ version = "0.12.4"
try:
# pip_install('lazyarray') # This should ideally be automatically installed with PyNN...
From c748e3639afe254133a88ef4215a89527fb6fca2 Mon Sep 17 00:00:00 2001
From: pgleeson
Date: Mon, 16 Jun 2025 14:30:42 +0100
Subject: [PATCH 02/18] Back to pynn 0.11.0 for now...
---
omv/engines/getpynn.py | 2 +-
utilities/tests/.test.exIzh.jnml.omt | 2 +-
utilities/tests/.test.exIzh.jnmleden.omt | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/omv/engines/getpynn.py b/omv/engines/getpynn.py
index b969d88..dcc6cb6 100644
--- a/omv/engines/getpynn.py
+++ b/omv/engines/getpynn.py
@@ -7,7 +7,7 @@
def install_pynn(version=None):
if not version:
- version = "0.12.4"
+ version = "0.11.0"
try:
# pip_install('lazyarray') # This should ideally be automatically installed with PyNN...
diff --git a/utilities/tests/.test.exIzh.jnml.omt b/utilities/tests/.test.exIzh.jnml.omt
index 23dd326..c958e7b 100644
--- a/utilities/tests/.test.exIzh.jnml.omt
+++ b/utilities/tests/.test.exIzh.jnml.omt
@@ -13,4 +13,4 @@ experiments:
scaling: [1000, 1000]
spike detection:
method: threshold
- tolerance: 0.000051
+ tolerance: 5.0862371508887715e-05
diff --git a/utilities/tests/.test.exIzh.jnmleden.omt b/utilities/tests/.test.exIzh.jnmleden.omt
index 0d32d25..59ed240 100644
--- a/utilities/tests/.test.exIzh.jnmleden.omt
+++ b/utilities/tests/.test.exIzh.jnmleden.omt
@@ -13,4 +13,4 @@ experiments:
scaling: [1000, 1000]
spike detection:
method: threshold
- tolerance: 0.00014888369126089628
+ tolerance: 0.00014884116521364865
From 81ecb25ad0fd24c6fee0c934da352da5db4fd383 Mon Sep 17 00:00:00 2001
From: Padraig Gleeson
Date: Tue, 29 Jul 2025 11:17:52 +0100
Subject: [PATCH 03/18] Test on macos-15
---
.github/workflows/ci_versions.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/ci_versions.yml b/.github/workflows/ci_versions.yml
index 5345fcc..cef0f97 100644
--- a/.github/workflows/ci_versions.yml
+++ b/.github/workflows/ci_versions.yml
@@ -16,7 +16,7 @@ jobs:
fail-fast: false
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
- runs-on: [ubuntu-latest, macos-latest ]
+ runs-on: [ubuntu-latest, macos-latest, macos-15 ]
exclude:
- runs-on: macos-latest
python-version: ["3.9"]
From a2b58232da88d11b16c94fda0f1cb98fc1163bd1 Mon Sep 17 00:00:00 2001
From: Padraig Gleeson
Date: Mon, 4 Aug 2025 18:08:11 +0100
Subject: [PATCH 04/18] To v0.3.11
---
setup.cfg | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/setup.cfg b/setup.cfg
index 6d6e513..8281b2a 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,6 +1,6 @@
[metadata]
name = OSBModelValidation
-version = 0.3.10
+version = 0.3.11
author = Boris Marin, Padraig Gleeson
author_email = borismarin@gmail.com
url = https://github.com/OpenSourceBrain/osb-model-validation
From 17cd6ca107bc97d6ae25f9fd7b602d2ea8b353eb Mon Sep 17 00:00:00 2001
From: Padraig Gleeson
Date: Mon, 15 Sep 2025 09:50:45 +0100
Subject: [PATCH 05/18] Fix YAML syntax for Python version exclusion
---
.github/workflows/ci_versions.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/ci_versions.yml b/.github/workflows/ci_versions.yml
index 5345fcc..c229b07 100644
--- a/.github/workflows/ci_versions.yml
+++ b/.github/workflows/ci_versions.yml
@@ -19,7 +19,7 @@ jobs:
runs-on: [ubuntu-latest, macos-latest ]
exclude:
- runs-on: macos-latest
- python-version: ["3.9"]
+ python-version: "3.9"
steps:
- uses: actions/checkout@v4
From 41739e733e262b75435a8e410f9df4eb85e67161 Mon Sep 17 00:00:00 2001
From: Padraig Gleeson
Date: Tue, 6 Jan 2026 14:09:41 +0000
Subject: [PATCH 06/18] Test pinning numpy < 2.4
---
.github/workflows/ci.yml | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index a56bb74..f2d2538 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -67,9 +67,12 @@ jobs:
#sudo apt install octave
sudo apt-get install -y subversion # for neuroConstruct full install...
- - name: Install numpy < 2 if necessary...
+ - name: Install numpy < 2 (or <2.4) if necessary...
run: |
+ pip install "numpy<2.4" # See https://github.com/OpenSourceBrain/osb-model-validation/issues/150
+
if [[ ${{ matrix.engine }} == *"MOOSE"* ]] || [[ ${{ matrix.engine }} == *"Moose"* ]]; then pip install "numpy<2" ; fi ;
+
pip list
- name: Run OMV tests on engine ${{ matrix.engine }}
From e0c72baf4480f6e17a47306323ce9ef2ba3a20e6 Mon Sep 17 00:00:00 2001
From: Padraig Gleeson
Date: Tue, 6 Jan 2026 17:29:36 +0000
Subject: [PATCH 07/18] Test macos-14 as latest is 15
---
.github/workflows/ci_versions.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/ci_versions.yml b/.github/workflows/ci_versions.yml
index a935b04..33c9486 100644
--- a/.github/workflows/ci_versions.yml
+++ b/.github/workflows/ci_versions.yml
@@ -16,7 +16,7 @@ jobs:
fail-fast: false
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
- runs-on: [ubuntu-latest, macos-latest, macos-15 ]
+ runs-on: [ubuntu-latest, macos-14, macos-latest ]
exclude:
- runs-on: macos-latest
python-version: "3.9"
From 4d7c5860d502c720a0865ebd885580f56001f697 Mon Sep 17 00:00:00 2001
From: Padraig Gleeson
Date: Tue, 6 Jan 2026 17:46:02 +0000
Subject: [PATCH 08/18] Correct exclusion
---
.github/workflows/ci.yml | 2 +-
.github/workflows/ci_versions.yml | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index f2d2538..6e001e7 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -69,7 +69,7 @@ jobs:
- name: Install numpy < 2 (or <2.4) if necessary...
run: |
- pip install "numpy<2.4" # See https://github.com/OpenSourceBrain/osb-model-validation/issues/150
+ pip install "numpy<2.4" # Issue with numpy 2.4 and quantities, see https://github.com/OpenSourceBrain/osb-model-validation/issues/150
if [[ ${{ matrix.engine }} == *"MOOSE"* ]] || [[ ${{ matrix.engine }} == *"Moose"* ]]; then pip install "numpy<2" ; fi ;
diff --git a/.github/workflows/ci_versions.yml b/.github/workflows/ci_versions.yml
index 33c9486..fb50eab 100644
--- a/.github/workflows/ci_versions.yml
+++ b/.github/workflows/ci_versions.yml
@@ -18,7 +18,7 @@ jobs:
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
runs-on: [ubuntu-latest, macos-14, macos-latest ]
exclude:
- - runs-on: macos-latest
+ - runs-on: macos-14
python-version: "3.9"
steps:
From 35a37da03b11fa497206e5ebef5112be932486af Mon Sep 17 00:00:00 2001
From: Padraig Gleeson
Date: Tue, 6 Jan 2026 18:03:52 +0000
Subject: [PATCH 09/18] More exclusions
---
.github/workflows/ci_versions.yml | 2 ++
1 file changed, 2 insertions(+)
diff --git a/.github/workflows/ci_versions.yml b/.github/workflows/ci_versions.yml
index fb50eab..f733cef 100644
--- a/.github/workflows/ci_versions.yml
+++ b/.github/workflows/ci_versions.yml
@@ -20,6 +20,8 @@ jobs:
exclude:
- runs-on: macos-14
python-version: "3.9"
+ - runs-on: macos-latest
+ python-version: "3.9"
steps:
- uses: actions/checkout@v4
From 5980ed45b04643555c9c8e086a6664be586cddcf Mon Sep 17 00:00:00 2001
From: Padraig Gleeson
Date: Fri, 16 Jan 2026 10:53:44 +0000
Subject: [PATCH 10/18] Remove pin on numpy; quantities issue solved...
---
.github/workflows/ci.yml | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 6e001e7..782fb45 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -67,10 +67,9 @@ jobs:
#sudo apt install octave
sudo apt-get install -y subversion # for neuroConstruct full install...
- - name: Install numpy < 2 (or <2.4) if necessary...
+ - name: Install numpy < 2 if necessary...
run: |
- pip install "numpy<2.4" # Issue with numpy 2.4 and quantities, see https://github.com/OpenSourceBrain/osb-model-validation/issues/150
-
+
if [[ ${{ matrix.engine }} == *"MOOSE"* ]] || [[ ${{ matrix.engine }} == *"Moose"* ]]; then pip install "numpy<2" ; fi ;
pip list
From ea7d17e8a5847ba930c57fd48253cd39ed29f587 Mon Sep 17 00:00:00 2001
From: Padraig Gleeson
Date: Fri, 16 Jan 2026 11:38:47 +0000
Subject: [PATCH 11/18] Update default Brian2 version to 2.10.1 - test if it
works with numpy>=2.4
---
omv/engines/getbrian2.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/omv/engines/getbrian2.py b/omv/engines/getbrian2.py
index dc42663..6b98ad2 100644
--- a/omv/engines/getbrian2.py
+++ b/omv/engines/getbrian2.py
@@ -5,7 +5,7 @@
def install_brian2(version):
if not version:
- version = "2.9.0"
+ version = "2.10.1"
try:
pip_install("brian2", version)
import brian2
From e782f49b26d3c31daeded849e2f861ce65fd3ff5 Mon Sep 17 00:00:00 2001
From: Padraig Gleeson
Date: Mon, 2 Feb 2026 14:15:56 +0000
Subject: [PATCH 12/18] Update Python version to 3.12 in CI workflow
---
.github/workflows/ci.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 782fb45..dc2c6ba 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -15,7 +15,7 @@ jobs:
strategy:
fail-fast: false
matrix:
- python-version: [ "3.11" ]
+ python-version: [ "3.12" ]
engine:
- Arbor
- "Brian2:2.9.0"
From 260ceea9c24650e0746feb4703045162e01df176 Mon Sep 17 00:00:00 2001
From: Padraig Gleeson
Date: Fri, 20 Mar 2026 11:03:45 +0000
Subject: [PATCH 13/18] Back to py3.11 for now
---
.github/workflows/ci.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index dc2c6ba..782fb45 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -15,7 +15,7 @@ jobs:
strategy:
fail-fast: false
matrix:
- python-version: [ "3.12" ]
+ python-version: [ "3.11" ]
engine:
- Arbor
- "Brian2:2.9.0"
From 9207aec61c91af21d9838722574cfbb3a066ffb4 Mon Sep 17 00:00:00 2001
From: Padraig Gleeson
Date: Fri, 20 Mar 2026 11:11:35 +0000
Subject: [PATCH 14/18] Back to py3.12 for brian, setuptools install for
eden...
---
.github/workflows/ci.yml | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 782fb45..d0ebd16 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -15,7 +15,7 @@ jobs:
strategy:
fail-fast: false
matrix:
- python-version: [ "3.11" ]
+ python-version: [ "3.12" ]
engine:
- Arbor
- "Brian2:2.9.0"
@@ -67,6 +67,8 @@ jobs:
#sudo apt install octave
sudo apt-get install -y subversion # for neuroConstruct full install...
+ pip install setuptools --upgrade # needed for Eden on Python 3.12
+
- name: Install numpy < 2 if necessary...
run: |
From 84aa94261487920726f55e8fcf82af8270eb5ad1 Mon Sep 17 00:00:00 2001
From: Padraig Gleeson
Date: Fri, 20 Mar 2026 11:31:37 +0000
Subject: [PATCH 15/18] Test fix for eden
---
.github/workflows/ci.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index d0ebd16..2262a26 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -67,7 +67,7 @@ jobs:
#sudo apt install octave
sudo apt-get install -y subversion # for neuroConstruct full install...
- pip install setuptools --upgrade # needed for Eden on Python 3.12
+ pip install setuptools==80 # needed for eden on Python 3.12...
- name: Install numpy < 2 if necessary...
run: |
From 7f4b7190c07841a33bc72abf189682d4351dd8d5 Mon Sep 17 00:00:00 2001
From: Padraig Gleeson
Date: Fri, 20 Mar 2026 11:54:00 +0000
Subject: [PATCH 16/18] test moose v4.1.4
---
.github/workflows/ci.yml | 4 ++--
.github/workflows/python-publish.yml | 4 ++--
omv/engines/getmoose.py | 1 +
3 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 2262a26..6842e3a 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -54,9 +54,9 @@ jobs:
- XPP
steps:
- - uses: actions/checkout@v4
+ - uses: actions/checkout@v6
- name: Set up Python ${{ matrix.python-version }}
- uses: actions/setup-python@v5
+ uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
diff --git a/.github/workflows/python-publish.yml b/.github/workflows/python-publish.yml
index c6848ef..3778433 100644
--- a/.github/workflows/python-publish.yml
+++ b/.github/workflows/python-publish.yml
@@ -11,9 +11,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v4
+ - uses: actions/checkout@v6
- name: Set up Python
- uses: actions/setup-python@v5
+ uses: actions/setup-python@v6
with:
python-version: "3.x"
- name: Install pypa/build
diff --git a/omv/engines/getmoose.py b/omv/engines/getmoose.py
index fbc2da4..acafe69 100644
--- a/omv/engines/getmoose.py
+++ b/omv/engines/getmoose.py
@@ -4,6 +4,7 @@
def install_moose(version):
if not version:
version = "4.0.0.dev20240411"
+ version = "4.1.4"
try:
pip_install("pymoose", version)
import moose
From 51eb85646d7d0742b5f9ad5b9139993fdc3ebd7c Mon Sep 17 00:00:00 2001
From: Padraig Gleeson
Date: Fri, 20 Mar 2026 11:57:28 +0000
Subject: [PATCH 17/18] Add install of pint for moose
---
omv/engines/getmoose.py | 1 +
1 file changed, 1 insertion(+)
diff --git a/omv/engines/getmoose.py b/omv/engines/getmoose.py
index acafe69..c892f25 100644
--- a/omv/engines/getmoose.py
+++ b/omv/engines/getmoose.py
@@ -7,6 +7,7 @@ def install_moose(version):
version = "4.1.4"
try:
pip_install("pymoose", version)
+ pip_install("pint")
import moose
m = "Successfully installed MOOSE..."
From f3c370574a37483e9df421c4843cec8fc6b19e65 Mon Sep 17 00:00:00 2001
From: Padraig Gleeson
Date: Fri, 20 Mar 2026 12:03:00 +0000
Subject: [PATCH 18/18] Temp disable moose test...
---
.github/workflows/ci.yml | 2 +-
omv/engines/getmoose.py | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 6842e3a..ffaec20 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -49,9 +49,9 @@ jobs:
- pyNeuroML
- pyNeuroML_validate_sbml
- pyNEURON_XPP_LEMS
- - jNeuroML_Moose
- MOOSE:3.1.5
- XPP
+ # - jNeuroML_Moose # not yet working on py3.12
steps:
- uses: actions/checkout@v6
diff --git a/omv/engines/getmoose.py b/omv/engines/getmoose.py
index c892f25..3e258c2 100644
--- a/omv/engines/getmoose.py
+++ b/omv/engines/getmoose.py
@@ -4,7 +4,7 @@
def install_moose(version):
if not version:
version = "4.0.0.dev20240411"
- version = "4.1.4"
+ version = "4.1.4" # temp test this, it is the latest on pypi...
try:
pip_install("pymoose", version)
pip_install("pint")