Gentoo Archives: gentoo-commits

From: Horea Christian <horea.christ@×××××.com>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/sci:master commit in: dev-python/spikeinterface/
Date: Wed, 01 Feb 2023 14:55:21
Message-Id: 1675263311.bdf4308195544e9082598647943e18e1fe6ee262.chymera@gentoo
1 commit: bdf4308195544e9082598647943e18e1fe6ee262
2 Author: Horea Christian <chr <AT> chymera <DOT> eu>
3 AuthorDate: Wed Feb 1 14:55:11 2023 +0000
4 Commit: Horea Christian <horea.christ <AT> gmail <DOT> com>
5 CommitDate: Wed Feb 1 14:55:11 2023 +0000
6 URL: https://gitweb.gentoo.org/proj/sci.git/commit/?id=bdf43081
7
8 dev-python/spikeinterface: new package, add 0.96.1
9
10 Signed-off-by: Horea Christian <chr <AT> chymera.eu>
11
12 dev-python/spikeinterface/metadata.xml | 19 +++++
13 .../spikeinterface/spikeinterface-0.96.1.ebuild | 93 ++++++++++++++++++++++
14 2 files changed, 112 insertions(+)
15
16 diff --git a/dev-python/spikeinterface/metadata.xml b/dev-python/spikeinterface/metadata.xml
17 new file mode 100644
18 index 000000000..f91c7a26c
19 --- /dev/null
20 +++ b/dev-python/spikeinterface/metadata.xml
21 @@ -0,0 +1,19 @@
22 +<?xml version='1.0' encoding='UTF-8'?>
23 +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
24 +<pkgmetadata>
25 + <maintainer type="person">
26 + <email>gentoo@×××××××.eu</email>
27 + <name>Horea Christian</name>
28 + </maintainer>
29 + <maintainer type="project">
30 + <email>sci@g.o</email>
31 + <name>Gentoo Science Project</name>
32 + </maintainer>
33 + <use>
34 + <flag name="extractors">support for all extractors</flag>
35 + <flag name="full">support for all optional processing features</flag>
36 + </use>
37 + <upstream>
38 + <remote-id type="github">SpikeInterface/spikeinterface</remote-id>
39 + </upstream>
40 +</pkgmetadata>
41
42 diff --git a/dev-python/spikeinterface/spikeinterface-0.96.1.ebuild b/dev-python/spikeinterface/spikeinterface-0.96.1.ebuild
43 new file mode 100644
44 index 000000000..6dae8d191
45 --- /dev/null
46 +++ b/dev-python/spikeinterface/spikeinterface-0.96.1.ebuild
47 @@ -0,0 +1,93 @@
48 +# Copyright 2021-2023 Gentoo Authors
49 +# Distributed under the terms of the GNU General Public License v2
50 +
51 +EAPI=8
52 +
53 +PYTHON_COMPAT=( python3_{10..10} )
54 +DISTUTILS_USE_PEP517=setuptools
55 +inherit distutils-r1
56 +
57 +DESCRIPTION="A Python-based module for creating flexible and robust spike sorting pipelines."
58 +HOMEPAGE="https://github.com/SpikeInterface/spikeinterface"
59 +SRC_URI="https://github.com/SpikeInterface/spikeinterface/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
60 +
61 +LICENSE="MIT"
62 +SLOT="0"
63 +KEYWORDS="~amd64"
64 +IUSE="extractors full test"
65 +
66 +RDEPEND="
67 + dev-python/joblib[${PYTHON_USEDEP}]
68 + dev-python/neo[${PYTHON_USEDEP}]
69 + dev-python/numpy[${PYTHON_USEDEP}]
70 + dev-python/probeinterface[${PYTHON_USEDEP}]
71 + dev-python/threadpoolctl[${PYTHON_USEDEP}]
72 + dev-python/tqdm[${PYTHON_USEDEP}]
73 + extractors? (
74 + dev-python/pynwb[${PYTHON_USEDEP}]
75 + dev-python/lxml[${PYTHON_USEDEP}]
76 + dev-python/scipy[${PYTHON_USEDEP}]
77 + )
78 + full? (
79 + dev-python/distinctipy[${PYTHON_USEDEP}]
80 + dev-python/h5py[${PYTHON_USEDEP}]
81 + dev-python/matplotlib[${PYTHON_USEDEP}]
82 + dev-python/networkx[${PYTHON_USEDEP}]
83 + dev-python/pandas[${PYTHON_USEDEP}]
84 + dev-python/scipy[${PYTHON_USEDEP}]
85 + dev-python/xarray[${PYTHON_USEDEP}]
86 + dev-python/zarr[${PYTHON_USEDEP}]
87 + sci-libs/scikit-learn[${PYTHON_USEDEP}]
88 + )
89 +"
90 +# Also wants:
91 +# # Extractors:
92 +# MEArec
93 +# pyedflib
94 +# sonpy
95 +# dev-python/hdf5storage (in ::science, masked)
96 +
97 +distutils_enable_tests pytest
98 +
99 +# Test failures reported upstream:
100 +# https://github.com/SpikeInterface/spikeinterface/issues/307
101 +python_test() {
102 + # Network sandboxing, mostly (?)
103 + local EPYTEST_DESELECT=(
104 + spikeinterface/core/tests/test_datasets.py::test_download_dataset
105 + spikeinterface/sortingcomponents/tests/test_motion_estimation.py::test_motion_functions
106 + spikeinterface/sortingcomponents/tests/test_motion_estimation.py::test_estimate_motion_rigid
107 + spikeinterface/sortingcomponents/tests/test_motion_estimation.py::test_estimate_motion_non_rigid
108 + spikeinterface/comparison/tests/test_multisortingcomparison.py::test_compare_multiple_sorters
109 + spikeinterface/curation/tests/test_sortingview_curation.py::test_sortingview_curation
110 + spikeinterface/exporters/tests/test_export_to_phy.py::test_export_to_phy
111 + spikeinterface/exporters/tests/test_export_to_phy.py::test_export_to_phy_by_sparsity
112 + spikeinterface/exporters/tests/test_report.py::test_export_report
113 + spikeinterface/extractors/tests/test_neoextractors.py
114 + spikeinterface/sorters/tests/test_launcher.py::test_run_sorters_with_dict
115 + spikeinterface/sorters/tests/test_launcher.py::test_sorter_installation
116 + spikeinterface/sorters/tests/test_runsorter.py::test_run_sorter_local
117 + spikeinterface/sorters/tests/test_runsorter.py::test_run_sorter_docker
118 + spikeinterface/sorters/tests/test_runsorter.py::test_run_sorter_singularity
119 + spikeinterface/sorters/tests/test_si_based_sorters.py::SpykingCircus2SorterCommonTestSuite
120 + spikeinterface/sorters/tests/test_si_based_sorters.py::Tridesclous2SorterCommonTestSuite::test_with_class
121 + spikeinterface/sorters/tests/test_si_based_sorters.py::Tridesclous2SorterCommonTestSuite::test_with_run
122 + spikeinterface/sortingcomponents/tests/test_clustering.py::test_find_cluster_from_peaks
123 + spikeinterface/sortingcomponents/tests/test_features_from_peaks.py::test_features_from_peaks
124 + spikeinterface/sortingcomponents/tests/test_peak_detection.py::test_detect_peaks
125 + spikeinterface/sortingcomponents/tests/test_peak_localization.py::test_localize_peaks
126 + spikeinterface/sortingcomponents/tests/test_peak_pipeline.py::test_run_peak_pipeline
127 + spikeinterface/sortingcomponents/tests/test_peak_selection.py::test_detect_peaks
128 + spikeinterface/sortingcomponents/tests/test_template_matching.py::test_find_spikes_from_templates
129 + spikeinterface/widgets/tests/test_widgets.py::TestWidgets
130 + )
131 + # Reported upstream:
132 + # https://github.com/SpikeInterface/spikeinterface/issues/307#issuecomment-1410840998
133 + EPYTEST_DESELECT+=(
134 + spikeinterface/sorters/tests/test_launcher.py::test_collect_sorting_outputs
135 + )
136 + local EPYTEST_IGNORE=(
137 + spikeinterface/widgets/_legacy_mpl_widgets/tests/*
138 + )
139 + epytest
140 +}