Commit Graph

554 Commits

Author SHA1 Message Date
Ward Fisher
a9dde277d7 Merge branch 'ejh_enum_mem_fix' of https://github.com/NetCDF-World-Domination-Council/netcdf-c into more_ejh_pulls 2017-11-09 16:11:17 -07:00
Ed Hartnett
e792d992b1 fixed names of output files to enable parallel builds 2017-11-09 07:21:00 -07:00
Ed Hartnett
b9911d6e6f took out most uses of EXTRA_TESTS, returned it to disabled by default 2017-11-08 13:25:23 -07:00
Ed Hartnett
6653eeaf7f
Merge branch 'master' into ejh_turn_tests_on 2017-11-07 18:35:16 -07:00
Ed Hartnett
a72d5b4d16
Merge branch 'master' into ejh_enum_mem_fix 2017-11-07 18:34:55 -07:00
Ward Fisher
e7fee3ee53 Corrected an issue encountered by the default compiler on ARM. 2017-11-07 15:19:07 -07:00
Ward Fisher
b92ae0cdbc Merge branch 'ejh_fix_use_cdf' of https://github.com/NetCDF-World-Domination-Council/netcdf-c into more_ejh_pulls 2017-11-07 14:14:10 -07:00
Ed Hartnett
c58bc3e41c fixed warnings 2017-11-06 06:06:47 -07:00
Ed Hartnett
7af77fd6a9
Merge branch 'master' into ejh_turn_tests_on 2017-11-05 10:09:08 -07:00
Ed Hartnett
6ce15853d6 fixed ENABLE_CDF5 issue in some tests 2017-11-05 09:06:48 -07:00
Ed Hartnett
7872785cf0
Merge branch 'master' into ejh_enum_mem_fix 2017-11-03 19:44:40 -06:00
Ward Fisher
f98635be1b Merge remote-tracking branch 'origin/h5offset.dmh' into dmh_multi_merge 2017-11-03 12:40:52 -06:00
Ed Hartnett
b257353b18 fixed commented out tests 2017-11-03 08:14:08 -06:00
Ed Hartnett
406e979fb4 fixed tst_enums memory issue 2017-11-01 04:31:12 -06:00
Ed Hartnett
86f35ea6db
Merge branch 'master' into ejh_more_mem_3 2017-10-30 07:34:52 -06:00
Dennis Heimbigner
2d77e6451b Master merge 2017-10-28 14:06:39 -06:00
Dennis Heimbigner
261ed4c99d Merge branch 'master' into h5offset.dmh 2017-10-27 12:33:17 -06:00
Ed Hartnett
9f72f5adf4 fixed memory error in tst_fills2.c 2017-10-27 06:26:36 -06:00
Ed Hartnett
22d3d152f0 removed tst_h_atts2.c 2017-10-26 04:55:30 -06:00
Ed Hartnett
30ef103a95 moved tests from tst_h_atts2 into tst_xplatform2 2017-10-26 04:49:57 -06:00
Ward Fisher
8e30bb9a1c Merge branch 'ejh_test_mem_leak' of https://github.com/NetCDF-World-Domination-Council/netcdf-c into merge_small_pulls 2017-10-25 11:01:25 -06:00
Ward Fisher
fb38f81243 Merge branch 'ejh_ncdump' of https://github.com/NetCDF-World-Domination-Council/netcdf-c into merge_small_pulls 2017-10-25 11:00:20 -06:00
Dennis Heimbigner
9983b9d911 re e-support UBS-599337
re pull request https://github.com/Unidata/netcdf-c/pull/405
re pull request https://github.com/Unidata/netcdf-c/pull/446

Notes:
1. This branch is a cleanup of the magic.dmh branch.
2. magic.dmh was originally merged, but caused problems with parallel IO.
   It was re-issued as pull request https://github.com/Unidata/netcdf-c/pull/446.
3. This branch + pull request replace any previous pull requests and magic.dmh branch.

Given an otherwise valid netCDF file that has a corrupted header,
the netcdf library currently crashes. Instead, it should return
NC_ENOTNC.

Additionally, the NC_check_file_type code does not do the
forward search required by hdf5 files. It currently only looks
at file position 0 instead of 512, 1024, 2048,... Also, it turns
out that the HDF4 magic number is assumed to always be at the
beginning of the file (unlike HDF5).
The change is localized to libdispatch/dfile.c See
https://support.hdfgroup.org/release4/doc/DSpec_html/DS.pdf

Also, it turns out that the code in NC_check_file_type is duplicated
(mostly) in the function libsrc4/nc4file.c#nc_check_for_hdf.

This branch does the following.
1. Make NC_check_file_type return NC_ENOTNC instead of crashing.
2. Remove nc_check_for_hdf and centralize all file format checking
   NC_check_file_type.
3. Add proper forward search for HDF5 files (but not HDF4 files)
   to look for the magic number at offsets of 0, 512, 1024...
4. Add test tst_hdf5_offset.sh. This tests that hdf5 files with
   an offset are properly recognized. It does so by prefixing
   a legal file with some number of zero bytes: 512, 1024, etc.
5. Off-topic: Added -N flag to ncdump to force a specific output dataset name.
2017-10-24 16:25:09 -06:00
Ed Hartnett
1e3831f98d fixed memory leak and warnings in test 2017-10-24 12:54:29 -06:00
Ed Hartnett
6363cae315 fixed warnings 2017-10-24 12:18:20 -06:00
Ed Hartnett
d6eb9f9f5c fix for tst_vars.c memory overflow 2017-10-24 09:20:41 -06:00
Dennis Heimbigner
0b87770dab add files to git 2017-10-10 16:38:35 -06:00
Dennis Heimbigner
111248e067 Changed to make little-endian the standard for 64-bit parameters 2017-10-10 11:21:01 -06:00
Dennis Heimbigner
5ff3909704 Fix bug in nc4file.c where it improperly handled filters with more than 4 parameters. 2017-10-09 21:24:56 -06:00
Dennis Heimbigner
733da154c5 1. Keep up to date by merging master
2. Factored out the parameter string parsing for ncgen and nccopy
   int libdispatch/dfilter.c + include/ncfilter.h
3. Allow a parameter string to use constant types other than
   unsigned int. See docs/filters.md for details.
4. Moved the old content of  include/netcdf_filter.h into include/netcdf.h
   and removed include/netcdf_filter.h as no longer needed.
5. Force the test filter (bzip2) in nc_test4/filter_test to
   be built using BUILT_SOURCES.
2017-10-08 15:56:45 -06:00
Dennis Heimbigner
3cc3b6a4a1 add known szip file against which to test 2017-09-04 18:37:13 -06:00
Dennis Heimbigner
dab3d0da8e Fix CMake problem with executable naming 2017-08-30 12:06:23 -06:00
Dennis Heimbigner
d8d4ed627a master merge 2017-08-29 18:05:46 -06:00
Dennis Heimbigner
2e1e39ca8c Add a general szip test script 2017-08-28 18:11:24 -06:00
Dennis Heimbigner
e2b2d6cf6c Add more comprehensive tests 2017-08-28 14:56:01 -06:00
Dennis Heimbigner
99e4250d6d Get szip working under cmake 2017-08-27 20:38:37 -06:00
Dennis Heimbigner
9afef60648 Add tst_szip to Cmake 2017-08-27 15:51:45 -06:00
Dennis Heimbigner
ed44fd7306 Add szip support via libaec 2017-08-27 13:35:20 -06:00
Dennis Heimbigner
5085df7595 1. Add discussion of parameter encoding, esp in face of byte-order,
to docs/filter.md
2. Moved location of filter.md in documentation
3. Add a template file as the basis for building new filters.
4. Did some test case cleanup
2017-08-21 19:54:06 -06:00
Dennis Heimbigner
86fc8745dc merge master and resolve conflicts 2017-08-12 15:50:31 -06:00
Dennis Heimbigner
7f31358ee2 As a result of helping a user trying to build the filter test on
a linux variant system, I made some changes to (one hopes)
incorporate some improvements in documenting and building this test.
2017-07-25 15:57:00 -06:00
Ward Fisher
f1f7224f93 Corrected a false positive. 2017-06-01 09:36:54 -06:00
Ward Fisher
1f96a66414 hdf4 chunking file rename 2017-06-01 09:15:41 -06:00
Ward Fisher
a077289464 Refactored hdf4 chunking test a little bit. 2017-06-01 09:11:52 -06:00
Ward Fisher
08f7d06eb6 Refactoring hdf4 chunking test in similar fashion to hdf5 compatibility test. Files are linked via AC_CONFIG_LINKS instead of shuffling things around in a shell script. 2017-06-01 09:02:31 -06:00
Ward Fisher
128fb5611a Trying distcleanfiles experiment. 2017-06-01 08:53:31 -06:00
Ward Fisher
df872ac1bc Continued refactoring. 2017-05-31 16:34:46 -06:00
Ward Fisher
05e2ff3881 Sorting out hdf4 chunk tests. 2017-05-31 15:09:26 -06:00
Ward Fisher
5699a32376 Updated cleanfiles list on Makefile.am 2017-05-31 15:01:02 -06:00
Ward Fisher
9823d73c44 Corrected a logic error. 2017-05-31 14:04:53 -06:00
Ward Fisher
03c67cb4ff Updated src path in hdf4 chunk test. 2017-05-31 13:38:22 -06:00
Ward Fisher
9a8af9184a Copying files as needed for hdf4 tests. 2017-05-31 11:25:35 -06:00
Dennis Heimbigner
d37ac215e2 Add new capabilities to filter code:
1. Allow nccopy to apply filters, especially on the output file.
   This provides a third way to do this other than using ncgen or
   programatically
2. Make sure that even if the filter code is not available, it is
   possible to see the filter id and parameters for variables using
   e.g ncdump -hs.
3. Fix bug in nccopy so that the input file does
   not necessarily have to be netcdf-4.
4. At last minute decided to change to using a
   single "_Filter" attribute for ncgen
5. Added a test to tst_filter.sh to generate C code using ncgen.
2017-05-14 18:10:02 -06:00
Dennis Heimbigner
c834d4af12 merge from master 2017-05-10 12:33:03 -06:00
Dennis Heimbigner
7c3164577e Finalize the compression support.
This relies on the HDF5 capability to
dynamically load compression filters.
Note that a compression filter is just
a subcase of filters.

The primary user-visible changes are as follows:
1. Add a standard header "netcdf_filter.h" that defines
   the necessary API extensions
2. Modify ncgen to support two new special attributes
   "_Filter_ID" and "_Filter_Parameters" so that compression
   can be turned on when creating a file using ncgen.
4. Add a detailed description of filtering support
   to the user's guide; see the file filters.md
5. Add a test case directory for this: nc_test4/filter_test.
   It is fragile and a ./configure flags (-enable-filter-test)
   is defined (default disabled) to shut this off this test
   to avoid spurious 'make check' failures.

Note that the HDF5 documentation is not up-to-date, so
much of what is encoded here comes from examining the
actual code in the file H5PL.c in the HDF5 source code.
2017-04-27 13:01:59 -06:00
Ward Fisher
8dddd222a3 Merged master, DAP4 support into branch. 2017-04-19 09:29:35 -06:00
Ward Fisher
b5b99cbebb Merge branch 'master' into ghpull-375 2017-04-05 16:24:55 -06:00
Dennis Heimbigner
6d8809100f Fix pull request https://github.com/Unidata/netcdf-c/pull/374 (dap4.dmh)
1. When running under windows (as opposed to cygwin)
   we need to make sure to not user /cygdrive/ file paths.
   This was ocurring in libdap4/d4read.c, but may occur
   elsewhere.
2. Shell scripts in the git repo are not being checked-out
   with the executable mode set. Had core.filemode set to false.
   Was a major hassle to fix.
2017-04-03 21:39:44 -06:00
Dennis Heimbigner
5f15c9e777 1) master merge 2)fix uname -o problem 2017-03-30 16:21:31 -06:00
Wei-keng Liao
1508bd5529 fix the previous commit that missed the case of re-open file 2017-03-29 12:16:25 -05:00
Dennis Heimbigner
80390b94e5 keep up-to-date with master 2017-03-27 12:16:24 -06:00
Wei-keng Liao
73ccb364a9 To solve NC_ELATEFILL error for NetCDF-4 files, mark all variables written at enddef. 2017-03-24 20:55:00 -05:00
Ward Fisher
eeb673bf8c Merge branch 'master' into ghpull-375 2017-03-22 11:24:56 -06:00
Stephan Hoyer
4dd8e380c1 Switch NC_CHAR on netCDF4 to use ASCII
Fixes GH298
2017-03-13 20:12:08 -07:00
Dennis Heimbigner
3db4f013bf Primary change: add dap4 support
Specific changes:
1. Add dap4 code: libdap4 and dap4_test.
   Note that until the d4ts server problem is solved, dap4 is turned off.
2. Modify various files to support dap4 flags:
	configure.ac, Makefile.am, CMakeLists.txt, etc.
3. Add nc_test/test_common.sh. This centralizes
   the handling of the locations of various
   things in the build tree: e.g. where is
   ncgen.exe located. See nc_test/test_common.sh
   for details.
4. Modify .sh files to use test_common.sh
5. Obsolete separate oc2 by moving it to be part of
   netcdf-c. This means replacing code with netcdf-c
   equivalents.
5. Add --with-testserver to configure.ac to allow
   override of the servers to be used for --enable-dap-remote-tests.
6. There were multiple versions of nctypealignment code. Try to
   centralize in libdispatch/doffset.c and include/ncoffsets.h
7. Add a unit test for the ncuri code because of its complexity.
8. Move the findserver code out of libdispatch and into
   a separate, self contained program in ncdap_test and dap4_test.
9. Move the dispatch header files (nc{3,4}dispatch.h) to
   .../include because they are now shared by modules.
10. Revamp the handling of TOPSRCDIR and TOPBUILDDIR for shell scripts.
11. Make use of MREMAP if available
12. Misc. minor changes e.g.
	- #include <config.h> -> #include "config.h"
	- Add some no-install headers to /include
	- extern -> EXTERNL and vice versa as needed
	- misc header cleanup
	- clean up checking for misc. unix vs microsoft functions
13. Change copyright decls in some files to point to LICENSE file.
14. Add notes to RELEASENOTES.md
2017-03-08 17:01:10 -07:00
Ward Fisher
3e5124996e Merged https://github.com/Unidata/netcdf-c/pull/319 to resolve some recently arisen conflicts, in preparation for larger merge. 2017-02-01 13:27:29 -07:00
Ward Fisher
8a2e722373 Corrected a failure in tst_fill_attr_vanish.c seen under Visual Studio 11 2017-01-11 12:36:30 -07:00
Wei-keng Liao
ab73a57fca Merge branch 'master' into issue258 2016-11-25 10:49:03 -06:00
Ward Fisher
b4785f4081 Housekeeping on large file tests. 2016-11-18 15:48:58 -07:00
Wei-keng Liao
04e5ff4c74 sync with master branch 2016-10-28 11:54:25 -05:00
Ward Fisher
eb5be645ea Added missing err_macros.h to tst_parallel.c 2016-10-25 12:00:39 -06:00
Ward Fisher
174aa62d75 Added missing err_macros.h to tst_parallel4.c 2016-10-25 11:59:27 -06:00
Ward Fisher
d8c04ead27 Added missing err_macros.h to tst_nc4perf.c 2016-10-25 11:58:24 -06:00
Ward Fisher
c9ca03deee Added missing err_macros.h to tst_parallel3.c 2016-10-25 11:57:22 -06:00
Ward Fisher
414ef40ca1 Added missing err_macros.h to tst_mode.c 2016-10-25 11:56:25 -06:00
Ward Fisher
938b27bd84 Added missing err_macros.h to tst_mpi_parallel.c 2016-10-25 11:54:25 -06:00
Ward Fisher
4feadbfd22 Additional updates in support of https://github.com/Unidata/netcdf-c/issues/321 2016-10-24 17:16:58 -06:00
Ward Fisher
be9eeb1c96 Corrected missing include in a couple of hdf4 tests. 2016-10-21 13:55:49 -06:00
Ward Fisher
873b9e9557 Removed an old benchmark test for which the source data appears to be long gone. 2016-10-21 19:48:14 +00:00
Ward Fisher
dd557c1919 Updated an old benchmark script and ref files to accomodate updated metadata reported by ncdump. 2016-10-21 19:42:14 +00:00
Ward Fisher
1c11fc5d59 More refactoring, pushing to avoid accidental loss. 2016-10-21 19:24:40 +00:00
Ward Fisher
157af11bc2 Refactoring tests to separate out error macros from tests, in support of fixing http://github.com/Unidata/netcdf-c/issues/321 2016-10-21 17:17:39 +00:00
Wei-keng Liao
dd19b27b44 handle special case when calling _uchar APIs to access NC_BYTE attributes/variables in CDF-2 file format 2016-10-06 00:48:01 -05:00
Ward Fisher
c179cf0c5f Updated cmakelists.txt for the final test failure. 2016-08-31 15:53:34 -06:00
Ward Fisher
486f69522c Merged utility-based tests fix into cmake-based builds. 2016-08-31 15:48:10 -06:00
Ward Fisher
b2e4b74e3a Restricted tests from running when they require the utilities but the utilities were not built, in autoconf-based tests. See https://github.com/Unidata/netcdf-c/issues/313 for more information. 2016-08-31 15:38:59 -06:00
tbeu
eae6d75d47 Test all three files for compatibility 2016-07-18 22:18:42 +02:00
Ward Fisher
2fe943d32e Wiring in test contributed by Greg Sjaardema in support of https://github.com/Unidata/netcdf-c/issues/282 2016-07-12 16:58:49 -06:00
Ward Fisher
5452f7f1ab Added new test to autoconf-based builds and make dist, in support of https://github.com/Unidata/netcdf-c/issues/281 2016-06-30 12:11:05 -06:00
Ward Fisher
46c63344f7 Added comments where needed. 2016-06-14 10:47:24 -06:00
Ward Fisher
1ebb104f74 Tentatively fixed https://github.com/Unidata/netcdf-c/issues/239 but the test needs to be extended. 2016-06-10 17:03:08 -06:00
Ward Fisher
f248ef7714 Merge branch 'master' into gh239 2016-06-10 13:16:10 -06:00
Ward Fisher
b2b8499f53 Got distcheck working, corrected some parallel test logic in cmakelists. 2016-06-09 13:21:28 -06:00
Ward Fisher
ea2e9959f5 Corrected a typo. 2016-06-09 13:08:18 -06:00
Ward Fisher
54b57d0e60 Gave the modified test a unique test file name. 2016-06-09 11:28:03 -06:00
Ward Fisher
2610b58a5d Corrected a typo. 2016-06-09 11:26:06 -06:00
Ward Fisher
10061af1b9 Wiring in parallel test. 2016-06-09 11:23:14 -06:00
Ward Fisher
d3b6512606 Fleshing out test, we now have it failing as one would expect. 2016-06-06 22:10:10 +00:00
Ward Fisher
aae3526b75 Fleshing out the test. 2016-06-06 21:44:38 +00:00
Ward Fisher
0dae521f13 Trying to sort out what's going on with the test. 2016-06-06 15:08:20 -06:00
Ward Fisher
dc1a9c34d8 Added a document to catalog what the various tests are. 2016-06-06 14:51:57 -06:00
Ward Fisher
305f5b352d Corrected an issue with running the hdf4 test. 2016-06-02 14:34:13 -06:00
Ward Fisher
f19749425f Wired hdf4 per-variable test into autoconf. 2016-06-02 14:22:42 -06:00
Ward Fisher
2d0de087fa Fleshed out test script, wired into cmakelists.txt 2016-06-02 14:19:36 -06:00
Ward Fisher
ab43f75416 added blank file for testing that hdf4 file can be read a var at a time. 2016-06-02 14:09:35 -06:00
Dennis Heimbigner
835511eaeb HDF5 is generating unnecessary error messages when netcdf4 logging is enabled
re: github netcdf-c issue #271

This occurs for several reasons, including:
1. using H5Aopen_name instead of H5Aexists to test if attribute exists.
2. using H5Eset_auto instead of H5Eset_auto2.
There are probably others that will have to be extinguished as encountered.
p.s Hope I did not overdo this and kill too much.
2016-05-27 10:08:01 -06:00
Dennis Heimbigner
22a343292a Fix cmake build: 2016-05-24 20:26:09 -06:00
Dennis Heimbigner
c8572f0bee set tst_misc.sh executable 2016-05-24 19:37:21 -06:00
Dennis Heimbigner
8c1f8f57ee re: https://github.com/Unidata/netcdf-c/issues/269
The hash field for phony dimensions was not being set
(in nc4hdf.c). Also added test case (nc_test4/?).
Note that I searched for other similar failures and
did not find any, but I may have missed them.
2016-05-24 19:37:21 -06:00
Dennis Heimbigner
11a259ad86 Add provenance info for netcdf-4 files.
This consists of a persistent attribute named
_NCProperties plus two computed attributes
_IsNetcdf4 and _SuperblockVersion.
See the 'Provenance Attributes' section
of docs/attribute_conventions.md for details.
2016-05-07 14:32:07 -06:00
Ward Fisher
580b4aabe1 Integrated one-line pull request https://github.com/Unidata/netcdf-c/pull/249 2016-04-12 09:30:22 -06:00
Ward Fisher
4b2c9f29dd Wired in test for https://github.com/Unidata/netcdf-c/issues/250 for autotool based builds. 2016-04-08 15:53:17 -06:00
Ward Fisher
493a6e5d62 Found pre-existing call to H5Pset_libver_bounds, modified it so that the generated files would be created without the 1.10 specific things. 2016-04-08 21:36:08 +00:00
Ward Fisher
46b534d060 Roughed in test for checking that a netcdf installation can read specific files written by a netCDF4 library built against libhdf5 1.10.0 2016-04-08 20:58:20 +00:00
Ward Fisher
a75cb302df Removed an error in nc_test4/Makefile.am 2016-02-19 11:06:56 -07:00
Ward Fisher
dde10a7461 Corrected a missing suffix in Makefile.am 2016-02-19 10:52:16 -07:00
Ward Fisher
1affd12fc8 Wired tests for https://github.com/Unidata/netcdf-c/issues/221 into a shell script so that the generated files can be checked easily with ncdump. Added the test and associated files to both cmake and autotools build systems. 2016-02-19 10:16:42 -07:00
Ward Fisher
e2eda755e3 Tweaked empty test to check for limited, unlimited dimensions. Also added a gdb command file for ease of debugging. 2016-02-18 13:59:53 -07:00
Ward Fisher
0eff434098 Renamed test file to be more reflective for what it is doing. 2016-02-16 14:54:10 -07:00
Ward Fisher
4ccad07a6b Have duplicated issue reported in #221 at github. 2016-02-16 14:52:03 -07:00
Ward Fisher
654a6e39e3 Additional work debugging issue. 2016-02-16 14:40:09 -07:00
Ward Fisher
1807cb7aa2 Roughing in a test to create the failure described in https://github.com/Unidata/netcdf-c/issues/221 2016-02-16 11:00:09 -07:00
Ward Fisher
55b24e2964 Added tst_mode to CMakeLists.txt 2016-02-04 19:12:15 +00:00
Dennis Heimbigner
45572f5971 Fix github issue: https://github.com/Unidata/netcdf-c/issues/208
Return an error when specifying deflation (compression) or fletcher32 on
a file created for parallel IO in netcdf-4.
2016-02-01 16:15:58 -07:00
Ward Fisher
427577be8d Merge branch 'gsjaardema-patch-6' into pull-consolidation 2016-01-26 10:10:54 -07:00
Greg Sjaardema
e1696187ec Replace NC_MAX_DIMS with NC_MAX_VAR_DIMS
Same issue as in #197.
2016-01-25 14:55:29 -07:00
Greg Sjaardema
ba7d9c54bd Replace NC_MAX_DIMS with NC_TESTS_MAX_DIMS
Missed this file earlier somehow.  Same situation as fixed in fbc210f
2016-01-25 14:47:52 -07:00
Ward Fisher
fbc210f511 Alternative solution to https://github.com/Unidata/netcdf-c/pull/199 and https://github.com/Unidata/netcdf-c/pull/200. 2016-01-25 14:09:03 -07:00
Ward Fisher
f3cae2e6ce Merge branch 'master' of https://github.com/Unidata/netcdf-c 2016-01-25 11:29:12 -07:00
Greg Sjaardema
04f1231f48 Fix incorrect array size specification
The count and start arrays are dimensioned to NC_MAX_DIMS even though the maximum size should be NDIMS which is set to 3; possibly, the maximum size could be 2 since only indices 0 and 1 are used to access both start and count.  I left it at NDIMS since that matches the number of items in the initialization and is consistent with other uses in the file.
2016-01-22 21:03:48 -07:00
Greg Sjaardema
e13d976e27 Replace NC_MAX_DIMS with correct NC_MAX_VAR_DIMS
The constant NC_MAX_DIMS is used to dimension the `dimids` arrays which are use to retrieve the dimension ids corresponding to the variables dimensions.  By definition, the maximum number of dimension ids is `NC_MAX_VAR_DIMS` as is documented in the `nc_inq_var` documentation:
http://www.unidata.ucar.edu/software/netcdf/netcdf-4/newdocs/netcdf-c/nc_005finq_005fvar.html

dimids   Returned vector of *ndimsp dimension IDs corresponding to the variable dimensions. The caller must allocate enough space for a vector of at least *ndimsp integers to be returned. The maximum possible number of dimensions for a variable is given by the predefined constant NC_MAX_VAR_DIMS. 

Although the default or standard values of NC_MAX_DIMS and NC_MAX_VAR_DIMS are the same, the correct value to be used here is NC_MAX_VAR_DIMS and not NC_MAX_DIMS.  Even though this currently works, it could fail if either NC_MAX_VAR_DIMS or NC_MAX_DIMS is changed and it can also provide an incorrect function usage example that may mislead developers trying to determine the correct usage of the function.
2016-01-22 20:54:52 -07:00
Ward Fisher
bb332ac08a Added a missing file to EXTRA_DIST. 2016-01-13 10:25:18 -07:00
Greg Sjaardema
ccb9682288 Merge branch 'master' into max_vars_dims_cleanup 2015-11-30 10:37:07 -05:00
Greg Sjaardema
724453b113 Update comments related to NC_MAX_VARS and NC_MAX_DIMS 2015-11-30 10:28:06 -05:00
Ward Fisher
03f7b56879 Cleaned up a sloppy cut-and-paste on my part. 2015-11-23 15:49:24 -06:00
Ward Fisher
bf0279e229 Added new test in support of https://github.com/Unidata/netcdf-c/issues/160 2015-11-23 15:48:24 -06:00
Ward Fisher
c000899df2 Added a test in support of issue https://github.com/Unidata/netcdf-c/issues/160. 2015-11-23 15:42:22 -06:00
Ward Fisher
ccd824a77f Added new test to distribution file list. 2015-11-11 14:27:25 -07:00
Ward Fisher
5065b01d37 Wired in a new test based on one provided by Jeff Whitaker in support of issue 149 on github. See https://github.com/Unidata/netcdf-c/issues/149. 2015-11-11 10:42:49 -07:00
Ward Fisher
c1210f4020 Merge branch 'master' into cdf5-sync-master 2015-11-09 13:45:11 -07:00
dmh
5ad26bb68f Fix github issues #140
1. Added check to libsrc4/nc4var.nc_def_var_extra to
   check that the no specified chunks size is greater than
   the dimension size.

2. Added test to nc_test4/tst_chunks.c
2015-11-07 20:29:16 -07:00
Ward Fisher
612b35a84c Merge branch 'master' into cdf-5, in preparation for merging the CDF-5 functionality into the master branch. This will be the key new feature for netcdf 4.4.0. 2015-11-05 13:40:35 -07:00
Ward Fisher
a81773e5bf Corrected an issue Visual Studio has with how externals are managed. 2015-11-05 12:57:49 -07:00
Ward Fisher
a359cb6a53 Reverted some of the spelling corrections. Some misspellings were intentional 2015-10-16 14:36:17 -06:00
tbeu
e2820e4d8a Fix common typos
Detected by https://github.com/vlajos/misspell_fixer
2015-08-20 11:42:05 +02:00
dmh
859f105005 merge-squash 2015-08-15 16:26:35 -06:00
Russ Rew
0687dfe5a2 Cleanup clang warnings. 2015-08-02 17:22:50 -06:00
Ward Fisher
3a792b1fb2 Remove the [NCF-332] temp file on failure. 2015-05-29 10:23:24 -06:00
Ward Fisher
ea8f1d9027 Fleshed out [NCF-332] test to check all little-endian variable types supported, and also added some true-negative/expected failure tests. Next up is regression testing and then merging into master. 2015-05-29 09:49:20 -06:00
Ward Fisher
d5d1efbcdb Refactoring and expanding [NCF-332] test. 2015-05-29 09:22:38 -06:00
Ward Fisher
0ed84b406b Fleshed out a test that *should* start passing, once we've fixed issue [NCF-332] 2015-05-28 17:21:01 -06:00
Ward Fisher
64e0d2a44e Added a new test for h4 endianness. [NCF332] 2015-05-28 17:13:15 -06:00
Ward Fisher
4fecd37ba7 Refactored tst_h_endians to tst_h5_endians, so that we can differentiate between hdf5 and hdf4 endian tests. 2015-05-28 16:29:49 -06:00
Ward Fisher
c9d7c88f63 Added a stanza for 'NC_DOUBLE' into the recently-added endians test. 2015-05-18 10:55:17 -06:00
Ward Fisher
5eb90c3a66 Cleaned up an unnecessary test, added refactored nc4 test to autotools. 2015-05-15 15:31:38 -06:00
Ward Fisher
9d98aab40a Refactored test. 2015-05-15 15:29:29 -06:00
Ward Fisher
99ef1624bc Regarding [NCF-331], the issues appears to have been in nc4file.c:get_type_info2(). The call to H5Tget_order() was only happening for H5T_Float. According to the documentation, this works for all datatypes as of hdf5 1.8.6. This tentatively fixes the bug reported, but additional testing (and cleanup from debugging) is needed. 2015-05-15 14:24:27 -06:00
Ward Fisher
de29c4d0a8 Tweaked tests for additional debugging. 2015-05-15 13:11:46 -06:00
Ward Fisher
999f4e5720 Additional debugging, modified the LOGGING functions somewhat. Also modified ncdump to print 'native' endianness. This may be removed before merging back into trunk. 2015-05-14 17:22:07 -06:00
Ward Fisher
fa1d61b980 Additional debugging for [NCF-331] 2015-05-12 13:52:52 -06:00
Ward Fisher
6eff077ed5 Incorporated endian test for [NCF-331] into autotools. 2015-05-12 13:00:22 -06:00
Ward Fisher
c43f9dee63 Refined test for [NCF-331]. 2015-05-11 15:58:47 -06:00
Ward Fisher
659172816b Added a new test. 2015-05-11 15:01:31 -06:00
Ward Fisher
ee3daa3267 Added a test contributed by Jeff Whitaker. See https://github.com/Unidata/netcdf-c/issues/112 or [NCF-331] for more information. 2015-05-11 14:52:16 -06:00
Russ Rew
ab18a2e17c Fix bug NCF-187 (thanks to Alexander Barth). Add test for bug fix. 2015-04-02 12:30:51 -06:00
Russ Rew
6a6e8c08a6 added test case for ncf-187, haven't added fix yet 2015-04-01 15:09:27 -06:00
Quincey Koziol
aede522766 Mark dataset attributes dirty when one is renamed. 2015-02-25 09:25:40 -06:00
Ward Fisher
261e7511cc Modified group rename shell script to work in Msys/Windows Environment. 2015-02-02 14:46:51 -07:00
Ward Fisher
2d72b7ca7f More work on getting the shell scripts working properly with cmake under MSYS. 2015-02-02 14:46:50 -07:00
Russ Rew
db83a3be4c Jira issue NCF-314, "Provide replacement for using numeric values of -k
option on nccopy and ncgen".
2014-12-29 13:07:28 -07:00
Russ Rew
9a60dc612f Use short "-k" codes instead of deprecated version numbers for ncgen and nccopy tests 2014-12-28 22:42:05 -07:00
Ubuntu
a33d21cf34 Merge branch 'master' into NCF-177 2014-12-15 14:27:36 +00:00
Russ Rew
eaf8ef61e0 resolved conflict 2014-12-09 13:31:20 -07:00
Russ Rew
97b49d1421 Fix (harmless) confusion between varid and dimid names 2014-12-05 12:47:45 -07:00
Quincey Koziol
86d47170ee Update with tests from ticket. 2014-12-02 08:35:36 -06:00
Quincey Koziol
5749c5178a Remove useless assignment. 2014-11-07 08:26:46 -06:00
vagrant
534d24c689 Changed test order to resolve dependency which caused an issue on centos platforms. 2014-08-29 16:30:28 -06:00
Ward Fisher
b04d49166c Fence-posted hdf4-related shell script tests on Windows. 2014-08-29 11:27:55 -06:00
Ward Fisher
b25dbcd24a Added an explicit error message string to nc_strerror for NC_ECANTEXTEND. 2014-08-18 14:24:16 -06:00
Russ Rew
a71e1acb67 Use curl instead of wget to get hdf4 files when --enable-hdf4-tests specified 2014-07-20 17:14:17 -06:00
Ward Fisher
7f812b367e Manual merge of pull request https://github.com/Unidata/netcdf-c/pull/64 contributed by nschloe. Assorted CMake improvements. 2014-06-11 15:51:31 -06:00
dmh
4de1b58df2 [NCF-272]
There was a problem with the
distcheck testing since the test input files
are in ${src_dir} and the test is in ${build_dir}.
So modify run_chunk_hdf4 to copy as necessary.
2014-05-31 13:54:52 -06:00
dmh
ff60798bb1 Add CMAKE for hdf4 chunking 2014-05-30 22:16:19 -06:00
dmh
b560fe1233 [NCF-272]
It turns out that HDF4 supports chunking
(and compression). However the existing
HDF4 code does not support it.
So add HDF4 support for chunking.
Also add a test case.
2014-05-30 22:12:05 -06:00
Quincey Koziol
435d8a03ed Account for the HDF5 library not having the MPI-POSIX VFD configured in. 2014-05-07 08:45:15 -05:00
Ward Fisher
44fae42214 Cleaned up indentation, white space in multiple CMakeLists.txt files. 2014-04-21 11:15:33 -06:00
Ward Fisher
cf7763645c Corrected an issue with tst_v2 on Windows. 2014-04-11 14:32:16 -06:00
Ward Fisher
74209d373e Corrected an issue with disabling the V2 API support in cmake-based builds. 2014-04-03 10:45:22 -06:00
Ward Fisher
874c768afb Fixed issue when running parallel tests in a CMake build, as reported in issue 38 on github. 2014-03-13 10:59:21 -06:00
Quincey Koziol
fe9e0b056d Update HDF4 support for recent datatype changes. 2014-02-25 21:05:19 -06:00
Quincey Koziol
fd981824c1 Correct handling of variablen-length sequences for attributes, plus uncomment a
bunch of tests that stress this area of the library.

Also clean up some compiler warnings in the dispatch code.
2014-02-14 08:07:14 -06:00
Quincey Koziol
4bfd9b27a0 Merge remote-tracking branch 'upstream/master'
Conflicts:
	libdap2/common34.c
	oc2/ocutil.c
2014-02-11 17:26:09 -06:00
Quincey Koziol
b2dfacbcfa Big clean up to type handling in libsrc4, which makes fill-values work
correctly for variables with string datatype, plus a few other minor changes.
2014-02-11 17:12:08 -06:00
Ward Fisher
8aee60dd43 Reordered HDF4 test calls in CMakeLists.txt in nc_test4 to remove an error caused by running tests out of order. 2014-02-07 09:37:17 -07:00
Ward Fisher
feaaf7e779 Added missing test script to EXTRA_DIST in makefile.am. 2014-02-06 11:32:45 -07:00
Ward Fisher
0032af978b Added INQ_FORMAT_EXTENDED-related tests to the cmake build system (based on inclusion in autotools-based builds). 2014-01-16 13:14:49 -07:00
Quincey Koziol
cd71eb525c Corrected "BAIL" macros to avoid infinite loop when logging is disabled and an
error occurs after an "exit:" label.

Corrected a dozen Coverity errors (mainly allocation issues, along with a few
    other things):
        711711, 711802, 711803, 711905, 970825, 996123, 996124, 1025787,
        1047274, 1130013, 1130014, 1139538

Refactored internal fill-value code to correctly handle string types, and
    especially to allow NULL pointers and null strings (ie. "") to be
    distinguished.  The code now avoids partially aliasing the two together
    (which only happened on the 'write' side of things and wasn't reflected on
    the 'read' side, adding to the previous confusion).

    Probably still weak on handling fill-values of variable-length and compound
    datatypes.

Refactored the recursive metadata reads a bit more, to process HDF5 named
    datatypes and datasets immediately, avoiding chewing up memory for those
    types of objects, etc.

Finished uncommenting and updating the nc_test4/tst_fills2.c code (as I'm
    proceeding alphabetically through the nc_test4 code files).
2013-12-29 01:12:43 -06:00
dmh
582410a407 [NCF-273]/HZY-708311
Add a new function called nc_inq_format_extended that
returns more detailed format information (vis-a-vis
nc_inq_format) about an open dataset.

Note that the netcdf API will present the file as if it had
the format specified by nc_inq_format.  The true file
format, however, may not even be a netcdf file; it might be
DAP, HDF4, or PNETCDF, for example. This function returns
that true file type.  It also returns the effective mode for
the file.

signature: nc_inq_format_extended(int ncid, int* formatp, int* modep)
where
* ncid is the NetCDF ID from a previous call to nc_open() or
  nc_create().
* formatp is a pointer to a location for returned true format.
* modep is a pointer to a location for returned mode flags.

Refer to the actual list in the file netcdf.h to see the
currently defined set.

Also added test cases (tst_formatx*).
2013-12-22 12:53:20 -07:00
Ward Fisher
acd3565140 Replaced a comparison of floating point variables to a difference/epsiolon test. 2013-12-17 14:30:14 -07:00
Ward Fisher
f5ec4ba7a0 Removed reference to old test file. 2013-12-16 15:22:59 -07:00
Quincey Koziol
0d42ac7e87 Switch test for nc_inq_unlimdim and nc_inq_unlimdims to use the same ordering as
the rest of the dimension queries.  Correct error in library where types used
in sub-group variables but that were added to the file after the sub-group was
created weren't available for sub-group variables to use.  Start cleaning up
test suite and un-commenting tests that were commented out (got up to
nc_test4/tst_fills2.c, alphabetically) before running into an error in HDF5.
2013-12-15 19:55:41 -06:00
Quincey Koziol
11e6343ae1 Correct order of unlimited dim checking in test. (Was relying on old behavior
of backwards ordering)
2013-12-14 10:08:01 -06:00
Ward Fisher
b43955ab49 Added test contributed by Jeff Whitaker. 2013-12-10 15:50:20 -07:00
Ward Fisher
6d26b8c27c Fixed an issue with make distclean where a test file was not being deleted. 2013-12-06 11:33:37 -07:00
Quincey Koziol
5ccb8a24b5 Merge branch 'master' into ncf-177 2013-11-30 23:40:26 -06:00
Quincey Koziol
e1fc13b215 Many changes to address NCF-177 (renaming dimensions and variables). Also
many cleanups to fix compiler warnings, streamline iteration over objects
in HDF5 file when opening the file, and generally straightening out the code
to be cleaner and simpler.

Tested on Mac OS/X with gcc 4.8 and OpenMPI (which uses clang).
2013-11-30 23:20:28 -06:00
Russ Rew
66434cdb8a Fix test for proper error return when invalid coordinate specified for
nc_get_var1_ushaort call.
2013-11-26 13:33:18 -07:00
Ward Fisher
b6e4715104 Added fixes to CMake-based system, when building pnetcdf. 2013-08-26 13:50:27 -06:00
Quincey Koziol
3cdce9e3af Correct error when a parallel application writes different amounts of data to
an unlimited-dimension variable, and different processes don't agree on the
whether to extend the underlying HDF5 dataset, or don't agree on the amount
to extend the dataset.
2013-08-18 20:45:17 -05:00
Ward Fisher
909f569de0 Changed argument list of nc_rename_grp to match definition of nc_rename_grp,
changed invocation of nc_rename_grp in renamegroup.c.
2013-07-22 17:27:43 +00:00
Ward Fisher
0401fafb3b Changed argument list of nc_rename_grp to match definition of nc_rename_grp,
changed invocation of nc_rename_grp in renamegroup.c.
2013-07-22 17:04:54 +00:00
Ward Fisher
cbb032b19c Modified how renamegroup executable is built so that
it can be run in CMake-based builds.
2013-07-22 16:55:59 +00:00
Russ Rew
a18b6eb42a Remove .exe suffix from executable invocation in shell test script. 2013-07-22 14:43:10 +00:00
Dennis Heimbigner
bb77390311 Set executable bit on run_grp_rename.sh 2013-07-21 17:09:49 +00:00
Dennis Heimbigner
05369372f7 Debugged previously added
code to support group rename.
Also added a simple test case.
2013-07-21 01:08:39 +00:00
Russ Rew
7f9ff06665 Modified to run the nc_test4 program inadvertently omitted file from the NCF-56 fix. 2013-07-14 18:34:01 +00:00
Russ Rew
fa3f84afbc Neglected to add this, due to confusion with file of same name in ncdump 2013-07-14 16:16:56 +00:00
Russ Rew
167c2355c8 Fix CMakeLists to remove tst_h_scalar test from nc_test4/, since already in ncdump/ 2013-07-10 22:53:56 +00:00
Dennis Heimbigner
7dce1d00f3 add ref to tst_h_scalar 2013-07-10 21:17:36 +00:00
Russ Rew
e4f9350c23 Quincey's fixes for NCF-56, "netcdf-4 can't read HDF5 scalar atts".
Also added ability capability for netCDF-4 to write and read NIL
values for string type attributes and variables, so these can be read
if used in HDF5 files.

Include are additions to CMakeLists files to reflect new tests.
2013-07-10 20:09:31 +00:00
Russ Rew
6cd8fca60d Quincey's fixes for NCF-250, netCDF-4 parallel independent access with
unlimited dimension hanging.  Extending the size of an unlimited
dimension in HDF5 must be a collective operation, so now an error is
returned if trying to extend in independent access mode.

Quincey's bug fixes for parallel build portability, particularly
OpenMPI on MacOS-X.
2013-07-08 21:31:13 +00:00
Ward Fisher
33d3d06971 Added initial 'make dist', 'make distcheck' support to
CMake-based builds.
2013-06-03 16:42:04 +00:00
Dennis Heimbigner
c583f91992 merge with trunk and fix conflicts 2013-05-10 17:04:28 +00:00
Russ Rew
6ebc98d254 Fix NCF-247 bug, and add test for bug fix. 2013-04-22 22:34:21 +00:00
Ward Fisher
9f187a1484 Merged the fix for NCF-29 from Quincy into the trunk. 2013-03-26 18:57:26 +00:00
Dennis Heimbigner
c659633d2e merge from trunk 2013-03-26 16:45:02 +00:00
Russ Rew
b36dc5b5fb Fix NCF-244 bug for case where using different order for defining
coordinate variables and their associated dimensions occurs in any
subgroup, rather than just the root group.  If this occurs, the
variable attribute "_Netcdf4Dimid" is created for every dimension
scale.

Also add a test for this bug fix in tst_dims3.nc, based on Pedro
Vicente's demo.
2013-03-26 15:14:19 +00:00
Dennis Heimbigner
dea3c726c8 merge trunk into this branch 2013-03-15 20:31:07 +00:00
Dennis Heimbigner
9eaac2a595 Apply Wei-Keng's fix
for JIRA issue NCF-241.
This is only temporary
until I can make pnetcdf
operate as a separate dispatch table.

Also, fix nc_test4/tst_pnetcdf
to open with nc_open_par;
this is necessary because a pnetcdf
created file cannot be opened
as a netcdf classic file.
2013-03-13 17:34:47 +00:00
Ward Fisher
03fb6a2ac2 Merging latest changes from netcdf-cmake branch. 2013-03-11 21:13:51 +00:00
Russ Rew
bf038bceb8 Add test for bug NCF-234 fix 2013-03-10 23:57:06 +00:00
Koziol
0f29dd60c0 Description:
Fix Jira issue NCF-29 (https://bugtracking.unidata.ucar.edu/browse/NCF-29):
making the netCDF-4 library ignore HDF5 datasets and attributes which have
datatypes (such as references) that it doesn't understand.

Tested on:
    Mac OSX/64 10.8.2 (amazon) w/--enable-netcdf-4 --enable-extra-tests --enable-extra-example-tests
        --disable-shared --enable-logging
2013-03-01 08:10:28 +00:00
Ward Fisher
0444a6c711 Fixed a couple of tests on Windows,
Fixed some compile errors on Windows.
2013-02-21 23:56:15 +00:00
Ward Fisher
ddf3c31bb0 Corrected a handful of syntax issues in CMake config files,
probably introduced more.  

Added CMake-related files to Makefile.am files for inclusion
when creating a distribution package.
2013-02-20 23:28:28 +00:00
Dennis Heimbigner
b0b6c77a3e 1. corrected the nc_get_varm/put_varm documentation
to indicate that they only work for atomic types,
   not user defined types.

2. modified NCDEFAULT_{get/put}_vars to no longer use
   nc_get/put_varm. They now directly use nc_get/put_vara
   directly. This means that nc_get/put_vars now work
   properly for user defined types as well as atomic types.

3. Added test cases for get_vars/put_vars with a
   user defined type. Tests placed into
   nc_test/tst_compounds.c
2013-02-17 23:42:15 +00:00
Ward Fisher
51848614c3 Corrected parallel support in CMake, including
library checks and parallel IO tests.  Updated 
CMake-related documentation.
2013-02-12 22:22:54 +00:00
Russ Rew
ba1a494579 Fix bug NCF-226 2013-02-11 18:04:03 +00:00
Ward Fisher
8d6bfcd534 Added new tests to CMake test system. 2013-02-06 23:09:19 +00:00
Russ Rew
5c9368a7fa Fix bug NCF-222, scalar non-coordinate variables with same name as dimensions 2013-02-04 15:48:47 +00:00
Russ Rew
fab1c8675c Fix NCF-217, a bug depending on order of calls to netCDF-4 functions 2013-02-01 17:38:26 +00:00
Russ Rew
3ef3b35a94 Refactor to share functions between ncdump and nccopy. Merge nccopy
enhancements, based on contributed code from Martin van Driel, to
support -v, -g, -V, and -G options for selecting groups and variables
in output.  Fix all clang warnings from nccopy and ncdump sources, as
well as a few other cleanup changes to testing code.
2013-01-23 17:45:29 +00:00
Dennis Heimbigner
39bed98c0b fix pnetcdf problems reported by russ 2013-01-17 18:43:34 +00:00
Ward Fisher
91188cea7a Merging CMake branch into trunk. Changes include:
CMake related changes in CMakeLists.txt files,
cmake_config.h.in. Other changes relate to 
Windows-specific issues, and changes made
when regenerating generated source files.
2013-01-15 22:43:09 +00:00
Russ Rew
592a120a55 Fixed bug NCF-206 (Fix strided access for NC_STRING type). Verified
fix with new test for strided access for NC_STRING type.
2012-11-19 17:20:53 +00:00
Ward Fisher
6504c2b093 2012-09-14 21:53:08 +00:00
Ward Fisher
c271c81ac4 2012-09-14 21:35:25 +00:00
Ward Fisher
e55d002dbc Merged Dennis' changes from trunk. 2012-09-06 21:15:37 +00:00
Dennis Heimbigner
5ca78309cc The effect of this change is to make the struct NC structure
contain as little file-type specific info as possible.  It
modifies especially libsrc so that all of the netcdf-3 data
that used to be in struct NC is now kept in a separate chunk
of data pointed to by the struct NC. This makes all of
current protocols consistent: netcdf-3, netcdf-4, and dap.
2012-09-06 19:44:03 +00:00
Ward Fisher
e8453be1e5 Merged from trunk into branch 2012-08-20 18:30:04 +00:00
Russ Rew
8d53da4826 Fixed bug "adding a bad _FillValue" bug (NCF-190). Fixed minor bugs
reported by static analysis, including memory leak in ncdump, missing
size_t cast for chunk cache.  Fixed various doc problems, including
byte vs. char issues, missing NC_UBYTE in type list, needed link to
"Building with Windows" page.
2012-08-16 18:31:48 +00:00