Commit Graph

22976 Commits

Author SHA1 Message Date
H. Joe Lee
3c122474d0
Make autogen.sh output message consistent (#3128) 2023-06-14 19:01:48 -07:00
Dana Robinson
b571da18fc
Fix spelling issues flagged by codespell (#3130) 2023-06-14 18:59:09 -07:00
Dana Robinson
69e8c8f58d
Clean up mirror VFD code in utils dir (#3121)
* Remove dead code
* Replace mybzero with memset
* Replace hbool_t/TRUE/FALSE with bool/true/false
2023-06-14 08:01:04 -07:00
Dana Robinson
61d43eb867
Adds an optional version arg to bin/format_source (#3119) 2023-06-14 08:00:46 -07:00
Dana Robinson
d1ef48e708
Remove unused HD macros (#3120)
* Remove unused HD macros
The library prefixes most C and POSIX API calls with 'HD'. We are
going to start removing these so the code looks like normal C.

This PR removes most of the unused HD markup macros.

* Replace ntohl/ntohs
2023-06-14 08:00:26 -07:00
Dana Robinson
ce794d6a88
Remove the checkposix script (#3122)
This script was used to ensure that all non-HDF5 calls were prefixed
with 'HD'. We are removing this scheme so this script is no longer
needed.
2023-06-14 07:59:49 -07:00
Allen Byrne
340c37629c
Use 1.14 toolchain (#3116) 2023-06-13 16:12:49 -07:00
Allen Byrne
75bcd68e7c
Add note for issue 3056 (#3117) 2023-06-13 16:12:14 -07:00
Allen Byrne
4462f73058
clang-tidy clang-analyzer-core issues addressed (#3113)
src/H5system.c:1293:13: warning: Dereference of null pointer
[clang-analyzer-core.NullDereference]
src/H5trace.c:4048:17: warning: Passed-by-value struct argument contains
uninitialized data (e.g., via the field chain: 'initial.user')
[clang-analyzer-core.CallAndMessage]
2023-06-13 09:33:35 -07:00
Dana Robinson
d4605919f9
Remove H5detect and H5make_libsettings (#3104)
Removes H5detect and H5make_libsettings from the build and replaces
their functionality with things that don't affect cross-compiling.

H5detect --> floating-point types are now detected on library load
H5make_libsettings --> Moved functionality to a new H5build_settings.c template file
2023-06-13 08:16:41 -07:00
Dana Robinson
9e7e2f8b8e
Fix a misc warning in test/vol.c (#3112)
The compiler complains about using integers instead of size_t
for some sizes.
2023-06-13 07:56:39 -07:00
Allen Byrne
281dbf49dc
Fix gh pages so that the doxygen files are uploaded (#3102)
* Add workspace path
* add debug
* Make one job so workspace files are available
* Put doxygen docs under docs folder in gh-pages
2023-06-12 20:43:06 -07:00
Allen Byrne
1891387ccb
Rework tools.cmake and add C flags (#3110) 2023-06-12 20:05:26 -07:00
Allen Byrne
8265bf31c9
Fix the default for API_VERSION to only allow one default (#3107) 2023-06-12 20:01:34 -07:00
Dana Robinson
b9f988ed63
Add Mark Kittisopikul to CODEOWNERS (#3111) 2023-06-12 18:03:21 -07:00
Dana Robinson
1e1dac1dac
Remove long double conversion work-arounds (#3097)
Several options and public symbols that were provided to paper
      over non-standard long double conversions between signed/unsigned
      long and long long values were removed from the Autotools and
      CMake. These were added twenty years ago, when C99 and 64-bit
      platforms were less common and are no longer needed.

      Autotools:
        --enable-dconv-accuracy

      CMake:
        HDF5_WANT_DATA_ACCURACY

      H5pubconf.h symbols:
        H5_WANT_DATA_ACCURACY
        H5_LDOUBLE_TO_LONG_SPECIAL
        H5_LONG_TO_LDOUBLE_SPECIAL
        H5_LDOUBLE_TO_LLONG_ACCURATE
        H5_LLONG_TO_LDOUBLE_CORRECT
        H5_DISABLE_SOME_LDOUBLE_CONV
2023-06-12 14:12:57 -07:00
Dana Robinson
d1d6a2187d
Remove code paths where long long < 8 bytes (#3098)
The C99 standard says that a long long is 8+ bytes. This change
removes a few parts of the code where we assume that a long long
could be less than that.
2023-06-12 12:18:23 -07:00
Dana Robinson
cedbc2eae0
Remove variable dereferences in CMake (#3080) 2023-06-12 12:15:40 -07:00
Dana Robinson
a1a9526b14
Address memory issues when copying empty enums (#3088)
When copying an empty enum type (including implicitly, as when an enum
is contained in a compound type), the library would allocate 0-size
blocks of memory and attempt to memcpy 0 bytes from NULL pointers, which
are undefined behavior. In debug mode, the library would raise an
assert in H5MM.

The library now avoid undefined memory operations when copying empty
enum types and a test that copies empty enums has been added.
2023-06-12 12:14:25 -07:00
Dana Robinson
37990e63c4
Make some changes to configure.ac to suppor MinGW (#3096)
Adds some H5pubconf.h entries and cpp flags for building on MinGW
using the Autotools.

Also updates the Windows-related H5pubconf.h comments to be more
accurate in CMake.
2023-06-11 17:39:15 -07:00
bmribler
a64d3a989a
Fixed typo: hdf5-examples should be hdf5_examples in a link (#3101) 2023-06-11 07:08:39 -07:00
Dana Robinson
03bd3e0840
Fix misc warnings on Windows (#3094)
* Debug functionality where pointers were munged into longs
  (which are only 32-bits on Windows)
* Fix a missing cast in Wstrcasestr_wrap()
2023-06-10 17:01:46 -07:00
Dana Robinson
4bda5eb33c
Add cross-compile defaults to Autotools (#3095)
Most instances of AC_RUN_IFELSE do not have an action set for
cross-compiling, even though there is an obvious 'reasonable'
value.
2023-06-10 12:24:33 -07:00
Dana Robinson
087d35a5b7
Build the ros3 VFD in GitHub actions (#3090)
* Build the ros3 VFD in GitHub actions
* Add curl to list of packages to install
* Disable CMake while we figure out the curl path issues
2023-06-10 12:23:11 -07:00
Dana Robinson
95b75de836
Remove template title text ([BUG], etc.) (#3093)
We use labels for this now
2023-06-09 17:48:59 -07:00
Dana Robinson
53ae53905d
Minor cleanup of H5detect.c (#3081)
* Clean up H5detect.c
* Whitespace cleanup
* Align things a bit better
* Comment changes
2023-06-09 08:12:03 -07:00
Lori Cooper
ee84868c56
Added new HDF5 logo and minor text and link changes to README.md (#3085) 2023-06-08 12:57:18 -07:00
H. Joe Lee
74f1a6e5b4
ci: add h5py action (#2986) (#3028) 2023-06-08 08:47:35 -07:00
Dana Robinson
44dccb5b15
Don't use -fstdarg-opt with clang-tidy (#3079)
* HDFCompilerFlags: mask -fstdarg-opt with clang-tidy

`clang-tidy` doesn't understand this `-f` flag and errors out.

* Add helpful comment

---------

Co-authored-by: Sean McBride <sean@rogue-research.com>
2023-06-07 16:40:57 -07:00
Dana Robinson
76bc845a2f
Removes old header/library checks (#3078)
In both CMake and the Autotools, remove checks for:
* lstat
* srandom

In CMake, remove checks for:
* string.h
* strings.h
* stdlib.h
We assume these exist. Configure will always check for them (we don't
add any special code to do this), but there's no reason to duplicate
that nonsense in CMake.
2023-06-07 16:40:31 -07:00
Dana Robinson
d58ae80354
Remove ref to format_source_patch (#3072) 2023-06-07 08:40:09 -07:00
Dana Robinson
a466c2bc66
Remove Win32 POSIX redefinitions (#3068)
Microsoft has redefined most POSIX API calls with a leading underscore
in order to strictly comply with C99. Nobody else cares about this and
we define _CRT_NONSTDC_NO_WARNINGS in CMake Windows builds to suppress
their warnings.
2023-06-07 06:47:08 -07:00
Dana Robinson
e4929ef4e0
Fix MSVC 32/64 bit shift conversion warnings (#3067) 2023-06-07 06:01:50 -07:00
Allen Byrne
b3d9a06555
Fix paths for doxygen and add step to upload to gh-pages (#3061) 2023-06-07 05:57:13 -07:00
Dana Robinson
8379c2f824
Update README.md (#3069) 2023-06-07 05:56:48 -07:00
Dana Robinson
b2648a9e74
Update the release schedule for 1.12.3 (#3066) 2023-06-06 19:21:19 -07:00
Dana Robinson
150b424a20
Add netCDF and HDF-EOS5 badges to README.md (#3065) 2023-06-06 19:13:37 -07:00
H. Joe Lee
c82ddf3913
ci: add netcdf action (#2934) (#2981) 2023-06-06 12:57:57 -07:00
Allen Byrne
5078cee8d3
Correct path for doxygen files (#3055) 2023-06-06 14:44:08 -05:00
Allen Byrne
d6059b9d75
Fix doxygen comments in structure and enable FAIL_ON_WARNINGS (#3059) 2023-06-06 14:43:09 -05:00
Allen Byrne
57c71cb983
HDF5Array arrayify is missing break statement #3056 (#3060) 2023-06-06 12:38:59 -07:00
Allen Byrne
1a2d696de4
CMake build is missing H5FDsubfiling.h #3037 (#3053) 2023-06-06 12:36:03 -07:00
Dana Robinson
3c05dd74b8
Move encode/decode macros to a new header (#3040)
Moves the file-independent encode and decode macros to a new
H5encode.h header that is itself included in H5private.h.

Removes UINT64ENCODE_VARLEN and UINT64DECODE_VARLEN, which
were unused.

Fixes include statements in files where H5VMprivate.h and
H5MMprivate.h were included via H5Fprivate.h.
2023-06-06 12:23:59 -07:00
Allen Byrne
2384a73176
Develop gh doxy (#3041)
* Add doxygen generation to daily-build and main

* Add doxygen option to matrix
2023-06-05 16:27:40 -07:00
Scot Breitenfeld
66cee72768
Print out the VOL connector being used in the ASYNC test (#3016)
* Print out the VOL connector being used in the ASYNC test
* Add h5pget_vol_cap_flags_f with test
2023-06-05 09:59:51 -07:00
Jan-Willem Blokland
71684199d5
CMake: (fix) Szip / libaec filter (#3035)
* CMake: (fix) Szip / libaec filter

- Fixed the cmake configuration for the filter Szip / libaec.
  Now, the decoding of this filter is properly configured and
  included in the HDF5 library.

* CMake: (fix) Zlib filter

- Improved the cmake configuration for the filter zlib.
2023-06-05 11:20:50 -05:00
Dana Robinson
7ecf1d09af
Convert H5F haddr_t macros to H5 (#3039)
Several macros for handling haddr_t values exist in H5Fprivate.h
and have H5F prefixes, even though they have nothing to do with
a particular file (e.g., H5F_addr_lt()).

These macros have been moved to H5private.h and renamed to have
an H5 prefix.

Affected macros:
    H5F_addr_overflow
    H5F_addr_defined
    H5F_addr_eq
    H5F_addr_ne
    H5F_addr_lt
    H5F_addr_le
    H5F_addr_gt
    H5F_addr_ge
    H5F_addr_cmp
    H5F_addr_overlap

H5F_addr_pow2 was unused and removed instead of converted.
2023-06-05 08:04:56 -07:00
Dana Robinson
e3559c7b64
Add casts to type conversion to fix long dbl bug (#3038)
If a user buffer is misaligned in the type conversion code, memcpy
could fail if the call is SSE-optimized by the compiler. This change
adds uint8_t * casts so the compiler won't make optimistic assumptions
about buffer alignment.
2023-06-03 07:23:35 -07:00
Dana Robinson
81bc34ac4c
Only pass efc pointer to H5F__efc_open (#3026)
The H5F__efc_open() API call only needs the efc pointer, so there is
no need to pass the entire file struct in.
2023-05-30 08:33:52 -07:00
Dana Robinson
962593fb0a
Remove unused H5F_EN|DECODE_OFFSET macros (#3027) 2023-05-30 08:33:22 -07:00