# 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 * class PyLfpy(PythonPackage): """A Python package for calculating extracellular electric and magnetic signals of neural activity from multicompartment neuron models. """ homepage = 'https://LFPy.readthedocs.io' pypi = "LFPy/LFPy-2.3.tar.gz" git = 'https://github.com/LFPy/LFPy.git' maintainers = ['espenhgn', 'ness'] version('2.2.6', sha256='105046db3628c6f72a6ab96ee8ac0f4833bf8eee428dcee50cb7f2926b755966') version('2.3', sha256='29b2551fcd0391dcc5fa378750e2fcf58bec68f75568b590823c9b105da0c97e') depends_on('python@3.8:', type=('build', 'run')) depends_on('py-pip', type='build') depends_on('py-h5py', type=('build', 'run')) depends_on('py-matplotlib', type=('build', 'run')) depends_on('py-mpi4py', type=('build', 'run')) depends_on('py-numpy', type=('build', 'run')) depends_on('py-scipy', type=('build', 'run')) depends_on('py-setuptools', type=('build', 'run')) depends_on('py-cython', type=('build', 'run')) depends_on('neuron@7.7.2:', type=('build', 'run')) depends_on('py-lfpykit@0.5:', type=('build', 'run')) depends_on('py-pytest', type='test') # Code to run post installation tests @run_after('install') @on_package_attributes(run_tests=True) def install_test(self): with working_dir('spack-test', create=True): python('-c', 'import LFPy; LFPy.run_tests()')