mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-02-23 16:20:57 +08:00
* Split H5Tconv.c into modules by type (#4393) * Split H5Tconv.c into modules by type * Add new H5Tconv headers to list of private headers * Fix broken links in VOL API table (#4438) * Don't print thread ID when the library isn't multithreaded. (#4428) Corresponding changes to make error output for regression tests agnostic to thread setting. Signed-off-by: Quincey Koziol <quincey@koziol.cc> * Start refactoring H5E code to avoid using IDs internally (#4427) * Add support for builtin_expect compiler hint (#4425) * Add support for __builtin_expect extension And H5_LIKELY / H5_UNLIKELY macros to wrap it Signed-off-by: Quincey Koziol <quincey@koziol.cc> * Committing clang-format changes --------- Signed-off-by: Quincey Koziol <quincey@koziol.cc> Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com> * sanitizer flags need set before compiler flags (#4444) * Add navigate chapters and use release_docs in Learn Basics (#4441) * Fix for github issue #3790: infinite loop closing library (#4445) * Fix for github issue #3790: infinite loop closing library Cause of the problem: When h5dump tries to open the user provided test file, the metadata cache will call the "get_final_load_size" callback to find out the actual size of the the root object header. The callback function will call H5O__prefix_deserialize() to allocate space for the object header data structure (via H5FL_CALLOC) and to deserialize the object header prefix in order to find the actual size of the object header. The metadata cache will then check whether the actual size obtained will exceed the file's EOA. Since the actual size obtained from the test file exceeds the EOA, the metadata cache throws an error and return. However, the oh structure that was allocated in H5O__prefix_deserialize() was not freed and hence causing the problem described in this issue. Fix: 1) Deallocate the oh structure after obtaining and saving the needed information in udata which will be used later on in the "verify_chksum" callback. 2) Deserialize the object header prefix in the "object header's "deserialize" callback regardless. The original coding intends to keep the deserialized prefix so that the object header's "deserialize" callback does not need to deserialize the prefix again if the object header is coming through the "get_final_load_size" callback. * H5R Fortran wrappers and misc. H5R API/DOC updates (#4446) - Add Fortran H5R APIs: h5rcreate_attr_f, h5rcreate_object_f, h5rcreate_region_f, h5ropen_attr_f, h5ropen_object_f, h5ropen_region_f, h5rget_file_name_f, h5rget_attr_name_f, h5rget_obj_name_f, h5rcopy_f, h5requal_f, h5rdestroy_f, h5rget_type_f - Fixed function H5Requal actually to compare the reference pointers Fixed an issue with H5Requal always returning true because the function was only comparing the ref2_ptr to itself. * Fix heap-buffer-overflow in H5Fio.c (#4450) The buffer size for checksum was smaller than H5_SIZEOF_CHKSUM, causing an overflow while calculating the offset to the checksum in the buffer. A check was added so H5F_get_checksums would fail appropriately in all of its occurrences. Fix gh-4434 * Fix grammar in VOL guide (#4452) * Fix bug in MPI-IO VFD (#4456) Corrects incorrect usage of the vector_was_sorted parameter in H5FD__mpio_vector_build_types() * Bump the github-actions group with 3 updates (#4455) Bumps the github-actions group with 3 updates: [actions/download-artifact](https://github.com/actions/download-artifact), [peaceiris/actions-gh-pages](https://github.com/peaceiris/actions-gh-pages) and [github/codeql-action](https://github.com/github/codeql-action). Updates `actions/download-artifact` from 4.1.4 to 4.1.7 - [Release notes](https://github.com/actions/download-artifact/releases) - [Commits]( |
||
---|---|---|
.. | ||
batch | ||
pkgscrpts | ||
buildhdf5 | ||
checkapi | ||
chkcopyright | ||
cmakehdf5 | ||
debug-ohdr | ||
format_source | ||
genparser | ||
h5cc.in | ||
h5redeploy.in | ||
h5vers | ||
iostats | ||
make_err | ||
make_overflow | ||
make_vers | ||
Makefile.am | ||
makehelp | ||
output_filter.sh | ||
README.md | ||
release | ||
restore.sh | ||
runbkgprog | ||
switch_maint_mode | ||
trace | ||
warnhist |
Scripts in bin
and their purpose
Programs run via autogen.sh
(or the equivalent in CMake) are indicated.
Program | Purpose |
---|---|
buildhdf5 |
Convenience script to build HDF5 using the Autotools |
checkapi |
Checks if public API calls are used in internal functions |
chkcopyright |
Checks if files have appropriate copyright statements |
cmakehdf5 |
Convenience script to build HDF5 using CMake |
debug-ohdr |
Examines debug output from H5O_open/close to look for open objects |
format_source |
Runs clang-format over the source files, applying our rules |
genparser |
Creates the flex/bison-based parser files in the high-level library |
h5cc.in |
Input file from which h5cc is created |
h5redeploy.in |
Input file from which h5redeploy is created |
h5vers |
Updates the library version number |
make_err |
Generates the H5E header files (called in autogen.sh ) |
make_vers |
Generates H5version.h (called in autogen.sh ) |
make_overflow |
Generates H5overflow.h (called in autogen.sh ) |
output_filter |
Used in the tools test code to strip extraneous output before we diff files |
restore.sh |
Removes files generated by autogen.sh |
runbkprog |
Used by CMake to run test programs in the background |
switch_maint_mode |
Switches maintainer mode on/off in configure.ac |
trace |
Updates H5ARG_TRACE macros in H5ES_insert() calls (run by autogen.sh ) |
warnhist |
Generates compiler warning statistics for gcc/clang when fed output of make |
TODO
- chkcopyright is currently semi-broken as it doesn't handle the full variety of copyright headers we need. We're leaving it in place, though, in the hopes that someone will update it in the future.
- Extending warnhist to better understand the output of additional compilers/languages would be nice.