Merge branch 'master' into ejh_quantize_2

This commit is contained in:
Edward Hartnett 2021-08-26 23:05:59 -06:00 committed by GitHub
commit 2db4311b87
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
21 changed files with 1519 additions and 58 deletions

View File

@ -57,7 +57,7 @@ jobs:
nc-autotools:
needs: build-deps
needs: [ nc-cmake-tests-oneoff, nc-ac-tests-oneoff ]
runs-on: ubuntu-latest
strategy:
@ -164,7 +164,7 @@ jobs:
nc-cmake:
needs: build-deps
needs: [ nc-cmake-tests-oneoff, nc-ac-tests-oneoff ]
runs-on: ubuntu-latest
strategy:
@ -250,3 +250,172 @@ jobs:
cd build
LD_LIBRARY_PATH=${LD_LIBRARY_PATH} ctest -j 12 .
if: ${{ success() }}
- name: Verbose Output if CTest Failure
shell: bash -l {0}
run: |
cd build
LD_LIBRARY_PATH=${LD_LIBRARY_PATH} ctest -j 12 --rerun-failed --output-on-failure -VV
if: ${{ failure() }}
#####
# One-Off Autotools-based tests.
#####
nc-ac-tests-oneoff:
needs: build-deps
runs-on: ubuntu-latest
strategy:
matrix:
hdf5: [ 1.10.7 ]
steps:
- uses: actions/checkout@v2
- name: Install System dependencies
shell: bash -l {0}
run: sudo apt update && sudo apt install -y libaec-dev zlib1g-dev automake autoconf libcurl4-openssl-dev libjpeg-dev wget curl bzip2 m4 flex bison cmake libzip-dev
###
# Set Environmental Variables
###
- run: echo "CFLAGS=-I${HOME}/environments/${{ matrix.hdf5 }}/include" >> $GITHUB_ENV
- run: echo "LDFLAGS=-L${HOME}/environments/${{ matrix.hdf5 }}/lib" >> $GITHUB_ENV
- run: echo "LD_LIBRARY_PATH=${HOME}/environments/${{ matrix.hdf5 }}/lib" >> $GITHUB_ENV
###
# Fetch Cache
###
- name: Fetch HDF Cache
id: cache-hdf
uses: actions/cache@v2
with:
path: ~/environments/${{ matrix.hdf5 }}
key: hdf5-${{ runner.os }}-${{ matrix.hdf5 }}
- name: Check Cache
shell: bash -l {0}
run: ls ${HOME}/environments && ls ${HOME}/environments/${{ matrix.hdf5 }} && ls ${HOME}/environments/${{ matrix.hdf5}}/lib
###
# Configure and build
###
- name: Run autoconf
shell: bash -l {0}
run: autoreconf -if
- name: Configure
shell: bash -l {0}
run: CFLAGS=${CFLAGS} LDFLAGS=${LDFLAGS} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} ./configure --enable-hdf4 --enable-hdf5 --enable-dap --enable-dap-long-tests
if: ${{ success() }}
- name: Look at config.log if error
shell: bash -l {0}
run: cat config.log
if: ${{ failure() }}
- name: Print Summary
shell: bash -l {0}
run: cat libnetcdf.settings
- name: Build Library and Utilities
shell: bash -l {0}
run: CFLAGS=${CFLAGS} LDFLAGS=${LDFLAGS} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} make -j
if: ${{ success() }}
- name: Build Tests
shell: bash -l {0}
run: CFLAGS=${CFLAGS} LDFLAGS=${LDFLAGS} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} make check TESTS="" -j
if: ${{ success() }}
- name: Run Tests
shell: bash -l {0}
run: CFLAGS=${CFLAGS} LDFLAGS=${LDFLAGS} LD_LIBRARY_PATH=${LD_LIBRARY_PATH} make check -j
if: ${{ success() }}
#####
# One-Off CMake-based tests.
#####
nc-cmake-tests-oneoff:
needs: build-deps
runs-on: ubuntu-latest
strategy:
matrix:
hdf5: [ 1.10.7]
steps:
- uses: actions/checkout@v2
- name: Install System dependencies
shell: bash -l {0}
run: sudo apt update && sudo apt install -y libaec-dev zlib1g-dev automake autoconf libcurl4-openssl-dev libjpeg-dev wget curl bzip2 m4 flex bison cmake libzip-dev
###
# Set Environmental Variables
###
- run: echo "CMAKE_PREFIX_PATH=${HOME}/environments/${{ matrix.hdf5 }}/" >> $GITHUB_ENV
- run: echo "LD_LIBRARY_PATH=${HOME}/environments/${{ matrix.hdf5 }}/lib" >> $GITHUB_ENV
###
# Fetch Cache
###
- name: Fetch HDF Cache
id: cache-hdf5
uses: actions/cache@v2
with:
path: ~/environments/${{ matrix.hdf5 }}
key: hdf5-${{ runner.os }}-${{ matrix.hdf5 }}
- name: Check Cache
shell: bash -l {0}
run: ls ${HOME}/environments && ls ${HOME}/environments/${{ matrix.hdf5 }} && ls ${HOME}/environments/${{ matrix.hdf5}}/lib
###
# Configure and build
###
- name: Perform out-of-directory build
shell: bash -l {0}
run: |
mkdir build
cd build
LD_LIBRARY_PATH=${LD_LIBRARY_PATH} cmake .. -DENABLE_HDF4=TRUE -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} -DENABLE_DAP=TRUE -DENABLE_HDF5=TRUE -DENABLE_NCZARR=TRUE -D ENABLE_DAP_LONG_TESTS=TRUE
- name: Print Summary
shell: bash -l {0}
run: |
cd build
cat libnetcdf.settings
- name: Build All
shell: bash -l {0}
run: |
cd build
LD_LIBRARY_PATH=${LD_LIBRARY_PATH} make -j 12
if: ${{ success() }}
- name: Run Tests
shell: bash -l {0}
run: |
cd build
LD_LIBRARY_PATH=${LD_LIBRARY_PATH} ctest -j 12 .
if: ${{ success() }}
- name: Verbose Output if CTest Failure
shell: bash -l {0}
run: |
cd build
LD_LIBRARY_PATH=${LD_LIBRARY_PATH} ctest -j 12 --rerun-failed --output-on-failure -VV
if: ${{ failure() }}

View File

@ -2192,6 +2192,7 @@ is_enabled(ENABLE_NCZARR_S3_TESTS DO_NCZARR_S3_TESTS)
is_enabled(ENABLE_MULTIFILTERS HAS_MULTIFILTERS)
is_enabled(ENABLE_NCZARR_ZIP DO_NCZARR_ZIP_TESTS)
is_enabled(ENABLE_QUANTIZE HAS_QUANTIZE)
is_enabled(ENABLE_LOGGING HAS_LOGGING)
# Generate file from template.
CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/libnetcdf.settings.in"

View File

@ -7,6 +7,8 @@ This file contains a high-level description of this package's evolution. Release
## 4.8.2 - TBD
* [Bug Fix] Make PR 2075 long file name be idempotent. See [Github #2094](https://github.com/Unidata/netcdf-c/pull/2094).
## 4.8.1 - August 18, 2021
* [Bug Fix] Fix multiple bugs in libnczarr. See [Github #2066](https://github.com/Unidata/netcdf-c/pull/2066).

View File

@ -1650,6 +1650,7 @@ AC_SUBST(DO_NCZARR_S3_TESTS,[$enable_nczarr_s3_tests])
AC_SUBST(HAS_MULTIFILTERS,[$has_multifilters])
AC_SUBST(DO_NCZARR_ZIP_TESTS,[$enable_nczarr_zip])
AC_SUBST([HAS_QUANTIZE],[yes])
AC_SUBST(HAS_LOGGING,[$enable_logging])
# Include some specifics for netcdf on windows.
#AH_VERBATIM([_WIN32_STRICMP],
@ -1722,6 +1723,7 @@ AX_SET_META([NC_HAS_PAR_FILTERS], [$hdf5_supports_par_filters],[yes])
AX_SET_META([NC_HAS_BYTERANGE],[$enable_byterange],[yes])
AX_SET_META([NC_HAS_NCZARR],[$enable_nczarr],[yes])
AX_SET_META([NC_HAS_MULTIFILTERS],[$has_multifilters],[yes])
AX_SET_META([NC_HAS_LOGGING],[$enable_logging],[yes])
# This is the version of the dispatch table. If the dispatch table is
# changed, this should be incremented, so that user-defined format

View File

@ -12,7 +12,9 @@ FILE(COPY ${COPY_FILES} DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/ FILE_PERMISSION
##
# Rename file in support of https://github.com/Unidata/netcdf-c/issues/2077
##
IF(NOT EXISTS ${CMAKE_CURRENT_BINARY_DIR}/GOES16_CONUS_20170821_020218_0.47_1km_33.3N_91.4W.nc4.thredds)
FILE(RENAME ${CMAKE_CURRENT_BINARY_DIR}/GOES16_TEST1.nc4.thredds ${CMAKE_CURRENT_BINARY_DIR}/GOES16_CONUS_20170821_020218_0.47_1km_33.3N_91.4W.nc4.thredds)
ENDIF()
FILE(GLOB CUR_EXTRA_DIST RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/*)
SET(CUR_EXTRA_DIST ${CUR_EXTRA_DIST} CMakeLists.txt)

View File

@ -220,12 +220,6 @@ TAB_SIZE = 4
ALIASES =
# This tag can be used to specify a number of word-keyword mappings (TCL only).
# A mapping has the form "name=value". For example adding "class=itcl::class"
# will allow you to use the command class in the itcl::class meaning.
TCL_SUBST =
# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
# only. Doxygen will then generate output that is more tailored for C. For
# instance, some of the names that are used will be different. The list of all
@ -751,7 +745,6 @@ INPUT = \
@abs_top_srcdir@/docs/byterange.dox \
@abs_top_srcdir@/docs/inmemory.md \
@abs_top_srcdir@/docs/auth.md \
@abs_top_srcdir@/docs/filters.md \
@abs_top_srcdir@/docs/nczarr.md \
@abs_top_srcdir@/docs/notes.md \
@abs_top_srcdir@/docs/all-error-codes.md \
@ -1076,13 +1069,6 @@ VERBATIM_HEADERS = YES
ALPHABETICAL_INDEX = NO
# The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in
# which the alphabetical index list will be split.
# Minimum value: 1, maximum value: 20, default value: 5.
# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
COLS_IN_ALPHA_INDEX = 5
# In case all classes in a project start with a common prefix, all classes will
# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag
# can be used to specify a prefix (or a list of prefixes) that should be ignored
@ -1182,7 +1168,7 @@ HTML_EXTRA_STYLESHEET = @DOXYGEN_CSS_FILE@
# files will be copied as-is; there are no commands or markers available.
# This tag requires that the tag GENERATE_HTML is set to YES.
HTML_EXTRA_FILES =
HTML_EXTRA_FILES = images/uniLogo.png
# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
# will adjust the colors in the stylesheet and background images according to
@ -1680,7 +1666,7 @@ COMPACT_LATEX = NO
# The default value is: a4.
# This tag requires that the tag GENERATE_LATEX is set to YES.
PAPER_TYPE = a4wide
PAPER_TYPE = a4
# The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names
# that should be included in the LaTeX output. To get the times font for
@ -1757,16 +1743,6 @@ LATEX_BATCHMODE = NO
LATEX_HIDE_INDICES = NO
# If the LATEX_SOURCE_CODE tag is set to YES then doxygen will include source
# code with syntax highlighting in the LaTeX output.
#
# Note that which sources are shown also depends on other settings such as
# SOURCE_BROWSER.
# The default value is: NO.
# This tag requires that the tag GENERATE_LATEX is set to YES.
LATEX_SOURCE_CODE = NO
# The LATEX_BIB_STYLE tag can be used to specify the style to use for the
# bibliography, e.g. plainnat, or ieeetr. See
# http://en.wikipedia.org/wiki/BibTeX and \cite for more info.

View File

@ -8,13 +8,13 @@
<!--END !GENERATE_TREEVIEW-->
<hr size="2" />
<address style="text-align: center;">
<a href="http://www.unidata.ucar.edu/software/netcdf/">Return to the Main Unidata NetCDF page.</a><br>
<img src="http://www.unidata.ucar.edu/images/logos/uniLogo.png">
<a href="https://www.unidata.ucar.edu/software/netcdf/">Return to the Main Unidata NetCDF page.</a><br>
<img src="./$relpath^/uniLogo.png">
</address>
<address style="text-align: right;"><small>
Generated on $datetime for $projectname. NetCDF is
a <a href="http://www.unidata.ucar.edu/">Unidata</a> library.</small>
a <a href="https://www.unidata.ucar.edu/">Unidata</a> library.</small>
</address>
</div>
</body>

View File

@ -8,4 +8,4 @@
EXTRA_DIST = aqua.jpg chunking2.png compatibility3.png compression.png \
groups.png nc4-model.png ncatts.png nc-classic-uml.png nccoords.png \
ncfile.png pnetcdf.png terra.jpg netcdf_architecture.png \
deptree.jpg InstallTreeWindows.png
deptree.jpg InstallTreeWindows.png uniLogo.png

BIN
docs/images/uniLogo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

View File

@ -60,11 +60,11 @@ When installed, the netCDF libraries are placed in the specified locations, alon
1. When building the netCDF-C libraries with netCDF4 support, using the `Debug` libraries may cause extraneous warnings. These warnings are related to cross-dll memory management, and appear to be harmless. You can safely ignore them by using the `Release` libraries. [NCF-220]
[r1]: https://artifacts.unidata.ucar.edu/service/rest/repository/browse/downloads-netcdf-c/major.minor.point/windows_installers/netCDFmajor.minor.point-NC3-32.exe
[r2]: https://artifacts.unidata.ucar.edu/service/rest/repository/browse/downloads-netcdf-c/major.minor.point/windows_installers/netCDFmajor.minor.point-NC3-DAP-32.exe
[r3]: https://artifacts.unidata.ucar.edu/service/rest/repository/browse/downloads-netcdf-c/major.minor.point/windows_installers/netCDFmajor.minor.point-NC4-32.exe
[r4]: https://artifacts.unidata.ucar.edu/service/rest/repository/browse/downloads-netcdf-c/major.minor.point/windows_installers/netCDFmajor.minor.point-NC4-DAP-32.exe
[r5]: https://artifacts.unidata.ucar.edu/service/rest/repository/browse/downloads-netcdf-c/major.minor.point/windows_installers/netCDFmajor.minor.point-NC3-64.exe
[r6]: https://artifacts.unidata.ucar.edu/service/rest/repository/browse/downloads-netcdf-c/major.minor.point/windows_installers/netCDFmajor.minor.point-NC3-DAP-64.exe
[r7]: https://artifacts.unidata.ucar.edu/service/rest/repository/browse/downloads-netcdf-c/major.minor.point/windows_installers/netCDFmajor.minor.point-NC4-64.exe
[r8]: https://artifacts.unidata.ucar.edu/service/rest/repository/browse/downloads-netcdf-c/major.minor.point/windows_installers/netCDFmajor.minor.point-NC4-DAP-64.exe
[r1]: https://downloads.unidata.ucar.edu/netcdf-c//major.minor.point/windows_installers/netCDFmajor.minor.point-NC3-32.exe
[r2]: https://downloads.unidata.ucar.edu/netcdf-c//major.minor.point/windows_installers/netCDFmajor.minor.point-NC3-DAP-32.exe
[r3]: https://downloads.unidata.ucar.edu/netcdf-c//major.minor.point/windows_installers/netCDFmajor.minor.point-NC4-32.exe
[r4]: https://downloads.unidata.ucar.edu/netcdf-c//major.minor.point/windows_installers/netCDFmajor.minor.point-NC4-DAP-32.exe
[r5]: https://downloads.unidata.ucar.edu/netcdf-c//major.minor.point/windows_installers/netCDFmajor.minor.point-NC3-64.exe
[r6]: https://downloads.unidata.ucar.edu/netcdf-c//major.minor.point/windows_installers/netCDFmajor.minor.point-NC3-DAP-64.exe
[r7]: https://downloads.unidata.ucar.edu/netcdf-c//major.minor.point/windows_installers/netCDFmajor.minor.point-NC4-64.exe
[r8]: https://downloads.unidata.ucar.edu/netcdf-c//major.minor.point/windows_installers/netCDFmajor.minor.point-NC4-DAP-64.exe

View File

@ -47,7 +47,7 @@
#define NC_HAS_SZIP_WRITE @NC_HAS_SZIP@ /*!< szip write support (HDF5 only) */
#define NC_HAS_DAP2 @NC_HAS_DAP2@ /*!< DAP2 support. */
#define NC_HAS_DAP4 @NC_HAS_DAP4@ /*!< DAP4 support. */
#define NC_HAS_BYTERANGE @HAS_BYTERANGE@
#define NC_HAS_BYTERANGE @NC_HAS_BYTERANGE@ /*!< Byterange support. */
#define NC_HAS_DISKLESS @NC_HAS_DISKLESS@ /*!< diskless support. */
#define NC_HAS_MMAP @NC_HAS_MMAP@ /*!< mmap support. */
#define NC_HAS_JNA @NC_HAS_JNA@ /*!< jna support. */
@ -55,13 +55,14 @@
#define NC_HAS_PARALLEL4 @NC_HAS_PARALLEL4@ /*!< parallel IO support via HDF5 */
#define NC_HAS_PARALLEL @NC_HAS_PARALLEL@ /*!< parallel IO support via HDF5 and/or PnetCDF. */
#define NC_HAS_CDF5 @NC_HAS_CDF5@ /*!< CDF5 support. */
#define NC_HAS_ERANGE_FILL @NC_HAS_ERANGE_FILL@ /*!< ERANGE_FILL Support */
#define NC_RELAX_COORD_BOUND 1 /*!< RELAX_COORD_BOUND */
#define NC_DISPATCH_VERSION @NC_DISPATCH_VERSION@ /*!< Dispatch table version */
#define NC_HAS_PAR_FILTERS @NC_HAS_PAR_FILTERS@ /* Parallel I/O with filter support. */
#define NC_HAS_NCZARR @NC_HAS_NCZARR@
#define NC_HAS_MULTIFILTERS @NC_HAS_MULTIFILTERS@
#define NC_HAS_QUANTIZE @NC_HAS_QUANTIZE@
#define NC_HAS_CDF5 @NC_HAS_CDF5@ /*!< CDF5 support. */
#define NC_HAS_ERANGE_FILL @NC_HAS_ERANGE_FILL@ /*!< ERANGE_FILL Support. */
#define NC_RELAX_COORD_BOUND 1 /*!< Always allow 0 counts in parallel I/O. */
#define NC_DISPATCH_VERSION @NC_DISPATCH_VERSION@ /*!< Dispatch table version. */
#define NC_HAS_PAR_FILTERS @NC_HAS_PAR_FILTERS@ /* Parallel I/O with filter support. */
#define NC_HAS_NCZARR @NC_HAS_NCZARR@ /*!< Parallel I/O with filter support. */
#define NC_HAS_MULTIFILTERS @NC_HAS_MULTIFILTERS@ /*!< Nczarr support. */
#define NC_HAS_LOGGING @NC_HAS_LOGGING@ /*!< Logging support. */
#define NC_HAS_QUANTIZE @NC_HAS_QUANTIZE@
#endif

View File

@ -46,4 +46,4 @@ Parallel Filters: @HAS_PAR_FILTERS@
NCZarr Support: @HAS_NCZARR@
Multi-Filter Support: @HAS_MULTIFILTERS@
Quantization: @HAS_QUANTIZE@
Logging: @HAS_LOGGING@

View File

@ -35,7 +35,8 @@ IF(ENABLE_TESTS)
IF(BUILD_UTILITIES)
add_sh_test(ncdap tst_ncdap3)
add_sh_test(ncdap testpathcvt)
ENDIF()
SET_TESTS_PROPERTIES(ncdap_tst_ncdap3 ncdap_testpathcvt PROPERTIES RUN_SERIAL TRUE)
ENDIF()
IF(NOT MSVC)
add_bin_env_test(ncdap t_dap3a)
@ -55,8 +56,11 @@ IF(ENABLE_TESTS)
IF(ENABLE_DAP_LONG_TESTS)
add_sh_test(ncdap tst_longremote3)
add_bin_test(ncdap test_manyurls)
SET_TESTS_PROPERTIES(ncdap_tst_longremote3 ncdap_test_manyurls PROPERTIES RUN_SERIAL TRUE)
ENDIF(ENABLE_DAP_LONG_TESTS)
SET_TESTS_PROPERTIES(ncdap_tst_remote3 PROPERTIES RUN_SERIAL TRUE)
ENDIF(BUILD_UTILITIES)
IF(ENABLE_DAP_AUTH_TESTS)

View File

@ -56,8 +56,10 @@ TESTS += test_partvar
if ENABLE_DAP_LONG_TESTS
TESTS += tst_longremote3.sh
tst_longremote3.log: tst_remote3.log
check_PROGRAMS += test_manyurls
TESTS += test_manyurls
test_manyurls.log: tst_longremote3.log
endif
test_partvar_SOURCES = test_partvar.c
@ -92,7 +94,7 @@ SUBDIRS = testdata3 expected3 expectremote3
EXTRA_DIST = tst_ncdap3.sh \
tst_remote3.sh \
tst_longremote3.sh \
tst_zero_len_var.sh \
tst_zero_len_var.sh \
tst_filelists.sh tst_urls.sh tst_utils.sh \
t_dap.c CMakeLists.txt tst_formatx.sh testauth.sh testurl.sh \
t_ncf330.c tst_ber.sh tst_fillmismatch.sh tst_encode.sh testpathcvt.sh \

1302
ncdap_test/manyurls.h Executable file

File diff suppressed because it is too large Load Diff

View File

@ -51,7 +51,7 @@ VALGRIND="valgrind -q --error-exitcode=2 --leak-check=full"
fi
rm -fr ${RESULTSDIR}
mkdir "${RESULTSDIR}"
mkdir -p "${RESULTSDIR}"
rm -f ./.dodsrc ./.ocrc ./.daprc
passcount=0

View File

@ -34,7 +34,7 @@ EXPECTED="$expected3"
RESULTSDIR="file_results"
rm -fr ${RESULTSDIR}
mkdir "${RESULTSDIR}"
mkdir -p "${RESULTSDIR}"
echo "*** Testing $TITLE "
echo " Base URL: ${TESTURL}"

View File

@ -195,7 +195,7 @@ fi
if test "x$timing" = "x1" ; then TIMECMD="time"; else TIMECMD=""; fi
rm -fr ${RESULTSDIR}
mkdir "${RESULTSDIR}"
mkdir -p "${RESULTSDIR}"
passcount=0
xfailcount=0

View File

@ -26,7 +26,7 @@ EXPECTED="$expected3"
RESULTSDIR="remote_results"
rm -fr ${RESULTSDIR}
mkdir "${RESULTSDIR}"
mkdir -p "${RESULTSDIR}"
echo "*** Testing $TITLE "
echo " Base URL: ${DTS}"

View File

@ -69,7 +69,7 @@ VALGRIND="valgrind -q --error-exitcode=2 --leak-check=full"
fi
rm -fr ${RESULTSDIR}
mkdir "${RESULTSDIR}"
mkdir -p "${RESULTSDIR}"
passcount=0
xfailcount=0

View File

@ -96,7 +96,7 @@ VALGRIND="valgrind -q --error-exitcode=2 --leak-check=full"
fi
rm -fr ${RESULTSDIR}
mkdir "${RESULTSDIR}"
mkdir -p "${RESULTSDIR}"
passcount=0
xfailcount=0