Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

{bio}[foss/2023a] NEURON v8.2.6 #22191

Merged

Conversation

pavelToman
Copy link
Collaborator

@pavelToman pavelToman commented Jan 21, 2025

(created using eb --new-pr)
resolves vscentrum/vsc-software-stack#484

Copy link

Updated software NEURON-8.2.6-foss-2023a.eb

Diff against NEURON-7.8.2-foss-2021b.eb

easybuild/easyconfigs/n/NEURON/NEURON-7.8.2-foss-2021b.eb

diff --git a/easybuild/easyconfigs/n/NEURON/NEURON-7.8.2-foss-2021b.eb b/easybuild/easyconfigs/n/NEURON/NEURON-8.2.6-foss-2023a.eb
index d904d4d218..902146ceca 100644
--- a/easybuild/easyconfigs/n/NEURON/NEURON-7.8.2-foss-2021b.eb
+++ b/easybuild/easyconfigs/n/NEURON/NEURON-8.2.6-foss-2023a.eb
@@ -1,25 +1,41 @@
+easyblock = 'CMakeMake'
+
 name = 'NEURON'
-version = '7.8.2'
+version = '8.2.6'
 
 homepage = 'https://www.neuron.yale.edu/neuron'
 description = """Empirically-based simulations of neurons and networks of neurons."""
 
-toolchain = {'name': 'foss', 'version': '2021b'}
+toolchain = {'name': 'foss', 'version': '2023a'}
 
 source_urls = ['https://github.com/neuronsimulator/nrn/releases/download/%(version)s/']
-sources = ['full-src-package-%(version)s.tar.gz']
-checksums = ['7ab615b36370220d5048214463414bc54245489c14c79899d86e7bb6d3549edf']
+sources = ['nrn-full-src-package-%(version)s.tar.gz']
+checksums = ['eba1b379ae272aa2196263f6c5795f58e5dbf62c0899e82b0bb7c33dfb9c6afe']
 
 builddependencies = [
-    ('CMake', '3.22.1'),
+    ('CMake', '3.26.3'),
     ('flex', '2.6.4'),
-    ('Bison', '3.7.6'),
+    ('Bison', '3.8.2'),
 ]
 
 dependencies = [
-    ('Python', '3.9.6'),
-    ('SciPy-bundle', '2021.10'),
-    ('libreadline', '8.1'),
+    ('Python', '3.11.3'),
+    ('SciPy-bundle', '2023.07'),
+]
+
+# turn off gui
+configopts = '-DNRN_ENABLE_INTERVIEWS=OFF'
+
+sanity_check_paths = {
+    'files': ['bin/nrnpyenv.sh', 'bin/nrniv', 'lib/libnrniv.so'],
+    'dirs': ['lib/python/%(namelower)s'],
+}
+
+sanity_check_commands = [
+    'export PYTHONPATH=%(installdir)s/lib/python:$PYTHONPATH && '
+    "python -c 'import neuron; neuron.test()'"
 ]
 
+modextrapaths = {'PYTHONPATH': 'lib/python'}
+
 moduleclass = 'bio'
Diff against NEURON-7.6.5-intel-2018b-Python-2.7.15.eb

easybuild/easyconfigs/n/NEURON/NEURON-7.6.5-intel-2018b-Python-2.7.15.eb

diff --git a/easybuild/easyconfigs/n/NEURON/NEURON-7.6.5-intel-2018b-Python-2.7.15.eb b/easybuild/easyconfigs/n/NEURON/NEURON-8.2.6-foss-2023a.eb
index 3d39b88001..902146ceca 100644
--- a/easybuild/easyconfigs/n/NEURON/NEURON-7.6.5-intel-2018b-Python-2.7.15.eb
+++ b/easybuild/easyconfigs/n/NEURON/NEURON-8.2.6-foss-2023a.eb
@@ -1,20 +1,41 @@
+easyblock = 'CMakeMake'
+
 name = 'NEURON'
-version = '7.6.5'
-versionsuffix = '-Python-%(pyver)s'
+version = '8.2.6'
 
-homepage = 'http://www.neuron.yale.edu/neuron'
+homepage = 'https://www.neuron.yale.edu/neuron'
 description = """Empirically-based simulations of neurons and networks of neurons."""
 
-toolchain = {'name': 'intel', 'version': '2018b'}
+toolchain = {'name': 'foss', 'version': '2023a'}
+
+source_urls = ['https://github.com/neuronsimulator/nrn/releases/download/%(version)s/']
+sources = ['nrn-full-src-package-%(version)s.tar.gz']
+checksums = ['eba1b379ae272aa2196263f6c5795f58e5dbf62c0899e82b0bb7c33dfb9c6afe']
 
-source_urls = ['http://www.neuron.yale.edu/ftp/neuron/versions/v%(version_major_minor)s/%(version)s/']
-sources = ['nrn-%(version)s.tar.gz']
-checksums = ['4feefda6a6ed1d8c5e03f61d4a57ecfa8385e2f935f335a546989dcc976fde5b']
+builddependencies = [
+    ('CMake', '3.26.3'),
+    ('flex', '2.6.4'),
+    ('Bison', '3.8.2'),
+]
 
 dependencies = [
-    ('libreadline', '7.0'),
-    ('ncurses', '6.1'),
-    ('Python', '2.7.15')
+    ('Python', '3.11.3'),
+    ('SciPy-bundle', '2023.07'),
+]
+
+# turn off gui
+configopts = '-DNRN_ENABLE_INTERVIEWS=OFF'
+
+sanity_check_paths = {
+    'files': ['bin/nrnpyenv.sh', 'bin/nrniv', 'lib/libnrniv.so'],
+    'dirs': ['lib/python/%(namelower)s'],
+}
+
+sanity_check_commands = [
+    'export PYTHONPATH=%(installdir)s/lib/python:$PYTHONPATH && '
+    "python -c 'import neuron; neuron.test()'"
 ]
 
-moduleclass = 'math'
+modextrapaths = {'PYTHONPATH': 'lib/python'}
+
+moduleclass = 'bio'
Diff against NEURON-7.4-intel-2016b.eb

easybuild/easyconfigs/n/NEURON/NEURON-7.4-intel-2016b.eb

diff --git a/easybuild/easyconfigs/n/NEURON/NEURON-7.4-intel-2016b.eb b/easybuild/easyconfigs/n/NEURON/NEURON-8.2.6-foss-2023a.eb
index 0a3e0085b0..902146ceca 100644
--- a/easybuild/easyconfigs/n/NEURON/NEURON-7.4-intel-2016b.eb
+++ b/easybuild/easyconfigs/n/NEURON/NEURON-8.2.6-foss-2023a.eb
@@ -1,18 +1,41 @@
+easyblock = 'CMakeMake'
+
 name = 'NEURON'
-version = '7.4'
+version = '8.2.6'
 
-homepage = 'http://www.neuron.yale.edu/neuron'
+homepage = 'https://www.neuron.yale.edu/neuron'
 description = """Empirically-based simulations of neurons and networks of neurons."""
 
-toolchain = {'name': 'intel', 'version': '2016b'}
+toolchain = {'name': 'foss', 'version': '2023a'}
+
+source_urls = ['https://github.com/neuronsimulator/nrn/releases/download/%(version)s/']
+sources = ['nrn-full-src-package-%(version)s.tar.gz']
+checksums = ['eba1b379ae272aa2196263f6c5795f58e5dbf62c0899e82b0bb7c33dfb9c6afe']
 
-sources = ['nrn-%(version)s.tar.gz']
-source_urls = ['http://www.neuron.yale.edu/ftp/neuron/versions/v%(version)s/']
+builddependencies = [
+    ('CMake', '3.26.3'),
+    ('flex', '2.6.4'),
+    ('Bison', '3.8.2'),
+]
 
 dependencies = [
-    ('libreadline', '6.3'),
-    ('ncurses', '6.0'),
-    ('Python', '2.7.12')
+    ('Python', '3.11.3'),
+    ('SciPy-bundle', '2023.07'),
+]
+
+# turn off gui
+configopts = '-DNRN_ENABLE_INTERVIEWS=OFF'
+
+sanity_check_paths = {
+    'files': ['bin/nrnpyenv.sh', 'bin/nrniv', 'lib/libnrniv.so'],
+    'dirs': ['lib/python/%(namelower)s'],
+}
+
+sanity_check_commands = [
+    'export PYTHONPATH=%(installdir)s/lib/python:$PYTHONPATH && '
+    "python -c 'import neuron; neuron.test()'"
 ]
 
-moduleclass = 'math'
+modextrapaths = {'PYTHONPATH': 'lib/python'}
+
+moduleclass = 'bio'

@pavelToman
Copy link
Collaborator Author

@boegelbot please test @ jsc-zen3

@pavelToman
Copy link
Collaborator Author

Test report by @pavelToman
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
node4013.donphan.os - Linux RHEL 8.8, x86_64, Intel(R) Xeon(R) Gold 6240 CPU @ 2.60GHz, 1 x NVIDIA NVIDIA A2, 545.23.08, Python 3.6.8
See https://gist.github.com/pavelToman/2200677a714f8df41559b7142418d629 for a full test report.

@boegelbot
Copy link
Collaborator

@pavelToman: Request for testing this PR well received on jsczen3l1.int.jsc-zen3.fz-juelich.de

PR test command 'if [[ develop != 'develop' ]]; then EB_BRANCH=develop ./easybuild_develop.sh 2> /dev/null 1>&2; EB_PREFIX=/home/boegelbot/easybuild/develop source init_env_easybuild_develop.sh; fi; EB_PR=22191 EB_ARGS= EB_CONTAINER= EB_REPO=easybuild-easyconfigs EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_22191 --ntasks=8 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

  • exit code: 0
  • output:
Submitted batch job 5561

Test results coming soon (I hope)...

- notification for comment with ID 2604919248 processed

Message to humans: this is just bookkeeping information for me,
it is of no use to you (unless you think I have a bug, which I don't).

@pavelToman
Copy link
Collaborator Author

Test report by @pavelToman
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
node4203.shinx.os - Linux RHEL 9.4, x86_64, AMD EPYC 9654 96-Core Processor, Python 3.9.18
See https://gist.github.com/pavelToman/d6271650eceeaeb0795bf2c6dbffb475 for a full test report.

@boegelbot
Copy link
Collaborator

Test report by @boegelbot
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
jsczen3c1.int.jsc-zen3.fz-juelich.de - Linux Rocky Linux 9.5, x86_64, AMD EPYC-Milan Processor (zen3), Python 3.9.21
See https://gist.github.com/boegelbot/8d67d421353533c88246c9e930946ee7 for a full test report.

@pavelToman
Copy link
Collaborator Author

Test report by @pavelToman
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
node3106.skitty.os - Linux RHEL 9.4, x86_64, Intel(R) Xeon(R) Gold 6140 CPU @ 2.30GHz, Python 3.9.18
See https://gist.github.com/pavelToman/e119d87354158e810ccbae393ae8ebb6 for a full test report.

Copy link
Member

@boegel boegel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@boegel
Copy link
Member

boegel commented Jan 22, 2025

Test report by @boegel
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
node3107.skitty.os - Linux RHEL 9.4, x86_64, Intel(R) Xeon(R) Gold 6140 CPU @ 2.30GHz (skylake_avx512), Python 3.9.18
See https://gist.github.com/boegel/21ea3abba11714dc13a75b3173ec8a83 for a full test report.

@boegel boegel added this to the release after 4.9.4 milestone Jan 22, 2025
@boegel
Copy link
Member

boegel commented Jan 22, 2025

Going in, thanks @pavelToman!

@boegel boegel merged commit cb90b6e into easybuilders:develop Jan 22, 2025
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

NEURON
3 participants