Commit Graph
2372 Commits
Author SHA1 Message Date
Larry Knox 19d3691571 Draw attention to 3rd step in process to update so numbers for release. (#4825) 2024-09-13 11:49:17 -05:00
Allen Byrne 1e9a8ef0e8 Cleanup errors detected during merge compare (#4827) 2024-09-13 10:14:48 -05:00
Allen Byrne 63138140fe Add release note for signed binaries (#4826) 2024-09-13 10:13:35 -05:00
Allen Byrne 0737d0dbf7 Correct URLs in documentation (#4823) 2024-09-12 22:46:58 -05:00
jhendersonHDF 98c5411f02 Fix a bug in Subfiling VFD vector I/O setup (#4821)
Fixes a bug where the vector I/O sizes weren't being extended when
one of the entries in the array is 0. This caused an over-read of
the I/O sizes buffer and on some machines would cause a memory
allocation failure due to the calculated I/O vector size being too
large.
2024-09-12 08:01:08 -05:00
Allen Byrne 5e94301e71 Add THREADS check to configuration file (#4746)
* Cleanup threads package checks

* Check first if package was found

* Remove unnecessary dependent checks

* Remove Unused options and fix names of option prefix
2024-09-07 20:45:12 -05:00
Larry Knox baa04393fb Change name of libhdf5hl_fortran installed by autotools (#4811)
* Change name of libhdf5hl_fortran installed by autotools to libhdf5_hl_fortran to be
consistent with CMake install and with other hl lib files.  Switched
corresponding symlink to libhdf5hl_fortran.
Fixes issue #4684.

* Update h5fc.in to use renamed libhdf5_hl_fortran.
Fix typo in code to create link to libhdf5_hl_fortran.a.

* Removed code to create symlink for previous name of renamed lib
libhdf5hl_fortran.
Add RELEASE.txt entry about changeing name libhdf5hl_fortran to
libhdf5_hl_fortran.
2024-09-07 10:27:33 -07:00
Allen Byrne 39361bd24e Update windows and apple signing process (#4806) 2024-09-05 09:15:12 -05:00
Allen Byrne 4ffeb77fdb Correct the URL paths (#4802) 2024-09-04 07:32:42 -05:00
Allen Byrne bca2806055 Update URL documentation links to support site (#4781) 2024-08-29 16:27:44 -05:00
Allen Byrne 32ee132b0b Add missing blosc2 info (#4717) 2024-08-16 12:14:04 -05:00
bmribler d875f749e5 Add tests for H5R get name APIs (#4657)
Added functionality tests for the following APIs:
H5Rget_file_name
H5Rget_obj_name
H5Rget_attr_name

Also removed "+1" when returning a name length in H5R__get_attr_name().
The exter "+1" gave an incorrect value for the length of the referenced
object's attribute name.

Fixed GH-4447

* Fix Fortran test

The C API H5Rget_attr_name incorrectly added 1 to the length of the
referenced object's attribute name, so the Fortran API h5rget_attr_name_f
removed 1 from the returned value to accommodate the incorrectness.
This PR fixes H5Rget_attr_name so this workaround in h5rget_attr_name_f
is no longer needed.

* Add test H5Aget_name against H5Rget_attr_name
2024-08-12 09:40:48 -05:00
Quincey Koziol 9fd88560d5 Refactor threading and other concurrency support (#4469)
Complete overhaul of the concurrency-related aspects of the library (threading, atomics, locking, etc.), adding private routines in the H5TS package to allow internal algorithms to use all of these capabilities.

Adds many new features & components in the H5TS package that are equivalent to common concurrency data structures and capabilities: "regular" and recursive mutices, condition variables, semaphores, thread barriers, 'once' support, thread pools, atomic variables, thread-local keys, and spawning & joining internal threads.

Now supports C11, pthreads, and Windows threading for all H5TS capabilities, except the recursive readers/writers lock, which is not supported on Windows (because Windows threads don't provide a callback on thread-local variable deletion).

The "global" API lock is switched to use a recursive mutex from the H5TS package, instead of its own variant.

API context code (H5CX package) and error stacks (H5E package) now use the common thread-local info, instead of their own variants.

Subfiling code is switched from using Mercury threading features to the new internal H5TS features.

Removes the mercury threading code.

Adds a configure option (--enable-threads / HDF5_ENABLE_THREADS), enabled by default, to control whether threading is enabled within the library.
2024-07-31 12:34:43 -05:00
Allen Byrne b3e1d6b862 Fixed usage issue with FindZLIB.cmake module (#4655)
* Add a comment on the FindZLIB.cmake module usage

* Allow choice of static/shared compression libs for Find Module

* Added new option to INSTALL_CMake file and changed option text
2024-07-16 14:21:43 -05:00
Allen Byrne 69dda039a2 Fixed FetchContent usage for new CMake reqs. (#4650)
CMake version 3.30 changed the behavior of the FetchContent module to deprecate
the use of FetchContent_Populate() in favor of FetchContent_MakeAvailable(). Therefore,
the copying of HDF specialized CMakeLists.txt files to the dependent project's source
was implemented in the FetchContent_Declare() call.
2024-07-16 09:09:31 -07:00
Allen Byrne f8069fa850 Add tools usage text as doxygen for Tools UG (#4602) 2024-07-15 09:43:20 -05:00
Allen Byrneandgithub-actions e7796a60d2 Add page buffer cache command line option to tools (#4562)
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-19 07:38:30 -05:00
Quincey Koziol 850d6c8f06 Pause recording errors instead of clearing the error stack (#4475)
An internal capability that's similar to the H5E_BEGIN_TRY / H5E_END_TRY
macros in H5Epublic.h, but more efficient since we can avoid pushing errors on
the stack entirely (and those macros use public API routines).

This capability (and other techniques) can be used to remove use of
H5E_clear_stack() and H5E_BEGIN_TRY / H5E_END_TRY within library routines.

We want to remove H5E_clear_stack() because it can trigger calls to the H5I
interface from within the H5E code, which creates a great deal of complexity
for threadsafe code.  And we want to remove H5E_BEGIN_TRY / H5E_END_TRY's
because they make public API calls from within the library code.

Also some other minor tidying in routines related to removing the use of
H5E_clear_stack() and H5E_BEGIN_TRY / H5E_END_TRY from H5Fint.c
2024-06-18 14:17:43 -07:00
Dana Robinson 0ab5a1a805 Rename INSTALL_Auto.txt to INSTALL_Autotools.txt (#4575) 2024-06-18 10:05:16 -07:00
jhendersonHDF 4a0b1b66a5 Allow usage of page buffering for serial file access from parallel HDF5 builds (#4568) 2024-06-13 14:18:31 -05:00
Allen Byrne dca6370691 Move C++ and Fortran and examples to HDF5Examples folder (#4552) 2024-06-08 06:46:09 -05:00
Allen Byrne 1dc0b67715 Adjust h5repack userblock option to allow reserve size (#4544) 2024-06-05 16:18:12 -05:00
Philipp Oppermann b698b484ae Change type of offset arg in H5Pset_external to HDoff_t (#3505)
The `off_t` type is only 32-bit on Windows, which makes it impossible to link to higher offsets in large files.

The `H5O_efl_entry_t` struct defines its `offset` field already as `HDoff_t`, so no additional conversion is needed.
2024-06-04 14:16:27 -07:00
Allen Byrne 552510e906 Add option to use zlib-ng as zlib library (#4487) 2024-06-04 09:44:13 -07:00
Scot BreitenfeldandLarry Knox aa696f01e5 Point to HDFGroup repository (#4535)
* point to HDFGroup repository

* updated checkout locations

* Fix incorrect and dead documentation link in
release_docs/RELEASE_PROCESS.md.

---------

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2024-05-30 20:37:52 -05:00
Allen Byrne 162e7d676d Allow HDF5_LIB_INFIX to work with DLL (#4500)
* Allow HDF5_LIB_INFIX to work with DLL

* Separate individual library name into parts and add suffix option

* Java cannot use alternative names and removed extra setting

* Incorporate the underscore into the CORE name
2024-05-28 08:27:15 -07:00
Allen Byrne 3bd8159ccd Disable UNITY_BUILD for now - globally (#4515) 2024-05-25 06:25:45 -05:00
jhendersonHDF 8897e25b00 Fix spelling (#4522) 2024-05-23 16:44:33 -05:00
Allen Byrne 4fa004e73a Set H5 specific vars immediately if legacy find (#4512)
* Set H5 specific vars immediately if legacy find

* Correct find process vars (vs in-line build)

* Correct SZIP find

* Everything is libaec 1.0.6 or newer

* Correct option help text
2024-05-22 15:11:37 -05:00
Dana Robinson baec5ff88a Fix/revert a libtool sed hack (#4501)
* Revert "Remove Autotools sed hack (#3848)"

This reverts commit 8b3ffdef30.

* Fix libtool sed cleanup on MacOS

Convert sed -i line to sed > libtool.bak && mv libtool.bak libtool
to avoid non-portable -i option.
2024-05-20 08:37:01 -05:00
jhendersonHDF ac7b5ce314 Fix an issue where compound datatype member IDs can be leaked during conversion (#4459)
Also fixes issues with handling of partially initialized datatypes during library shutdown
2024-05-10 16:28:53 -05:00
Allen Byrne f17ca5689e Update for blosc2 in plugins and prefix hdf5 cmake varnames (#4468) 2024-05-10 13:01:28 -05:00
jhendersonHDF 6114d1adfb Fixes and cleanup for ph5diff (#4460)
* Fixes and cleanup for ph5diff

Fixes concurrency issues in ph5diff that can cause interleaved
output

Fixes an issue where output can sometimes be dropped if it ended
up in ph5diff's output overflow file

Fixes an issue where MPI_Init is called after HDF5 has been
initialized, preventing the library from setting up an MPI
attribute to perform cleanup on MPI_Finalize

Fixes an issue in config/cmake/runTest.cmake where the CMake
logic would try to access an invalid list index if the number
of lines in a test's output and reference files don't match

* Add release note
2024-05-03 15:00:15 -05:00
Quincey Koziol 63fcd583d0 Removed "function/code stack" debugging configure option (#4454)
Easily replaced w/third-party tools, e.g. libbacktrace
(https://github.com/ianlancetaylor/libbacktrace)
2024-05-03 03:30:45 -07:00
Scot Breitenfeld abf8b01f55 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.
2024-05-01 05:39:01 -07:00
vchoi-hdfgroup b23affc2a6 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.
2024-04-30 07:21:08 -05:00
Larry Knox 1dc8aed9b6 Fixing string in RELEASE_PROCESS.md that is causing a doxygen error - (#4430)
Unsupported xml/html tag <n> found.
2024-04-20 15:36:34 -05:00
Glenn Song 3bf963b87d Add release process markdown file (#4312) 2024-04-20 07:10:52 -05:00
Larry Knox 1d1c040544 Updates for release_docs/NEWSLETTER.txt. (#4423) 2024-04-19 09:03:07 -07:00
Allen Byrne bbf1e26cda Remove obsolete file (#4416) 2024-04-17 10:24:22 -05:00
Allen Byrne c548657043 Update and use more URL alias (#4413) 2024-04-17 07:56:19 -05:00
Allen Byrne 3fad116502 Use aliases for URLs (#4409) 2024-04-16 13:51:20 -05:00
Dana Robinson bf01a42ab7 Normalize 'known problems' in RELEASE.txt w/ 1.14 (#4387)
We updated these in the 1.14 branch first, so this just brings the
changes over to develop.
2024-04-11 07:37:12 -07:00
H. Joe Lee afa47df9a1 Fix broken links and references in INSTALL_Auto.txt (#4382) 2024-04-11 05:33:20 -07:00
H. Joe Lee 98b6d8ee9b Fix a broken link for zlib url (#4383) 2024-04-11 05:33:04 -07:00
H. Joe Lee 7ff8ad5e16 Change date to data in INSTALL_parallel (#4384) 2024-04-11 05:32:40 -07:00
jhendersonHDF e6ad84d6db Add known issue for MacOS 14 _Float16 byte order detection issue (#4374) 2024-04-10 13:25:32 -05:00
Dana Robinson 0b4606aa1f Added CVE info to RELEASE.txt (#4367) 2024-04-10 08:32:24 -05:00
H. Joe Lee 304f357d48 Match content listing with content. (#4357) 2024-04-09 09:13:46 -07:00
H. Joe Lee a6d689a1d6 Fix grammar and content in HDF5Examples (#4333) 2024-04-06 07:21:18 -05:00