Skip to content

Commit

Permalink
Sync develop changes April 4 -April 22 to hdf5_1_14 (#4437)
Browse files Browse the repository at this point in the history
* Fixed dead links in docs (#4334)

* Revert "Fixed dead links in docs (#4334)" (#4335)

This reverts commit 408fc66.

* Fix grammar and content in HDF5Examples (#4333)

* Remove HD macros for C time functions (#4337)

* HDasctime
* HDclock
* HDctime
* HDdifftime
* HDgmtime
* HDlocaltime
* HDmktime
* HDtime
* HDtzset

HDgettimeofday will be done later

* Remove HD prefix from toupper/tolower (#4340)

* Add VDS and SWMR to documentation (#4336)

* Clean up random number generator code (#4338)

* Clean up random number generator code

Depending on the platform, we use a mix of random, rand, and rand_r
to generate pseudo-random numbers, along with a messy set of ifdefs
in H5private.h. We are not a cryptographic library, only use random
numbers in our test code, and have no need for anything more than the
C standard's (s)rand(). There's no point dithering about using rand()
vs random() when we're also doing bad things like using mod to
restrict the range, which introduces bias.

Also removes CMake/configure checks for rand_r and random

* Remove random/rand_r checks from build system

* Fix missed HDrandom after GitHub merge

* Remove the getting started guide (#4339)

This was moved to the wiki

* Remove noise comment from H5DO.c (#4342)

* Add note about H5Iregister_type hash_table param (#4345)

The hash_table parameter is unused in HDF5 1.8.13 and later, when we moved from using hash tables to skip lists for storing IDs. The current hash table implementation does not use this parameter.

* Remove `#undef ERR` from H5private.h (#4346)

This is an old work-around that is no longer necessary.

The only place where we defined ERR is in h5import, and that code
has been updated (in this PR) to rename ERR to INVALID_TOKEN.

* Add NAMECHECK_ONLY to macro list in .clang-format (#4343)

This caused H5TS.c functions to be mis-formatted

* Remove HD from last non-win32 C89 functions (#4348)

Removes the HD prefix from the last C89 functions with no special
Windows equilvalent:

* rename
* rewind
* setbuf
* signal
* tmpfile

* Fix dead links cont. (#4349)

Added img/images_to_copy.dox as a temporary solution because doxygen didn't copy
the images used in the examples/*.html files - will investigate more.  This was
necessary for the links to intro_SWMR.html and intro_VDS.html.

* Fix a typo (#4352)

* Fix use of possibly uninitialized memory in h5repack (#4354)

* Match content listing with content. (#4357)

* Remove obsolete c++ doxygen config files (#4358)

* Fix typo VERSIO (#4363)

* Removed duplicate entries in compile line for h5* compiler wrappers (#4360)

* h5fc remove duplicate args
* h5 wrappers remove duplicate args

* Added CVE info to RELEASE.txt (#4367)

* Change doxygen version from 1.10.0 to 1.9.7 (#4371)

* Fix all doxygen versions (#4377)

* Change date to data in INSTALL_parallel (#4384)

* Fix a broken link for zlib url (#4383)

* Fix broken links and references in INSTALL_Auto.txt (#4382)

* Remove  signature in comment (#4366)

* switched from \returns to commonly used \return (#4389)

* Add CXX flags (#4359)

* Remove TRACE macros (#4341)

* Set available CMake build types for non-multi-config generators (#4330)

* Correct the high-level library link (#4398)

* Correct the high-level library link

The link currently used points to 1.13 release.  Changed to use the md file instead.

* Update Doxyfile for md files

* Update to include md files

* Add additional terms to the glossary (#4401)

Fixes GH #4390

* added missing doxygen \since (#4410)

* Update Intel oneAPI version to 2024.1 (#4412)

* Update documentation (#4403)

- Added File Image Operations to Technical Notes

* Use a correct example location

* Use aliases for URLs (#4409)

* Fix CXX sanitizer by moving marco include to after CXX code. (#4414)

* Update and use more URL alias (#4413)

* Update documentation (#4415)

Added the replacement for https://docs.hdfgroup.org/archive/support/HDF5/doc/TechNotes/Version.html
Corrected some minor typos and another deadlink

* Remove obsolete file (#4416)

* Update oneAPI version to 2024.1 for Daily Build (#4418)

* Add training videos page (#4422)

* Updates for release_docs/NEWSLETTER.txt. (#4423)

* Add release process markdown file (#4312)

* Lowercase  in File Format Specification (#4424)

* Fixing string in RELEASE_PROCESS.md that is causing a doxygen error - (#4430)

Unsupported xml/html tag <n> found.

* Allow clang-format to format H5Cpkg.h (#4429)

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

* Fix broken links in md files needing full URLs.

* Add URL for Java examples that was accidentally dropped.
Change paths from develop to 1.14 directories for some doxygen generated
files.

* Correct typo.

* Fix 2 more dead URLs.

* Revert "Clean up random number generator code (#4338)"

This reverts commit 58e4d08.
  • Loading branch information
lrknox authored Apr 25, 2024
1 parent ee255ee commit 5086959
Show file tree
Hide file tree
Showing 210 changed files with 4,833 additions and 4,866 deletions.
4 changes: 3 additions & 1 deletion .clang-format
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ BraceWrapping:
BreakBeforeBraces: Stroustrup
BreakAfterJavaFieldAnnotations: true
BreakStringLiterals: true
ColumnLimit: 110 # Update $max_trace_macro_line_len in bin/trace also
ColumnLimit: 110
IndentWidth: 4
---
Language: Cpp
Expand Down Expand Up @@ -68,12 +68,14 @@ StatementMacros:
- CATCH
- END_MEMBERS
- FUNC_ENTER_API
- FUNC_ENTER_API_NAMECHECK_ONLY
- FUNC_ENTER_NOAPI
- FUNC_ENTER_NOAPI_NOERR
- FUNC_ENTER_NOAPI_NOINIT
- FUNC_ENTER_NOAPI_NOINIT_NOERR
- FUNC_ENTER_PACKAGE
- FUNC_LEAVE_API
- FUNC_LEAVE_API_NAMECHECK_ONLY
- FUNC_LEAVE_NOAPI
- FUNC_LEAVE_NOAPI_NOFS
- H5E_END_TRY
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/cmake-ctest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -411,7 +411,7 @@ jobs:
id: setup-fortran
with:
compiler: intel
version: '2023.2'
version: '2024.1'

- name: Enable Developer Command Prompt
uses: ilammy/msvc-dev-cmd@v1.13.0
Expand Down Expand Up @@ -510,7 +510,7 @@ jobs:
id: setup-fortran
with:
compiler: intel
version: '2023.2'
version: '2024.1'

- name: Set file base name (Linux_intel)
id: set-file-base
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/intel-auto.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
id: setup-fortran
with:
compiler: intel
version: '2024.0'
version: '2024.1'

- name: Autotools Configure
shell: bash
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/intel-cmake.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
id: setup-fortran
with:
compiler: intel
version: '2024.0'
version: '2024.1'

- name: CMake Configure (Linux)
shell: bash
Expand Down Expand Up @@ -85,7 +85,7 @@ jobs:
id: setup-fortran
with:
compiler: intel
version: '2024.0'
version: '2024.1'

- name: CMake Configure (Windows)
shell: pwsh
Expand Down
72 changes: 36 additions & 36 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -533,42 +533,6 @@ if (BUILD_STATIC_EXECS)
endif ()
endif ()

option (HDF5_ENABLE_ANALYZER_TOOLS "enable the use of Clang tools" OFF)
mark_as_advanced (HDF5_ENABLE_ANALYZER_TOOLS)
if (HDF5_ENABLE_ANALYZER_TOOLS)
include (${HDF5_SOURCE_DIR}/config/sanitizer/tools.cmake)
endif ()
option (HDF5_ENABLE_SANITIZERS "execute the Clang sanitizer" OFF)
mark_as_advanced (HDF5_ENABLE_SANITIZERS)
if (HDF5_ENABLE_SANITIZERS)
include (${HDF5_SOURCE_DIR}/config/sanitizer/sanitizers.cmake)
endif ()
option (HDF5_ENABLE_FORMATTERS "format source files" OFF)
mark_as_advanced (HDF5_ENABLE_FORMATTERS)
if (HDF5_ENABLE_FORMATTERS)
include (${HDF5_SOURCE_DIR}/config/sanitizer/formatting.cmake)
endif ()

#-----------------------------------------------------------------------------
# Option to use code coverage
#-----------------------------------------------------------------------------
option (HDF5_ENABLE_COVERAGE "Enable code coverage for Libraries and Programs" OFF)
if (HDF5_ENABLE_COVERAGE)
include (${HDF5_SOURCE_DIR}/config/sanitizer/code-coverage.cmake)
if(CODE_COVERAGE AND CODE_COVERAGE_ADDED)
add_code_coverage () # Adds instrumentation to all targets
else ()
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0 --coverage -fprofile-arcs -ftest-coverage")
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g --coverage -O0 -fprofile-arcs -ftest-coverage")
if (CMAKE_C_COMPILER_ID STREQUAL "GNU")
set (LDFLAGS "${LDFLAGS} -fprofile-arcs -ftest-coverage")
link_libraries (gcov)
else ()
set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --coverage")
endif ()
endif ()
endif ()

#-----------------------------------------------------------------------------
# Option to indicate using a memory checker
#-----------------------------------------------------------------------------
Expand Down Expand Up @@ -1175,4 +1139,40 @@ if (EXISTS "${HDF5_SOURCE_DIR}/HDF5Examples" AND IS_DIRECTORY "${HDF5_SOURCE_DIR
endif ()
endif ()

option (HDF5_ENABLE_ANALYZER_TOOLS "enable the use of Clang tools" OFF)
mark_as_advanced (HDF5_ENABLE_ANALYZER_TOOLS)
if (HDF5_ENABLE_ANALYZER_TOOLS)
include (${HDF5_SOURCE_DIR}/config/sanitizer/tools.cmake)
endif ()
option (HDF5_ENABLE_SANITIZERS "execute the Clang sanitizer" OFF)
mark_as_advanced (HDF5_ENABLE_SANITIZERS)
if (HDF5_ENABLE_SANITIZERS)
include (${HDF5_SOURCE_DIR}/config/sanitizer/sanitizers.cmake)
endif ()
option (HDF5_ENABLE_FORMATTERS "format source files" OFF)
mark_as_advanced (HDF5_ENABLE_FORMATTERS)
if (HDF5_ENABLE_FORMATTERS)
include (${HDF5_SOURCE_DIR}/config/sanitizer/formatting.cmake)
endif ()

#-----------------------------------------------------------------------------
# Option to use code coverage
#-----------------------------------------------------------------------------
option (HDF5_ENABLE_COVERAGE "Enable code coverage for Libraries and Programs" OFF)
if (HDF5_ENABLE_COVERAGE)
include (${HDF5_SOURCE_DIR}/config/sanitizer/code-coverage.cmake)
if(CODE_COVERAGE AND CODE_COVERAGE_ADDED)
add_code_coverage () # Adds instrumentation to all targets
else ()
set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -O0 --coverage -fprofile-arcs -ftest-coverage")
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g --coverage -O0 -fprofile-arcs -ftest-coverage")
if (CMAKE_C_COMPILER_ID STREQUAL "GNU")
set (LDFLAGS "${LDFLAGS} -fprofile-arcs -ftest-coverage")
link_libraries (gcov)
else ()
set (CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --coverage")
endif ()
endif ()
endif ()

include (CMakeInstallation.cmake)
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,7 @@ Please make sure that you check the items applicable to your pull request:
* [ ] If changes were done to Autotools build, were they added to CMake and vice versa?
* [ ] Is the pull request applicable to any other branches? If yes, which ones? Please document it in the GitHub issue.
* [ ] Is the new code sufficiently documented for future maintenance?
* [ ] Does the new feature require a change to an existing API? See "API Compatibility Macros" document (https://docs.hdfgroup.org/hdf5/v1_14/api-compat-macros.html)
* [ ] Does the new feature require a change to an existing API? See "API Compatibility Macros" document (https://hdfgroup.github.io/hdf5/v1_14/api-compat-macros.html)
* Documentation
* [ ] Was the change described in the release_docs/RELEASE.txt file?
* [ ] Was the new function documented in the corresponding public header file using [Doxygen](https://hdfgroup.github.io/hdf5/v1_14/_r_m_t.html)?
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,15 +21,15 @@ DOCUMENTATION
-------------
This release is fully functional for the API described in the documentation.

https://docs.hdfgroup.org/hdf5/v1_14/_l_b_a_p_i.html
[HDF5 C API](https://hdfgroup.github.io/hdf5/v1_14/_l_b_a_p_i.html)

Full Documentation and Programming Resources for this release can be found at

https://docs.hdfgroup.org/hdf5/v1_14/index.html
[Full Documentation](https://hdfgroup.github.io/hdf5/v1_14/index.html)

The latest doxygen documentation generated on changes to HDF5 1.14.x is available at:

https://hdfgroup.github.io/hdf5/
https://hdfgroup.github.io/hdf5/v1_14

See the [RELEASE.txt](release_docs/RELEASE.txt) file in the [release_docs/](release_docs/) directory for information specific
to the features and updates included in this release of the library.
Expand Down
5 changes: 2 additions & 3 deletions autogen.sh
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,8 @@ echo
# compilation.

# Run trace script
# The trace script adds H5TRACE macros to library source files. It should
# have no effect on files that don't have HDF5 API macros in them.
echo "Running trace script:"
# The trace script updates H5ARG_TRACE macros in library source files.
echo "Running arg trace script:"
bin/trace src/H5*.c || exit 1
echo

Expand Down
2 changes: 1 addition & 1 deletion bin/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ Programs run via `autogen.sh` (or the equivalent in CMake) are indicated.
|`restore.sh`|Removes files generated by `autogen.sh`|
|`runbkprog`|Used by CMake to run test programs in the background|
|`switch_maint_mode`|Switches maintainer mode on/off in `configure.ac`|
|`trace`|Adds `TRACE` macros to HDF5 C library source files (run by `autogen.sh`)|
|`trace`|Updates `H5ARG_TRACE` macros in H5ES\_insert() calls (run by `autogen.sh`)|
|`warnhist`|Generates compiler warning statistics for gcc/clang when fed output of make|

## TODO
Expand Down
2 changes: 1 addition & 1 deletion bin/release
Original file line number Diff line number Diff line change
Expand Up @@ -455,7 +455,7 @@ cp -p Makefile.dist Makefile

# Update README.md and release_docs/RELEASE.txt with release information in
# line 1.
for f in README.md release_docs/RELEASE.txt; do
for f in README.md release_docs/RELEASE.txt release_docs/NEWSLETTER.txt; do
echo "HDF5 version $VERS released on $release_date" >$f.x
sed -e 1d $f >>$f.x
mv $f.x $f
Expand Down
Loading

0 comments on commit 5086959

Please sign in to comment.