diff options
author | Allen Byrne <50328838+byrnHDF@users.noreply.github.com> | 2023-04-19 12:44:56 (GMT) |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-19 12:44:56 (GMT) |
commit | 39099bd397ac8d27965b70e7bfc644abc27fd5df (patch) | |
tree | 2f1cbf4a64950b762ec157c329c1dab93dd55725 | |
parent | 7d24d61ea26c522f673c3e97ae68aa1f3f530f01 (diff) | |
download | hdf5-39099bd397ac8d27965b70e7bfc644abc27fd5df.zip hdf5-39099bd397ac8d27965b70e7bfc644abc27fd5df.tar.gz hdf5-39099bd397ac8d27965b70e7bfc644abc27fd5df.tar.bz2 |
Add no subsets option to h5diff like h5dump (#2760)
* reorder argument in alpha order
-rw-r--r-- | release_docs/RELEASE.txt | 7 | ||||
-rw-r--r-- | tools/lib/h5diff.c | 4 | ||||
-rw-r--r-- | tools/lib/h5diff.h | 45 | ||||
-rw-r--r-- | tools/lib/h5tools_utils.c | 122 | ||||
-rw-r--r-- | tools/lib/h5tools_utils.h | 3 | ||||
-rw-r--r-- | tools/src/h5diff/h5diff_common.c | 157 | ||||
-rw-r--r-- | tools/src/h5dump/h5dump.c | 117 | ||||
-rw-r--r-- | tools/test/h5diff/testfiles/h5diff_10.txt | 2 | ||||
-rw-r--r-- | tools/test/h5diff/testfiles/h5diff_600.txt | 2 | ||||
-rw-r--r-- | tools/test/h5diff/testfiles/h5diff_603.txt | 2 | ||||
-rw-r--r-- | tools/test/h5diff/testfiles/h5diff_606.txt | 2 | ||||
-rw-r--r-- | tools/test/h5diff/testfiles/h5diff_612.txt | 2 | ||||
-rw-r--r-- | tools/test/h5diff/testfiles/h5diff_615.txt | 2 | ||||
-rw-r--r-- | tools/test/h5diff/testfiles/h5diff_621.txt | 2 | ||||
-rw-r--r-- | tools/test/h5diff/testfiles/h5diff_622.txt | 2 | ||||
-rw-r--r-- | tools/test/h5diff/testfiles/h5diff_623.txt | 2 | ||||
-rw-r--r-- | tools/test/h5diff/testfiles/h5diff_624.txt | 2 |
17 files changed, 205 insertions, 270 deletions
diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt index 7de2a61..a5eb585 100644 --- a/release_docs/RELEASE.txt +++ b/release_docs/RELEASE.txt @@ -401,6 +401,13 @@ Bug Fixes since HDF5-1.12.2 release Tools ----- + - Names of objects with square brackets will have trouble without the + special argument, --no-compact-subset, on the h5dump command line. + + h5diff did not have this option and now it has been added. + + Fixes GitHub issue #2682 + - In the tools traverse function - an error in either visit call will bypass the cleanup of the local data variables. diff --git a/tools/lib/h5diff.c b/tools/lib/h5diff.c index a0cd8db..9b49be9 100644 --- a/tools/lib/h5diff.c +++ b/tools/lib/h5diff.c @@ -181,7 +181,7 @@ is_exclude_path(char *path, h5trav_type_t type, diff_opt_t *opts) /* search objects in exclude list */ while (NULL != exclude_path_ptr) { - /* if exclude path is is group, exclude its members as well */ + /* if exclude path is in group, exclude its members as well */ if (exclude_path_ptr->obj_type == H5TRAV_TYPE_GROUP) { ret_cmp = HDstrncmp(exclude_path_ptr->obj_path, path, HDstrlen(exclude_path_ptr->obj_path)); if (ret_cmp == 0) { /* found matching members */ @@ -245,7 +245,7 @@ is_exclude_attr(const char *path, h5trav_type_t type, diff_opt_t *opts) /* search objects in exclude list */ while (NULL != exclude_ptr) { - /* if exclude path is is group, exclude its members as well */ + /* if exclude path is in group, exclude its members as well */ if (exclude_ptr->obj_type == H5TRAV_TYPE_GROUP) { ret_cmp = HDstrncmp(exclude_ptr->obj_path, path, HDstrlen(exclude_ptr->obj_path)); if (ret_cmp == 0) { /* found matching members */ diff --git a/tools/lib/h5diff.h b/tools/lib/h5diff.h index d67d224..0aec94f 100644 --- a/tools/lib/h5diff.h +++ b/tools/lib/h5diff.h @@ -51,28 +51,29 @@ typedef struct { int mode_quiet; /* quiet mode: no output at all */ int mode_report; /* report mode: print the data */ int mode_verbose; /* verbose mode: print the data, list of objcets, warnings */ - int mode_verbose_level; /* control verbose details */ - int mode_list_not_cmp; /* list not comparable messages */ - int print_header; /* print header */ - int print_percentage; /* print percentage */ - int print_dims; /* print dimension index */ - int delta_bool; /* delta, absolute value to compare */ - double delta; /* delta value */ - int use_system_epsilon; /* flag to use system epsilon (1 or 0) */ - int percent_bool; /* relative error to compare*/ - double percent; /* relative error value */ - hbool_t follow_links; /* follow symbolic links */ - int no_dangle_links; /* return error when find dangling link */ - int cmn_objs; /* do we have common objects */ - int not_cmp; /* are the objects comparable */ - int contents; /* equal contents */ - int do_nans; /* consider Nans while diffing floats */ - int exclude_path; /* exclude path to an object */ - int exclude_attr_path; /* exclude path to an object */ - struct exclude_path_list *exclude; /* keep exclude path list */ - struct exclude_path_list *exclude_attr; /* keep exclude attribute list */ - int count_bool; /* count, compare up to count */ - hsize_t count; /* count value */ + int mode_verbose_level; /* control verbose details */ + int mode_list_not_cmp; /* list not comparable messages */ + int print_header; /* print header */ + int print_percentage; /* print percentage */ + int print_dims; /* print dimension index */ + int delta_bool; /* delta, absolute value to compare */ + double delta; /* delta value */ + int use_system_epsilon; /* flag to use system epsilon (1 or 0) */ + int percent_bool; /* relative error to compare*/ + double percent; /* relative error value */ + hbool_t follow_links; /* follow symbolic links */ + int no_dangle_links; /* return error when find dangling link */ + int cmn_objs; /* do we have common objects */ + int not_cmp; /* are the objects comparable */ + int contents; /* equal contents */ + int do_nans; /* consider Nans while diffing floats */ + int disable_compact_subset; /* disable compact form of subset notation */ + int exclude_path; /* exclude path to an object */ + int exclude_attr_path; /* exclude path to an object */ + struct exclude_path_list *exclude; /* keep exclude path list */ + struct exclude_path_list *exclude_attr; /* keep exclude attribute list */ + int count_bool; /* count, compare up to count */ + hsize_t count; /* count value */ diff_err_t err_stat; /* an error occurred (2, error, 1, differences, 0, no error) */ hsize_t nelmts; /* total number of elements */ hsize_t hs_nelmts; /* number of elements to read at a time*/ diff --git a/tools/lib/h5tools_utils.c b/tools/lib/h5tools_utils.c index 1f4345c..17609c7 100644 --- a/tools/lib/h5tools_utils.c +++ b/tools/lib/h5tools_utils.c @@ -162,6 +162,128 @@ help_ref_msg(FILE *output) } /*------------------------------------------------------------------------- + * Function: parse_hsize_list + * + * Purpose: Parse a list of comma or space separated integers and return + * them in a list. The string being passed into this function + * should be at the start of the list you want to parse. You are + * responsible for freeing the array returned from here. + * + * Lists in the so-called "terse" syntax are separated by + * semicolons (;). The lists themselves can be separated by + * either commas (,) or white spaces. + * + * Return: <none> + *------------------------------------------------------------------------- + */ +void +parse_hsize_list(const char *h_list, subset_d *d) +{ + hsize_t *p_list; + const char *ptr; + unsigned int size_count = 0; + unsigned int i = 0; + unsigned int last_digit = 0; + + if (!h_list || !*h_list || *h_list == ';') + return; + + H5TOOLS_START_DEBUG(" - h_list:%s", h_list); + /* count how many integers do we have */ + for (ptr = h_list; ptr && *ptr && *ptr != ';' && *ptr != ']'; ptr++) + if (HDisdigit(*ptr)) { + if (!last_digit) + /* the last read character wasn't a digit */ + size_count++; + + last_digit = 1; + } + else + last_digit = 0; + + if (size_count == 0) { + /* there aren't any integers to read */ + H5TOOLS_ENDDEBUG("No integers to read"); + return; + } + H5TOOLS_DEBUG("Number integers to read=%ld", size_count); + + /* allocate an array for the integers in the list */ + if ((p_list = (hsize_t *)HDcalloc(size_count, sizeof(hsize_t))) == NULL) + H5TOOLS_INFO("Unable to allocate space for subset data"); + + for (ptr = h_list; i < size_count && ptr && *ptr && *ptr != ';' && *ptr != ']'; ptr++) + if (HDisdigit(*ptr)) { + /* we should have an integer now */ + p_list[i++] = (hsize_t)HDstrtoull(ptr, NULL, 0); + + while (HDisdigit(*ptr)) + /* scroll to end of integer */ + ptr++; + } + d->data = p_list; + d->len = size_count; + H5TOOLS_ENDDEBUG(" "); +} + +/*------------------------------------------------------------------------- + * Function: parse_subset_params + * + * Purpose: Parse the so-called "terse" syntax for specifying subsetting parameters. + * + * Return: Success: struct subset_t object + * Failure: NULL + *------------------------------------------------------------------------- + */ +struct subset_t * +parse_subset_params(const char *dset) +{ + struct subset_t *s = NULL; + char *brace; + const char *q_dset; + + H5TOOLS_START_DEBUG(" - dset:%s", dset); + /* if dset name is quoted wait till after second quote to look for subset brackets */ + if (*dset == '"') + q_dset = HDstrchr(dset, '"'); + else + q_dset = dset; + if ((brace = HDstrrchr(q_dset, '[')) != NULL) { + *brace++ = '\0'; + + s = (struct subset_t *)HDcalloc(1, sizeof(struct subset_t)); + parse_hsize_list(brace, &s->start); + + while (*brace && *brace != ';') + brace++; + + if (*brace) + brace++; + + parse_hsize_list(brace, &s->stride); + + while (*brace && *brace != ';') + brace++; + + if (*brace) + brace++; + + parse_hsize_list(brace, &s->count); + + while (*brace && *brace != ';') + brace++; + + if (*brace) + brace++; + + parse_hsize_list(brace, &s->block); + } + H5TOOLS_ENDDEBUG(" "); + + return s; +} + +/*------------------------------------------------------------------------- * Function: get_option * * Purpose: Determine the command-line options a user specified. We can diff --git a/tools/lib/h5tools_utils.h b/tools/lib/h5tools_utils.h index b714b7d..bf8ce75 100644 --- a/tools/lib/h5tools_utils.h +++ b/tools/lib/h5tools_utils.h @@ -114,9 +114,12 @@ typedef struct find_objs_t { H5TOOLS_DLLVAR unsigned h5tools_nCols; /*max number of columns for outputting */ /* Definitions of useful routines */ +H5TOOLS_DLL struct subset_t *parse_subset_params(const char *dset); + H5TOOLS_DLL void indentation(unsigned); H5TOOLS_DLL void print_version(const char *progname); H5TOOLS_DLL void parallel_print(const char *format, ...); +H5TOOLS_DLL void parse_hsize_list(const char *h_list, subset_d *d); H5TOOLS_DLL herr_t parse_tuple(const char *start, int sep, char **cpy_out, unsigned *nelems, char ***ptrs_out); H5TOOLS_DLL void error_msg(const char *fmt, ...); diff --git a/tools/src/h5diff/h5diff_common.c b/tools/src/h5diff/h5diff_common.c index 293c55a..e38c338 100644 --- a/tools/src/h5diff/h5diff_common.c +++ b/tools/src/h5diff/h5diff_common.c @@ -24,23 +24,24 @@ static int check_d_input(const char *); * Command-line options: The user can specify short or long-named * parameters. */ -static const char *s_opts = "hVrv*qn:d:p:NcelxE:A:S*"; -static struct long_options l_opts[] = {{"help", no_arg, 'h'}, - {"version", no_arg, 'V'}, - {"report", no_arg, 'r'}, - {"verbose", optional_arg, 'v'}, - {"quiet", no_arg, 'q'}, - {"count", require_arg, 'n'}, +static const char *s_opts = "cd:ehln:p:qrv*xA:CE:NS*V"; +static struct long_options l_opts[] = {{"compare", no_arg, 'c'}, {"delta", require_arg, 'd'}, - {"relative", require_arg, 'p'}, - {"nan", no_arg, 'N'}, - {"compare", no_arg, 'c'}, {"use-system-epsilon", no_arg, 'e'}, + {"help", no_arg, 'h'}, {"follow-symlinks", no_arg, 'l'}, + {"count", require_arg, 'n'}, + {"relative", require_arg, 'p'}, + {"quiet", no_arg, 'q'}, + {"report", no_arg, 'r'}, + {"verbose", optional_arg, 'v'}, {"no-dangling-links", no_arg, 'x'}, - {"exclude-path", require_arg, 'E'}, {"exclude-attribute", require_arg, 'A'}, + {"no-compact-subset", no_arg, 'C'}, + {"exclude-path", require_arg, 'E'}, + {"nan", no_arg, 'N'}, {"enable-error-stack", optional_arg, 'S'}, + {"version", no_arg, 'V'}, {"vol-value-1", require_arg, '1'}, {"vol-name-1", require_arg, '2'}, {"vol-info-1", require_arg, '3'}, @@ -76,122 +77,6 @@ check_options(diff_opt_t *opts) } /*------------------------------------------------------------------------- - * Function: parse_hsize_list - * - * Purpose: Parse a list of comma or space separated integers and return - * them in a list. The string being passed into this function - * should be at the start of the list you want to parse. You are - * responsible for freeing the array returned from here. - * - * Lists in the so-called "terse" syntax are separated by - * semicolons (;). The lists themselves can be separated by - * either commas (,) or white spaces. - * - * Return: <none> - *------------------------------------------------------------------------- - */ -static void -parse_hsize_list(const char *h_list, subset_d *d) -{ - hsize_t *p_list; - const char *ptr; - unsigned int size_count = 0; - unsigned int i = 0; - unsigned int last_digit = 0; - - if (!h_list || !*h_list || *h_list == ';') - return; - - H5TOOLS_START_DEBUG(" - h_list:%s", h_list); - /* count how many integers do we have */ - for (ptr = h_list; ptr && *ptr && *ptr != ';' && *ptr != ']'; ptr++) - if (HDisdigit(*ptr)) { - if (!last_digit) - /* the last read character wasn't a digit */ - size_count++; - - last_digit = 1; - } - else - last_digit = 0; - - if (size_count == 0) { - /* there aren't any integers to read */ - H5TOOLS_ENDDEBUG("No integers to read"); - return; - } - H5TOOLS_DEBUG("Number integers to read=%ld", size_count); - - /* allocate an array for the integers in the list */ - if ((p_list = (hsize_t *)HDcalloc(size_count, sizeof(hsize_t))) == NULL) - H5TOOLS_INFO("Unable to allocate space for subset data"); - - for (ptr = h_list; i < size_count && ptr && *ptr && *ptr != ';' && *ptr != ']'; ptr++) - if (HDisdigit(*ptr)) { - /* we should have an integer now */ - p_list[i++] = (hsize_t)HDstrtoull(ptr, NULL, 0); - - while (HDisdigit(*ptr)) - /* scroll to end of integer */ - ptr++; - } - d->data = p_list; - d->len = size_count; - H5TOOLS_ENDDEBUG(" "); -} - -/*------------------------------------------------------------------------- - * Function: parse_subset_params - * - * Purpose: Parse the so-called "terse" syntax for specifying subsetting parameters. - * - * Return: Success: struct subset_t object - * Failure: NULL - *------------------------------------------------------------------------- - */ -static struct subset_t * -parse_subset_params(const char *dset) -{ - struct subset_t *s = NULL; - char *brace; - - H5TOOLS_START_DEBUG(" - dset:%s", dset); - if ((brace = HDstrrchr(dset, '[')) != NULL) { - *brace++ = '\0'; - - s = (struct subset_t *)HDcalloc(1, sizeof(struct subset_t)); - parse_hsize_list(brace, &s->start); - - while (*brace && *brace != ';') - brace++; - - if (*brace) - brace++; - - parse_hsize_list(brace, &s->stride); - - while (*brace && *brace != ';') - brace++; - - if (*brace) - brace++; - - parse_hsize_list(brace, &s->count); - - while (*brace && *brace != ';') - brace++; - - if (*brace) - brace++; - - parse_hsize_list(brace, &s->block); - } - H5TOOLS_ENDDEBUG(" "); - - return s; -} - -/*------------------------------------------------------------------------- * Function: parse_command_line * * Purpose: parse command line input @@ -327,6 +212,10 @@ parse_command_line(int argc, const char *const *argv, const char **fname1, const } break; + case 'C': + opts->disable_compact_subset = TRUE; + break; + case 'A': opts->exclude_attr_path = 1; @@ -476,13 +365,10 @@ parse_command_line(int argc, const char *const *argv, const char **fname1, const } H5TOOLS_DEBUG("objname2 = %s", *objname2); - /* - * TRILABS_227 is complete except for an issue with printing indices - * the following calls will enable subsetting - */ - opts->sset[0] = parse_subset_params(*objname1); - - opts->sset[1] = parse_subset_params(*objname2); + if (!opts->disable_compact_subset) { + opts->sset[0] = parse_subset_params(*objname1); + opts->sset[1] = parse_subset_params(*objname2); + } H5TOOLS_ENDDEBUG(" "); } @@ -824,6 +710,9 @@ usage(void) */ PRINTVALSTREAM(rawoutstream, " Subsetting options:\n"); PRINTVALSTREAM(rawoutstream, + " --no-compact-subset Disable compact form of subsetting and allow the use\n"); + PRINTVALSTREAM(rawoutstream, " of \"[\" in dataset names.\n"); + PRINTVALSTREAM(rawoutstream, " Subsetting is available by using the fcompact form of subsetting, as follows:\n"); PRINTVALSTREAM(rawoutstream, " obj1 /foo/mydataset[START;STRIDE;COUNT;BLOCK]\n"); PRINTVALSTREAM(rawoutstream, diff --git a/tools/src/h5dump/h5dump.c b/tools/src/h5dump/h5dump.c index f5f6fbf..3c0ed1a 100644 --- a/tools/src/h5dump/h5dump.c +++ b/tools/src/h5dump/h5dump.c @@ -539,114 +539,6 @@ set_sort_order(const char *form) } /*------------------------------------------------------------------------- - * Function: parse_hsize_list - * - * Purpose: Parse a list of comma or space separated integers and return - * them in a list. The string being passed into this function - * should be at the start of the list you want to parse. You are - * responsible for freeing the array returned from here. - * - * Lists in the so-called "terse" syntax are separated by - * semicolons (;). The lists themselves can be separated by - * either commas (,) or white spaces. - * - * Return: <none> - *------------------------------------------------------------------------- - */ -static void -parse_hsize_list(const char *h_list, subset_d *d) -{ - hsize_t *p_list; - const char *ptr; - unsigned int size_count = 0; - unsigned int i = 0; - unsigned int last_digit = 0; - - if (!h_list || !*h_list || *h_list == ';') - return; - - /* count how many integers do we have */ - for (ptr = h_list; ptr && *ptr && *ptr != ';' && *ptr != ']'; ptr++) - if (HDisdigit(*ptr)) { - if (!last_digit) - /* the last read character wasn't a digit */ - size_count++; - - last_digit = 1; - } - else - last_digit = 0; - - if (size_count == 0) - /* there aren't any integers to read */ - return; - - /* allocate an array for the integers in the list */ - p_list = (hsize_t *)HDcalloc(size_count, sizeof(hsize_t)); - - for (ptr = h_list; i < size_count && ptr && *ptr && *ptr != ';' && *ptr != ']'; ptr++) - if (HDisdigit(*ptr)) { - /* we should have an integer now */ - p_list[i++] = (hsize_t)HDstrtoull(ptr, NULL, 0); - - while (HDisdigit(*ptr)) - /* scroll to end of integer */ - ptr++; - } - d->data = p_list; - d->len = size_count; -} - -/*------------------------------------------------------------------------- - * Function: parse_subset_params - * - * Purpose: Parse the so-called "terse" syntax for specifying subsetting parameters. - * - * Return: Success: struct subset_t object - * Failure: NULL - *------------------------------------------------------------------------- - */ -static struct subset_t * -parse_subset_params(const char *dset) -{ - struct subset_t *s = NULL; - char *brace; - - if (!dump_opts.disable_compact_subset && ((brace = HDstrrchr(dset, '[')) != NULL)) { - *brace++ = '\0'; - - s = (struct subset_t *)HDcalloc(1, sizeof(struct subset_t)); - parse_hsize_list(brace, &s->start); - - while (*brace && *brace != ';') - brace++; - - if (*brace) - brace++; - - parse_hsize_list(brace, &s->stride); - - while (*brace && *brace != ';') - brace++; - - if (*brace) - brace++; - - parse_hsize_list(brace, &s->count); - - while (*brace && *brace != ';') - brace++; - - if (*brace) - brace++; - - parse_hsize_list(brace, &s->block); - } - - return s; -} - -/*------------------------------------------------------------------------- * Function: parse_mask_list * * Purpose: Parse a list of comma or space separated integers and fill @@ -931,10 +823,11 @@ parse_start: for (i = 0; i < argc; i++) if (!hand[i].func) { - hand[i].func = handle_datasets; - hand[i].obj = HDstrdup(opt_arg); - hand[i].subset_info = parse_subset_params(hand[i].obj); - last_dset = &hand[i]; + hand[i].func = handle_datasets; + hand[i].obj = HDstrdup(opt_arg); + if (!dump_opts.disable_compact_subset) + hand[i].subset_info = parse_subset_params(hand[i].obj); + last_dset = &hand[i]; break; } diff --git a/tools/test/h5diff/testfiles/h5diff_10.txt b/tools/test/h5diff/testfiles/h5diff_10.txt index 26418eb..3a238aa 100644 --- a/tools/test/h5diff/testfiles/h5diff_10.txt +++ b/tools/test/h5diff/testfiles/h5diff_10.txt @@ -145,6 +145,8 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[ obj2]] symbolic links are compared.). Subsetting options: + --no-compact-subset Disable compact form of subsetting and allow the use + of "[" in dataset names. Subsetting is available by using the fcompact form of subsetting, as follows: obj1 /foo/mydataset[START;STRIDE;COUNT;BLOCK] It is not required to use all parameters, but until the last parameter value used, diff --git a/tools/test/h5diff/testfiles/h5diff_600.txt b/tools/test/h5diff/testfiles/h5diff_600.txt index ae61123..1d114b3 100644 --- a/tools/test/h5diff/testfiles/h5diff_600.txt +++ b/tools/test/h5diff/testfiles/h5diff_600.txt @@ -145,6 +145,8 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[ obj2]] symbolic links are compared.). Subsetting options: + --no-compact-subset Disable compact form of subsetting and allow the use + of "[" in dataset names. Subsetting is available by using the fcompact form of subsetting, as follows: obj1 /foo/mydataset[START;STRIDE;COUNT;BLOCK] It is not required to use all parameters, but until the last parameter value used, diff --git a/tools/test/h5diff/testfiles/h5diff_603.txt b/tools/test/h5diff/testfiles/h5diff_603.txt index 48c80a3..81b2d6c 100644 --- a/tools/test/h5diff/testfiles/h5diff_603.txt +++ b/tools/test/h5diff/testfiles/h5diff_603.txt @@ -146,6 +146,8 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[ obj2]] symbolic links are compared.). Subsetting options: + --no-compact-subset Disable compact form of subsetting and allow the use + of "[" in dataset names. Subsetting is available by using the fcompact form of subsetting, as follows: obj1 /foo/mydataset[START;STRIDE;COUNT;BLOCK] It is not required to use all parameters, but until the last parameter value used, diff --git a/tools/test/h5diff/testfiles/h5diff_606.txt b/tools/test/h5diff/testfiles/h5diff_606.txt index 9f37b11..f367a7b 100644 --- a/tools/test/h5diff/testfiles/h5diff_606.txt +++ b/tools/test/h5diff/testfiles/h5diff_606.txt @@ -146,6 +146,8 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[ obj2]] symbolic links are compared.). Subsetting options: + --no-compact-subset Disable compact form of subsetting and allow the use + of "[" in dataset names. Subsetting is available by using the fcompact form of subsetting, as follows: obj1 /foo/mydataset[START;STRIDE;COUNT;BLOCK] It is not required to use all parameters, but until the last parameter value used, diff --git a/tools/test/h5diff/testfiles/h5diff_612.txt b/tools/test/h5diff/testfiles/h5diff_612.txt index e616e51..5e27287 100644 --- a/tools/test/h5diff/testfiles/h5diff_612.txt +++ b/tools/test/h5diff/testfiles/h5diff_612.txt @@ -146,6 +146,8 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[ obj2]] symbolic links are compared.). Subsetting options: + --no-compact-subset Disable compact form of subsetting and allow the use + of "[" in dataset names. Subsetting is available by using the fcompact form of subsetting, as follows: obj1 /foo/mydataset[START;STRIDE;COUNT;BLOCK] It is not required to use all parameters, but until the last parameter value used, diff --git a/tools/test/h5diff/testfiles/h5diff_615.txt b/tools/test/h5diff/testfiles/h5diff_615.txt index 39e0458..da4e1ee 100644 --- a/tools/test/h5diff/testfiles/h5diff_615.txt +++ b/tools/test/h5diff/testfiles/h5diff_615.txt @@ -146,6 +146,8 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[ obj2]] symbolic links are compared.). Subsetting options: + --no-compact-subset Disable compact form of subsetting and allow the use + of "[" in dataset names. Subsetting is available by using the fcompact form of subsetting, as follows: obj1 /foo/mydataset[START;STRIDE;COUNT;BLOCK] It is not required to use all parameters, but until the last parameter value used, diff --git a/tools/test/h5diff/testfiles/h5diff_621.txt b/tools/test/h5diff/testfiles/h5diff_621.txt index 8bc019e..4166ce2 100644 --- a/tools/test/h5diff/testfiles/h5diff_621.txt +++ b/tools/test/h5diff/testfiles/h5diff_621.txt @@ -146,6 +146,8 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[ obj2]] symbolic links are compared.). Subsetting options: + --no-compact-subset Disable compact form of subsetting and allow the use + of "[" in dataset names. Subsetting is available by using the fcompact form of subsetting, as follows: obj1 /foo/mydataset[START;STRIDE;COUNT;BLOCK] It is not required to use all parameters, but until the last parameter value used, diff --git a/tools/test/h5diff/testfiles/h5diff_622.txt b/tools/test/h5diff/testfiles/h5diff_622.txt index 39fb8df..98e4c28 100644 --- a/tools/test/h5diff/testfiles/h5diff_622.txt +++ b/tools/test/h5diff/testfiles/h5diff_622.txt @@ -146,6 +146,8 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[ obj2]] symbolic links are compared.). Subsetting options: + --no-compact-subset Disable compact form of subsetting and allow the use + of "[" in dataset names. Subsetting is available by using the fcompact form of subsetting, as follows: obj1 /foo/mydataset[START;STRIDE;COUNT;BLOCK] It is not required to use all parameters, but until the last parameter value used, diff --git a/tools/test/h5diff/testfiles/h5diff_623.txt b/tools/test/h5diff/testfiles/h5diff_623.txt index 8250bf4..c886870 100644 --- a/tools/test/h5diff/testfiles/h5diff_623.txt +++ b/tools/test/h5diff/testfiles/h5diff_623.txt @@ -146,6 +146,8 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[ obj2]] symbolic links are compared.). Subsetting options: + --no-compact-subset Disable compact form of subsetting and allow the use + of "[" in dataset names. Subsetting is available by using the fcompact form of subsetting, as follows: obj1 /foo/mydataset[START;STRIDE;COUNT;BLOCK] It is not required to use all parameters, but until the last parameter value used, diff --git a/tools/test/h5diff/testfiles/h5diff_624.txt b/tools/test/h5diff/testfiles/h5diff_624.txt index b362749..f0ca01a 100644 --- a/tools/test/h5diff/testfiles/h5diff_624.txt +++ b/tools/test/h5diff/testfiles/h5diff_624.txt @@ -146,6 +146,8 @@ usage: h5diff [OPTIONS] file1 file2 [obj1[ obj2]] symbolic links are compared.). Subsetting options: + --no-compact-subset Disable compact form of subsetting and allow the use + of "[" in dataset names. Subsetting is available by using the fcompact form of subsetting, as follows: obj1 /foo/mydataset[START;STRIDE;COUNT;BLOCK] It is not required to use all parameters, but until the last parameter value used, |