Skip to content

Releases: catalystneuro/neuroconv

v0.9.0

04 Dec 22:14

Choose a tag to compare

v0.9.0 (December 4, 2025)

Removals, Deprecations and Changes

  • Removed VideoInterface class scheduled for removal in September 2025. The class is now private (_VideoInterface) and used internally by LightningPoseConverter. Users should use ExternalVideoInterface or InternalVideoInterface instead. PR #1589
  • Removed deprecated ScanImage interfaces that were scheduled for removal in October 2025: ScanImageMultiFileImagingInterface, ScanImageMultiPlaneImagingInterface, ScanImageMultiPlaneMultiFileImagingInterface, ScanImageSinglePlaneImagingInterface, and ScanImageSinglePlaneMultiFileImagingInterface. Use ScanImageImagingInterface instead. PR #1576
  • Removed deprecated SpikeInterface functions scheduled for removal in October 2025: add_electrical_series_to_nwbfile, check_if_recording_traces_fit_into_memory, add_electrodes_info_to_nwbfile, and add_units_table_to_nwbfile. Use add_recording_to_nwbfile, add_recording_metadata_to_nwbfile, and add_sorting_to_nwbfile instead. PR #1583
  • Removed deprecated BaseRecordingExtractorInterface.subset_recording() method scheduled for removal in October 2025. PR #1583
  • Removed deprecated write_electrical_series parameter from add_recording_to_nwbfile scheduled for removal in October 2025. Use add_recording_metadata_to_nwbfile if only metadata addition is desired. PR #1583
  • Removed deprecated write_scaled parameter from add_recording_to_nwbfile and write_recording_to_nwbfile scheduled for removal in October 2025. The functions now automatically handle channel conversion and offsets. PR #1583
  • Removed deprecated num_frames parameter from MockImagingInterface and MockSegmentationInterface scheduled for removal in February 2025. Use num_samples instead. PR #1583
  • Removed deprecated output_filepath parameter from configure_and_write_nwbfile. Use nwbfile_path instead. PR #1582
  • Deprecated configuration_file_path parameter in MiniscopeImagingInterface and will be removed on or after May 2026. Use folder_path instead for standard folder structures. PR #1593
  • Deprecated get_device_metadata function in spikeglx_utils and will be removed on or after May 2026. Use SpikeGLXRecordingInterface._get_device_metadata_from_probe() instead, which extracts device metadata directly from probe information. PR #1599
  • Deprecated iterator_opts parameter in favor of iterator_options across all SpikeInterface conversion functions and data interfaces. The deprecated parameter will be removed on or after May 2026. This change improves consistency with naming conventions. PR #1603
  • Deprecated es_key parameter in SpikeGLXNIDQInterface and will be removed on or after May 2026. This parameter has no effect as the interface writes analog data as TimeSeries and digital data as LabeledEvents, not ElectricalSeries. PR #1615
  • Removed deprecated file_path parameter from SpikeGLXRecordingInterface and SpikeGLXNIDQInterface. Use folder_path and stream_id instead. PR #1616

Bug Fixes

  • Fixed bug with TDTFiberPhotometryInterface tests by swapping out test_all_conversion_checks_stub_test_invalid with test_check_run_conversion_stub_test_invalid (avoiding unittest.TestCase.subTests). PR #1579
  • Fixed DANDI live service tests to support dandi-cli 0.73.2 instance-specific API key environment variables (DANDI_SANDBOX_API_KEY, EMBER_SANDBOX_API_KEY, etc.). Updated all workflows and test files to use the appropriate API key for each DANDI instance. PR #1588

Features

  • Miniscope converter now uses the configuration file to read general folder structures PR #1528 PR #1604
  • Added a workflow to repack nwbfiles that have already been written to disk with desired chunking and compression settings: PR #1003 PR #1592
  • Enhanced TiffImagingInterface to support multi-file TIFF datasets using MultiTIFFMultiPageExtractor from roiextractors. Added support for configurable dimension orders (dimension_order), multi-channel data (num_channels, channel_name), and volumetric imaging (num_planes). Both file_path (single file) and file_paths (multiple files) parameters are now supported for backward compatibility. PR #1577 PR #1578
  • Added add_recording_as_spatial_series_to_nwbfile function to write SpikeInterface recordings as SpatialSeries for behavioral tracking data (e.g., position, head direction, gaze tracking). PR #1574
  • Enhanced SpikeGLXNIDQInterface to support custom metadata for digital channels, enabling users to specify semantic labels, descriptions, and names for NIDQ digital events. Added metadata_key parameter to support multiple NIDQ interfaces in the same conversion. Added digital_channel_groups parameter for init-time configuration of digital channels, matching the pattern used by analog_channel_groups. PR #1580 PR #1615
  • Enhanced SpikeGLXNIDQInterface to support custom metadata for analog channels, enabling users to split NIDQ analog channels into multiple TimeSeries objects with custom groupings via the new analog_channel_groups parameter. Users can now organize analog channels semantically (e.g., audio, accelerometer, temperature sensors). The default behavior (single TimeSeries for all analog channels) remains unchanged. PR #1601 PR #1615
  • Added ADC multiplexing properties (adc_group and adc_sample_order) to SpikeGLX recordings. These properties preserve hardware provenance information about which ADC each electrode is connected to and its sampling order, enabling downstream computation of inter-sample shifts even when channels are sliced. Requires probeinterface >= 0.3.1. PR #1597 PR #1609
  • Added SpikeGLXSyncChannelInterface for converting Neuropixel synchronization channels from SpikeGLX recordings. PR #1600
  • The SpikeGLXConverterPipe now includes sync channels. PR #1600
  • Added MiniscopeHeadOrientationInterface for converting Miniscope head orientation data from BNO055 IMU sensor.PR #1610

Improvements

  • Improved SpikeGLX device metadata extraction to use probe information from probeinterface instead of parsing meta files. Device metadata now includes serial number as a separate field and enriched description with part number, port, slot, model name, and manufacturer from probe annotations. PR #1599
  • Added comprehensive how-to guide "How to Add Behavioral and Sensor Data from Acquisition Systems" documenting usage of add_recording_as_time_series_to_nwbfile and add_recording_as_spatial_series_to_nwbfile for adding behavioral data from any SpikeInterface-supported format. PR #1575
  • Enhanced CSV interface documentation with comprehensive tutorial-style examples showing CSV format requirements, basic usage with column descriptions, customization options for storage location (trials/epochs/custom intervals), and advanced reading options. Fixed in-memory access to nwbfile.trials and nwbfile.epochs. Improved docstrings across TimeIntervalsInterface and convert_df_to_time_intervals. PR #1572
  • Enhanced live service testing CI to fail explicitly with clear error messages when repository secrets are unavailable for external contributors. Added validation step in workflow to check required credentials and updated documentation to explain the workflow for external contributors (maintainers fork PRs to run live tests). PR #1590 PR #1598

v0.8.3

06 Nov 22:07

Choose a tag to compare

v0.8.3 (November 6, 2025)

Removals, Deprecations and Changes

  • Ophys: Low-level helper functions add_background_plane_segmentation_to_nwbfile, add_fluorescence_traces_to_nwbfile, add_background_fluorescence_traces_to_nwbfile, and add_summary_images_to_nwbfile are deprecated and will be removed on or after March 2026. These are low-level functions that should not be called directly. PR #1559
  • Refactored extractor interfaces to use explicit _initialize_extractor method instead of implicit string-based initialization, improving code clarity and maintainability across all recording, sorting, imaging, and segmentation interfaces PR #1515
  • SpikeInterface tools: Using write_recording_to_nwbfile, write_sorting_to_nwbfile, or write_sorting_analyzer_to_nwbfile without nwbfile_path to only add data to an in-memory nwbfile is deprecated and will be removed in or after March 2026. Use the corresponding add_*_to_nwbfile functions instead. PR #1565
  • SpikeInterface tools: Returning an NWBFile object from write_recording_to_nwbfile, write_sorting_to_nwbfile, and write_sorting_analyzer_to_nwbfile in append mode is deprecated and will return None in or after March 2026. This matches the pattern used in `BaseDataInterface.run_conversionPR #1565
  • Extractor interfaces: The extractor attribute and get_extractor() method are deprecated and will be removed on or after March 2026. These were confusingly named as they return extractor classes, not instances. Use the private _extractor_class attribute or access the instance directly via _extractor_instance PR #1513

Bug Fixes

  • Excluded contact_ids property from being added as a duplicate column in the electrodes table. This property is already represented via the electrode_name column which uses probe contact identifiers. PR #1560
  • Fixed DeepLabCutInterface to support output files without 'DLC' in the filename by extracting scorer from CSV/H5 header instead of parsing filename. This improves compatibility with DeepLabCut outputs that don't follow the typical naming convention while maintaining backward compatibility. PR #1573

Features

Improvements

  • SpikeInterface tools: Enhanced write_recording_to_nwbfile, write_sorting_to_nwbfile, and write_sorting_analyzer_to_nwbfile to support backend configuration parameters (backend, backend_configuration) for controlling HDF5/Zarr compression and chunking settings, matching the pattern used in BaseDataInterface.run_conversion. PR #1565
  • Added citation information to README, documentation, and CITATION.cff with reference to the SciPy 2025 conference paper PR #1569

v0.8.2

17 Oct 22:17

Choose a tag to compare

v0.8.2 (October 17, 2025)

Removals, Deprecations and Changes

  • Ophys: Low-level helper functions add_imaging_plane_to_nwbfile, add_image_segmentation_to_nwbfile, add_photon_series_to_nwbfile, and add_plane_segmentation_to_nwbfile are deprecated and will be removed on or after March 2026. These are low-level functions that should not be called directly. PR #1552
  • Ophys: Passing pynwb.device.Device objects in metadata['Ophys']['Device'] to add_devices_to_nwbfile now issues a FutureWarning and is deprecated. This feature will be removed on or after March 2026. Pass device definitions as dictionaries instead (e.g., { "name": "Microscope" }). . PR #1513
  • Ecephys: The iterator_opts parameter is deprecated across all ecephys interfaces and will be removed on or after March 2026. Use iterator_options instead for consistent naming with ophys and behavior interfaces. PR #1546
  • Ophys: The iterator_type='v1' option for imaging data is deprecated and will be removed on or after March 2026. Use iterator_type='v2'or None (no chunking). This aligns ophys with ecephys, which only supports 'v2' and None. PR #1546
  • Bump minimal python-neo version to 0.14.3 PR #1550
  • Add macos-15 intel to CI testing matrix. We no longer support macos 13 and 14 with intel as there is no free runner available PR #1555
  • Ophys: Passing rate in trace metadata (e.g., metadata['Ophys']['Fluorescence']['PlaneSegmentation']['raw']['rate']) is deprecated and will be removed on or after March 2026. PR #1543

Bug Fixes

  • Capped h5py to <3.15 for macOS to prevent compatibility issues PR #1551
  • Temporary ceiling on hdmf-zarr (<0.12) to retain compatibility with existing code that uses read_io.file.store PR #1547
  • Fixed append_on_disk_nwbfile=True raising ValueError when file exists. Replaced make_or_load_nwbfile with direct pynwb NWBHDF5IO usage in append mode and improved code organization with private helper methods _write_nwbfile and _append_nwbfile in both BaseDataInterface and NWBConverter PR #1540
  • Refactored _is_dataset_written_to_file to use path comparison with public source attribute instead of protected _file attribute, avoiding dependency on hdmf-zarr internal APIs. Now uses pathlib.Path.resolve() for robust cross-platform path comparison. PR #1545
  • Enhanced SpikeGLX interface to set channel_name property showing all available streams (e.g., "AP0,LF0") for multi-stream deduplication, properly handling cases where AP and LF bands record from the same physical electrodes. PR #1553

Features

  • Support NIDQ analog streams in OpenEphysBinaryAnalogInterface PR #1503
  • Added MiniscopeImagingInterface for single Miniscope acquisition folders with automatic session_start_time extraction, improved docstrings, and comprehensive documentation showing MiniscopeConverter for multi-acquisition data, MiniscopeImagingInterface for individual folders, and ConverterPipe for custom multi-acquisition workflows PR #1524
  • Added iterator_options parameter to InternalVideoInterface to support tqdm progress bars and custom chunking options during video write operations. PR #1546

Improvements

  • Refactored electrode table infrastructure to add electrode_name column for probe-based recordings. The electrode table now uses (group_name, electrode_name, channel_name) as the unique identifier, enabling channel-specific metadata storage while electrode_name indicates which channels share physical electrodes. This supports multi-band recordings (e.g., AP/LF in Neuropixels) and multi-probe setups. PR #1548
  • Refactored _add_fluorescence_traces_to_nwbfile and _create_roi_table_region to remove deepcopy(metadata) and dict_deep_update patterns. Now extracts DfOverF and Fluorescence metadata separately from user or defaults, checks user metadata first before falling back to defaults for each trace, and passes unmodified metadata to dependencies without mutation. PR #1543
  • Aligned iterator type support across ecephys and ophys modules. Both now support only iterator_type='v2' and None. Fixed misleading error message in spikeinterface that incorrectly mentioned 'v1' support. PR #1546
  • Standardized iterator parameter naming across the codebase by introducing iterator_options as the preferred parameter name. Updated BaseRecordingExtractorInterface and add_recording_to_nwbfile to accept both iterator_options (new) and iterator_opts (deprecated) for backward compatibility. Improved documentation with comprehensive iterator options descriptions including tqdm progress bar support. PR #1546
  • Refactored add_imaging_plane_to_nwbfile to avoid dict_deep_update and metadata mutation, applying targeted defaults only for required fields at point of object creation (issue #1511) PR #1530
  • Refactored add_devices_to_nwbfile and add_imaging_plane_to_nwbfile to avoid dict_deep_update and metadata mutation, using defaults directly from single source of truth _get_default_ophys_metadata() PR #1527
  • Refactored ecephys metadata functions to use a single source of truth pattern, eliminating hardcoded duplications and improving maintainability PR #1522
  • Refactored ophys metadata functions to use a single source of truth pattern, preventing accidental mutation of global state and improving maintainability PR #1521
  • Add ruff-rule to detect non-pep585 annotation PR #1520
  • Replaced deprecated frame_to_time() method calls with get_timestamps() in optical physiology interfaces PR #1513
  • Added SpikeGLXNIDQ interface to conversion gallery with documentation on how different channel types (XA, MA, MD, XD) are converted to NWB PR #1505
  • Updated TDTFiberPhotometryInterface to support the latest version of ndx-fiber-photometry (v0.2.1) PR #1430
  • Updated ophys roiextractors tests to use only public APIs instead of accessing private attributes, improving compatibility with roiextractors segmentation model changes PR #1526
  • Refactored add_photon_series_to_nwbfile to remove get_nwb_imaging_metadata middleman and inline extractor derivation. Now only derives dimension from imaging extractor when user doesn't provide it, ensuring user-provided values are always respected. Passes unmodified metadata to dependencies without mutation. PR #1537
  • Refactored _add_plane_segmentation to remove deepcopy(metadata) and dict_deep_update patterns. Now extracts user plane segmentation metadata directly, fills missing required fields with defaults, and passes unmodified metadata to dependencies without mutation. Tracks user intent to provide clear error messages when custom plane segmentation names are not found. PR #1539
  • Refactored add_summary_images_to_nwbfile to remove deepcopy(metadata) and dict_deep_update patterns. Now uses _get_default_ophys_metadata() directly and extracts SegmentationImages metadata from user or uses defaults. Changed error handling from AssertionError to ValueError for invalid plane segmentation names. PR #1540

v0.8.1

16 Sep 18:02

Choose a tag to compare

v0.8.1 (September 16, 2025)

Removals, Deprecations and Changes

  • Changed automatic_dandi_upload() function parameter from staging: bool = False to sandbox: bool = False to align with DANDI Archive's server name change from "staging" to "sandbox". The old staging parameter is deprecated and will be removed in February 2026. PR #1437

Bug Fixes

  • Fixed write/add_sorting_analyzer_to_nwbfile docstring for requirements of the recording object PR #1506
  • Fixed deprecated SpikeInterface extractor imports to use spikeinterface.extractors.extractor_classes and updated docstring references to wrapper functions for compatibility with SpikeInterface changes PR #1490
  • Fixed documentation version switcher not properly distinguishing between stable and development versions PR #1483
  • Fixed sleap-io compatibility by updating to version 0.5.2 and adjusting import path for append_nwb_data function PR #1496

Features

  • Added SortedSpikeGLXConverter for handling multiple SpikeGLX streams with their corresponding sorting data, enabling proper unit-to-electrode linkage across multiple probes PR #1449
  • Added EDFAnalogInterface for converting non-electrode/analog channels from EDF files to NWB TimeSeries and a conversion gallery example showing how to combine EDFRecordingInterface and EDFAnalogInterface to handle mixed EDF files. PR #1487

Improvements

  • Added test to mimic bad channel removal in write_sorting_analyzer_to_nwbfile PR #1506
  • Enhanced SortedRecordingConverter documentation with detailed explanation of the timing problem it solves when linking units to electrodes, and moved electrode linking guide from user guide to how-to section PR #1479
  • Use attestation instead of token for publish action PR #1497

v0.8.0

22 Aug 02:56

Choose a tag to compare

v0.8.0 (August 21, 2025)

Removals, Deprecations and Changes

  • Segmentation writing pipeline no longer supports writing segmentation data without image or pixel masks PR #1400
  • Removed deprecated arguments: load_sync_channel in SpikeGLXNIDQInterface initialization and start_time, write_as and write_electrical_series in SpikeGLXNIDQInterface.add_to_nwbfile(). PR #1378
  • Removed starting_time as an argument from the recording interfaces add_to_nwbfile method and the stand alone add_recording_segment utility PR #1378
  • Deprecated the container_name parameter in ImageInterface.add_to_nwbfile() method. Use metadata_key in __init__ instead. This parameter will be removed on or after February 2026. PR #1439
  • Removed deprecated type aliases FolderPathType, FilePath, OptionalFilePath, and OptionalFolderPathType from utils. Use pydantic.DirectoryPath, pydantic.FilePath, or their optional variants directly. PR #1442

Bug Fixes

  • Fixed SpikeInterface physical unit properties being incorrectly included in electrodes table PR #1406
  • Fixed deprecated ROI extractor method calls: replaced get_image_size() with get_frame_shape(), get_num_frames() with get_num_samples(), and frame_slice() with slice_samples() in ophys interfaces PR #1443
  • Fixed logic bug in get_package function where boolean check was incorrectly compared to None PR #1477
  • Fixed docstring typos: corrected "default: Falsee" to "default: False" in multiple datainterface files PR #1472

Features

  • Segmentation interfaces now support roi ids that are strings PR #1390
  • Added InscopixImagingInterface for converting Inscopix imaging data. PR #1361
  • Added InscopixSegmentationInterface for converting Inscopix segmentation data. PR #1364
  • Added AxonRecordingInterface for converting extracellular electrophysiology data from Axon Binary Format (ABF) files with automatic session start time extraction PR #1413
  • Added FemtonicsImagingInterfacefor converting Femtonics imaging data. PR #1408
  • Added get_available_subjects static method to DeepLabCutInterface for extracting subject names from DeepLabCut output files PR #1425
  • Added MockPoseEstimationInterface for testing pose estimation workflows with deterministic Lissajous figure motion patterns PR #1435
  • Added IntanAnalogInterface for converting non-amplifier analog streams from Intan data files, supporting RHD2000 auxiliary input channels, RHD2000 supply voltage channels, USB board ADC input channels, and DC amplifier channels (RHS system only) PR #1440
  • Added metadata_key parameter to ImageInterface to allow custom naming and organization of image containers in NWB files. This enables multiple image interfaces to coexist with distinct container names. PR #1439
  • Added per-image metadata support to ImageInterface allowing users to specify individual resolution (pixels/cm), name and description for each image through metadata structure. PR #1441
  • Added rename_unit_ids() method to BaseSortingExtractorInterface for dictionary-based unit ID renaming, enabling clean handling of multiple sorting interfaces with overlapping unit IDs PR #1451
  • Added support for setting ProbeGroup objects in BaseRecordingExtractorInterface.set_probe() methodPR #1464
  • Added comprehensive tests for set_probe method in BaseRecordingExtractorInterface to verify probe and probe group functionality with proper electrode group organization in NWB files PR #1464
  • Added PyData Sphinx Theme version switcher to documentation navbar, enabling users to switch between stable (latest release) and main (development) versions PR #1478

Improvements

  • Added comprehensive FFmpeg video conversion how-to guide for converting bespoke video formats to DANDI-compatible formats PR #1426
  • Refactored Femtonics Imaging Interface session, munit and channel selection logic. PR #1433
  • Implemented PEP 735 dependency groups for test, docs, and dev dependencies PR #1434
  • Expanded test coverage for CaimanSegmentationInterface to include all stub files and added quality metrics properties (r_values, SNR_comp, cnn_preds) to the PlaneSegmentation table as segmentation_extractor_properties PR #1436
  • Added comprehensive how-to guide "Adding Multiple Sorting Interfaces" documenting approaches for handling multiple spike sorting outputs, including unit renaming strategies, separate processing tables, and adding custom properties for provenance tracking PR #1451 PR #1473
  • The copy button no longer copies the prompt (>>>) in the conversion gallery PR 1467

v0.7.5

12 Jun 04:08

Choose a tag to compare

v0.7.5 (June 11, 2025)

Removals, Deprecations and Changes

  • Removed automatic subject addition for DeepLabCutInterface. A link is now created only if the skeleton metadata matches the subject ID. PR #1362

Bug Fixes

  • Fix a bug for avoiding loading the sync stream in SpikeGLXConverterPipe PR #1373
  • Fixed a bug in the BrukerTiffSinglePlaneImagingInterface where the criteria to identify frames belonging to a specific stream relied on the file name instead of the stream name. PR #1375
  • Fixed a bug with the Docker dev build PR #1376

Features

  • Added apply_global_compression method to BackendConfiguration classes to apply compression settings globally across all datasets in a backend configuration. This method allows users to easily configure compression options for all datasets at once rather than setting them individually. PR #1379
  • Extra optional kwargs to BlackrockRecordingInterface and BlackrockSortingInterface for finer control of the neo reader PR #1290

Improvements

  • Add a how to documentation for adding extracellular electrophysiology metadata PR #1311
  • Improved the docker dailies PR #1372
  • Re-enable and improve conversion gallery testing PR #1380
  • Implemented cross-OS caches in GitHub Actions load-data action to enable cache sharing between Ubuntu, Windows, and macOS runners, reducing cache storage usage and improving CI efficiency PR #1385
  • MedPC format is now tested on the conversion gallery PR #1382
  • Added conversion gallery testing to daily workflows PR #1387
  • Added full metadata support for PoseEstimation container in DeepLabCutInterface PR #1392.

v0.7.4

23 May 17:59

Choose a tag to compare

v0.7.4 (May 23, 2025)

Removals, Deprecations and Changes

  • Drop support for python 3.9 PR #1313
  • Updated type hints to take advantage of the | operator PR #1316
  • Deprecated the following ScanImage interfaces: ScanImageMultiFileImagingInterface, ScanImageMultiPlaneImagingInterface, ScanImageMultiPlaneMultiFileImagingInterface, ScanImageSinglePlaneImagingInterface, and ScanImageSinglePlaneMultiFileImagingInterface. These interfaces will be removed in or after October 2025. Use ScanImageImagingInterface for all those cases instead. PR #1330 PR #1331
  • Set minimum version requirement for ndx-pose to 0.2.0 PR #1322
  • Set minimum version for roiextractors as 0.5.13 PR #1339
  • ndx-events is now a required dependency by spikeglx PR #1353

Bug Fixes

  • Fix AudioInterface to correctly handle WAV filenames with multiple dots by validating only the last suffix. PR #1327
  • Fix a stubbing bug in SpikeGLXNIDQInterface and OpenEphysBinaryAnalogInterface PR #1360

Features

  • Add metadata support for DeepLabCutInterface. PR #1319
  • AudioInterface Adding support for IEEE float in WAV format PR #1325
  • Added a RecordingInterface for WhiteMatter ephys data PR #1297 PR #1333
  • Improved ScanImageInteface to support both single and multi-file data PR #1330
  • DeepDict now behaves as a python dict when printed in notebooks PR #1351
  • Enable chunking for InternalVideoInterface PR #1338
  • ImageSeries and TwoPhotonSeries now are chunked by default even if the data is passed as a plain array PR #1338
  • Added support for 'I;16' mode in ImageInterface. This mode is mapped to GrayscaleImage in NWB PR #1365

Improvements

  • Make metadata optional in NWBConverter.add_to_nwbfile PR #1309
  • Add installation instructions on the documentation for neuroconv PR #1344
  • Separate dailies and dev-dailies workflows PR #1343
  • Added support for renaming Skeletons with DeepLabCutInterface PR #1359
  • Updated default PoseEstimationSeries names in DeepLabCutInterface PR #1363
  • Testing dependencies include only testing packages (.e.g pytest, pytest-cov) PR #1357
  • Testing modalities now run in their separated environment to avoid sequence contamination of dependencies PR #1357

v0.7.3

25 Apr 22:00

Choose a tag to compare

v0.7.3 (April 25, 2025)

Deprecations and Changes

  • Release pydantic ceiling PR #1273
  • write_scaled behavior on add_electrical_series_to_nwbfile is deprecated and will be removed in or after October 2025 PR #1292
  • add_electrical_series_to_nwbfile now requires both gain and offsets to write scaling factor for voltage conversion when writing to NWB PR #1292
  • add_electrical_series_to_nwbfile, add_units_table_to_nwbfile and add_electrodes_to_nwbfile and add_electrode_groups_to_nwbfile are becoming private methods. Use add_recording_to_nwbfile, add_sorting_to_nwbfile and add_recording_metadata_to_nwbfile instead PR #1298
  • Set a new minimal dependency for hdmf to 4.0.0, pynwb to 3.0.0 and hdmf-zarr 0.11 PR #1303

Bug Fixes

  • Fixed import errors in main modules caused by non-lazy dependencies. Added tests to prevent regressions. PR #1305

Features

  • Added a new add_recording_as_time_series_to_nwbfile function to add recording extractors from SpikeInterface as recording extractors to an nwbfile as time series PR #1296
  • Added OpenEphysBinaryAnalogInterface for converting OpenEphys analog channels data similar to the SpikeGLX NIDQ interface PR #1237
  • Expose iterative write options on BaseImagingExtractorInterface PR #1307

Improvements

  • Add documentation for conversion options with NWBConverter PR #1301
  • Support roiextractors 0.5.12 PR #1306
  • configure_backend is now exposed to be imported as from neuroconv.tools import configure_and_write_nwbfile PR #1287
  • Added metadata section to video conversion gallery PR #1276
  • DeepLabCutInterface now calculates whether the timestamps come from a constant sampling rate and adds that instead if detected PR #1293
  • Fixed a bug in the extractor interfaces where segmentation and sorting interfaces were initialized twice PR #1288
  • Support python 3.13 PR #1117
  • Added how to documentation on how to set a probe to a recording interfaces PR #1300
  • Fix API docs for OpenEphysRecordingInterface PR #1302

v0.7.2

04 Apr 18:33

Choose a tag to compare

v0.7.2 (April 4, 2025)

Deprecations and Changes

  • Split VideoInterface (now deprecated) into ExternalVideoInterface and InternalVideoInterface PR #1251 PR #1256 #1278
  • output_filepath deprecated on configure_and_write_nwbfile use nwbfile_path instead PR #1270
  • Temporary set a ceiling on pydantic <2.11 PR #1275

Bug Fixes

  • Fixed a check in _configure_backend on neurodata_object ndx_events.Events to work only when ndx-events==0.2.0 is used. PR #998
  • Added an append_on_disk_nwbfile argumento to run_conversion. This changes the semantics of the overwrite parameter from assuming append mode when a file exists to a more conventional safe writing mode where confirmation is required to overwrite an existing file. Append mode now is controlled with the append_on_disk_nwbfile. #1256

Features

  • Added SortedRecordingConverter to convert sorted recordings to NWB with correct metadata mapping between units and electrodes PR #1132
  • Support roiextractors 0.5.11 PR #1236
  • Added stub_test option to TDTFiberPhotometryInterface PR #1242
  • Added ThorImagingInterface for Thor TIFF files with OME metadata PR #1238
  • Added always_write_timestamps parameter to ExternalVideoInterface and InternalVideoInterface to force writing timestamps even when they are regular #1279

Improvements

  • Filter out warnings for missing timezone information in continuous integration PR #1240
  • FilePathType is deprecated, use FilePath from pydantic instead PR #1239
  • Change np.NAN to np.nan to support numpy 2.0 PR #1245
  • Re activate Plexon tests on Mac. Testing this for a while as they are unreliable tests #1195
  • Testing: only run tests for oldest and newest versions of python #1249
  • Improve error display on scan image interfaces PR #1246
  • Added concurrency to live-service-testing GitHub Actions workflow to prevent simultaneous write to the dandiset. #1252
  • Updated GitHub Actions workflows to use Environment Files instead of the deprecated set-output command #1259
  • Propagate verbose parameter from Converters to Interfaces #1253
  • Replace uses of scipy load_mat and h5storage loadmat with pymat_reader read_mat in CellExplorerSortingInterface #1254
  • Added camera device support for ExternalVideoInterface and InternalVideoInterface: PR #1282

v0.7.1

05 Mar 14:53

Choose a tag to compare

v0.7.1 (March 5, 2025)

Deprecations and Changes

Bug Fixes

  • Fix parsing of group_names in tools.spikeinterface PR #1234

Features

Improvements

  • Testing suite now supports numpy 2.0. PR #1235