summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLarry Knox <lrknox@hdfgroup.org>2022-04-07 04:58:04 (GMT)
committerGitHub <noreply@github.com>2022-04-07 04:58:04 (GMT)
commitdca3192ac4eb1d7ca868ba82b2f87b941f400084 (patch)
tree68bdc1206a88407c1179e0a9699f0ee04ade9b60
parent65348454e24fdd8e5656bd3680edd7a3c1273706 (diff)
parentd95ab56f3dfbabb1f0c8bf4f017fed178e893415 (diff)
downloadhdf5-dca3192ac4eb1d7ca868ba82b2f87b941f400084.zip
hdf5-dca3192ac4eb1d7ca868ba82b2f87b941f400084.tar.gz
hdf5-dca3192ac4eb1d7ca868ba82b2f87b941f400084.tar.bz2
Merge branch 'hdf5_1_12' into spelling-corrections
-rw-r--r--.github/workflows/main.yml3
-rw-r--r--README.md20
-rwxr-xr-xbin/checkposix11
-rw-r--r--bin/h5cc.in2
-rwxr-xr-xbin/make_vers6
-rwxr-xr-xbin/trace8
-rw-r--r--c++/src/H5Location.h2
-rw-r--r--configure.ac66
-rw-r--r--doc/img/release-schedule.plantuml45
-rwxr-xr-xdoc/img/release-schedule.pngbin0 -> 16991 bytes
10 files changed, 105 insertions, 58 deletions
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index b99361e..2282a09 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -9,6 +9,9 @@ on:
- '.github/**'
- 'doc/**'
- 'release_docs/**'
+ - 'ACKNOWLEDGEMENTS'
+ - 'COPYING**'
+ - '**.md'
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
diff --git a/README.md b/README.md
index 9db1dc4..377fff1 100644
--- a/README.md
+++ b/README.md
@@ -69,6 +69,26 @@ use and configuration
https://forum.hdfgroup.org/t/quickstart-guide-welcome-to-the-new-hdf-forum
+RELEASE SCHEDULE
+----------------
+
+![HDF5 release schedule](doc/img/release-schedule.png)
+
+HDF5 does not release on a regular schedule. Instead, releases are driven by
+new features and bug fixes, though we try to have at least one release of each
+maintenance branch per year. Future HDF5 releases indicated on this schedule
+are tentative.
+
+| Release | New Features |
+| ------- | ------------ |
+| 1.13.2 | VFD SWMR, Onion VFD, Selection I/O |
+| 1.13.3 | Multi-Dataset I/O |
+| 1.13.4 | Subfiling |
+
+This list of feature release versions is also tentative, and the specific release
+in which a feature is introduced may change.
+
+
SNAPSHOTS, PREVIOUS RELEASES AND SOURCE CODE
--------------------------------------------
Periodically development code snapshots are provided at the following URL:
diff --git a/bin/checkposix b/bin/checkposix
index 36d07a8..bca259d 100755
--- a/bin/checkposix
+++ b/bin/checkposix
@@ -115,7 +115,7 @@ foreach $arg (@ARGV) {
# These are really HDF5 functions/macros even though they don't
# start with `h' or `H'.
- next if $name =~ /^FUNC_(ENTER|LEAVE)(_(NO)?API|_PACKAGE|_STATIC)?(_NOFS|_NOCLEAR|_NOINIT|_NOPUSH)?(_NOFUNC|_TAG)?$/;
+ next if $name =~ /^FUNC_(ENTER|LEAVE)(_(NO)?API|_PACKAGE|_STATIC)?(_NAMECHECK_ONLY|_NOFS|_NOCLEAR|_NOINIT|_NOPUSH)?(_NOFUNC|_TAG)?$/;
next if $name =~ /^(BEGIN|END)_FUNC$/;
next if $name =~ /^U?INT(8|16|32|64)(ENCODE|DECODE)(_VAR)?$/;
next if $name =~ /^CI_(PRINT_STATS|INC_SRC|INC_DST)$/;
@@ -123,10 +123,13 @@ foreach $arg (@ARGV) {
next if $name =~ /^(MIN3?|MAX3?|NELMTS|POWER_OF_TWO|REGION_OVERFLOW)$/;
next if $name =~ /^(SIZE_OVERFLOW|UNIQUE_MEMBERS|S_ISDIR)$/;
next if $name =~ /^addr_defined$/;
+ next if $name =~ /^TERMINATOR$/;
- # These functions/macros are exempt.
- # op, cb, and OP are often spuriously flagged so ignore them.
- next if $name =~ /^(main|op|cb|OP)$/;
+ # Ignore callback invocation
+ next if $name =~ /^(op|cb|OP|iter_op|func)$/;
+
+ # Ignore main
+ next if $name =~ /^main$/;
# This often appears in preprocessor lines that span multiple lines
next if $name =~ /^(defined)$/;
diff --git a/bin/h5cc.in b/bin/h5cc.in
index 6835b79..966bb40 100644
--- a/bin/h5cc.in
+++ b/bin/h5cc.in
@@ -40,7 +40,7 @@ HL="@HL@"
## $CLINKER $H5BLD_CPPFLAGS $CPPFLAGS $H5BLD_CFLAGS $CFLAGS $LDFLAGS ##
## $LIBS $clibpath $link_objs $link_args $shared_link ##
## ##
-## These settings can be overridden by setting HDF5_CFLAGS, ##
+## These settings can be overridden by setting HDF5_CFLAGS, ##
## HDF5_CPPFLAGS, HDF5_LDFLAGS, or HDF5_LIBS in the environment. ##
## ##
############################################################################
diff --git a/bin/make_vers b/bin/make_vers
index 7e99d88..f1399a4 100755
--- a/bin/make_vers
+++ b/bin/make_vers
@@ -6,10 +6,10 @@ use warnings;
# (The max_idx parameter is the only thing that needs to be changed when adding
# support for a new major release. If support for a prior major release
# is added (like support for 1.4, etc), the min_sup_idx parameter will
-# need to be decremented. - QAK)
+# need to be decremented.)
-# Max. library "index" (0 = v1.0, 1 = 1.2, 2 = 1.4, 3 = 1.6, 4 = 1.8, 5 = 1.10, 6 = 1.12, etc)
-$max_idx = 6;
+# Max. library "index" (0 = v1.0, 1 = 1.2, 2 = 1.4, 3 = 1.6, 4 = 1.8, 5 = 1.10, 6 = 1.12, 7 = 1.14, etc)
+$max_idx = 7;
# Min. supported previous library version "index" (0 = v1.0, 1 = 1.2, etc)
$min_sup_idx = 3;
diff --git a/bin/trace b/bin/trace
index 2b519e4..1159f63 100755
--- a/bin/trace
+++ b/bin/trace
@@ -248,7 +248,9 @@ sub argstring ($$$) {
# Normalize the data type by removing redundant white space,
# certain type qualifiers, and indirection.
- $atype =~ s/^\bconst\b//;
+ $atype =~ s/^\bconst\b//; # Leading const
+ $atype =~ s/\s*const\s*//; # const after type, possibly in the middle of '*'s
+ $atype =~ s/^\bstatic\b//;
$atype =~ s/\bH5_ATTR_UNUSED\b//g;
$atype =~ s/\bH5_ATTR_DEPRECATED_USED\b//g;
$atype =~ s/\bH5_ATTR_NDEBUG_UNUSED\b//g;
@@ -276,7 +278,7 @@ sub argstring ($$$) {
} else {
$tstr = $TypeString{$atype};
}
- return ("*" x $ptr) . ($array?"[$array]":"") . $tstr;
+ return ("*" x $ptr) . ($array ? "[$array]" : "") . $tstr;
}
##############################################################################
@@ -305,7 +307,7 @@ sub rewrite_func ($$$$$) {
my %names;
for $arg (@args) {
- if($arg=~/\w*\.{3}\w*/){
+ if($arg=~/\w*\.{3}\w*/){ # Skip "..." for varargs parameter
next;
}
unless ($arg=~/^(([a-z_A-Z]\w*\s+)+\**)
diff --git a/c++/src/H5Location.h b/c++/src/H5Location.h
index 0aec4d2..e990ec8 100644
--- a/c++/src/H5Location.h
+++ b/c++/src/H5Location.h
@@ -334,7 +334,7 @@ class H5_DLLCPP H5Location : public IdComponent {
#endif // DOXYGEN_SHOULD_SKIP_THIS
// Noop destructor.
- virtual ~H5Location() override;
+ virtual ~H5Location();
}; // end of H5Location
} // namespace H5
diff --git a/configure.ac b/configure.ac
index 3c21cfd..bbb4cfa 100644
--- a/configure.ac
+++ b/configure.ac
@@ -231,9 +231,10 @@ AC_CACHE_CHECK([for cached host], [hdf5_cv_host], [hdf5_cv_host="none"]);
if test $hdf5_cv_host = "none"; then
hdf5_cv_host=$host
elif test $hdf5_cv_host != $host; then
- echo "The config.cache file was generated on $hdf5_cv_host but"
- echo "this is $host. Please remove that file and try again."
- AC_MSG_ERROR([config.cache file is invalid])
+ AC_MSG_ERROR([
+ The config.cache file was generated on $hdf5_cv_host but
+ this is $host. Please remove that file and try again.
+ config.cache file is invalid])
fi
## ----------------------------------------------------------------------
@@ -573,11 +574,7 @@ AC_ARG_ENABLE([fortran],
[Compile the Fortran interface [default=no]])],
[HDF_FORTRAN=$enableval])
-if test "X$HDF_FORTRAN" = "Xyes"; then
- echo "yes"
-else
- echo "no"
-fi
+AC_MSG_RESULT([$HDF_FORTRAN])
if test "X$HDF_FORTRAN" = "Xyes"; then
@@ -800,9 +797,9 @@ AC_ARG_ENABLE([cxx],
[AS_HELP_STRING([--enable-cxx],
[Compile the C++ interface [default=no]])],
[HDF_CXX=$enableval])
+AC_MSG_RESULT([$HDF_CXX])
if test "X$HDF_CXX" = "Xyes"; then
- echo "yes"
HDF5_INTERFACES="$HDF5_INTERFACES c++"
## Expose the compiler for *.in files
@@ -826,7 +823,6 @@ if test "X$HDF_CXX" = "Xyes"; then
PAC_PROG_CXX_OFFSETOF
else
- AC_MSG_RESULT([no])
CXX="no"
fi
@@ -915,7 +911,7 @@ if test "X-$DIMENSION_SCALES_WITH_NEW_REF" = X- ; then
DIMENSION_SCALES_WITH_NEW_REF=no
fi
-case "X-$DIMENSION_SCALES_WITH_NEW_REF" in
+case "X-$DIMENSION_SCALES_WITH_NEW_REF" in
X-yes)
AC_MSG_RESULT([yes])
AC_DEFINE([DIMENSION_SCALES_WITH_NEW_REF], [1],
@@ -1042,7 +1038,7 @@ AC_ARG_ENABLE([java],
if test "X$HDF_JAVA" = "Xyes"; then
if test "X${enable_shared}" != "Xno"; then
- echo "yes"
+ AC_MSG_RESULT([yes])
if test "X$CLASSPATH" = "X"; then
H5_CLASSPATH=".:$srcdir/java/lib"
else
@@ -1135,12 +1131,7 @@ AC_ARG_ENABLE([tests],
[Compile the HDF5 tests [default=yes]])],
[HDF5_TESTS=$enableval])
-if test "X$HDF5_TESTS" = "Xno"; then
- AC_MSG_RESULT([yes])
- echo "Building HDF5 tests is disabled"
-else
- AC_MSG_RESULT([no])
-fi
+AC_MSG_RESULT([$HDF5_TESTS])
## These need to be exposed for some tests.
AC_SUBST([H5_UTILS_TEST_BUILDDIR])
@@ -1165,12 +1156,7 @@ AC_ARG_ENABLE([tools],
[Compile the HDF5 tools [default=yes]])],
[HDF5_TOOLS=$enableval])
-if test "X$HDF5_TOOLS" = "Xno"; then
- AC_MSG_RESULT([yes])
- echo "Building HDF5 tools is disabled"
-else
- AC_MSG_RESULT([no])
-fi
+AC_MSG_RESULT([$HDF5_TOOLS])
## ----------------------------------------------------------------------
## Check if they would like to enable building doxygen files
@@ -1189,8 +1175,9 @@ AC_ARG_ENABLE([doxygen],
[Compile the HDF5 doxygen files [default=no]])],
[HDF5_DOXYGEN=$enableval])
+AC_MSG_RESULT([$HDF5_DOXYGEN])
+
if test "X$HDF5_DOXYGEN" = "Xyes"; then
- AC_MSG_RESULT([yes])
DX_DOXYGEN_FEATURE(ON)
DX_DOT_FEATURE(OFF)
DX_HTML_FEATURE(ON)
@@ -1250,10 +1237,6 @@ if test "X$HDF5_DOXYGEN" = "Xyes"; then
DOXYGEN_PREDEFINED='H5_HAVE_DIRECT H5_HAVE_LIBHDFS H5_HAVE_MAP_API H5_HAVE_PARALLEL H5_HAVE_ROS3_VFD'
DX_INIT_DOXYGEN([HDF5], [./doxygen/Doxyfile], [hdf5lib_docs])
-
-else
- AC_MSG_RESULT([no])
- echo "Doxygen support is disabled"
fi
@@ -1283,18 +1266,17 @@ AC_ARG_ENABLE([static_exec],
[Install only statically linked executables
[default=no]])],
[STATIC_EXEC=$enableval])
+AC_MSG_RESULT([$STATIC_EXEC])
if test "X$STATIC_EXEC" = "Xyes"; then
- echo "yes"
## Issue a warning if -static flag is not supported.
if test "X$lt_cv_prog_compiler_static_works" = "Xno"; then
- echo " warning: -static flag not supported on this system; executable won't statically link shared system libraries."
+ AC_MSG_WARN([-static flag not supported on this system; executable won't statically link shared system libraries.])
LT_STATIC_EXEC=""
else
LT_STATIC_EXEC="-all-static"
fi
else
- echo "no"
LT_STATIC_EXEC=""
fi
AM_CONDITIONAL([USE_PLUGINS_CONDITIONAL], [test "X$LT_STATIC_EXEC" = X])
@@ -1647,6 +1629,7 @@ case "X-$withval" in
;;
esac
+
## ----------------------------------------------------------------------
## Make the external filters list available to *.in files
## At this point it's unset (no external filters by default) but it
@@ -1755,6 +1738,7 @@ fi
## command-line switch. The value is an include path and/or a library path.
## If the library path is specified then it must be preceded by a comma.
##
+AC_SUBST([LL_PATH])
AC_SUBST([USE_FILTER_SZIP]) USE_FILTER_SZIP="no"
AC_ARG_WITH([szlib],
[AS_HELP_STRING([--with-szlib=DIR],
@@ -1839,7 +1823,7 @@ if test "x$HAVE_SZLIB" = "xyes" -a "x$HAVE_SZLIB_H" = "xyes"; then
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$szlib_lib"
fi
- AC_SUBST([LL_PATH]) LL_PATH="$LD_LIBRARY_PATH"
+ LL_PATH="$LD_LIBRARY_PATH"
AC_CACHE_VAL([hdf5_cv_szlib_can_encode],
[AC_RUN_IFELSE(
@@ -1887,13 +1871,8 @@ AM_CONDITIONAL([BUILD_SHARED_SZIP_CONDITIONAL], [test "X$USE_FILTER_SZIP" = "Xye
AC_CACHE_SAVE
## ----------------------------------------------------------------------
-## Enable thread-safe version of library (requires Pthreads on POSIX
-## systems). We usually pick up the system Pthreads library, so --with-pthread
-## is only necessary if you are using a custom Pthreads library or if
-## your OS hides its implementation in an unusual location.
-##
-## On Windows, we use Win32 threads and no special configuration should be
-## required to use them.
+## Enable thread-safe version of library. It requires Pthreads support
+## on POSIX systems.
##
AC_SUBST([THREADSAFE])
@@ -3837,12 +3816,7 @@ AC_ARG_ENABLE([build-all],
[Build helper programs that only developers should need [default=no]])],
[BUILD_ALL=$enableval],
[BUILD_ALL=no])
-
-if test "X$BUILD_ALL" = "Xyes"; then
- echo "yes"
-else
- echo "no"
-fi
+AC_MSG_RESULT([$BUILD_ALL])
AM_CONDITIONAL([BUILD_ALL_CONDITIONAL], [test "X$BUILD_ALL" = "Xyes"])
## ----------------------------------------------------------------------
diff --git a/doc/img/release-schedule.plantuml b/doc/img/release-schedule.plantuml
new file mode 100644
index 0000000..f5aa62a
--- /dev/null
+++ b/doc/img/release-schedule.plantuml
@@ -0,0 +1,45 @@
+The release timeline was generated on PlantUML (https://plantuml.com)
+
+The current script:
+
+@startuml
+title HDF5 Release Schedule
+
+projectscale monthly
+Project starts 2021-01-01
+
+[1.8] starts 2021-01-01 and lasts 114 weeks
+[1.8.22] happens 2021-02-05
+[1.8.23] happens 2022-12-31
+[1.8.23] displays on same row as [1.8.22]
+[1.8] is colored in #CC6677
+
+[1.10] starts 2021-01-01 and lasts 114 weeks
+[1.10.8] happens 2021-10-22
+[1.10.9] happens 2022-05-31
+[1.10.9] displays on same row as [1.10.8]
+[1.10] is colored in #DDCC77
+
+[1.12] starts 2021-01-01 and lasts 114 weeks
+[1.12.1] happens 2021-07-01
+[1.12.2] happens 2022-04-30
+[1.12.2] displays on same row as [1.12.1]
+[1.12] is colored in #88CCEE
+
+[1.13] starts 2021-01-01 and lasts 104 weeks
+[1.13.0] happens 2021-12-01
+[1.13.1] happens 2022-03-02
+[1.13.2] happens 2022-06-31
+[1.13.3] happens 2022-08-31
+[1.13.4] happens 2022-10-31
+[1.13.1] displays on same row as [1.13.0]
+[1.13.2] displays on same row as [1.13.0]
+[1.13.3] displays on same row as [1.13.0]
+[1.13.4] displays on same row as [1.13.0]
+[1.13] is colored in #44AA99
+
+[1.14] starts at 2022-12-31 and lasts 10 weeks
+[1.14.0] happens at 2022-12-31
+[1.14] is colored in #AA4499
+@enduml
+
diff --git a/doc/img/release-schedule.png b/doc/img/release-schedule.png
new file mode 100755
index 0000000..c2ed241
--- /dev/null
+++ b/doc/img/release-schedule.png
Binary files differ