Commit Graph

23352 Commits

Author SHA1 Message Date
jhendersonHDF
c91b3e6168
Remove some H5T_copy calls that are now unnecessary (#4164)
Removes some datatype copying calls that are now unnecessary after
refactoring the datatype conversion code to use pointers internally
rather than IDs

Rewrites the enum conversion function so that it uses cached copies
of the source and destination datatypes in order to avoid modifying
the datatypes passed in

Adds a 'recursive' field to the datatype conversion context which
allows the conversion functions for members of a container datatype
to skip unnecessary repetitive conversion setup code

Changes internal datatype conversion callback functions so that the
source and destination datatype structure pointers are const

Removes some unused and unnecessary internal IDs registered with
H5I_register
2024-03-18 21:44:31 -07: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
Allen Byrne
4e222bf5bb
Add filter plugin user guide text. Fix registered URL in docs (#4169) 2024-03-18 08:36:55 -07:00
Dana Robinson
344ba97fec
Allow H5Soffset_simple to accept NULL offsets (#4152)
The reference manual states that the offset parameter of H5Soffset_simple()
  can be set to NULL to reset the offset of a simple dataspace to 0. This
  has never been true, and passing NULL was regarded as an error.

  The library will now accept NULL for the offset parameter and will
  correctly set the offset to zero.

  Fixes HDFFV-9299
2024-03-18 06:57:52 -07:00
Dana Robinson
51fab96f4e
Add Doxygen to API calls in H5VLnative.h (#4173) 2024-03-18 06:06:07 -07:00
Dana Robinson
eb0351efff
Address code page issues w/ Windows file paths (#4172)
On Windows, HDF5 attempted to convert file paths passed to open() and
remove() to UTF-16 in order to handle Unicode file paths. This scheme
does not work when the system uses code pages to handle non-ASCII
file names.

As suggested in the forum post below, we now also try to see if we
can open the file with open(), which should handle systems where
non-ASCII code pages are in use.

https://forum.hdfgroup.org/t/open-create-hdf5-files-with-non-utf8-chars-such-as-shift-jis/11785
2024-03-18 06:05:45 -07:00
jhendersonHDF
840476ead8
Fix an issue where the Subfiling VFD's context cache grows too large (#4159) 2024-03-17 18:48:16 -07:00
Dana Robinson
fa44de4cdb
Fix mirror VFD script (#4170)
This had directory problems when running locally.
2024-03-17 18:47:59 -07:00
Dana Robinson
2908dd1d12
Bump the size of the mirror VFD IP field (#4167)
The IP address string isn't big enought to hold an IPv4-mapped IPv6
address.
2024-03-17 11:34:21 -07:00
jhendersonHDF
a56675e12a
Fix some minor warnings (#4165) 2024-03-16 19:43:47 -07:00
Dana Robinson
68e8c0e627
Remove HAVE_IOEO checks from CMake (#4160)
This was intended to check for thread-safety functionality on Windows.
The required functionality has been standard since Windows Vista, so
these checks can be removed.
2024-03-16 12:01:24 -07:00
Dana Robinson
45f7898272
Remove lseek64 and stat64 symbols from CMake (#4163)
We don't use these in the library.
2024-03-16 11:51:02 -07:00
Dana Robinson
87970e1d53
Add Doxygen to H5FDmirror.h (#4158) 2024-03-16 11:44:59 -05:00
Dana Robinson
9a90122ef8
Header cleanup in C library (#4154)
* Ensure H5FL header is included everywhere

* Ensure H5SL header is included everywhere

* Ensure H5MM header is included everywhere
2024-03-16 11:42:32 -05:00
jhendersonHDF
1029e34fb9
Suppress H5Dmpio debugging output unless HDF5_DEBUG=d is set (#4155) 2024-03-16 11:42:01 -05:00
H. Joe Lee
4b0c6291f8
Remove HDF from Fortran 2003 configuration check message. (#4157) 2024-03-16 11:40:37 -05:00
Dana Robinson
6d85ea26ab
Remove H5O header and friend status from H5A.c (#4150) 2024-03-15 13:01:22 -07:00
Sergey Kosukhin
6635198d7f
Fix buffer size calculation in the deflate filter (#4147) 2024-03-15 13:01:03 -07:00
H. Joe Lee
3861c0c777
Remove at the end of list item. (#4151) 2024-03-15 13:00:47 -07:00
Dana Robinson
26837b4af8
Make the newsletter scheme work like HDF4 (#4149) 2024-03-15 10:36:18 -07:00
Scot Breitenfeld
e913eee81c
defined CMAKE_H5_HAVE_DARWIN (#4146) 2024-03-15 10:05:14 -07:00
Neil Fortner
40e1c6d078
Fix error when overwriting an indirectly nested vlen with a shorter sequence (#4140) 2024-03-15 09:26:56 -07:00
Dana Robinson
92d1463a02
Clean up some hbool_t/TRUE/FALSE stragglers (#4143)
It looks like most of these snuck in via selection I/O work
2024-03-15 08:54:08 -07:00
Dana Robinson
f3900f2f61
Remove useless headers (#4145)
Removes unnecessary headers from C library source files.
2024-03-15 08:49:59 -07:00
Allen Byrne
437f21549b
Fix doxygen link to example function usage (#4133) 2024-03-15 08:24:32 -07:00
Dana Robinson
c7c8b93d06
Fix Autotools -Werror cleanup (#4144)
The Autotools temporarily scrub -Werror(=whatever) from CFLAGS, etc.
  so configure checks don't trip over warnings generated by configure
  check programs. The sed line originally only scrubbed -Werror but not
  -Werror=something, which would cause errors when the '=something' was
  left behind in CFLAGS.

  The sed line has been updated to handle -Werror=something lines.

  Fixes one issue raised in #3872
2024-03-15 07:41:07 -05:00
Scot Breitenfeld
ece121b415
Fixed misc. H5E fortran failures due to previous PR (#4138)
* fixed promotion of integers and reals tests and check-passthrough-vol failure

* fixed cygwin issue
2024-03-15 07:37:22 -05:00
H. Joe Lee
78a5d8a70b
Capitalize option message for consistency. (#4141) 2024-03-15 05:33:20 -07:00
jhendersonHDF
ca9c942844
Skip part of dsets.c test for IBM long double type (#4136) 2024-03-15 00:12:50 -07:00
Dana Robinson
004ab16dbc
Remove ros3 and hdfs VFDs from Autotools VFD list (#4142)
These will never pass `make check` and would require a custom test
suite for more comprehensive testing.
2024-03-14 21:47:58 -07:00
Allen Byrne
112f445019
Add cygwin CI and update yaml files for consistency and accuracy (#4131)
* Add cygwin CI

* add cygwin packages

* Correct option names

* Cleanup yaml file and synch look and feel

* Synch CI look and feel and correct path issues

* Upgrade oneapi version

* pwsh needs env: for vars

* No continuation char for pwsh

* restore correct pwsh step

* Run subset of tests for cygwin workflow

* Remove space chars in regex

* restore full tests
2024-03-14 07:16:53 -07:00
bmribler
782c0e5a8c
Update URLs in RELEASE.txt (#4132) 2024-03-14 07:15:16 -07:00
mattjala
c3714b9f15
Fix segfault in vlen io API test (#4130) 2024-03-13 14:55:51 -05:00
Allen Byrne
c1f761bcbd
Remove invalid compile flag (#4129) 2024-03-13 10:10:38 -05:00
Jouke Witteveen
cfb1c798b9
Don't set the rpath when linking statically (#4125) 2024-03-13 08:03:21 -07:00
Allen Byrne
ca4db46c5a
Deprecate bin/cmakehdf5 (#4127)
* Deprecate bin/cmakehdf5

* Add reference text
2024-03-13 08:02:47 -07:00
Dana Robinson
8961016fe7
Update CMake comment about _POSIX_C_SOURCE (#4124)
Was missng the 2008 pread/write info
2024-03-12 17:35:41 -07:00
Dana Robinson
56f1092ddb
Overhaul CMake LFS support (#4122)
Externally visible:
* The HDF_ENABLE_LARGE_FILE option (advanced) has been removed
* We no longer run a test program to determine if LFS works, which
  will help with cross-compiling
* On Linux we now unilaterally set -D_LARGEFILE_SOURCE and
  -D_FILE_OFFSET_BITS=64, regardless of 32/64 bit system. CMake
  doesn't offer a nice equivalent to AC_SYS_LARGEFILE and since
  those options do nothing on 64-bit systems, this seems safe and
  covers all our bases. We don't set -D_LARGEFILE64_SOURCE since
  we don't use any of the POSIX 64-bit specific API calls like
  ftello64, as noted above.
* We didn't test for LFS support on non-Linux platforms. We've added
  comments for how LFS should probably be supported on AIX and Solaris,
  which seem to be alive, though uncommon. PRs would be appreciated if
  anyone wishes to test this.

Internal:
* Drops off64_t size checks since this is unused (as in Autotools)
* Remove HDF_EXTRA_FLAGS, which is now unused
* Remove hack around deprecated LINUX_LFS

Fixes #2395
2024-03-12 14:36:50 -07:00
Glenn Song
27f73183e2
Initialize selection type in chunk struct (#4087) 2024-03-12 12:01:23 -07:00
Dana Robinson
8123614b4d
Use AC_SYS_LARGEFILE on Autotools (#4119)
We previously used a hack introduced in 1.8.5 to paper over differences
in off_t and off64_t when determining the type sizes. We no longer explicitly
support off64_t in the library and AC_SYS_LARGEFILE works fine.
2024-03-12 11:30:24 -07:00
Allen Byrne
40cb71d4c2
Remove old cmake check (#4117) 2024-03-12 08:35:30 -07:00
jhendersonHDF
037c8b63d5
Handle IBM long double issues in dsets.c test_floattypes test (#4116)
* Handle IBM long double issues in dsets.c test_floattypes test
2024-03-12 07:49:41 -05:00
jhendersonHDF
4b297e986c
Implement ID creation optimization for container datatype conversions (#4113)
Makes the datatype conversion context object available during both the
initialization and conversion processes for a datatype conversion
function, allowing the compound, variable-length and array datatype
conversion functions to avoid creating IDs for the datatypes when they
aren't necessary

Adds internal H5CX_pushed routine to determine if an API context is
available to retrieve values from

Also adds error checking to several places in H5T.c and H5Tconv.c where
the code had previously assumed object close operations would succeed
2024-03-12 03:42:32 -07:00
Allen Byrne
fd280df53a
Adjust aocc workflow to fit the autotools/cmake pattern of other callable workflows. (#4115) 2024-03-12 03:39:45 -07:00
jhendersonHDF
4279c351f5
Fix up dsets test for some platforms with different long double format (#4114) 2024-03-11 14:39:13 -05:00
Allen Byrne
8340c4cb1f
long double tests has problems setting precision with offset (#4102)
* long double tests has problems setting precision with offset

* Disable long double until more development fixes issues
2024-03-11 07:58:35 -05:00
Dana Robinson
ac9541100f
Add Doxygen for HDFS VFD (#4106)
* Add Doxygen for HDFS VFD

* Fix Doxygen warning

* Update H5FDhdfs.h
2024-03-10 17:26:14 -07:00
Allen Byrne
50a6522322
Change compression tests reference files to use masking for compression ratios (#4083)
Rework TEST_FILTER tests to handle slightly different compression ratios
2024-03-10 16:43:37 -07:00
Dana Robinson
9bc6c20166
Remove lint comments (#4107) 2024-03-10 16:17:49 -07:00
Dana Robinson
7403f20757
Move common variables out of cache test blocks (#4108)
Fixes a stack size warning w/ XCode
2024-03-10 16:17:37 -07:00