Neo 0.10.0 release notes#

27th July 2021

New IO modules#

Bug fixes and improvements in IO modules#

  • NeuralynxIO was refactored and now supports new file versions (neuraview) and single file loading.

  • Legacy versions of old IOs were removed for NeuralynxIO (neuralynxio_v1), BlackrockIO, NeoHdf5IO.

  • NixIOfr now supports array annotations of AnalogSignal objects.

  • NSDFIO was removed because we can no longer maintain it.

  • all IOs now accept pathlib.Path objects.

  • The IO modules of this release have been tested with version 0.1.0 of the ephy_testing_data.

Removal of Unit and ChannelIndex#

In version 0.9.0 Group and ChannelView were introduced, replacing Unit and ChannelIndex, which were deprecated. In this version the deprecated Unit and ChannelIndex are removed and only the new Group and ChannelView objects are available.

Supported Python and NumPy versions#

We no longer support Python 3.6, nor versions of NumPy older than 1.16.

Other new or modified features#

  • Lists of SpikeTrain objects can now also be created from two arrays: one containing spike times and the other unit identities of the times (SpikeTrainList).

  • Object identity is now preserved when using utility time_slice() methods.

See all pull requests included in this release and the list of closed issues.

RawIO modules#

Internal refactoring of the neo.rawio module regarding channel grouping. Now the concept of a signal stream is used to handle channel groups for signals. This enhances the way the annotation and array_annotation attributes are rendered at neo.io level.

Acknowledgements#

Thanks to Samuel Garcia, Julia Sprenger, Peter N. Steinmetz, Andrew Davison, Steffen Bürgers, Regimantas Jurkus, Alessio Buccino, Shashwat Sridhar, Jeffrey Gill, Etienne Combrisson, Ben Dichter and Elodie Legouée for their contributions to this release.