Logo


Got HDF5?

Visualization of an HDF5 file
Curious to see what’s inside? Try this
(This free tool will show you the contents of an HDF5 file in your browser, without any data leaving your computer! For more info, check out H5Web.)

Software Changes from Release to Release in HDF5 1.12

For a description of the major new features that were introduced, please see New Features in HDF5 Release 1.12.

This page provides information on the changes that a maintenance developer needs to be aware of between successive releases of HDF5, such as:

Note that bug fixes and performance enhancements in the C library are automatically picked up by the C++, Fortran, and Java libraries.

The following information is included below.

The release notes also list changes made to the library, but these notes tend to be more at a more detail-oriented level. The release notes may include new features, bugs fixed, supported configuration features, platforms on which the library has been tested, and known problems. The release note files are listed below and can be found at the top level of the HDF5 source code tree in the release_docs directory.

   
Release Notes Technical notes regarding the current release of the HDF5 library (RELEASE.txt in the source code)
HISTORY-1_12.txt Release information for HDF5-1.12.0 through 1.12.1
HISTORY-1_10_0-1_12_0.txt Development history between the HDF5-1.10.0 and HDF5-1.12.0 releases
HISTORY-1_10.txt Release information for all HDF5-1.10 releases
HISTORY-1_8_0-1_10_0.txt Development history between the HDF5-1.8.0 and HDF5-1.10.0 releases
HISTORY-1_8.txt Release information for HDF5-1.8.0 through 1.8.21
HISTORY-1_0-1_8_0_rc3.txt Technical notes starting with HDF5-1.0.0 and ending with HDF5-1.8.0-rc3 (the state of the code prior to the HDF5-1.8.0 release)

Release 1.12.2 versus Release 1.12.1

This section lists interface-level changes and other user-visible changes in behavior in the transition from HDF5 Release 1.12.1 to Release 1.12.2.

New and Changed Functions, Classes, Subroutines, Wrappers, and Macros

The following are new C functions in this release:

Function Description
H5DSwith_new_ref Determines if new references are used with dimension scales
H5LTget_attribute_ullong Reads an unsigned long long attribute
H5LTset_attribute_ullong Create an unsigned long long attribute
H5VLobject_is_native Determines whether an object ID represents a native VOL connector object

See API Compatibility Reports for 1.12.2 for complete details.

Release 1.12.1 versus Release 1.12.0

This section lists interface-level changes and other user-visible changes in behavior in the transition from HDF5 Release 1.12.0 to Release 1.12.1.

The following are new C functions in this release:

Function Description
H5Pget_fapl_splitter Retrieves information for a splitter file access property list
H5Pset_fapl_splitter Sets the file access property list to use the splitter driver
H5Pget_file_locking Gets the file locking property values
H5Pset_file_locking Sets the file locking property values
H5get_free_list_sizes Gets the current size of the free lists used to manage memory
H5Ssel_iter_reset Resets a dataspace selection iterator back to an initial state
H5VLquery_optional Determines whether a VOL connector supports a particular optional callback operation

In the C++ Wrapper

The following C++ wrappers were added:

Function Description
DataSet::operator= Operator= for DataSet class
FileAccPropList::getFileLocking See H5Pget_file_locking for details
FileAccPropList::setFileLocking See H5Pset_file_locking for details

See the API Compatibility report for complete details.

Compatibility Notes and Report See API Compatibility Reports for 1.12 for information regarding compatibility with previous releases.

Release 1.12.1 versus Release 1.12.0

This section lists interface-level changes and other user-visible changes in behavior in the transition from HDF5 Release 1.10.6 to Release 1.12.0.

New Features

For a description of the major new features that were introduced, please see New Features in HDF5 Release 1.12.

New and Changed Functions, Classes, Subroutines, Wrappers, and Macros

In the C/Fortran Interface (main library)

Following are the new or changed APIs introduced in HDF5-1.12.0. Those introduced with a new feature list the specific new feature that they were added for.

| Function | Fortran | Description | | ———————-|————- | ——————————————– | | H5Fdelete | N | Deletes an HDF5 file | | H5Fget_fileno | Y | Retrieves a file’s file number that uniquely identifies the open file | | H5Fis_accessible | Y | Determines if a file can be opened with a given fapl | | | | | | H5Iiterate | N | Calls a callback for each member of the identifier type specified | | | | | | H5Lget_info
H5Lget_info1
H5Lget_info2 | Y (no change) | The function H5L_GET_INFO was moved to H5L_GET_INFO1, and H5L_GET_INFO2 was introduced. The macro H5L_GET_INFO was created that can be mapped to either H5L_GET_INFO1 or H5L_GET_INFO2. For HDF5-1.12, H5L_GET_INFO is mapped to H5L_GET_INFO2 by default. In earlier releases, H5L_GET_INFO is mapped to H5L_GET_INFO1. | | | | | | H5Lget_info_by_idx
H5Lget_info_by_idx1
H5Lget_info_by_idx2 | Y (no change) | The function H5L_GET_INFO_BY_IDX was moved to H5L_GET_INFO_BY_IDX1, and H5L_GET_INFO_BY_IDX2 was introduced. The macro H5L_GET_INFO_BY_IDX was created that can be mapped to either H5L_GET_INFO_BY_IDX1 or H5L_GET_INFO_BY_IDX2. For HDF5-1.12, H5L_GET_INFO_BY_IDX is mapped to H5L_GET_INFO_BY_IDX2 by default. In earlier releases, H5L_GET_INFO_BY_IDX is mapped to H5L_GET_INFO_BY_IDX1. | | H5Literate
H5Literate1
H5Literate2 | Y (no change) | The function H5L_ITERATE was moved to H5L_ITERATE1, and H5L_ITERATE2 was introduced. The macro H5L_ITERATE was created that can be mapped to either H5L_ITERATE1 or H5L_ITERATE2. For HDF5-1.12, H5L_ITERATE is mapped to H5L_ITERATE2 by default. In earlier releases, H5L_ITERATE is mapped to H5L_ITERATE1. | | H5Literate_by_name
H5Literate_by_name1
H5Literate_by_name2 | Y (no change) | The function H5L_ITERATE_BY_NAME was moved to H5L_ITERATE_BY_NAME1, and H5L_ITERATE_BY_NAME2 was introduced. The macro H5L_ITERATE_BY_NAME was created that can be mapped to either H5L_ITERATE_BY_NAME1 or H5L_ITERATE_BY_NAME2. For HDF5-1.12, H5L_ITERATE_BY_NAME is mapped to H5L_ITERATE_BY_NAME2 by default. In earlier releases, H5L_ITERATE_BY_NAME is mapped to H5L_ITERATE_BY_NAME1. | | H5Lvisit
H5Lvisit1
H5Lvisit2 | N | The function H5L_VISIT was moved to H5L_VISIT1, and H5L_VISIT2 was introduced. The macro H5L_VISIT was created that can be mapped to either H5L_VISIT1 or H5L_VISIT2. For HDF5-1.12, H5L_VISIT is mapped to H5L_VISIT2 by default. In earlier releases, H5L_VISIT is mapped to H5L_VISIT1. | | H5Lvisit_by_name
H5Lvisit_by_name1
H5Lvisit_by_name2 | N | The function H5L_VISIT_BY_NAME was moved to H5L_VISIT_BY_NAME1, and H5L_VISIT_BY_NAME2 was introduced. The macro H5L_VISIT_BY_NAME was created that can be mapped to either H5L_VISIT_BY_NAME1 or H5L_VISIT_BY_NAME2. For HDF5-1.12, H5L_VISIT_BY_NAME is mapped to H5L_VISIT_BY_NAME2 by default. In earlier releases, H5L_VISIT_BY_NAME is mapped to H5L_VISIT_BY_NAME1. | | | | | | H5Oget_info
H5Oget_info3 | N/A | The function H5O_GET_INFO was replaced by the macro H5O_GET_INFO and the function H5O_GET_INFO3 was added. | | H5Oget_info_by_idx
H5Oget_info_by_idx3 | N/A | The function H5O_GET_INFO_BY_IDX was replaced by the macro H5O_GET_INFO_BY_IDX. The function H5O_GET_INFO_BY_IDX3 was added. | | H5Oget_info_by_name
H5Oget_info_by_name3 | N/A | The function H5O_GET_INFO_BY_NAME was replaced by the macro H5O_GET_INFO_BY_NAME. The function H5O_GET_INFO_BY_NAME3 was added. | | H5Oget_native_info | N | Retrieves the native file format information about an object | | H5Oget_native_info_by_idx | N | Retrieves native file format information about an object according to the order of an index | | H5Oget_native_info_by_name | N | Retrieves native file format information about an object given its name | | H5Oopen_by_token | Y | Opens an object in an HDF5 file using its VOL independent token | | H5Otoken_cmp | Y | Compares two VOL connector object tokens | | H5Otoken_from_str | N | Deserializes a string into a connector object token | | H5Otoken_to_str | N | Serializes a connector’s object token into a string | | H5Ovisit H5Ovisit3 | N/A | The function H5O_VISIT was replaced by the macro H5O_VISIT and the function H5O_VISIT3 was added | | H5Ovisit_by_name H5Ovisit_by_name3 | N/A | The function H5O_VISIT_BY_NAME was replaced by the macro H5O_VISIT_BY_NAME, and the function H5O_VISIT_BY_NAME3 was added. | | | | | | H5Pencode H5Pencode1 H5Pencode2 | N | Encodes properties on a property list into a buffer
The previous function was renamed to H5P_ENCODE1 and deprecated, and the macro H5P_ENCODE was introduced. | | H5Pget_vol_id | Y | Returns the identifier of the current VOL connector | | H5Pget_vol_info | N | Returns a copy of the VOL information for a connector | | H5Pset_vol | Y | Set the file VOL connector for a file access property list | | | | | | H5Rcopy | N | Copies an existing reference | | H5Rcreate_attr | N | Creates an attribute reference | | H5Rcreate_object | N | Creates an object reference | | H5Rcreate_region | N | Creates a region reference | | H5Rdestroy | N | Closes a reference | | H5Requal | N | Determines whether two references are equal | | H5Rget_attr_name | N | Retrieves the attribute name for a referenced object | | H5Rget_file_name | N | Retrieves the file name for a referenced object | | H5Rget_obj_name | N | Retrieves the object name for a referenced object | | H5Rget_obj_type3 | N | Retrieves the type of object that an object reference points to | | H5Rget_type | N | Retrieves the type of reference | | H5Ropen_attr | N | Opens the referenced HDF5 attribute | | H5Ropen_object | N | Opens the referenced HDF5 object | | H5Ropen_region | N | Sets up a dataspace and selection as specified by a region reference | | | | | | H5Scombine_hyperslab | N | Performs an operation on a hyperslab and an existing selection and returns the resulting selection | | H5Scombine_select | N | Combines two hyperslab selections with an operation, returning a dataspace with the resulting selection | | H5Sencode H5Sencode1 H5Sencode2 | N/A | Encodes a dataspace object description into a binary buffer
The function H5S_ENCODE was renamed to H5S_ENCODE1 and deprecated in this release. The macro H5S_ENCODE and the function H5S_ENCODE2 were introduced in this release. | | H5Smodify_select | N | Refines a hyperslab selection with an operation using a second hyperslab to modify it | | H5Ssel_iter_close | N | Closes a dataspace selection iterator | | H5Ssel_iter_create | N | Creates a dataspace selection iterator for a dataspace’s selection | | H5Ssel_iter_get_seq_list | N | Retrieves a list of offset / length sequences for the elements in an iterator | | H5Sselect_adjust | N | Adjusts a selection by subtracting an offset | | H5Sselect_copy | N | Copies a selection from one dataspace to another | | H5Sselect_intersect_block | N | Checks if current selection intersects with a block | | H5Sselect_project_intersection | N | Projects the intersection of two source selections to a destination selection | | H5Sselect_shape_same | N | Checks if two selections are the same shape | | | | H5Treclaim | N | Frees the buffers allocated for storing variable-length data in memory | | | | | | H5VLclose | Y | Closes a VOL connector identifier | | H5VLget_connector_id( | Y | Retrieves the VOL connector identifier for a given object identifier | | H5VLget_connector_id_by_name | Y | Retrieves the identifier for a registered VOL connector name | | H5VLget_connector_id_by_value | Y | Retrieves the identifier for a registered VOL connector value | | H5VLget_connector_name | Y | Retrieves the connector name for the VOL associated with the object or file identifier | | H5VLis_connector_registered_by_name | Y | Tests whether a VOL class has been registered or not for a connector name | | H5VLis_connector_registered_by_value | Y | Tests whether a VOL class has been registered or not for a connector value | | H5VLregister_connector | N | Registers a new VOL connector | | H5VLregister_connector_by_name | Y | Registers a new VOL connector by name | | H5VLregister_connector_by_value | Y | Registers a new VOL connector by connector value | | H5VLunregister_connector | Y | Removes a VOL connector identifier from the library |

In the C++ Wrapper

Function Description
H5File::getFileNum See H5F_GET_FILENO
H5File::isAccessible See H5F_IS_ACCESSIBLE
LinkCreatPropList::getCreateIntermediateGroup See H5P_GET_CREATE_INTERMEDIATE_GROUP
LinkCreatPropList::setCreateIntermediateGroup See H5P_SET_CREATE_INTERMEDIATE_GROUP
H5Location::getLinkInfo See H5L_GET_INFO
H5Location::getNativeObjinfo See H5O_GET_NATIVE_INFO
H5Location::getObjinfo See H5O_GET_INFO
H5Object::visit See H5O_VISIT

API Compatibility

See API Compatibility Macros in HDF5 for details on using HDF5 version 1.12 with previous releases.

Compatibility report for Release 1.12.0 versus Release 1.10.6