Skip to content

Releases: hdmf-dev/hdmf

3.12.0

17 Jan 20:02
8892ba6
Compare
Choose a tag to compare

HDMF 3.12.0 (January 17, 2024)

Enhancements

  • Add Data.set_data_io(), which allows for setting a DataIO to a data object after-the-fact. @bendichter and @CodyCBakerPhD #1013
  • Added add_ref_termset, updated helper methods for HERD, revised add_ref to support validations prior to populating the tables
    and added add_ref_container. @mavaylon1 #968
  • Use stacklevel in most warnings. @rly #1027

Minor Improvements

  • Updated __gather_columns to ignore the order of bases when generating columns from the super class. @mavaylon1 #991
  • Update get_key to return all the keys if there are multiple within a HERD instance. @mavaylon1 #999
  • Improve HTML rendering of tables. @bendichter #998
  • Improved issue and PR templates. @rly #1004
  • Added check during validation for if a variable length dataset is empty. @bendichter, @oruebel #789

Bug fixes

  • Fixed issue with custom class generation when a spec has a name. @rly #1006
  • Fixed issue with usage of deprecated ruamel.yaml.safe_load in src/hdmf/testing/validate_spec.py. @rly #1008
  • Fixed issue where ElementIdentifiers data could be set to non-integer values. @rly #1009
  • Fixed issue where string datasets/attributes with isodatetime-formatted values failed validation against a text spec. @rly #1026

3.11.0

30 Oct 18:17
3.11.0
318ccd1
Compare
Choose a tag to compare

HDMF 3.11.0 (October 30, 2023)

Enhancements

  • Added target_tables attribute to DynamicTable to allow users to specify the target table of any predefined
    DynamicTableRegion columns of a DynamicTable subclass. @rly #971
  • Updated TermSet to include _repr_html_ for easy to read notebook representation. @mavaylon1 #967

Minor improvements

  • Set up GitHub dependabot to check for updates to GitHub Actions. @rly #977
  • Simplify tox configuration. @rly #988
  • Add testing for Python 3.12. @rly #988

Bug fixes

  • Updated custom class generation to handle specs with fixed values and required names. @rly #800
  • Fixed custom class generation of DynamicTable subtypes to set attributes corresponding to column names for correct write. @rly #800
  • Added a .mailmap file to correct mapping of names/emails in git logs. @oruebel #976

3.10.0

04 Oct 03:00
3.10.0
31552fe
Compare
Choose a tag to compare

HDMF 3.10.0 (October 3, 2023)

Since version 3.9.1 should have been released as 3.10.0 but failed to release on PyPI and conda-forge, this release
will increase the minor version number to 3.10.0. See the 3.9.1 release notes below for new features.

Bug fixes

  • Fixed issue with testing and deployment of releases. @rly #957

HDMF 3.9.1 (September 29, 2023)

Enhancements

  • Updated TermSet to be used with TermSetWrapper, allowing for general use of validation for datasets and attributes. This also brings updates to HERD integration and updates on write to easily add references for wrapped datasets/attributes. @mavaylon1 #950

Minor improvements

  • Removed warning when namespaces are loaded and the attribute marking where the specs are cached is missing. @bendichter #926

Bug fixes

  • Fixed bug allowing DynamicTable to be constructed with empty id column when initializing all columns via AbstractDataChunkIterator objects. @oruebel #953

3.9.0

18 Aug 20:51
61f0731
Compare
Choose a tag to compare

HDMF 3.9.0 (August 25, 2023)

New features and minor improvements

  • Increased raw data chunk cache size for reading HDF5 files from 1 MiB to 32 MiB. @bendichter, @rly #925
  • Increased default chunk size for GenericDataChunkIterator from 1 MB to 10 MB. @bendichter, @rly #925
  • Added the magic __reduce__ method as well as two private semi-abstract helper methods to enable pickling of the GenericDataChunkIterator. @CodyCBakerPhD #924
  • Updated add_ref_termset to add all instances of TermSet within a given root container. @mavaylon1 #935
  • Added Dynamic Enumerations and Schemasheets support to TermSet. @mavaylon1 #923
  • Updated HERD to support user defined file name for the HERD zip file. @mavaylon1 #941
  • Added method Container.set_data_io, which wraps an existing data field in a DataIO. @bendichter #938

3.8.1

25 Jul 05:04
3.8.1
64a444f
Compare
Choose a tag to compare

HDMF 3.8.1 (July 25, 2023)

Bug fixes

  • Fixed error when calling HDF5IO.read twice. @rly #915

3.8.0

21 Jul 22:15
ff30e12
Compare
Choose a tag to compare

HDMF 3.8.0 (July 21,2023)

New features and minor improvements

  • Added the ability to write ExternalResources if the path is provided and the container has a linked instance of ExternalResources. @mavaylon1 #910

Bug fixes

  • Fixed bug on add_ref_term_set in which attributes that were not subscribtable returned an error. @mavaylon1 #909

3.7.0

10 Jul 23:51
2008af7
Compare
Choose a tag to compare

HDMF 3.7.0 (July 10, 2023)
New features and minor improvements
Updated ExternalResources to have EntityKeyTable with updated tests/documentation and minor bug fix to ObjectKeyTable. @mavaylon1 #872
Added abstract static method HDMFIO.can_read() and concrete static method HDF5IO.can_read(). @bendichter #875
Added warning for DynamicTableRegion links that are not added to the same parent as the original container object. @mavaylon1 #891
Added the TermSet class along with integrated validation methods for any child of AbstractContainer, e.g., VectorData, Data, DynamicTable. @mavaylon1 #880
Added AbstractContainer.read_io property to be able to retrieve the HDMFIO object used for reading from the container and to ensure the I/O object used for reading is not garbage collected before the container is being deleted. @bendichter @oruebel #882
Allow for datetime.date to be used instead of datetime.datetime. @bendichter #874
Updated HDMFIO and HDF5IO to support ExternalResources. @mavaylon1 #895
Dropped Python 3.7 support. @rly #897
Added HTML repr to Container objects which displays an interactive tree of a container's values and children in a Jupyter notebook and other HTML representations. @edeno #883
Update software_process.rst with the correct external links. @mavaylon1 #900

3.6.1

18 May 23:24
038557e
Compare
Choose a tag to compare

HMDF 3.6.1 (May 18, 2023)
Bug fixes
Fixed compatibility with hdmf_zarr for converting string arrays from Zarr to HDF5 by adding logic to determine the dtype for object arrays. @oruebel #866

3.6.0

12 May 02:24
8a3fc19
Compare
Choose a tag to compare

HDMF 3.6.0 (May 12, 2023)

New features and minor improvements

  • Updated ExternalResources to have FileTable and new methods to query data. the ResourceTable has been removed along with methods relating to Resource. @mavaylon #850
  • Updated hdmf-common-schema version to 1.6.0. @mavaylon #850
  • Added testing of HDMF-Zarr on PR and nightly. @rly #859
  • Replaced setup.py with pyproject.toml. @rly #844
  • Use ruff instead of flake8. @rly #844
  • Replaced versioneer with setuptools_scm for versioning. @rly #844
  • Now recommending developers use pre-commit. @rly #844

Bug fixes

  • Export cached specs that are loaded in source IO manager but not in export IO manager. @rly
    #855
  • Fixed issue with passing an S3 URL for source in the constructor of HDMFIO @rly
    #853

Documentation and tutorial enhancements:

  • Updated ExternalResources how to tutorial to include the new features. @mavaylon #850

3.5.5

13 Apr 23:53
3.5.5
963aea7
Compare
Choose a tag to compare

HDMF 3.5.5 (April 13, 2023)

Bug fixes

  • Fixed error during export where an external link to the same file was created in some situations.
    @rly #847
  • Removed unused, deprecated codecov package from dev installation requirements. @rly
    #849
  • Fixed export with 'link_data': False' not copying datasets in some situations. @rly
    #848