Skip to content

Commit

Permalink
Merge pull request #3234 from SpikeInterface/prepare_release
Browse files Browse the repository at this point in the history
Prepare release 0.101.0
  • Loading branch information
alejoe91 authored Jul 19, 2024
2 parents f4505e5 + a38116d commit 0a60f7c
Show file tree
Hide file tree
Showing 10 changed files with 27 additions and 19 deletions.
1 change: 1 addition & 0 deletions doc/api.rst
Original file line number Diff line number Diff line change
Expand Up @@ -336,6 +336,7 @@ spikeinterface.curation
Deprecated
~~~~~~~~~~
.. automodule:: spikeinterface.curation
:noindex:

.. autofunction:: apply_sortingview_curation
.. autoclass:: CurationSorting
Expand Down
1 change: 1 addition & 0 deletions doc/how_to/drift_with_lfp.rst
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ Preprocessing
Contrary to the **dredge_ap** approach, which needs detected peaks and peak locations, the **dredge_lfp**
method is estimating the motion directly on traces.
Importantly, the method requires some additional pre-processing steps:

* ``bandpass_filter``: to "focus" the signal on a particular band
* ``phase_shift``: to compensate for the sampling misalignement
* ``resample``: to further reduce the sampling fequency of the signal and speed up the computation. The sampling frequency of the estimated motion will be the same as the resampling frequency. Here we choose 250Hz, which corresponds to a sampling interval of 4ms.
Expand Down
4 changes: 2 additions & 2 deletions doc/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,12 @@ state-of-the-art spike sorters, post-process and curate the output, compute qual

.. warning::

Version 0.101.0 introduces a major API improvement: the :code:`SortingAnalyzer`.`
Version 0.101.0 introduces a major API improvement: the :code:`SortingAnalyzer`.
To read more about the motivations, checkout the
`enhancement proposal <https://github.com/SpikeInterface/spikeinterface/issues/2282>`_.
Learn how to :ref:`update your code here <tutorials/waveform_extractor_to_sorting_analyzer:From WaveformExtractor to SortingAnalyzer>`
and read more about the :code:`SortingAnalyzer`, please refer to the
:ref:`core <modules/core:SortingAnalyzer>` and :ref:`postprocessing <modules/postprocessing>` module
:ref:`core <modules/core:SortingAnalyzer>` and :ref:`postprocessing <modules/postprocessing:Postprocessing module>` module
documentation.


Expand Down
4 changes: 2 additions & 2 deletions doc/modules/postprocessing.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,12 @@ Extensions as AnalyzerExtensions
--------------------------------

There are several postprocessing tools available, and all of them are implemented as a
:py:class:`~spikeinterface.core.ResultExtension`. If the :code:`SortingAnalyzer` is saved to disk, all computations on
:py:class:`~spikeinterface.core.AnalyzerExtension`. If the :code:`SortingAnalyzer` is saved to disk, all computations on
top of it will be saved alongside the :code:`SortingAnalyzer` itself (sub folder, zarr path or sub dict).
This workflow is convenient for retrieval of time-consuming computations (such as pca or spike amplitudes) when reloading a
:code:`SortingAnalyzer`.

:py:class:`~spikeinterface.core.ResultExtension` objects are tightly connected to the
:py:class:`~spikeinterface.core.AnalyzerExtension` objects are tightly connected to the
parent :code:`SortingAnalyzer` object, so that operations done on the :code:`SortingAnalyzer`, such as saving,
loading, or selecting units, will be automatically applied to all extensions.

Expand Down
10 changes: 8 additions & 2 deletions doc/releases/0.101.0.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,15 @@ Estimated: 19th July 2024
Main changes:

* Implementation of `SortingAnalyzer` (#2398)
* Improved auto-merging functions and enable `SortingAnalyzer` to merge units and extensions (#3043, #3154, #3203)
* Improved auto-merging functions and enable `SortingAnalyzer` to merge units and extensions (#3043, #3154, #3203, #3208)
* Added framework for hybrid recording generation (#2436, #2769, #2857)
* Refactored motion correction with the `Motion` class and the DREDGE AP and LFP methods (#2915, #3062)
* Extendeded benchmarking of `sortingcomponents` (#2501, #2518, #2586, #2811, #2959)
* Added a powerful drift generator module (#2683)

core:

* Implement a simple system to have backward compatibility for Analyzer extension (#3215)
* Units aggregation preserve unit ids of aggregated sorters (#3180)
* Better error message for `BaseExtractor.load()` (#3170)
* Saving provenance with paths relative to folder (#3165)
Expand Down Expand Up @@ -98,6 +99,7 @@ core:

preprocessing:

* Update doc handle drift + better preset (#3232)
* Remove name class attribute in preprocessing module (#3200)
* Add option to use ref_channel_ids in global common reference (#3139)
* Adding option to overwrite while doing correct_motion and saving to a folder (#3088)
Expand Down Expand Up @@ -150,6 +152,7 @@ extractors:

sorters:

* Patch for SC2 after release AND bugs in auto merge (#3213)
* Improve error log to json in run_sorter (#3057)
* Add support for kilosort>=4.0.12 (#3055)
* Make sure we check `is_filtered()` rather than bound method during run basesorter (#3037)
Expand Down Expand Up @@ -179,7 +182,7 @@ sorters:

postprocessing:

* Fix pca transform error (#3178)
* Fix pca transform error (#3178, #3224)
* Fix `spike_vector_to_indices()` (#3048)
* Remove un-used argument (#3021)
* Optimize numba cross-correlation and extend `correlograms.py` docstrings and tests (#3017)
Expand All @@ -199,6 +202,7 @@ qualitymetrics:

curation:

* Add `apply_curation()` (#3208)
* Port auto-merge changes and refactor (#3203)
* Implement `apply_merges_to_sorting()` (#3154)
* Proposal of format to hold the manual curation information (#2933)
Expand Down Expand Up @@ -249,6 +253,7 @@ generation:

sortingcomponents:

* Fix estimate_motion when time_vector is set (#3218)
* Fix select peaks (#3132)
* Dredge lfp and dredge ap (#3062)
* Use "available" for memory caching (#3008)
Expand All @@ -269,6 +274,7 @@ sortingcomponents:

documentation:

* Analyzer docstring cleanup (#3220)
* Eradicate sphinx warnings (#3188)
* Convert doc references from `wf_extractor` -> `sorting_analyzer` (#3185)
* Add explainer of compute always computing in the analyzer (vs WaveformExtractor behavior) documentation (#3173)
Expand Down
4 changes: 2 additions & 2 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "spikeinterface"
version = "0.101.0rc1"
version = "0.101.0"
authors = [
{ name="Alessio Buccino", email="[email protected]" },
{ name="Samuel Garcia", email="[email protected]" },
Expand All @@ -25,7 +25,7 @@ dependencies = [
"tqdm",
"zarr>=2.16,<2.18",
"neo>=0.13.0",
"probeinterface>=0.2.22",
"probeinterface>=0.2.23",
"packaging",
]

Expand Down
4 changes: 2 additions & 2 deletions src/spikeinterface/core/generate.py
Original file line number Diff line number Diff line change
Expand Up @@ -1079,8 +1079,8 @@ class NoiseGeneratorRecording(BaseRecording):
noise_block_size: int
Size in sample of noise block.
Note
----
Notes
-----
If modifying this function, ensure that only one call to malloc is made per call get_traces to
maintain the optimized memory profile.
"""
Expand Down
2 changes: 1 addition & 1 deletion src/spikeinterface/curation/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,6 @@
from .splitunitsorting import SplitUnitSorting, split_unit_sorting

# curation format
from .curation_format import validate_curation_dict, curation_label_to_dataframe
from .curation_format import validate_curation_dict, curation_label_to_dataframe, apply_curation

from .sortingview_curation import apply_sortingview_curation
12 changes: 6 additions & 6 deletions src/spikeinterface/sortingcomponents/motion/dredge.py
Original file line number Diff line number Diff line change
Expand Up @@ -182,8 +182,8 @@ def dredge_ap(
matrix (or several, one for each nonrigid window). This matrix is used to solve for a
motion estimate.
Arguments
---------
Parameters
----------
recording: BaseRecording
The recording extractor
peaks: numpy array
Expand Down Expand Up @@ -518,8 +518,8 @@ def dredge_online_lfp(
):
"""Online registration of a preprocessed LFP recording
Arguments
---------
Parameters
----------
{}
Returns
Expand Down Expand Up @@ -1065,8 +1065,8 @@ def calc_corr_decent_pair(
the normxcorrs at the best displacement, and the matrix of the best
displacements.
Arguments
---------
Parameters
----------
raster : DxT array
batch_size : int
How many raster rows to xcorr against the whole raster
Expand Down
4 changes: 2 additions & 2 deletions src/spikeinterface/sortingcomponents/motion/motion_cleaner.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ def clean_motion_vector(motion, temporal_bins, bin_duration_s, speed_threshold=3
Also can apply a smoothing.
Arguments
---------
Parameters
----------
motion: numpy array 2d
Motion estimate in um.
temporal_bins: numpy.array 1d
Expand Down

0 comments on commit 0a60f7c

Please sign in to comment.