Commit Graph

579 Commits

Author SHA1 Message Date
Ward Fisher
6efa25e7e4 Updated and removed a check for _NCProperties during file comparison, as this test fails if the environment is different from the environment the reference file was built on. 2018-09-06 15:53:25 -06:00
Ward Fisher
784d777bff Merge branch 'master' into provenance.dmh 2018-09-06 15:13:09 -06:00
Ward Fisher
3c3119bed2 Merge remote-tracking branch 'origin/dapcurlopt.dmh' into combined-pr.wif 2018-09-04 12:50:55 -06:00
Ward Fisher
ede7c5da60
Merge branch 'master' into provenance.dmh 2018-09-04 11:22:36 -06:00
Dennis Heimbigner
79e38de840 Add the ability to set some additional curlopt values
Add the ability to set some additional curlopt values via .daprc (aka .dodsrc).
This effects both DAP2 and DAP4 protocols.

Related issues:
[1] re: esupport: KOZ-821332
[2] re: github issue https://github.com/Unidata/netcdf4-python/issues/836
[3] re: github issue https://github.com/Unidata/netcdf-c/issues/1074

1. CURLOPT_BUFFERSIZE: Relevant to [1]. Allow user to set the read/write
buffersizes used by curl.
This is done by adding the following to .daprc (aka .dodsrc):
	HTTP.READ.BUFFERSIZE=n
where n is the buffersize in bytes. There is a built-in (to curl)
limit of 512k for this value.

2. CURLOPT_TCP_KEEPALIVE (and CURLOPT_TCP_KEEPIDLE and CURLOPT_TCP_KEEPINTVL):
Relevant (maybe) to [2] and [3]. Allow the user to turn on KEEPALIVE
This is done by adding the following to .daprc (aka .dodsrc):
	HTTP.KEEPALIVE=on|n/m
If the value is "on", then simply enable default KEEPALIVE. If the value
is n/m, then enable KEEPALIVE and set KEEPIDLE to n and KEEPINTVL to m.
2018-08-26 17:04:46 -06:00
Dennis Heimbigner
2ea1cf5f1b There was a request to extend the provenance information
stored in the _NCProperties attribute to allow two things:
1. capture of additional library dependencies (over and above
   hdf5)
2. Recognition of non-netcdf libraries that create netcdf-4 format
   files.

To this end, the _NCProperties format has been extended to be
and arbitrary set of key=value pairs separated by commas.
This new format has version = 2, and uses commas as the pair separator.
Thus the general form is:
    _NCProperties = "version=2,key1=value,key2=value2..." ;

This new version is accompanied by a new ./configure option of the form
    --with-ncproperties="key1=value1,key2=value2..."
that specifies pairs to add to the _NCProperties attribute for all
files created with that netcdf library.

At this point, what is missing is some programmatic way to
specify either all the pairs or additional pairs
to the _NCProperties attribute. Not sure of the best way
to do this.

Builders using non-netcdf libraries can specify
whatever they want in the key value pairs (as long
as the version=2 is specified first).

By convention, the primary library is expected to be the
the first pair after the leading version=2 pair, but this
is convention only and is neither required nor enforced.

Related changes:
1. Fixed the tests that check _NCProperties to properly operate with version=2.
2. When reading a version 1 _NCProperties attribute, convert it to look
   like a version 2 attribute.
2. Added some version 2 tests to ncdump/tst_fileinfo.c and
   ncdump/tst_fileinfo.sh

Misc Changes:
1. Fix minor problem in ncdap_test/testurl.sh where a parameter to
   buildurl needed to be quoted.
2. Minor fix to ncgen to swap switches -H and -h to be consistent
   with other utilities.
3. Document the -M flag in nccopy usage() and the nccopy man page.
4. Modify a test case to use the nccopy -M flag.
2018-08-25 21:44:41 -06:00
Greg Sjaardema
8743de7f34
Eliminate double printing of nccopy program name in usage output
The `error` macro used to output the usage information already outputs `progname`, so the `progname` argument is not needed and results in double printing of the `progname` as shown below:

```
ceerws2703a:build(master)> ../bin/nccopy
../bin/nccopy: ../bin/nccopy [-k kind] [-[3|4|6|7]] [-d n] [-s] [-c chunkspec] [-u] [-w] [-[v|V] varlist] [-[g|G] grplist] [-m n] [-h n] [-e n] [-r] infile outfile
  [-k kind] specify kind of netCDF format for output file, default same as input
            kind strings: 'classic', '64-bit offset', 'cdf5',
                          'netCDF-4', 'netCDF-4 classic model'
```
2018-08-20 11:28:55 -06:00
Ward Fisher
40a929575c sh compatibility. 2018-08-13 00:01:53 -06:00
Ward Fisher
77c3fd023e Removed 'function' keyword for sh compatibility. 2018-08-12 23:23:59 -06:00
Ward Fisher
a996ed554e Swapped /bin/bash for /bin/sh to test on osx. 2018-08-12 23:01:08 -06:00
Dennis Heimbigner
f46b65c602 Clear up coverity complaints
with respect to this coverity report.

https://u2389337.ct.sendgrid.net/wf/click?upn=08onrYu34A-2BWcWUl-2F-2BfV0V05UPxvVjWch-2Bd2MGckcRZApv53Ry-2FReUME-2Fmei1et81WqdBwm5AxSAYBM9iFSmbw-3D-3D_YxTn3nq1kZ9CfXcyYFaB2DtJSVHTn8U-2BK0LV-2FDyLYKcFvnwYJ7pm2zFB5UovsEUh5miIfeCfQzYxpN9HYcdqs9sKVjtklOkfPIjEpg0Tj8G9wiptznJeX-2FO4PrqJA1ViQYtQfpjugq01XGMQ3-2Bll42dUMxrmbdYSqi8T7bCcANC5evyZs4MKvmAWXt1bnPaHcOYJDN-2FUt-2FJTlhwu91HyR7h-2FnkvMY9paYUNB1gxiyUA-3D
2018-08-04 13:22:29 -06:00
Ward Fisher
81c91eb519 Made some changes to export symbols on Windows builds. 2018-08-02 14:58:47 -06:00
Ward Fisher
f1eb7c77a4 Correcting an appveyor failure. 2018-08-02 11:33:21 -06:00
Ward Fisher
504867ab67 Corrected issue with strings.h. 2018-08-02 09:47:36 -06:00
Ward Fisher
16bc7d63f6 Modified ocprint to not install. 2018-08-01 14:27:09 -06:00
Ward Fisher
ed1b7089db Modified ocprint to not be installed 2018-08-01 14:19:50 -06:00
Ward Fisher
6cf9c2e6c5 Fence-posted ocprint behind a DAP conditional, in support of bf6ae6c591 (commitcomment-29912584) 2018-08-01 14:15:01 -06:00
Ward Fisher
bf6ae6c591 Added ocprint binary to cmakelists. 2018-07-31 12:51:24 -06:00
Ward Fisher
70e454227e Corrected an issue on Windows. 2018-07-30 15:25:45 -06:00
Dennis Heimbigner
b02703aa24 This PR primarily addresses Issue https://github.com/Unidata/netcdf-c/issues/725.
After a long discussion, I implemented the rules at the end of that issue.
They are documented in nccopy.1.

Additionally, I added a new, per-variable, -c flag that allows
for the direct setting of the chunking parameters for a variable.
The form is
    -c var:c1,c2,...ck
where var is the name of the variable (possibly a fully qualified name)
and the ci are the chunksizes for that variable. It must be the case
that the rank of the variable is k. If the new form is used as well
as the old form, then the new form overrides the old form for the
specified variable. Note that multiple occurrences of the new form
-c flag may be specified.

Misc. Other fixes
1. Added -M <size> option to nccopy to specify the minimum
   allowable chunksize.
2. Removed the unused variables from bigmeta.c
   (Issue https://github.com/Unidata/netcdf-c/issues/1079)
3. Fixed failure of nc_test4/tst_filter.sh by using the new -M
   flag (#1) to allow filter test on a small chunk size.
2018-07-26 20:16:02 -06:00
Ed Hartnett
ef7b525ce4 merged master 2018-07-23 09:45:39 -06:00
Ed Hartnett
99c4f82f2e only define nc_set_log_level() to nothing for netcdf-4 builds 2018-07-16 13:47:18 -06:00
Wei-keng Liao
f95d3e3325 replace USE_CDF5 with ENABLE_CDF5 2018-06-29 21:17:07 -05:00
Ed Hartnett
7984eee043
Merge branch 'master' into ejh_streq 2018-06-11 15:50:22 -06:00
Ward Fisher
e1ed2531d7 Merge branch 'master' into misc-changes.wif 2018-06-07 11:23:32 -06:00
Ed Hartnett
0e4dfa6dd7 merged master, these changes on queue to be submitted as PR 2018-06-06 09:16:59 -06:00
Ward Fisher
3e1bd3ce5f Removed some potential issues identified by static analysis. 2018-05-31 14:27:26 -06:00
Ed Hartnett
011e85cea4 merge ejh_par_tests 2018-05-30 05:06:25 -06:00
Ed Hartnett
b03277caea
Merge branch 'master' into ejh_streq 2018-05-17 04:26:59 -06:00
Ward Fisher
a8c4c0aa68 Merge remote-tracking branch 'origin/cleanncgen.dmh' into small-pr-aggregate.wif 2018-05-16 14:32:10 -06:00
Ward Fisher
3f83cc4926 Merge branch 'master' into inmem2.dmh 2018-05-16 14:24:19 -06:00
Ed Hartnett
37cae16b38 added parallel testing for string type 2018-05-16 02:26:13 -06:00
Ed Hartnett
1da187a5fd
Merge branch 'master' into ejh_streq 2018-05-16 01:52:25 -06:00
Ward Fisher
d54e133e8d Merge branch 'master' into appveyor.wif 2018-05-15 12:01:54 -06:00
Ed Hartnett
4adc7e5cc6 fixed comment 2018-05-15 08:24:27 -06:00
Ed Hartnett
d167786796 moved irish rover ncdump test to netcdf-4 test script 2018-05-15 08:13:25 -06:00
Ed Hartnett
b8ad15b6ae tests for ncdump issue with irish rover 2018-05-15 08:09:52 -06:00
Ward Fisher
9bea284949 Fixed a shell script error on vs15 2018-05-14 14:37:07 -06:00
Ward Fisher
27ca221bdb Merge branch 'master' into appveyor.wif 2018-05-14 13:19:17 -06:00
Ed Hartnett
0c0d066927 changed macro STREQ to NCSTREQ to avoid name collusion with HDF4 library 2018-05-12 08:55:51 -06:00
Dennis Heimbigner
3c7ffcc6d1 Fix https://github.com/Unidata/netcdf-c/issues/963
Fix https://github.com/Unidata/netcdf-c/issues/962

1. remove the --disable-diskless option since it is no
   longer needed. Similarly for CMakeLists.txt.
2. Fixed nc4files.c where BAIL and return were mixed
   leading to situation where cleanup code was not
   being invoked. This probably occurs elsewhere,
   but I did not find any specifically.
2018-05-11 15:30:19 -06:00
luz.paz
74fbacdb82 Misc. source comment typos
Some are user-facing. Found via `codespell` and through the downstream FreeCAD.
2018-04-26 23:04:01 -04:00
Ward Fisher
28ce3e4a8c Added fenceposts around bash scripts, excluding the bash.exe included with Windows 10 (for now) when searching to see if bash is available. 2018-04-26 14:38:56 -06:00
Thomas Braun
3af477a926 netcdf-c: Make cmake pass a windows cmd prompt
add_sh_test only creates the test if HAVE_BASH is TRUE.
Therefore we can only call SET_TESTS_PROPERTIES on the created test if
HAVE_BASH is equally true.
2018-04-26 14:43:27 +02:00
Ward Fisher
ee7bbb2320 Debugging pull request for OSX. 2018-04-20 14:40:28 -06:00
Ward Fisher
76af2109e3 Corrected an issue in fileinfo script. 2018-04-17 14:23:52 -06:00
Ward Fisher
913b4a3961
Merge branch 'master' into index.dmh 2018-03-26 14:22:46 -06:00
Dennis Heimbigner
1246dd189b merge master 2018-03-20 21:50:58 -06:00
Dennis Heimbigner
e6e3583e30 Merge branch 'master' into ncdaptestsclean.dmh 2018-03-20 21:37:35 -06:00
Dennis Heimbigner
05d078a8b0 The ncdap_tests were a mess, so I decided to clean them up
to remove cruft and to remove unused site tests
and make the tests somewhat more understandable.

Also did a fix to libdispatch/dwinpath to convert
relative paths to absolute paths. This will, I hope,
take care of some windows path problems when using
$srcdir in shell scripts.
2018-03-20 21:31:31 -06:00