Skip to content

Releases: NeurodataWithoutBorders/pynwb

1.5.0

19 May 18:30
1.5.0
49ad17a
Compare
Choose a tag to compare

New features:

  • NWBFile.add_scratch(...) and ScratchData.__init__(...) now accept scalar data in addition to the currently
    accepted types. @rly (#1309)
  • Support pathlib.Path paths when opening files with NWBHDF5IO. @dsleiter (#1314)
  • Use HDMF 2.5.1. See the HDMF release notes for details.
  • Support driver='ros3' in NWBHDF5IO for streaming NWB files directly from s3. @bendichter (#1331)
  • Update documentation, CI GitHub processes. @oruebel @yarikoptic, @bendichter, @TomDonoghue, @rly
    (#1311, #1336, #1351, #1352, #1345, #1340, #1327)
  • Set default neurodata_type_inc for NWBGroupSpec, NWBDatasetSpec. @rly (#1295)
  • Block usage of h5py 3+ for now. h5py>=2.9, <3 is supported. (#1355)
  • Fix incompatibility issue with downstream github-release tool used to deploy releases to GitHub. @rly (#1245)
  • Fix issue with Sphinx gallery. @rly
  • Add citation information to documentation and support for duecredit tool. @rly
  • Remove use of ColoredTestRunner for more readable verbose test output. @rly
  • Add support for nwb-schema 2.3.0. @rly (#1245, #1330)
    • Add optional waveforms column to the Units table.
    • Add optional strain field to Subject.
    • Add to DecompositionSeries an optional DynamicTableRegion called source_channels.
    • Add to ImageSeries an optional link to Device.
    • Add optional continuity field to TimeSeries.
    • Add optional filtering attribute to ElectricalSeries.
    • Clarify documentation for electrode impedance and filtering.
    • Set the stimulus_description for IZeroCurrentClamp to have the fixed value "N/A".
    • See https://nwb-schema.readthedocs.io/en/latest/format_release_notes.html for full schema release notes.
  • Add support for HDMF 2.5.5 and upgrade HDMF requirement from 2.1.0 to 2.5.5. @rly @ajtritt
    (#1325, #1355, #1360, #1245, #1287). This includes several relevant features and bug fixes, including:
    • Fix issue where dependencies of included types were not being loaded in namespaces / extensions.
    • Add HDF5IO.get_namespaces(path=path, file=file) method which returns a dict of namespace name mapped to the
      namespace version (the largest one if there are multiple) for each namespace cached in the given HDF5 file.
    • Add methods for automatic creation of MultiContainerInterface classes.
    • Add ability to specify a custom class for new columns to a DynamicTable that are not VectorData,
      DynamicTableRegion, or VocabData using DynamicTable.__columns__ or DynamicTable.add_column(...).
    • Add support for creating and specifying multi-index columns in a DynamicTable using add_column(...).
    • Add capability to add a row to a column after IO.
    • Add method AbstractContainer.get_fields_conf.
    • Add functionality for storing external resource references.
    • Add method hdmf.utils.get_docval_macro to get a tuple of the current values for a docval_macro, e.g., 'array_data'
      and 'scalar_data'.
    • DynamicTable can be automatically generated using get_class. Now the HDMF API can read files with extensions
      that contain a DynamicTable without needing to import the extension first.
    • Add EnumData type for storing data that comes from a fixed set of values.
    • Add AlignedDynamicTable type which defines a DynamicTable that supports storing a collection of subtables.
    • Allow np.bool_ as a valid bool dtype when validating.
    • See https://github.com/hdmf-dev/hdmf/releases for full HDMF release notes.

1.4.0

13 Aug 16:50
1.4.0
e37425d
Compare
Choose a tag to compare

Users can now add/remove containers from a written NWB file and export the modified NWBFile to a new file path.
@rly (#1280)

Internal improvements:

  • Update requirements to use HDMF 2.1.0. @rly (#1256)
  • Start FAQ section in documentation. @rly (#1249)
  • Improve deprecation warnings. @rly (#1261)
  • Update CI to test Python 3.8, update requirements. @rly (#1267, #1275)
  • Make use of MultiContainerInterface and LabelledDict that have been moved to HDMF. @bendichter @rly (#1260)

Bug fixes:

  • For ImageSeries, add check if external_file is provided without starting_frame in __init__. @rly (#1264)
  • Improve docstrings for TimeSeries.data and for the electrode table. @rly (#1271, #1272)
  • Fix Azure Pipelines configuration. @rly (#1281)

1.3.3

01 Jul 00:03
1.3.3
0a0d6b9
Compare
Choose a tag to compare

Internal improvements:

  • Update requirements to use HDMF 1.6.4. @rly (#1256)

Bug fixes:

  • Fix writing optional args to electrodes table. @rly (#1246)
  • Fix missing method UnitsMap.get_nwb_file. @rly (#1227)

1.3.2

02 Jun 07:35
1.3.2
b1e4697
Compare
Choose a tag to compare

Bug fixes:

  • Add support for nwb-schema 2.2.5. @rly (#1243)
    • This schema version fixes incorrect dims and shape for ImagingPlane.origin_coords and ImagingPlane.grid_spacing,
      and fixes incorrect dims for TwoPhotonSeries.field_of_view.

1.3.1

28 May 18:30
1.3.1
c124687
Compare
Choose a tag to compare

Bug fixes:

Internal improvements:

  • Update CI to use supported MacOS version. @rly (#1211)
  • Clean up tests to remove conversion warnings and use keyword args. @rly (#1202)
  • Fix flake8 errors. @rly (#1235)
  • Add changelog. @rly (#1215)
  • Update release process with notes about coordinating with nwb-schema. @rly (#1214)
  • Inform which unit value is actually overwritten. @yarikoptic (#1219)
  • Do not print out logging.DEBUG statements to stdout for test.py. @rly (#1240)
  • Add support for nwb-schema 2.2.4. @rly (#1213)
    • Make ImagingPlane.imaging_rate optional. This moves the imaging_rate argument down the list of constructor for ImagingPlane.__init__. This will break existing code that calls the constructor of ImagingPlane with at least 6 positional arguments, such that one positional argument matches imaging_rate.

1.3.0

04 Mar 21:26
1.3.0
929972d
Compare
Choose a tag to compare

New features:

Internal improvements:

  • Add nightly testing of validation CLI. @t-b, @rly (#1164, #1195, #1197)
  • Treat ipython notebooks as binary in git. @t-b (#1168)
  • Use proper file removal in tests. @t-b (#1165)
  • Use hdmf-docutils instead of nwb-docutils for documentation. @jcfr (#1176)
  • Run minimum requirements testing n Python 3.6. @rly (#1194)

Bug fixes:

  • Fix API documentation. @bendichter (#1159)
  • Fix unit testing output. @rly (#1158)
  • Fix copying files with Subject. @rly (#1171)
  • Add "unit" attribute back as an optional attribute in icephys classes. @rly (#1188)
  • Fix reported development status in setup.py. @rly (#1201)

1.2.1

23 Jan 02:25
1.2.1
30f6c4c
Compare
Choose a tag to compare

Bug fixes:

1.2.0

22 Jan 06:30
1.2.0
cec8971
Compare
Choose a tag to compare

Minor enhancements:

Bug fixes:

  • Fix versioneer reporting version. @rly (#1100)
  • Fix DynamicTable import after move to hdmf.common. @bendichter (#1103)
  • Fix handling of unmapped attributes. @rly (#1105)
  • Update tests and documentation to reflect new selection behavior of DynamicTable. @oruebel (#1106)
  • Fix reference images not being mapped in PlaneSegmentation. @rly (#1109)
  • Fix legacy import of ObjectMapper. @rly (#1124)
  • Fix extensions documentation typo: 'str' -> 'text'. @bendichter (#1132)
  • Revert "PatchClampSeries: Force sweep_number to uint64". @t-b (#1123)
  • Fix sphinx code to use latest sphinx. @rly (#1139)

1.1.2

16 Oct 01:23
1.1.2
f62f52e
Compare
Choose a tag to compare

Minor features:

  • Use latest HDMF 1.3.3. #1093 (@rly)
  • Expose HDMF export_spec utility function for use by extensions. #1092 (@rly)

Bug fixes:

  • Fix bug in writing SpikeEventSeries data or timestamps datasets with a DataChunkIterator. #1089 (@bendichter)

1.1.1

07 Oct 17:38
1.1.1
c6ec626
Compare
Choose a tag to compare

PyNWB 1.1.0 does not work with HDMF>=1.3. This release will work with HDMF>=1.3.2.

Minor improvements:

  • Support newly added channel-specific conversion factor for ElectricalSeries #1072 (@bendichter)
  • Move generic types out of PyNWB into hdmf-common. #1061 (@ajtritt)
  • Update documentation to reflect the above changes. #1078 (@rly)
  • Add new case to the iterative write tutorial. #1029 (@oruebel)
  • Improve CI. #1079 (@rly)
  • Pin the current latest version of HDMF to requirements for setup.py. #1083 (@rly)