Commit Graph
289 Commits
Author SHA1 Message Date
Dana Robinson 3b47e2d227 Remove hbool_t from the public API (#5802)
* Remove hbool_t from the public API

This was previously removed from the source code, but the API calls
retained hbool_t in the public API calls. This commit removes
hbool_t from the public APIs.

hbool_t is retained as a typedef for bool in H5public.h so existing
code doesn't break.
2025-09-15 17:36:22 -05:00
Allen Byrne 63803d7115 allow better CMake version testing (#5727)
* add cmake latest workflow with lukka/get-cmake@latest
* Upgrade minimum CMake version to 3.26
2025-08-23 06:43:20 -05:00
Allen Byrne 497b65ad0f Add file header comments to CMake files (#5688) 2025-08-13 07:19:57 -05:00
Dana Robinsonandgithub-actions d9f5f5020c Refactor warning macros (#5432)
* Refactor warning macros

Replaces the scheme in H5warnings.h with a more compiler-agnostic
one that relocates ifdef complexity to the warnings header file
and uses better naming.

---------

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2025-05-23 11:46:40 -05:00
Allen Byrne aa9784ea25 Refactor the config/cmake folder #5446 (#5540)
* Update config/examples/HDF5AsSubdirMacros.cmake
* Move f90 config file and remove m4 dir
2025-05-22 11:20:51 -05:00
Allen Byrne f434a22e2d Allow JNI library loading in Java 24+ (#5522) 2025-05-08 10:57:08 -05:00
Allen Byrne 84028437b0 Add navigation links to doxygen pages (#5498)
* Add navigation links to doxygen pages

* Fix missing link and revert merge issues
2025-05-02 12:20:18 -05:00
Allen Byrne 1602e1fbfe Remove autotools files and docs (#5358) 2025-03-14 13:28:44 -05:00
Matt L 331c000e6a Add H5Tdecode2, rename and deprecate H5Tdecode (#5213) 2025-01-24 08:13:43 -06:00
Allen Byrne 2ad03911d9 Convert doc folder files to doxygen (#5216) 2025-01-17 11:48:58 -06:00
Allen Byrne 67d074cac7 Fix doxygen missing references (#5205) 2025-01-06 11:32:52 -06:00
Dana Robinson 8f2c03b2da Remove the hash_size param from H5Iregister_type() (#5170)
The hash_size parameter of H5Iregister_type() hasn't been used since 1.8.
It's been removed and the API call has been versioned.

This PR also updates the make_vers script to handle v2.0.0.

Fixes #4344
2024-12-10 00:34:40 -08:00
Dana Robinson 9019113587 Make H5F_LIBVER_LATEST a real enum value (#5083)
It was formerly a macro, but is now an enum value with the same
value as the latest numbered API.
2024-11-12 07:34:25 -06:00
jhendersonHDF 90429f5e7d Implement support for complex number datatypes (#4630)
* Implement support for complex number datatypes

Adds the new datatype class H5T_COMPLEX

Adds the new API function H5Tcomplex_create which creates a complex
number datatype from an ID of a base floating-point datatype

Adds the new feature check macros H5_HAVE_COMPLEX_NUMBERS and
H5_HAVE_C99_COMPLEX_NUMBERS

Adds the new datatype size macros H5_SIZEOF_FLOAT_COMPLEX,
H5_SIZEOF_DOUBLE_COMPLEX and H5_SIZEOF_LONG_DOUBLE_COMPLEX

Adds the new datatype ID macros H5T_NATIVE_FLOAT_COMPLEX,
H5T_NATIVE_DOUBLE_COMPLEX, H5T_NATIVE_LDOUBLE_COMPLEX,
H5T_CPLX_IEEE_F16LE, H5T_CPLX_IEEE_F16BE,
H5T_CPLX_IEEE_F32LE, H5T_CPLX_IEEE_F32BE,
H5T_CPLX_IEEE_F64LE and H5T_CPLX_IEEE_F64BE

Adds hard and soft datatype conversion paths between complex number
datatypes and all the integer and floating-point datatypes, as well as
between other complex number datatypes

Adds a special conversion path between complex number datatypes and
array or compound datatypes where the in-memory layout of data is the
same between the datatypes and data can be converted directly

Adds support for complex number datatypes to the h5dump, h5ls and
h5diff/ph5diff tools. Allows h5dump '-m' option to change floating-point
printing format for float complex and double complex datatypes, as well
as long double complex if it has the same size as double complex

Adds minimal support to the h5watch and h5import tools

Adds support for the predefined complex number datatypes and
H5Tcomplex_create function to the Java wrappers. Also adds initial,
untested support to the JNI for future use with HDFView

Adds support for just the H5T_COMPLEX datatype class to the Fortran
wrappers

Adds support for the predefined complex number datatypes and
H5Tcomplex_create function to the high level library H5LT interface
for use with the H5LTtext_to_dtype and H5LTdtype_to_text functions

Changes some usages of "complex" in the library since it conflicts with
the "complex" keyword from the complex.h header. Also changes various
usages of the word "complex" throughout the library to distinguish
compound datatypes from complex datatypes.
2024-10-31 13:54:25 -07:00
Allen Byrne 5425a571e0 Convert develop to v2.0.0 (#5006)
Switches previous 1.16/17/18 values to 2.0
2024-10-27 21:51:07 -07:00
Dana Robinson 7f1e49206d Renamed COPYING to LICENSE (#4978)
This is where most people will expect to find license information. The
COPYING_LBNL_HDF5 file has also been renamed to LICENSE_LBNL_HDF5.
The licenses are unchanged.
2024-10-18 21:13:04 -07:00
Quincey Koziol 767282f68a VOL refactor and cleanup (#4856)
Cleanup and prepare for thread-safety changes.

Big ideas:

* Wrap H5VL_class_t with H5VL_connector_t, so use of the class can be refcounted within the H5VL package, instead of relying on storing an ID within the H5VL_t struct and incrementing & decrementing the ID's refcount.
* Register H5VL_connector_t* for VOL connector IDs, instead of the H5VL_class_t*
* Stop other packages from rummaging around inside H5VL_connector_t and H5VL_object_t data structures, so that the H5VL package can change implementation details without coupled changes throughout the library

Small things:

* Simplified the coding for creating links
* Moved some routines into more logical locations
2024-10-03 12:19:33 -07:00
Allen Byrne 07756c87f5 Update develop to 1.18 API 2024-10-02 19:53:38 -05:00
Larry Knox 698ee8e439 Set develop branch version to 1.17.0. (#4912) 2024-10-02 12:28:19 -05:00
Allen Byrne 0737d0dbf7 Correct URLs in documentation (#4823) 2024-09-12 22:46:58 -05:00
Allen Byrne bca2806055 Update URL documentation links to support site (#4781) 2024-08-29 16:27:44 -05:00
Allen Byrne 162f01292c Rework the TestExpress usage and refactor dead code (#4590) 2024-06-20 14:01:43 -07:00
Allen Byrne dca6370691 Move C++ and Fortran and examples to HDF5Examples folder (#4552) 2024-06-08 06:46:09 -05:00
Dana Robinson f44fa558f2 Clean up off_t --> HDoff_t stragglers (#4555)
* off_t --> HDoff_t in test

* off_t --> HDoff_t in h5ls, h5dump, & h5repack

* Minor off_t tweak to configure.ac

* off_t --> HDoff_t fixes in src

This changes the type of the offset parameter in H5Pget_external()
to HDoff_t to match H5Pset_external(), along with other minor tweaks.

* off_t --> HDoff_t in C++ wrappers

* Fix off_t usage in Java wrapper
2024-06-07 17:25:06 -07:00
Peter Chang 421f935140 Fix wrong int type as some systems have int as 64-bit wide (#4534) 2024-05-30 22:09:50 -05:00
Allen Byrne c548657043 Update and use more URL alias (#4413) 2024-04-17 07:56:19 -05:00
jhendersonHDF 2515bbd922 Fix Java JNI warnings (#4229) 2024-03-24 18:09:05 -07:00
bmribler 62a905ae4a Fix URLs (#4210)
Also removed Copyright.html context because it's no longer valid.
2024-03-22 12:06:09 -05:00
jhendersonHDF 330b80a266 Add support for _Float16 16-bit floating point type (#4065)
Fixed some conversion issues with Clang due to problematic undefined
behavior when casting a negative floating-point value to an integer

Fixed a bug in the library's software integer to floating-point
conversion function where a user's conversion exception function
returning H5T_CONV_UNHANDLED in the case of overflows would result in
incorrect data after conversion

Added configure checks for functions and macros related to _Float16
usage since some compilers expose the datatype but not the functions or
macros

Fixed a dt_arith test failure when H5_WANT_DCONV_EXCEPTION isn't defined

Fixed a few warnings from not explicitly casting some _Float16 variables
upwards
2024-03-18 21:36:46 -07:00
jhendersonHDF a56675e12a Fix some minor warnings (#4165) 2024-03-16 19:43:47 -07:00
Sean McBride f309fcebbd Issue #1824: Replaced most remaining sprintf with safer snprint (#4003) 2024-02-13 08:22:17 -06:00
Allen Byrne 365e23340c Fix doxygen errors (#3962)
* Switch warnings as errors to default OFF

* Enable mac docs

* Add doxygen action uses step

* Use html div around snippet

* Allow preset name to be an argument to cmake-ctest.yml
2024-01-29 07:38:54 -06:00
jhendersonHDF 34fcb9c5a4 Fix several spelling/grammar issues (#3621) 2023-10-03 09:01:28 -07:00
jhendersonHDF e64c946e14 Correct comments about H5Z_FILTER_NONE (#3572) 2023-09-22 08:46:19 -05:00
Dana Robinson 44a00ef876 Strip HD prefix from string/char C API calls (#3540)
* Strip HD prefix from string/char C API calls

* HD(f)(put|get)(s|c)
* HDstr*
* HDv*printf
* HD(s)(print|scan)f
* HDperror

But NOT:

* HDstrcase*
* HDvasprintf
* HDstrtok_r
* HDstrndup

As those are not C99 and have portability work-around
implementations. They will be handled later.

* Fix th5_system.c screwup
2023-09-15 15:13:18 -07:00
Allen Byrne 7ed8dd7813 Windows runtime items go into the bin folder (#3320) 2023-08-02 09:29:20 -07:00
Dana Robinson 560110dbc7 Removes the HD prefix from java C99 calls (#3149)
POSIX calls (HDstrndup, etc.) are unchanged
2023-06-18 21:55:57 -07:00
Dana Robinson 41b474bf4a Remove hbool_t/TRUE/FALSE from java (#3145)
Replaces with bool/true/false
2023-06-16 07:30:56 -07:00
Sean McBride 68eba3da69 Many clang -Wextra-semi-stmt fixes (#2537)
* Adds semicolons to function-like macros
* Adds a do..while(0) loop to some macros
* Removes semicolons when inappropriate, especially H5E_TRY_BEGIN/END
2023-06-15 21:49:02 -07:00
Allen Byrne 57c71cb983 HDF5Array arrayify is missing break statement #3056 (#3060) 2023-06-06 12:38:59 -07:00
Dana Robinson 40324e0c31 Cleans up Java JNI warnings and add java to -Werror checks (#2383) 2023-05-27 09:49:37 -07:00
Dana Robinson 1e52bc27ee Fix assert in Debug Windows Java JNI (#3012)
Use of an uninitialized H5L_info2_t struct caused some JNI tests to
raise asserts, causing a dialog box to be emitted, which would hang
automated tests.

Initializing the struct fixes the problem.

This change also re-enables tests in the Windows Debug GitHub actions.
2023-05-25 10:47:46 -07:00
Dana Robinson 5c2e434dc6 Fix 'datatype' misspellings ('dataype') (#2984) 2023-05-19 09:05:23 -07:00
Allen Byrne fa388e6ba4 Update java logger version (#2643) 2023-04-03 14:36:23 -07:00
Mark Kittisopikul f35a99e4e6 Fix 2nd argument of Java H5Fis_accessible (#2535) 2023-03-17 12:25:56 -05:00
Larry Knox 48a3d92d04 Remove duplicated "help@hdfgroup.org" lines in file headers. (#2441) 2023-02-10 19:28:57 -08:00
Allen Byrne 9f5cf0a457 H5F_LIBVER_LATEST changes for move to 1.15 (#2288)
* H5F_LIBVER_LATEST changes for move to 1.15

* Add new default api check

* Format fixes

* Fix default configure

* fix lib version tests

* Fix another version variable

* Add 1.14 doc link
2022-12-21 10:07:25 -08:00
Allen Byrne c1e44d32e6 Fix doxygen warnings and remove javadocs (#2324)
* Fix doxygen warnings and remove javadocs

* fix typo
2022-12-20 16:59:40 -06:00
Allen Byrne 2376723d4a Develop jni trans (#2266)
* Add compound and refactor out atomic types

* Add Array String tests back

* Convert Attribute version of compound example

* Update transfer atom8ic read to return object
2022-12-05 22:29:42 -06:00
Allen Byrne 719d800499 Refactor JNI translate functions to a recursive switch on datatype (#2232) 2022-11-15 22:44:33 -06:00