Nwb-conversion-tools

Latest version: v0.11.38

Safety actively analyzes 622414 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 2

0.11.38

Upcoming deprecations
- Introduced a soft deprecation of keyword argument 'save_path' from various interface and tool-specific write and conversion functions. This argument should now be named 'nwbfile_path' for consistency with the main converter calls.
- For the `spikeinterface.add_unit`s auxiliary function, argument `write_as: str` has been changed to `write_in_processing_module: bool`. Default behavior has not changed. Also removed override of ElectrodeTable descriptions, allowing PyNWB to set these instead.


New Features and Improvements
- For latest security fixes, bumps minimum required version of numpy to >=1.22.0 for Python versions >=3.8. Python 3.7 can only go up to numpy 1.21.0, however.
- Enables the `nwbct-run-conversion` entrypoint for calling the YAML conversion specification from the command line.
- Adds a stubbing option to all ophys ImagingInterfaces.
- Improved the local version of the GenericDataChunkIterator by padding the buffer when beneficial.
- Various improvements to automated metadata extraction for various recording interfaces.
- Allows the JSON validators to parse datetime objects as iso and adds a context helper for making or appending NWBFiles.
- Enables recording, imaging, and sorting interfaces to perform standalone write of an NWBFile (that is, without requiring an NWBConverter with only a single interface).
- Added appending functionality to `spikeinterface.add_units`.
- Added a data transfer tool for submitting and tracking tasks over Globus endpoints.
- Added a helper function for performing a fully automated DANDI upload process, assuming the token has been set as an environment variable.
- Added helper functions for automatically downloading data from Figshare.
- Added verbosity control to the NWBConverter class and base DataInterfaces.
- Added support for string-valued channel_ids from SpikeInterface. It does so by introducing a new column 'channel_names' to any ElectrodeTable written by add_electrodes or write_recording. This is enforced to be unique across rows of the table both here and in individual SpikeInterface recordings.


New Interfaces
- Introduced the BaseIcephysInterface and the first intracellular format interface - the AbfInterface!
- Added the KilosortSortingInterface.


Interface Changes
- Added SpikeInterface support for the NeuralynxRecordingInterface, SpikeGadgetsRecordingInterface, BlackrockRecordingInterface, PhySortingInterface, IntanRecordingInterface, and NeuroscopeSortingInterface. The CEDRecordingInterface now only uses SpikeInterface as the backend (and has dropped _a priori_ setting of channel IDs - this is planned to be automatically reintroduced as a non-class method to subset channels after initialization, but for now that must be done manually).
- Removed the `nwbfile` object as a required argument of the `BaseRecordingInterface. run_conversion`.


Tool Changes
- Prevents any response series associated with a TwoPhotonSeries from being written if it is simply an array of zeros.
- Introduced a util function for calculating the rate of a regular series.
- Introduced deprecation of `use_times` to `roiextractors.add_two_photon_series`, as the behavior now mimics the modern SpikeInterface approach of always using them when available, and falling back to sampling frequency usage if not.


Bug Fixes
- Disabled the `nwb-gui` entrypoint as it has not worked for some time now.
- Fixed a bug where metadata values were duplicated in `roiextractors.write_imaging`.
- Prevented duplicate ophys metadata from becoming set during a manual override.
- Small fixes to ophys imaging metadata construction.
- Corrects the metadata schema for segmentation interfaces to be compatible with the ImagingInterfaces.
- Allows timestamps to be used with `external_file=True` in the MovieInterface.
- Fixed the matching of unique group_names with groups on the ElectrodesTable.
- Fixed a problem when running the YAML conversion feature on the Windows platform.

0.11.1

Not secure
- Forces `session_start_time` to be a required field of the metadata immediately prior to any instantiation of an NWBFile.
- Reorganizes the `tools` and `utils` into more internally manageable and convenient-to-import structure.

Simple instructions for updating any scripts that are broken in going from v0.9.9 to any version after and including v0.11.1 are:

pre-v0.11.1: `from nwb_conversion_tools.utils.json_schema import xyz`
post-v0.11.1: `from nwb_conversion_tools.utils import xyz`

pre-v0.11.1: `from nwb_conversion_tools.utils.conversion_tools import check_regular_timestamps`
post-v0.11.1: `from nwbinspector.utils import check_regular_series`

pre-v0.11.1: `from nwb_conversion_tools.utils.nwbfile_tools import xyz`
post-v0.11.1: `from nwb_conversion_tools.tools.nwb_helpers`

pre-v0.11.1: `from nwb_conversion_tools.utils.spike_interface import xyz` or `nwb_conversion_tools.utils.roiextractors import zyx`
post-v0.11.1:

python
from nwb_conversion_tools import spikeinterface, roiextractors
spikeinterface.xyz
roiextractors.zyx


For any questions, or if you need any help in updating from v0.9.9 to v0.11.1 and beyond, feel free to reach out to **cody.bakercatalystneuro.com**

0.9.9

Not secure
- New BaseSorting object support for the new SpikeInterface API. Note that unit_spike_features are only supported for old SortingExtractor objects, but aside from that there should be no behavioral differences when writing from a SortingExtractor vs. BaseSorting object.
- Allows ecephys util write functions to return nwbfile objects, and correctly indicates add_* helper functions to require nwbfile objects
- Critical metadata debugs and testing for ophys data interfaces.
- Extends support of spikeinterface add_* functions to BaseRecording objects (the new spikeinterface/spikeinterface version) while maintaining back compatibility with old RecordingExtractor objects. No change in behavior is expected in how the functions write to NWB.
- Adds starting_time control over ecephys ElectricalSeries.
- Adds bug fixes for CED on certain Mac and Python versions, Neuroscope fixes for newly discovered files, and CellExplorer unit property fixes. - Remaps all file path type inputs to the name 'file_path' where they may have previously been 'filename' or something format specific.

0.9.4

Not secure
- Around10% average speed improvement for the RecordingExtractorDataChunkIterator.
- More efficient header parsing for BlackrockRecordingInterface.

0.9.3

Not secure
v0.9.3 includes fixes to the NeuroscopeDataInterface, specifically the metadata components.

Also includes the new GitHub workflow treatment of the GIN dataset, which is now cached for improved speed.

0.9.2

Not secure
In v0.9.2 of nwb-conversion-tools, we...

- All DataInterfaces now infer their `source_schema` from properly annotated `__init__`
- Fixes to the `BaseSortingInterface` metadata handling to remove references to 'data' field. These should be set as unit properties or features to the extractor during `__init__`, and `metadata["UnitProperties"] = [dict(name=property_name, description=...)]` for the custom column metainfo for each property.
- Some fixes to arguments to `BlackRockRecordingInterface`

Page 1 of 2

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.