Skip to content

Commit

Permalink
Merge3 839 hdf5 1 12 (#907)
Browse files Browse the repository at this point in the history
* Reorganization of C and POSIX headers in H5public.h & H5private.h (#793)

* Reorganization of C and POSIX headers in H5public.h & H5private.h

Consolidated and removed duplicates

* It turns out Windows has sys/types.h

Co-authored-by: Larry Knox <lrknox@hdfgroup.org>

* Brings the tools getopt(3) replacement into the main library (#803)

* Moves get_option from the tools library to the C library

* Adds H5 prefix to get_option call and variables

* Renames the H5_get_option long options struct and enum

* Remove version-check for relnum in H5check. (#812)

* Remove version-check for relnum in H5check.

* Add in release exception code check

* Fix typos

* Fix more typos

* Rework comments

* format change

* format whitespace

* Library version must be less than or equal to headers

* Need the NOT version of the compare

* Enable release+1 check for PASS

* Add release note

* Update note

* Remove checks for winsock2.h (#813)

This is only needed on Windows and always available, so there's no need
to check for it.

* Removes develop header cruft (#828)

* OESS-168:Remove implicit conversion warnings. (#829)

* OESS-168:Remove implicit conversion increases floating-point precision warnings.

* OESS-168:Remove clang warnings.

* Add support for parallel filters to h5repack (#832)

* Perform option arg variables (#834)

* Correct option name

* Undo accidental commit

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

* if blocks needed for build modes

* Update list of DT platforms

* VS2019 correctly displays float values

* revert VS2019 change

* Issue #669 remove version from pkgcfg filename

* remove version from h5cc script

* Java reference functions updated

enabled fortran in cmake gcc action yaml file
java reference test changed to correctly test refs
jni reference functions that create ids changed to use jni id logging

* Correct BYPRODUCTS argument

* Correct more genereated files BYPRODUCTS

* BYPRODUCTS must have unique locations

* Fix typo

* Fix fortran configure checks

* Rework H5_PAC_C_MAX_REAL_PRECISION setting logic

* Add note about fortran configure change

* Adds a quick for for some egregious chunk_info badness (#722)

* Fixes issue with ccmake that prevents building Fortran (#723)

ccmake runs iteratively, and the check_fortran_source_runs
macros were clobbering a single output file that did not
get updated on further configure iterations

* Fix conflicts with merge

* Move MAX_PRECISION back to HDF5UseFortran.cmake

* Use STREQUAL to test macro argument

* Move C language test to ConfigureChecks from HDF5UseFortran

* MAX_PRECISION defines must be defined

* Organize flags and align autotools and cmake

* Fix comment in no-error-general warnings files.

* Flag cleanup and fix typos

* Add comment

* Correct VAR used to find configure time file

* Set the path correctly

* Update missing release note info.

* Update code owners

* Correct JIRA note

* add known problem.

* Use only core library for testing dynamic plugins.

* Fix static perform tools compile for arg options

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>

* OESS-168:Remove clang warnings. (#835)

* OESS-168:Remove implicit conversion increases floating-point precision warnings.

* OESS-168:Remove clang warnings.

* OESS-168:Remove clang warnings.

* Committing clang-format changes

* OESS-168:Remove clang warnings.

* Committing clang-format changes

* OESS-168:Remove clang warning.

* OESS-168:Remove clang warnings.

* OESS-168:Address @byrnHDF review.

* Remove line added to generated hl/src/H5LTanalyze.c file.
Issue #854 created for creating a fix.

* Remove extra whitespace from H5LTanalyze.c.

* Remove extra blank line.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Larry Knox <lrknox@hdfgroup.org>

* Removes unused commented-out code from h5jamgentest.c (#851)

* Updates a comment in H5mpi.c (#863)

MPI_Type_struct() is an MPI-1 call we no longer use.

* Unsigned comparison to 0 warning avoidance (#869)

* Added int variable for comparison with H5_VERS_RELEASE in H5.c to avoid
warning that unsigned comparison < 0 is always false, which is known,
        but for later versions the comparison can possibly be true.

* Better solution for avoiding warning that unsigned comparison < 0.

* Updates the RELEASE.txt file with a note about the variable-length fill (#871)

value issue. A fix is in progress, but it might be a while before
we have time to finish it up.

* Add parallel version of h5pfc script (#881)

Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
Co-authored-by: Allen Byrne <50328838+byrnHDF@users.noreply.github.com>
Co-authored-by: H. Joe Lee <hyoklee@hdfgroup.org>
Co-authored-by: jhendersonHDF <jhenderson@hdfgroup.org>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
  • Loading branch information
6 people authored Aug 13, 2021
1 parent 5d21278 commit 9992505
Show file tree
Hide file tree
Showing 42 changed files with 2,134 additions and 2,109 deletions.
3 changes: 0 additions & 3 deletions config/cmake/H5pubconf.h.in
Original file line number Diff line number Diff line change
Expand Up @@ -457,9 +457,6 @@
/* Define if your system has window style path name. */
#cmakedefine H5_HAVE_WINDOW_PATH @H5_HAVE_WINDOW_PATH@

/* Define to 1 if you have the <winsock2.h> header file. */
#cmakedefine H5_HAVE_WINSOCK2_H @H5_HAVE_WINSOCK2_H@

/* Define to 1 if you have the <zlib.h> header file. */
#cmakedefine H5_HAVE_ZLIB_H @H5_HAVE_ZLIB_H@

Expand Down
6 changes: 0 additions & 6 deletions config/cmake_ext_mod/ConfigureChecks.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,6 @@ if (MINGW)
set (${HDF_PREFIX}_HAVE_MINGW 1)
set (WINDOWS 1) # MinGW tries to imitate Windows
set (CMAKE_REQUIRED_FLAGS "-DWIN32_LEAN_AND_MEAN=1 -DNOGDI=1")
set (${HDF_PREFIX}_HAVE_WINSOCK2_H 1)
set (__USE_MINGW_ANSI_STDIO 1)
endif ()

Expand Down Expand Up @@ -122,11 +121,6 @@ CHECK_INCLUDE_FILE_CONCAT ("setjmp.h" ${HDF_PREFIX}_HAVE_SETJMP_H)
CHECK_INCLUDE_FILE_CONCAT ("stddef.h" ${HDF_PREFIX}_HAVE_STDDEF_H)
CHECK_INCLUDE_FILE_CONCAT ("unistd.h" ${HDF_PREFIX}_HAVE_UNISTD_H)

# Windows
if (NOT CYGWIN)
CHECK_INCLUDE_FILE_CONCAT ("winsock2.h" ${HDF_PREFIX}_HAVE_WINSOCK2_H)
endif ()

CHECK_INCLUDE_FILE_CONCAT ("globus/common.h" ${HDF_PREFIX}_HAVE_GLOBUS_COMMON_H)
CHECK_INCLUDE_FILE_CONCAT ("pdb.h" ${HDF_PREFIX}_HAVE_PDB_H)
CHECK_INCLUDE_FILE_CONCAT ("pthread.h" ${HDF_PREFIX}_HAVE_PTHREAD_H)
Expand Down
13 changes: 13 additions & 0 deletions fortran/src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -582,4 +582,17 @@ if (NOT WIN32 AND NOT MINGW)
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
COMPONENT fortlibraries
)
if (HDF5_ENABLE_PARALLEL AND MPI_Fortran_FOUND)
configure_file (
${HDF_RESOURCES_DIR}/libh5cc.in
${HDF5_BINARY_DIR}/CMakeFiles/h5pfc
@ONLY
)
install (
FILES ${HDF5_BINARY_DIR}/CMakeFiles/h5pfc
DESTINATION ${HDF5_INSTALL_BIN_DIR}
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
COMPONENT fortlibraries
)
endif ()
endif ()
2 changes: 2 additions & 0 deletions hl/test/test_ds.c
Original file line number Diff line number Diff line change
Expand Up @@ -5205,6 +5205,8 @@ test_attach_detach(void)

HL_TESTING2("permutations of attaching and detaching");

gid = var1_id = var2_id = var3_id = H5I_INVALID_HID;

if ((fid = H5Fcreate(FILE8, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT)) < 0)
goto out;

Expand Down
8 changes: 4 additions & 4 deletions hl/test/test_packet.c
Original file line number Diff line number Diff line change
Expand Up @@ -45,10 +45,10 @@ typedef struct particle_t {
* a static array of particles for writing and checking reads
*-------------------------------------------------------------------------
*/
static particle_t testPart[NRECORDS] = {{"zero", 0, 0, 0.0f, 0.0f}, {"one", 10, 10, 1.0f, 10.0f},
{"two", 20, 20, 2.0f, 20.0f}, {"three", 30, 30, 3.0f, 30.0f},
{"four", 40, 40, 4.0f, 40.0f}, {"five", 50, 50, 5.0f, 50.0f},
{"six", 60, 60, 6.0f, 60.0f}, {"seven", 70, 70, 7.0f, 70.0f}};
static particle_t testPart[NRECORDS] = {{"zero", 0, 0, 0.0f, 0.0}, {"one", 10, 10, 1.0f, 10.0},
{"two", 20, 20, 2.0f, 20.0}, {"three", 30, 30, 3.0f, 30.0},
{"four", 40, 40, 4.0f, 40.0}, {"five", 50, 50, 5.0f, 50.0},
{"six", 60, 60, 6.0f, 60.0}, {"seven", 70, 70, 7.0f, 70.0}};

/*-------------------------------------------------------------------------
* function that compares one particle
Expand Down
40 changes: 20 additions & 20 deletions hl/test/test_table.c
Original file line number Diff line number Diff line change
Expand Up @@ -199,7 +199,7 @@ test_table(hid_t fid, int do_write)
hsize_t chunk_size = 10;
int compress = 0;
int * fill = NULL;
particle_t fill1[1] = {{"no data", -1, -99.0f, -99.0f, -1}};
particle_t fill1[1] = {{"no data", -1, -99.0, -99.0, -1}};
int fill1_new[1] = {-100};
hsize_t position;
char tname[20];
Expand Down Expand Up @@ -227,23 +227,23 @@ test_table(hid_t fid, int do_write)
particle2_t rbuf2[NRECORDS];
particle3_t rbuf3[NRECORDS];
particle_t rbufc[NRECORDS * 2];
particle_t abuf[2] = {{"eight", 80, 8.0f, 80.0f, 80}, {"nine", 90, 9.0f, 90.0f, 90}};
particle_t ibuf[2] = {{"zero", 0, 0.0f, 0.0f, 0}, {"zero", 0, 0.0f, 0.0f, 0}};
particle_t abuf[2] = {{"eight", 80, 8.0, 80.0, 80}, {"nine", 90, 9.0, 90.0, 90}};
particle_t ibuf[2] = {{"zero", 0, 0.0, 0.0, 0}, {"zero", 0, 0.0, 0.0, 0}};
particle_t wbufd[NRECORDS];
particle_t wbuf[NRECORDS] = {{
"zero",
0,
0.0f,
0.0f,
0.0,
0.0,
0,
},
{"one", 10, 1.0f, 10.0f, 10},
{"two", 20, 2.0f, 20.0f, 20},
{"three", 30, 3.0f, 30.0f, 30},
{"four", 40, 4.0f, 40.0f, 40},
{"five", 50, 5.0f, 50.0f, 50},
{"six", 60, 6.0f, 60.0f, 60},
{"seven", 70, 7.0f, 70.0f, 70}};
{"one", 10, 1.0, 10.0, 10},
{"two", 20, 2.0, 20.0, 20},
{"three", 30, 3.0, 30.0, 30},
{"four", 40, 4.0, 40.0, 40},
{"five", 50, 5.0, 50.0, 50},
{"six", 60, 6.0, 60.0, 60},
{"seven", 70, 7.0, 70.0, 70}};
/* buffers for the field "Pressure" and "New_field" */
float pressure_in[NRECORDS] = {0.0f, 1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f};
float pressure_out[NRECORDS];
Expand Down Expand Up @@ -332,14 +332,14 @@ test_table(hid_t fid, int do_write)
HOFFSET(particle4_t, aty), HOFFSET(particle4_t, rro)};

/* Define an array of Particles */
particle4_t p_data[NRECORDS] = {{12112, 1.4f, 2.5f, {1, 2, 3}, {4, 5, 6}, {99, 100}},
{12113, 1.4f, 2.5f, {1, 2, 3}, {4, 5, 6}, {99, 100}},
{12114, 1.4f, 2.5f, {1, 2, 3}, {4, 5, 6}, {99, 100}},
{12115, 1.4f, 2.5f, {1, 2, 3}, {4, 5, 6}, {99, 100}},
{12116, 1.4f, 2.5f, {1, 2, 3}, {4, 5, 6}, {99, 100}},
{12117, 1.4f, 2.5f, {1, 2, 3}, {4, 5, 6}, {99, 100}},
{12118, 1.4f, 2.5f, {1, 2, 3}, {4, 5, 6}, {99, 100}},
{12119, 1.4f, 2.5f, {1, 2, 3}, {4, 5, 6}, {99, 100}}};
particle4_t p_data[NRECORDS] = {{12112, 1.4, 2.5, {1, 2, 3}, {4, 5, 6}, {99, 100}},
{12113, 1.4, 2.5, {1, 2, 3}, {4, 5, 6}, {99, 100}},
{12114, 1.4, 2.5, {1, 2, 3}, {4, 5, 6}, {99, 100}},
{12115, 1.4, 2.5, {1, 2, 3}, {4, 5, 6}, {99, 100}},
{12116, 1.4, 2.5, {1, 2, 3}, {4, 5, 6}, {99, 100}},
{12117, 1.4, 2.5, {1, 2, 3}, {4, 5, 6}, {99, 100}},
{12118, 1.4, 2.5, {1, 2, 3}, {4, 5, 6}, {99, 100}},
{12119, 1.4, 2.5, {1, 2, 3}, {4, 5, 6}, {99, 100}}};

/*-------------------------------------------------------------------------
* initialize table parameters
Expand Down
60 changes: 30 additions & 30 deletions hl/tools/h5watch/h5watch.c
Original file line number Diff line number Diff line change
Expand Up @@ -58,27 +58,27 @@ static void parse_command_line(int argc, const char *argv[]);
* The long-named ones can be partially spelled. When
* adding more, make sure that they don't clash with each other.
*/
static const char * s_opts = "?";
static struct long_options l_opts[] = {{"help", no_arg, 'h'}, {"hel", no_arg, 'h'},
{"dim", no_arg, 'd'}, {"di", no_arg, 'd'},
{"label", no_arg, 'l'}, {"labe", no_arg, 'l'},
{"lab", no_arg, 'l'}, {"la", no_arg, 'l'},
{"simple", no_arg, 'S'}, {"simpl", no_arg, 'S'},
{"simp", no_arg, 'S'}, {"sim", no_arg, 'S'},
{"si", no_arg, 'S'}, {"hexdump", no_arg, 'x'},
{"hexdum", no_arg, 'x'}, {"hexdu", no_arg, 'x'},
{"hexd", no_arg, 'x'}, {"hex", no_arg, 'x'},
{"width", require_arg, 'w'}, {"widt", require_arg, 'w'},
{"wid", require_arg, 'w'}, {"wi", require_arg, 'w'},
{"polling", require_arg, 'p'}, {"pollin", require_arg, 'p'},
{"polli", require_arg, 'p'}, {"poll", require_arg, 'p'},
{"pol", require_arg, 'p'}, {"po", require_arg, 'p'},
{"fields", require_arg, 'f'}, {"field", require_arg, 'f'},
{"fiel", require_arg, 'f'}, {"fie", require_arg, 'f'},
{"fi", require_arg, 'f'}, {"version", no_arg, 'V'},
{"versio", no_arg, 'V'}, {"versi", no_arg, 'V'},
{"vers", no_arg, 'V'}, {"ver", no_arg, 'V'},
{"ve", no_arg, 'V'}, {NULL, 0, '\0'}};
static const char * s_opts = "?";
static struct h5_long_options l_opts[] = {{"help", no_arg, 'h'}, {"hel", no_arg, 'h'},
{"dim", no_arg, 'd'}, {"di", no_arg, 'd'},
{"label", no_arg, 'l'}, {"labe", no_arg, 'l'},
{"lab", no_arg, 'l'}, {"la", no_arg, 'l'},
{"simple", no_arg, 'S'}, {"simpl", no_arg, 'S'},
{"simp", no_arg, 'S'}, {"sim", no_arg, 'S'},
{"si", no_arg, 'S'}, {"hexdump", no_arg, 'x'},
{"hexdum", no_arg, 'x'}, {"hexdu", no_arg, 'x'},
{"hexd", no_arg, 'x'}, {"hex", no_arg, 'x'},
{"width", require_arg, 'w'}, {"widt", require_arg, 'w'},
{"wid", require_arg, 'w'}, {"wi", require_arg, 'w'},
{"polling", require_arg, 'p'}, {"pollin", require_arg, 'p'},
{"polli", require_arg, 'p'}, {"poll", require_arg, 'p'},
{"pol", require_arg, 'p'}, {"po", require_arg, 'p'},
{"fields", require_arg, 'f'}, {"field", require_arg, 'f'},
{"fiel", require_arg, 'f'}, {"fie", require_arg, 'f'},
{"fi", require_arg, 'f'}, {"version", no_arg, 'V'},
{"versio", no_arg, 'V'}, {"versi", no_arg, 'V'},
{"vers", no_arg, 'V'}, {"ver", no_arg, 'V'},
{"ve", no_arg, 'V'}, {NULL, 0, '\0'}};

/*-------------------------------------------------------------------------
* Function: doprint()
Expand Down Expand Up @@ -677,7 +677,7 @@ parse_command_line(int argc, const char *argv[])
}

/* parse command line options */
while ((opt = get_option(argc, argv, s_opts, l_opts)) != EOF) {
while ((opt = H5_get_option(argc, argv, s_opts, l_opts)) != EOF) {
switch ((char)opt) {
case '?':
case 'h': /* --help */
Expand All @@ -691,7 +691,7 @@ parse_command_line(int argc, const char *argv[])
break;

case 'w': /* --width=N */
g_display_width = (int)HDstrtol(opt_arg, NULL, 0);
g_display_width = (int)HDstrtol(H5_optarg, NULL, 0);
if (g_display_width < 0) {
usage(h5tools_getprogname());
leave(EXIT_FAILURE);
Expand All @@ -711,8 +711,8 @@ parse_command_line(int argc, const char *argv[])
break;

case 'p': /* --polling=N */
/* g_polling_interval = HDstrtod(opt_arg, NULL); */
if ((tmp = (int)HDstrtol(opt_arg, NULL, 10)) <= 0) {
/* g_polling_interval = HDstrtod(H5_optarg, NULL); */
if ((tmp = (int)HDstrtol(H5_optarg, NULL, 10)) <= 0) {
usage(h5tools_getprogname());
leave(EXIT_FAILURE);
}
Expand All @@ -721,15 +721,15 @@ parse_command_line(int argc, const char *argv[])

case 'f': /* --fields=<list_of_fields> */
if (g_list_of_fields == NULL) {
if ((g_list_of_fields = HDstrdup(opt_arg)) == NULL) {
if ((g_list_of_fields = HDstrdup(H5_optarg)) == NULL) {
error_msg("memory allocation failed (file %s:line %d)\n", __FILE__, __LINE__);
leave(EXIT_FAILURE);
}
}
else {
char *str;

if ((str = HDstrdup(opt_arg)) == NULL) {
if ((str = HDstrdup(H5_optarg)) == NULL) {
error_msg("memory allocation failed (file %s:line %d)\n", __FILE__, __LINE__);
leave(EXIT_FAILURE);
}
Expand All @@ -751,7 +751,7 @@ parse_command_line(int argc, const char *argv[])
}

/* check for object to be processed */
if (argc <= opt_ind) {
if (argc <= H5_optind) {
error_msg("missing dataset name\n");
usage(h5tools_getprogname());
leave(EXIT_FAILURE);
Expand Down Expand Up @@ -821,7 +821,7 @@ main(int argc, const char *argv[])
/* parse command line options */
parse_command_line(argc, argv);

if (argc <= opt_ind) {
if (argc <= H5_optind) {
error_msg("missing dataset name\n");
usage(h5tools_getprogname());
leave(EXIT_FAILURE);
Expand All @@ -845,7 +845,7 @@ main(int argc, const char *argv[])
* then there must have been something wrong with the file (perhaps it
* doesn't exist).
*/
if ((fname = HDstrdup(argv[opt_ind])) == NULL) {
if ((fname = HDstrdup(argv[H5_optind])) == NULL) {
error_msg("memory allocation failed (file %s:line %d)\n", __FILE__, __LINE__);
h5tools_setstatus(EXIT_FAILURE);
goto done;
Expand Down
4 changes: 2 additions & 2 deletions hl/tools/h5watch/h5watchgentest.c
Original file line number Diff line number Diff line change
Expand Up @@ -224,7 +224,7 @@ main(void)
one_cbuf[i].field2.b.a = 20;
one_cbuf[i].field2.b.b = 40;
one_cbuf[i].field2.b.c = 80;
one_cbuf[i].field3 = 3.0F;
one_cbuf[i].field3 = 3.0;
one_cbuf[i].field4.a = 4;
one_cbuf[i].field4.b = 8;
} /* end for */
Expand Down Expand Up @@ -313,7 +313,7 @@ main(void)
two_cbuf[i].field2.b.a = 20;
two_cbuf[i].field2.b.b = 40;
two_cbuf[i].field2.b.c = 80;
two_cbuf[i].field3 = 3.0F;
two_cbuf[i].field3 = 3.0;
two_cbuf[i].field4.a = 4;
two_cbuf[i].field4.b = 8;
} /* end for */
Expand Down
23 changes: 23 additions & 0 deletions release_docs/RELEASE.txt
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,25 @@ New Features

Library:
--------
- Change how the release part of version, in major.minor.release is checked
for compatibility

The HDF5 library uses a function, H5check_version, to check that
the version defined in the header files, which is used to compile an
application is compatible with the version codified in the library, which
the application loads at runtime. This previously required an exact match
or the library would print a warning, dump the build settings and then
abort or continue. An environment variable controlled the logic.

Now the function first checks that the library release version, in
major.minor.release, is not older than the version in the headers.
Secondly, if the release version is different, it checks if either
the library version or the header version is in the exception list, in
which case the release part of version, in major.minor.release, must
be exact. An environment variable still controls the logic.

(ADB - 2021/07/27)

- H5Gcreate1() now rejects size_hint parameters larger than UINT32_MAX

The size_hint value is ultimately stored in a uint32_t struct field,
Expand Down Expand Up @@ -399,6 +418,10 @@ The following platforms are not supported but have been tested for this release.
Known Problems
==============

Setting a variable-length dataset fill value will leak the memory allocated
for the p field of the hvl_t struct. A fix is in progress for this.
HDFFV-10840

testflushrefresh.sh will fail when run with "make check-passthrough-vol"
on centos7, with 3 Errors/Segmentation faults. These will not occur when
run with "make check". See https://github.com/HDFGroup/hdf5/issues/673
Expand Down
Loading

0 comments on commit 9992505

Please sign in to comment.