Releases: catalystneuro/neuroconv
Releases · catalystneuro/neuroconv
v0.6.5
v0.6.5 (November 1, 2024)
Deprecations
Bug Fixes
Features
- Using in-house
GenericDataChunkIterator
PR #1068 - Data interfaces now perform source (argument inputs) validation with the json schema PR #1020
- Improve the error message when writing a recording extractor with multiple offsets PR #1111
- Added
channels_to_skip
toEDFRecordingInterface
so the user can skip non-neural channels PR #1110
Improvements
- Remove dev test from PR PR #1092
- Run only the most basic testing while a PR is on draft PR #1082
- Test that zarr backend_configuration works in gin data tests PR #1094
- Consolidated weekly workflows into one workflow and added email notifications PR #1088
- Avoid running link test when the PR is on draft PR #1093
- Centralize gin data preparation in a github action PR #1095
v0.6.4
v0.6.4 (September 17, 2024)
Bug Fixes
- Fixed a setup bug introduced in
v0.6.2
where installation process created a directory instead of a file for test configuration file PR #1070 - The method
get_extractor
now works forMockImagingInterface
PR #1076 - Updated opencv version for security PR #1087
- Solved a bug of
PlexonRecordingInterface
where data with multiple streams could not be opened PR #989
Deprecations
Features
- Added chunking/compression for string-only compound objects: PR #1042
- Added automated EFS volume creation and mounting to the
submit_aws_job
helper function. PR #1018 - Added a mock for segmentation extractors interfaces in ophys:
MockSegmentationInterface
PR #1067 - Added a
MockSortingInterface
for testing purposes. PR #1065
Improvements
- Testing on mac sillicon PR #1061
- Add writing to zarr test for to the test on data PR #1056
- Modified the CI to avoid running doctests twice PR #1077
- Consolidated daily workflows into one workflow and added email notifications PR #1081
- Added zarr tests for the test on data with checking equivalent backends PR #1083
v0.6.3
Same as v0.6.2. Testing automatic upload
v0.6.2
v0.6.2 (September 10, 2024)
Deprecations
- The following classes and objects are now private
NWBMetaDataEncoder
,NWBMetaDataEncoder
,check_if_imaging_fits_into_memory
,NoDatesSafeLoader
PR #1050
Bug Fixes
- Fixed a bug where
IntanRecordingInterface
added two devices PR #1059 - Fix a bug in
add_sorting_to_nwbfile
whereunit_electrode_indices
was only propagated ifwaveform_means
was passed PR #1057
Features
- Make
config_file_path
optional inDeepLabCutInterface
PR #1031 - Added
get_stream_names
toOpenEphysRecordingInterface
: PR #1039 - Most data interfaces and converters now use Pydantic to validate their inputs, including existence of file and folder paths. PR #1022
- All remaining data interfaces and converters now use Pydantic to validate their inputs, including existence of file and folder paths. PR #1055
Improvements
- Using ruff to enforce existence of public classes' docstrings PR #1034
- Separated tests that use external data by modality PR #1049
- Added Unit Table descriptions for phy and kilosort: PR #1053
- Using ruff to enforce existence of public functions's docstrings PR #1062
- Improved device metadata of
IntanRecordingInterface
by adding the type of controller used PR #1059
v0.6.1
v0.6.0
v0.6.0 (August 27, 2024)
Deprecations
- Deprecated
WaveformExtractor
usage. PR #821 - Changed the spikeinterface.tool functions (e.g.
add_recording
,add_sorting
) to have_to_nwbfile
as suffix PR #1015 - Deprecated use of
compression
andcompression_options
inVideoInterface
PR #1005 get_schema_from_method_signature
has been deprecated; please useget_json_schema_from_method_signature
instead. PR #1016neuroconv.utils.FilePathType
andneuroconv.utils.FolderPathType
have been deprecated; please usepydantic.FilePath
andpydantic.DirectoryPath
instead. PR #1017- Changed the roiextractors.tool function (e.g.
add_imaging
andadd_segmentation
) to have the_to_nwbfile
suffix [PR #1027]PR #1017
Features
- Added MedPCInterface for operant behavioral output files. PR #883
- Support
SortingAnalyzer
in theSpikeGLXConverterPipe
. PR #821 - Added
TDTFiberPhotometryInterface
data interface, for converting fiber photometry data from TDT file formats. PR #920 - Add argument to
add_electrodes
that grants fine control of what to do with the missing values. As a side effect this drops the implicit casting to int when writing int properties to the electrodes table PR #985 - Add Plexon2 support PR #918
- Converter working with multiple VideoInterface instances PR #914
- Added helper function
neuroconv.tools.data_transfers.submit_aws_batch_job
for basic automated submission of AWS batch jobs. PR #384 - Data interfaces
run_conversion
method now performs metadata validation before running the conversion. PR #949 - Introduced
null_values_for_properties
toadd_units_table
to give user control over null values behavior PR #989
Bug fixes
- Fixed the default naming of multiple electrical series in the
SpikeGLXConverterPipe
. PR #957 - Write new properties to the electrode table use the global identifier channel_name, group PR #984
- Removed a bug where int64 was casted lossy to float PR #989
Improvements
- The
OpenEphysBinaryRecordingInterface
now useslxml
for extracting the session start time from the settings.xml file and does not depend onpyopenephys
anymore. PR #971 - Swap the majority of package setup and build steps to
pyproject.toml
instead ofsetup.py
. PR #955 - The
DeeplabcutInterface
now skips inferring timestamps from movie when timestamps are specified, running faster. PR #967 - Improve metadata writing for SpikeGLX data interface. Added contact ids, shank ids and, remove references to shanks for neuropixels 1.0. Also deprecated the previous neuroconv exclusive property "electrode_shank_number` PR #986
- Add tqdm with warning to DeepLabCut interface PR #1006
BaseRecordingInterface
now calls default metadata when metadata is not passing mimickingrun_conversion
behavior. PR #1012- Added
get_json_schema_from_method_signature
which constructs Pydantic models automatically from the signature of any function with typical annotation types used throughout NeuroConv. PR #1016 - Replaced all interface annotations with Pydantic types. PR #1017
- Changed typehint collections (e.g.
List
) to standard collections (e.g.list
). PR #1021 - Testing now is only one dataset per test PR #1026
v0.5.0
v0.5.0 (July 17, 2024)
Deprecations
- The usage of
compression_options
directly through theneuroconv.tools.audio
submodule is now deprecated - users should refer to the newconfigure_backend
method for a general approach for setting compression. PR #939 - The usage of
compression
andcompression_opts
directly through theFicTracDataInterface
is now deprecated - users should refer to the newconfigure_backend
method for a general approach for setting compression. PR #941 - The usage of
compression
directly through theneuroconv.tools.neo
submodule is now deprecated - users should refer to the newconfigure_backend
method for a general approach for setting compression. PR #943 - The usage of
compression_options
directly through theneuroconv.tools.ophys
submodule is now deprecated - users should refer to the newconfigure_backend
method for a general approach for setting compression. PR #940 - Removed the option of running
interface.run_conversion
withoutnwbfile_path
argument . PR #951
Features
- Added docker image and tests for an automated Rclone configuration (with file stream passed via an environment variable). PR #902
Bug fixes
- Fixed the conversion option schema of a
SpikeGLXConverter
when used inside anotherNWBConverter
. PR #922 - Fixed a case of the
NeuroScopeSortingExtractor
when the optionalxml_file_path
is not specified. PR #926 - Fixed
Can't specify experiment type when converting .abf to .nwb with Neuroconv
. PR #609 - Remove assumption that the ports of the Intan acquisition system correspond to electrode groupings in
IntanRecordingInterface
PR #933 - Add ValueError for empty metadata in
make_or_load_nwbfile
when an nwbfile needs to be created PR #948
Improvements
- Make annotations from the raw format available on
IntanRecordingInterface
. PR #934 - Add an option to suppress display the progress bar (tqdm) in
VideoContext
PR #937 - Automatic compression of data in the
LightnignPoseDataInterface
has been disabled - users should refer to the newconfigure_backend
method for a general approach for setting compression. PR #942 - Port over
dlc2nwb
utility functions for ease of maintenance. PR #946
v0.4.11
v0.4.11 (June 14, 2024)
Bug fixes
- Added a skip condition in
get_default_dataset_io_configurations
for datasets with any zero-length axis in theirfull_shape
. PR #894 - Added
packaging
explicitly to minimal requirements. PR #904 - Fixed bug when using
make_or_load_nwbfile
withoverwrite=True
on an existing (but corrupt) HDF5 file. PR #911 - Change error trigger with warning trigger when adding both
OnePhotonSeries
andTwoPhotonSeries
to the same file (Issue #906). PR #907
Improvements
- Propagated
photon_series_type
toBaseImagingExtractorInterface
init instead of passing it as an argument ofget_metadata()
andget_metadata_schema()
. PR #847
v0.4.10
v0.4.9
v0.4.9 (June 5, 2024)
Deprecations
- Removed
stream_id
as an argument fromIntanRecordingInterface
. PR #794 - The usage of
compression
andcompression_opts
directly through theneuroconv.tools.spikeinterface
submodule are now deprecated - users should refer to the newconfigure_backend
method for a general approach for setting compression. PR #805 - Dropped the testing of Python 3.8 on the CI. Dropped support for Python 3.8 in setup. PR #853
- Deprecated skip_features argument in
add_sorting
. PR #872 - Deprecate old (v1) iterator from the ecephys pipeline. PR #876
Features
- Added
backend
control to themake_or_load_nwbfile
helper method inneuroconv.tools.nwb_helpers
. PR #800 - Released the first official Docker images for the package on the GitHub Container Repository (GHCR). PR #383
- Support "one-file-per-signal" and "one-file-per-channel" mode with
IntanRecordingInterface
. PR #791 - Added
get_default_backend_configuration
method to allDataInterface
classes. Also added HDF5backend
control to all standalone.run_conversion(...)
methods for those interfaces. PR #801 - Added
get_default_backend_configuration
method to allNWBConverter
classes. Also added HDF5backend
control to.run_conversion(...)
. PR #804 - Released the first official Docker images for the package on the GitHub Container Repository (GHCR). PR #383
- Added
ScanImageMultiFileImagingInterface
for multi-file (buffered) ScanImage format and changedScanImageImagingInterface
to be routing classes for single and multi-plane imaging. PR #809 - Added a function to generate ogen timestamps and data from onset times and parameters to
tools.optogenetics
. PR #832 - Added
configure_and_write_nwbfile
and optimized imports intools.nwb_helpers
module. PR #848 configure_backend
may now apply aBackendConfiguration
to equivalent in-memorypynwb.NWBFile
objects that have different address in RAM. PR #848- Add support for doubled ragged arrays in
add_units_table
. PR #879 - Add support for doubled ragged arrays in
add_electrodes
. PR #881
Bug fixes
- Remove JSON Schema
definitions
from theproperties
field. PR #818 - Fixed writing waveforms directly to file. PR #799
- Avoid in-place modification of the metadata in the
VideoInterface
and on neo tools. PR #814 - Replaced
waveform_extractor.is_extension
withwaveform_extractor.has_extension
. PR #799 - Fixed an issue with
set_aligned_starting_time
for allSortingInterface
's that did not have an initial segment start set (and no recording attached). PR #823 - Fixed a bug with
parameterized
andpytest-xdist==3.6.1
in theScanImageImagingInterface
tests. PR #829 - Added
XX
andXO
to the base metadata schema. PR #833 BaseImagingExtractor.add_to_nwbfile()
is fixed in the case where metadata is not supplied. PR #849- Prevent
SpikeGLXConverterPipe
from setting false properties on the sub-SpikeGLXNIDQInterface
. PR #860 - Fixed a bug when adding ragged arrays to the electrode and units table. PR #870
- Fixed a bug where
write_recording
will call an empty nwbfile when passing a path. PR #877 - Fixed a bug that failed to properly include time alignment information in the output NWB file for objects added from any
RecordingInterface
in combination withstub_test=True
. PR #884 - Fixed a bug that prevented passing
nwbfile=None
and abackend_configuration
toNWBConverter.run_conversion
. PR #885
Improvements
- Fixed docstrings related to backend configurations for various methods. PR #822
- Added automatic
backend
detection when abackend_configuration
is passed to an interface or converter. PR #840 - Improve printing of bytes. PR #831
- Support for pathlib in source data schema validation. PR #854
- Use
ZoneInfo
instead ofdateutil.tz
in the conversion gallery. PR #858 - Exposed
progress_bar_class
to ecephys and ophys data iterators. PR #861 - Unified the signatures between
add_units
,add_sorting
andwrite_sorting
. PR #875 - Improved descriptions of all folder and file paths in the source schema, useful for rendering in the GUIDE. PR #886
- Added watermark via
source_script
field ofNWBFile
metadata.source_script_file_name
is also required to be specified in this case to avoid invalidation. PR #888
Testing
- Add general test for metadata in-place modification by interfaces. PR #815