Commit Graph

9417 Commits

Author SHA1 Message Date
Ward Fisher
5f37f7639a Merge branch 'main' into v4.9.2-wellspring.wif 2023-03-14 13:58:59 -06:00
Ward Fisher
43abd699e1
Merge pull request #2661 from WardF/hdf5-1.14.0-ci.wif
Add hdf5 1.14.0 to GitHub CI.
2023-03-14 13:57:52 -06:00
Dennis Heimbigner
e439a0788b Fix run_jsonconvention.sh to be resilient against irrelevant changes to _NCProperties. 2023-03-14 13:46:31 -06:00
Ward Fisher
331ed2bdab Expand CI testing with HDF5 1.14.0 2023-03-14 11:47:57 -06:00
Ward Fisher
77738e546d Add hdf5 1.14.0 to GitHub CI. 2023-03-14 11:39:14 -06:00
Ward Fisher
97dbb4f25b
Merge pull request #2635 from DennisHeimbigner/vfd13.dmh
Extend the dispatch table for H5FD back to version 1.13.2
2023-03-14 11:36:17 -06:00
Ward Fisher
9c388dfd6a
Merge branch 'main' into vfd13.dmh 2023-03-14 11:36:09 -06:00
Ward Fisher
dc11c6d094 Correct jsonconvention map with netcdf version. 2023-03-14 09:23:48 -06:00
Dennis Heimbigner
69b5fa4f4e fix memory leak 2023-03-13 20:11:54 -06:00
Ward Fisher
b41127bec5 Bump version strings to reflect next development version. 2023-03-13 15:43:44 -06:00
Ward Fisher
59971b5475 Update release notes. 2023-03-13 15:42:29 -06:00
Ward Fisher
a55680d1c4 Bumped SO version. 2023-03-13 15:40:12 -06:00
DWesl
2f103420f6
CI: Test --without-plugin-dir on Cygwin
This caused problems a bit ago.
This will likely take a bit of iteration.
2023-03-13 16:28:35 -04:00
Dennis Heimbigner
5c07ebfd11 Check at nc_open if file appears to be in NCZarr/Zarr format.
re: Issue https://github.com/Unidata/netcdf-c/issues/2656

Charlie Zender notes that *nc_open()* does not immediately detect that the given path refers to a file not in zarr format. Rather it fails later when trying to read the (meta-)data.

The reason is that the Zarr format is highly decentralized. There is no easily testable magic number or superblock to look for. In effect the only way to see if a directory is Zarr is to successfully read it.

It is possible to heuristically detect that a path refers to an NCZarr/Zarr file by doing a breadth-first search of the file tree starting at the given path. If the search encounters a file whose name starts with ".z", then assume it is a legitimate NCZarr/Zarr file. Of course, this test could be costly. One hopes that in practice that it is not.

In addition to this fix, a corresponding test case was added.

## Other Changes

re: PR https://github.com/Unidata/netcdf-c/pull/2529

There was an error under Cygwin for this PR that is fixed in this PR. The fix was to convert all *noinst_* references to *check_*.
2023-03-13 13:24:14 -06:00
Peter Hill
ad2db15002
Fix wrong base type for enum in transient type test 2023-03-13 11:01:18 +00:00
Peter Hill
c95ce50317
Check there are two transient types in test 2023-03-10 17:44:40 +00:00
Peter Hill
20d87a3edb
Free memory in test 2023-03-10 17:40:59 +00:00
Peter Hill
84cc4362da
Add HDF5 transient type test to autoconf build system 2023-03-10 17:38:33 +00:00
Peter Hill
246f53855a
Add enum to HDF5 transient type test 2023-03-10 17:17:59 +00:00
Peter Hill
86f91888cc
Make transient type test work with MSVC 2023-03-10 16:47:45 +00:00
Peter Hill
03f3eb3ce1
Explicitly ignore HDF5 object references when reading types 2023-03-10 10:19:42 +00:00
Peter Hill
8589214b93
Check that transient/unnamed types can be queried 2023-03-10 10:12:56 +00:00
Peter Hill
9c18dad567
Add support for HDF5 transient types
These are compound or enum datatypes stored directly in the dataset
itself, and so aren't read as standalone objects during the initial
metadata gathering when the file is opened
2023-03-09 10:11:42 +00:00
Ward Fisher
bb632f269d
Merge pull request #2630 from DennisHeimbigner/encode.dmh
Enable ACCEPT_ENCODING on DAP requests
2023-03-07 14:18:56 -07:00
Ward Fisher
8d51666d04
Merge branch 'main' into encode.dmh 2023-03-07 14:18:38 -07:00
Ward Fisher
59cca5c955
Merge pull request #2649 from DennisHeimbigner/byterange.dmh
Fix byterange handling of some URLS
2023-03-06 10:59:38 -07:00
Dennis Heimbigner
cf6fcb3b9c Merge branch 'master' into dap4tests2.dmh 2023-03-02 20:00:05 -07:00
Dennis Heimbigner
bec55cb95e Merge branch 'master' into dap4tests1.dmh 2023-03-02 19:59:32 -07:00
Dennis Heimbigner
69e84fe9f1 Fix byterange handling of some URLS
re: Issue

The byterange handling of the following URLS fails.

### Problem 1: "https://crudata.uea.ac.uk/cru/data/temperature/HadCRUT.4.6.0.0.median.nc#mode=bytes"
It turns out that byterange in hdf5 has two possible targets: S3 and not-S3 (e.g. a thredds server or the crudata URL above). Each uses a different HDF5 Virtual File Driver (VFD).
I incorrectly set up the byterange code in libhdf5 so that it would choose one or the other of the two VFD's for any netcdf-c library build. The fix is to allow it to choose either one at run-time.

### Problem 2: "https://noaa-goes16.s3.amazonaws.com/ABI-L1b-RadF/2022/001/18/OR_ABI-L1b-RadF-M6C01_G16_s20220011800205_e20220011809513_c20220011809562.nc#mode=bytes,s3"
When given what appears to be an S3-related URL, the netcdf-c library code converts it into a canonical, so-called "path" format. In casing out the possible input URL formats, I missed the case where the host contains the bucket ("noaa-goes16"), but not the region. So the fix was to check for this case.

## Misc. Related Changes
1. Since S3 is used in more than just NCZarr, I changed the automake/cmake options to replace "--enable-nczarr-s3" with "--enable-s3", but keeping the former option as a synonym for the latter. This also entailed cleaning up libnetcdf.settings WRT S3 support
2. Added the above URLS as additional test cases

## Misc. Un-Related Changes
1. CURLOPT_PUT is deprecated in favor to CURLOPT_UPLOAD
2. Fix some minor warnings

## Open Problems
* Under Ubuntu, either libcrypto or aws-sdk-cpp has a memory leak.
2023-03-02 19:51:02 -07:00
Ward Fisher
a715d1a12b
Merge pull request #2607 from gsjaardema/patch-56
Missing `goto fail`
2023-03-02 16:55:22 -07:00
Zhipeng Xue
a992aadb32 Fix potential dead store 2023-02-28 16:26:27 +08:00
Ward Fisher
00a722b253
Merge pull request #2618 from skosukhin/fix-macro-use
Fix macro usage
2023-02-27 18:39:20 -07:00
Ward Fisher
05b82feec0
Merge pull request #2641 from WardF/minor_cleanup.wif
Cleaning up a few stray issues
2023-02-27 16:49:50 -07:00
Ward Fisher
b40f8ce367 Invert solution as discussed at https://github.com/Unidata/netcdf-c/pull/2618 2023-02-27 16:07:36 -07:00
Ward Fisher
6eb435aca4
Merge pull request #2623 from magnusuMET/bugfix/netcdf_v4.9.1
Fix dest for non-m4 path
2023-02-27 15:52:34 -07:00
Ward Fisher
96c41b1de6
Merge pull request #2592 from mwestphal/improve_nczarr_zip_logic
Avoid optionaly depends on zip for NCZarr
2023-02-27 15:50:49 -07:00
Ward Fisher
0ff269a4e0 Correct a potential null pointer dereference. 2023-02-27 15:48:57 -07:00
Ward Fisher
267b26f123 Fix a logic error that was resulting in an easy-to-miss error when running configure. 2023-02-27 15:12:32 -07:00
Ward Fisher
677587b444 Fix issue with dangling test file not getting cleaned up. 2023-02-27 15:07:33 -07:00
Ward Fisher
a1d5e98896 Turn nczarr zip support off by default in cmake, add a status line indicating whether nczarr-zip-support is available, in libnetcdf.settings. 2023-02-27 13:34:26 -07:00
Ward Fisher
1e2abd11a5 Update the version of the cache action used by github action from v2 to v3. 2023-02-27 13:15:00 -07:00
Ward Fisher
17b4cb394c
Merge pull request #2633 from WardF/gh1983.wif
A small, but meaningful start, to addressing undefined behavior
2023-02-24 15:14:00 -07:00
Ward Fisher
1d908e29ac Explicit cast to unsigned char. 2023-02-24 13:37:28 -07:00
Ward Fisher
0c45c39607 More issues returned by sanitizer, related to attempts to assign MAX_UNSIGNED_CHAR (255) to a variable of type char. 2023-02-24 11:48:00 -07:00
Ward Fisher
b7635f061f Fixed an issue where memcpy was potentially passed a null pointer. 2023-02-24 11:27:36 -07:00
Dennis Heimbigner
6a4ab61fc8 Missed one occurrence of 1,14,0 2023-02-22 15:30:26 -07:00
Dennis Heimbigner
21b920cbab update RELEASENOTES 2023-02-22 12:30:15 -07:00
Dennis Heimbigner
8556a9d634 Extend the dispatch table for H5FD back to version 1.13.2
re: Issue https://github.com/Unidata/netcdf-c/issues/2634
re: PR https://github.com/Unidata/netcdf-c/pull/2615
re: Issue https://github.com/Unidata/netcdf-c/issues/2614

It turns out that the H5FD table change identified in
issue https://github.com/Unidata/netcdf-c/issues/2614
actually occurred in HDF5 version 1.13.2.
Since we do not test with 1.13.x, we did not catch this.
2023-02-22 11:15:43 -07:00
Ward Fisher
7762823483 Correct another uninitialized issue. 2023-02-21 16:58:28 -07:00
Ward Fisher
df7f6ec571 Correct undefined variable error. 2023-02-21 16:54:51 -07:00