Skip to content

Releases: catalystneuro/neuroconv

v0.6.6

20 Dec 18:53
Compare
Choose a tag to compare

v0.6.6 (December 20, 2024)

Deprecations

  • Removed use of jsonschema.RefResolver as it will be deprecated from the jsonschema library PR #1133
  • Completely removed compression settings from most places PR #1126
  • Soft deprecation for file_path as an argument of SpikeGLXNIDQInterface and SpikeGLXRecordingInterface PR #1155
  • starting_time in RecordingInterfaces has given a soft deprecation in favor of time alignment methods PR #1158

Bug Fixes

  • datetime objects now can be validated as conversion options #1139
  • Make NWBMetaDataEncoder public again PR #1142
  • Fix a bug where data in DeepLabCutInterface failed to write when ndx-pose was not imported. #1144
  • SpikeGLXConverterPipe converter now accepts multi-probe structures with multi-trigger and does not assume a specific folder structure #1150
  • SpikeGLXNIDQInterface is no longer written as an ElectricalSeries #1152
  • Fix a bug on ecephys interfaces where extra electrode group and devices were written if the property of the "group_name" was set in the recording extractor #1164

Features

  • Propagate the unit_electrode_indices argument from the spikeinterface tools to BaseSortingExtractorInterface. This allows users to map units to the electrode table when adding sorting data PR #1124
  • Imaging interfaces have a new conversion option always_write_timestamps that can be used to force writing timestamps even if neuroconv's heuristics indicates regular sampling rate PR #1125
  • Added .csv support to DeepLabCutInterface PR #1140
  • SpikeGLXRecordingInterface now also accepts folder_path making its behavior equivalent to SpikeInterface #1150
  • Added the rclone_transfer_batch_job helper function for executing Rclone data transfers in AWS Batch jobs. PR #1085
  • Added the deploy_neuroconv_batch_job helper function for deploying NeuroConv AWS Batch jobs. PR #1086
  • YAML specification files now accepts an outer keyword upload_to_dandiset="< six-digit ID >" to automatically upload the produced NWB files to the DANDI archive PR #1089
    *SpikeGLXNIDQInterface now handdles digital demuxed channels (XD0) #1152

Improvements

  • Use mixing tests for ecephy's mocks PR #1136
  • Use pytest format for dandi tests to avoid window permission error on teardown PR #1151
  • Added many docstrings for public functions PR #1063
  • Clean up with warnings and deprecations in the testing framework PR #1158
  • Enhance the typing of the signature on the NWBConverter by adding zarr as a literal option on the backend and backend configuration PR #1160

v0.6.5

01 Nov 21:17
Compare
Choose a tag to compare

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 to EDFRecordingInterface 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

17 Sep 22:58
Compare
Choose a tag to compare

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 for MockImagingInterface 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

10 Sep 17:44
Compare
Choose a tag to compare

Same as v0.6.2. Testing automatic upload

v0.6.2

10 Sep 17:21
Compare
Choose a tag to compare

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 where unit_electrode_indices was only propagated if waveform_means was passed PR #1057

Features

  • Make config_file_path optional in DeepLabCutInterfacePR #1031
  • Added get_stream_names to OpenEphysRecordingInterface: 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

30 Aug 15:03
Compare
Choose a tag to compare

v0.6.1 (August 30, 2024)

Bug fixes

  • Fixed the JSON schema inference warning on excluded fields; also improved error message reporting of which method triggered the error. PR #1037

v0.6.0

27 Aug 22:16
Compare
Choose a tag to compare

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 and compression_options in VideoInterface PR #1005
  • get_schema_from_method_signature has been deprecated; please use get_json_schema_from_method_signature instead. PR #1016
  • neuroconv.utils.FilePathType and neuroconv.utils.FolderPathType have been deprecated; please use pydantic.FilePath and pydantic.DirectoryPath instead. PR #1017
  • Changed the roiextractors.tool function (e.g. add_imaging and add_segmentation) to have the _to_nwbfile suffix [PR #1027]PR #1017

Features

  • Added MedPCInterface for operant behavioral output files. PR #883
  • Support SortingAnalyzer in the SpikeGLXConverterPipe. 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 to add_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 uses lxml for extracting the session start time from the settings.xml file and does not depend on pyopenephys anymore. PR #971
  • Swap the majority of package setup and build steps to pyproject.toml instead of setup.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 mimicking run_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

17 Jul 20:25
af91f09
Compare
Choose a tag to compare

v0.5.0 (July 17, 2024)

Deprecations

  • The usage of compression_options directly through the neuroconv.tools.audio submodule is now deprecated - users should refer to the new configure_backend method for a general approach for setting compression. PR #939
  • The usage of compression and compression_opts directly through the FicTracDataInterface is now deprecated - users should refer to the new configure_backend method for a general approach for setting compression. PR #941
  • The usage of compression directly through the neuroconv.tools.neo submodule is now deprecated - users should refer to the new configure_backend method for a general approach for setting compression. PR #943
  • The usage of compression_options directly through the neuroconv.tools.ophys submodule is now deprecated - users should refer to the new configure_backend method for a general approach for setting compression. PR #940
  • Removed the option of running interface.run_conversion without nwbfile_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 another NWBConverter. PR #922
  • Fixed a case of the NeuroScopeSortingExtractor when the optional xml_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 new configure_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

14 Jun 15:48
eda1b42
Compare
Choose a tag to compare

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 their full_shape. PR #894
  • Added packaging explicitly to minimal requirements. PR #904
  • Fixed bug when using make_or_load_nwbfile with overwrite=True on an existing (but corrupt) HDF5 file. PR #911
  • Change error trigger with warning trigger when adding both OnePhotonSeries and TwoPhotonSeries to the same file (Issue #906). PR #907

Improvements

  • Propagated photon_series_type to BaseImagingExtractorInterface init instead of passing it as an argument of get_metadata() and get_metadata_schema(). PR #847

v0.4.10

06 Jun 23:49
35202bd
Compare
Choose a tag to compare

v0.4.10 (June 6, 2024)

Bug fixes

  • Fixed bug causing overwrite of NWB GUIDE watermark. PR #890