Commit Graph

21496 Commits

Author SHA1 Message Date
Dana Robinson
c7c1046d49
Fix autotools clang debug optimization level w/ older clang and Xcode versions (#146)
* Fixes clang debug optimization level w/ Autotools

NOTE: This was only released in HDF5 1.10.7, so only the 1.10
      branch needs a note in RELEASE.txt.

* Updates the clang -Og setting with a version check w/ autotools

* Sets -Og when clang >= 4.0 or Xcode >= 9.0
* Older versions get -O1
* Autotools only
2020-12-02 07:32:22 -06:00
jwsblokland
82c0cb122f
(fix) H5Z_xform_create function and scientific notation (#144)
* (fix) H5Z_xform_create function and scientific notation

Implemented a more sophisticated check to support scientific notation
in the expression of the H5Zset_data_transform function.

* (fix) H5Z_xform_create and scientific notation: Added test.

Added a test to demonstrate that the parsing of expression
which includes scientific notation works correctly. Improved
inline comment.

Co-authored-by: Jan-Willem Blokland <Jan-Willem.Blokland@Shell.com>
2020-12-01 22:27:24 -06:00
Quincey Koziol
7950dca75c
Add H5atclose and H5is_library_terminating routines. (#139)
* Add H5atclose and H5is_library_terminating routines.

* Add brief Doxygen comment for H5_atclose_func_t typedef.

* Added /*out*/ flag to parameter list, for the tracing script.

* Update doxygen comment for H5atclose with additional detail.

* Return FAIL for H5is_library_threadsafe and H5is_library_terminating when their parameters are NULL.
2020-12-01 14:24:32 -06:00
Quincey Koziol
436221cc18
Break single loop with interleaved sends and receives into two separate loops, to avoid deadlocks. Also avoid copying chunk entries when determining ownership. (#138) 2020-12-01 13:20:58 -06:00
Quincey Koziol
3e61010340
Expand ID dec_ref and close callbacks to allow for asynchronous close operations (#135)
* Expand ID dec_ref and close callbacks to allow for asynchronous close operations.

* Fix typo

* Rename token -> request, remove programmer name

* H5E_ATOM to H5E_ID
2020-12-01 13:20:05 -06:00
Quincey Koziol
adf7b1d4cf
Add flag to H5CX_pop that allow setting the properties to return to application to be skipped. (#134) 2020-12-01 10:15:34 -06:00
Quincey Koziol
123c5a653d
Expand 'opt_query' VOL callback to return a bitfield instead of a flag (#136)
* Expand 'opt_query' VOL callback to return a bitfield instead of a flag

* Correct pastos
2020-11-30 15:59:22 -06:00
Quincey Koziol
cadd6db431
Move API routines for VOL objects to main source file. (#133) 2020-11-30 13:54:44 -06:00
Dana Robinson
c256612e09
Replace H5E_ATOM major error category with H5E_ID (#121)
* Renames H5I_ATOM to H5I_ID, among other related changes

* Java has been updated.
* Fortran is failing on my VM, even though I don't touch that.

* Adds a RELEASE.txt note for H5E_ATOM to H5E_ID changes

* Fixes typos in comments
2020-11-30 06:50:39 -06:00
Dana Robinson
a6e3d22604
FreeBSD autotools changes (#142)
* Updates to allow autotools builds on recent FreeBSD

* Switches the default C compiler to cc from gcc
  (this may need a version string check if we want to support
  FreeBSD 9 and earlier. FreeBSD 10 was released in 2014)
* Makes the default C++ compiler c++ (no previous setting)
* Both of these resolve to Clang on FreeBSD 10+
* Added a note about flang being unsuitable on FreeBSD
  (the port uses an ancient build of flang that lacks Fortran
  2003 support)
* Autotools only - CMake appears to use different CPP flags
  which cause compilation errors

* Adds a RELEASE.txt note for new FreeBSD autotools changes
2020-11-29 22:44:47 -06:00
Dana Robinson
3446fa6993
Fixes clang debug optimization level w/ Autotools (#141)
NOTE: This was only released in HDF5 1.10.7, so only the 1.10
      branch needs a note in RELEASE.txt.
2020-11-29 22:42:38 -06:00
Dana Robinson
4d71d234dd
Removed H5_ECXXFLAGS from libhdf5.settings (#140)
This variable is unused and was missed in the -Werror changes.
2020-11-29 22:20:06 -06:00
Quincey Koziol
4fea1bcccd
Minor cleanups (#132) 2020-11-26 11:11:35 -06:00
Dana Robinson
2e2ded6181
Minor refactoring in tid.c (#127) 2020-11-25 21:53:48 -06:00
Quincey Koziol
1bb2bdbcf8
Enhance API tracing (#120)
Enhance API tracing to handle more types, and to put tracing info in a string, allowing it to be used when reporting errors.  Also refactor ref-counted strings (H5RS) module to add capabilities needed for the tracing.  Refactored H5Gname.c routines to use new H5RS routines also.  Added /*out*/ tags to API routines that are returning information to the application.  Updated H5TRACE macros from running updated trace script over library code.  Added tests for new H5RS routines.
2020-11-25 20:44:34 -06:00
Quincey Koziol
3ebcfb8bf3
Refactor to avoid using fork to create initial file (#122)
* Refactor to avoid using fork to create initial file

* Use correct exit value on failure
2020-11-25 15:42:53 -06:00
Quincey Koziol
4e23defcdc
Update H5TS code to reflect library's coding style (#123) 2020-11-25 15:16:00 -06:00
Quincey Koziol
f095373635
Move package initialization code for H5A and H5G to internal source file. (#125) 2020-11-25 12:04:16 -06:00
Allen Byrne
0b54c556a0
Add else choice to error flags option (#128) 2020-11-25 11:50:21 -06:00
Dana Robinson
ffcb354237
Minor/solaris gcc fix (#126)
* Adds gnu99 as the standard when building with gcc on Solaris

* Adds a note to RELEASE.txt and improves comments

For Solaris + gcc fix (HDFFV-11191)
2020-11-25 09:26:35 -06:00
Dana Robinson
7b9c5e124b
Adds a configure/CMake option to control -Werror behavior (#119)
* Works in both Autotools and CMake
* OFF by default
* Reverts "always on" -Werror behavior released in 1.10.7
2020-11-24 21:57:48 -06:00
bljhdf
c56464fc36
Doxygen - added (mostly) beginner functions (#112)
* Doxygen - added (mostly) beginner functions

* Removed duplicate H5Pset_szip function
2020-11-23 16:17:44 -06:00
Allen Byrne
ecbcb4356c
Update release text files (#109)
* Update release text files

* spelling correction

* Update list
2020-11-23 12:04:49 -06:00
Quincey Koziol
5ff09ae971
Basic alignment with async branch (#115)
* Basic alignment with async branch - trivial changes to reduce clutter in overall diff.

* Update minor error code to reflect change within library

* Update the error output to match library
2020-11-23 10:18:26 -06:00
Gerd Heber
d4a3097ec5
Full set of current H5F documentation. (#105)
* First cut of the H5 public API documentation.

* Added H5Z "bonus track."

* Applied Quincey's patch.

* Added the missing patches from Quincey's original patch.

* H5PL (complete) and basic H5VL API documentation.

* Added H5I API docs.

* Added H5L API docs.

* First installment from Elena's H5T batch.

* Second installment of Elena's H5T batch.

* Final installment of Elena's H5T batch.

* Migrated documentation for SWMR functions.

* Catching up on MDC functions.

* Integrated the H5F MDC function documentation.

* Added MDC and parallel H5F functions.

* Slightly updated main page.

* Added doxygen/dox/H5AC_cache_config_t.dox to MANIFEST.
2020-11-20 23:18:14 -06:00
Dana Robinson
133c0ad36f
Minor/id code cleanup (#114)
* Revert "Switch ID code to use a hash table instead of a skip list (#52)"

This reverts commit a50d211755.

* H5I_id_type_t and H5I_class_t are no longer managed via free lists

* Fixed commenting issues

* Naming and commenting cleanup in H5I.c

* H5I cleanup

* Header cleanup
* Commenting
* More uniform naming

* Renames H5I_id_type_t and related in H5I.c

* Adds gcc pragmas to ignore H5I const casting

* Split H5I code into multiple files

* Rename id_type to simply type in H5I code

* Minor typo in H5Itest.c
2020-11-20 23:17:36 -06:00
Dana Robinson
2122a428cd
Corrects use of unitialized bytes in the chunk_info test (#106) 2020-11-20 12:11:36 -06:00
Allen Byrne
8c330c1cb4
chkmanifest will run autogen (#102)
* chkmanifest will run autogen

* remove extension on command

* run autogen first
2020-11-20 10:50:16 -06:00
Dana Robinson
793b3d1bae
Revert "Switch ID code to use a hash table instead of a skip list (#52)" (#104)
This reverts commit a50d211755.
2020-11-19 20:54:00 -06:00
Allen Byrne
fc7ac84e19
Add new files to CMake and MANIFEST (#100)
* Add new header file

* Add missing file
2020-11-19 08:07:01 -06:00
Gerd Heber
0a06b9a869
First cut of the H5 public API documentation. (#80)
* First cut of the H5 public API documentation.

* Added H5Z "bonus track."

* Applied Quincey's patch.

* Added the missing patches from Quincey's original patch.

* H5PL (complete) and basic H5VL API documentation.

* Added H5I API docs.

* Added H5L API docs.

* First installment from Elena's H5T batch.

* Second installment of Elena's H5T batch.

* Final installment of Elena's H5T batch.
2020-11-18 09:06:01 -06:00
Dana Robinson
a50d211755
Switch ID code to use a hash table instead of a skip list (#52)
* Brings hash table ID code over from Bitbucket branch

* Includes reformatting via clang.

* Excludes uthash.h from reformatting.

* Still has the failing test issue in tid.c. This should only be a
  problem if a custom ID type is used and its free function deletes
  other IDs.

* Fixes munged H5_GCC_DIAG_ON/OFF macros in H5I.c

The H5_GCC_DIAG_ON/OFF macros used to turn off fallthrough warnings
in uthash.h (external code) were munged when formatting with clang
due to their lack of quotes.

e.g.;

    H5_GCC_DIAG_OFF(implicit-fallthrough)

was munged to:

    H5_GCC_DIAG_OFF(implicit - fallthrough)

which compiles, but is useless. So, with quotes, this is now:

    H5_GCC_DIAG_OFF("implicit-fallthrough")

which survives reformatting with clang.

* Fixes issues with user callbacks in the ID hash tables

The skip lists (previously) used to handle IDs use a mark-and-sweep
scheme to deal with user-defined ID delete callbacks which themselves delete
other IDs in the list. The uthash hash table implementation used to manage
the IDs in this feature branch does not have this ability.

This commit restores the skip lists for non-library ID types in lieu of
significantly modifying the uthash code. The hash tables are used to
manage the library IDs as those do not delete other IDs when they are
closed.

* Adds uthash.h to MANIFEST

* Removes implicit-fallthrough diagnostic disable

Removing -Wimplicit-fallthrough=5 means that the uthash code
no longer raises warnings so the H5_GCC_DIAG_OFF/ON macros
that disabled those warnings have been removed from H5I.c.

* Adds a test to ensure you can delete IDs in the H5Iiterate() callback
2020-11-17 12:06:39 -06:00
Michael Hirsch
0db2d6c212
obsolete CMAKE_BUILD_TOOL => CMAKE_MAKE_PROGRAM (#97)
CMAKE_BUILD_TOOL has been [replaced](https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TOOL.html) by CMAKE_MAKE_PROGRAM
2020-11-17 07:53:10 -06:00
Larry Knox
d14418e92a
Merge pull request #91 from ksunden/patch-1
Fix spelling of metadata
2020-11-13 14:34:41 -06:00
Kyle Sunden
1e2cbc1b32
Fix spelling of metadata
was spelled "metadatda"
2020-11-13 13:29:22 -06:00
Larry Knox
2ddc379c70
Merge pull request #82 from derobins/minor/skip_list_error
H5SL_release() returns SUCCEED on errors
2020-11-13 13:27:51 -06:00
Larry Knox
184413f7b0
Merge pull request #84 from byrnHDF/develop
Downgrade m4 doxygen macros.
2020-11-13 08:52:45 -06:00
Allen Byrne
ab009d30e5 Correction for location of doxygen folder 2020-11-12 13:14:22 -06:00
Larry Knox
fa40c6c59a
Merge pull request #60 from bmribler/develop
Fix HDFFV-10590
2020-11-12 11:22:10 -06:00
Allen Byrne
07da01a9d0 downgrade doxygen.m4 macro file to previous version. 2020-11-12 10:37:19 -06:00
Binh-Minh Ribler
9cde5c52b8 Fixed typo!! 2020-11-12 10:25:14 -06:00
Larry Knox
cfb82afb80
Merge pull request #81 from jhendersonHDF/develop
Fix non-collective metadata read in t_mdset with collective metadata reads enabled
2020-11-12 10:12:48 -06:00
Allen Byrne
142a1d76bb Add missing entries, remove m4 reference 2020-11-12 09:36:04 -06:00
Binh-Minh Ribler
d8d6332eda Fixed typo! 2020-11-12 08:58:20 -06:00
Dana Robinson
55fab292ae H5SL_release() returns SUCCEED on errors
H5SL_release() erroneously returned SUCCEED on errors. It now
correctly returns ret_value.
2020-11-12 06:41:18 -08:00
Binh-Minh Ribler
52f6d51eac Added line for new file 2020-11-12 08:04:28 -06:00
Larry Knox
04e50c876c
Merge pull request #79 from byrnHDF/develop
Correct TARGET variable and CMake config file location
2020-11-12 06:26:12 -06:00
Binh-Minh Ribler
5b5654bf48 Removed the line, added by mistake. 2020-11-11 22:28:26 -06:00
Binh-Minh Ribler
ff1e052108 Added a missing line. 2020-11-11 22:01:25 -06:00
Jordan Henderson
37fb2ec29a Fix non-collective metadata read in t_mdset with collective metadata reads enabled 2020-11-11 17:10:41 -06:00