Commit Graph

231 Commits

Author SHA1 Message Date
Ward Fisher
90ff3b728a Corrected a few things to work with MSVC. 2015-06-01 15:26:58 -06:00
dmh
dbc7215063 1. fix nc_open_mem doxygen description
2. fix some bugs wrt to cygwin vs linux.
3. add to RELEASE_NOTES
4. try to fix tst_inmemory fd error by putting the first
   arg to dotest in quotes.
2015-05-28 19:23:33 -06:00
dmh
fd4ccc56c7 forgot file 2015-05-28 15:29:30 -06:00
dmh
3dd807a155 The original mem branch somehow got
hosed, so I rebuilt it as a new mem2 branch.
2015-05-28 15:10:10 -06:00
Russ Rew
67ad8d89a8 Fix and test resolution of NCF-326, Unlimited Dimensions NC_EEDGE error. 2015-03-10 06:13:07 -06:00
Russ Rew
b40068afdb fix arg type in internal function 2015-02-05 17:05:10 -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
5ac930dc2d Minor fix to comments on macro defines 2014-12-05 12:44:09 -07:00
Quincey Koziol
2917a6a123 Interim checkpoint of working code. 2014-12-01 08:52:53 -06:00
Quincey Koziol
8769d58b1d Initial fix for further rename issue. 2014-11-24 09:36:58 -06:00
dmh
1739c50622 Modified a number of tests
to make use of remotetest.unidata.ucar.edu
optional. Purpose is purely for testing
new dts and thredds servers.
2014-10-04 15:59:16 -06:00
Ward Fisher
4826fd73ce Tightened up formatting for generated netcdf_meta.h file. 2014-09-26 13:57:50 -06:00
Ward Fisher
36ca7ca972 Moved previously defined macros out of meta.h and back into netcdf.h, so that we don't break the just-released netcdf-fortran release. 2014-09-24 10:22:40 -06:00
Ward Fisher
4958670b0c Added a new .gitignore specific to include/.
Added netcdf_meta.h to user documentation generated by doxygen.
2014-09-18 15:05:08 -06:00
Ward Fisher
6f4a92f1b6 Updated copyright information for netcdf.h, netcdf_meta.h template. 2014-09-11 15:30:22 -06:00
Ward Fisher
302b8003b7 Added definition of NC_HAVE_META_H to netcdf.h.
Moved NC_HAVE_INQ_FORMAT_EXTENDED, NC_HAVE_RENAME_GRP
to netcdf_meta.h.
2014-09-11 15:19:02 -06:00
Ward Fisher
028d564344 Have finished with autotools-based netcdf_meta.h template. Need to redo cmake-based template to match behavior.
Modified cmake to use the same netcdf_meta template as autotools.

Removed trace of old cmake template file.
2014-09-11 12:32:55 -06:00
Ward Fisher
37928ea229 Added generated file for cmake-based builds. 2014-09-10 13:35:27 -06:00
Ward Fisher
2368e0ed05 Work in progress. 2014-09-10 13:35:27 -06:00
Ward Fisher
206ebc514c Infrastructure for generating a meta header file dynamically at configure time. 2014-09-10 13:35:27 -06:00
Ward Fisher
bb8077af30 Working woards automatically-generated meta information file. 2014-09-10 13:35:27 -06:00
Ward Fisher
2ddb91205d Initial version of template header file. 2014-09-10 13:35:26 -06:00
Ward Fisher
3b610ec445 Removed two-slash style comments, replaced with legal comment blocks. 2014-08-25 15:14:10 -06:00
dmh
18eb1c1126 Coverity fixing 2014-08-17 12:03:23 -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
Ward Fisher
60d46e40e0 Flagged NC_MPIPOSIX deprecated, as of hdf5 1.8.13. 2014-06-09 14:18:30 -06:00
dmh
83ec39f5db [NCF-272]
re: e support ZCL-340681 and CPW-270700

HDF4 supports compression (and chunking)
but the chunking was not being recorded
for HDF4 files. So, I modified the necessary
files to support HDF4 chunking.
2014-06-02 13:04:28 -06:00
Russ Rew
a4192a5839 Added cast on NC_FILL_STRING to eliminate compiler warnings. 2014-05-27 11:01:34 -06:00
Ward Fisher
5a693d7326 Merged pull requestion from nschloe, #48. 2014-04-21 16:11:48 -06:00
Ward Fisher
44fae42214 Cleaned up indentation, white space in multiple CMakeLists.txt files. 2014-04-21 11:15:33 -06:00
dmh
af566dd300 In preparation for adding dap4 support, I have cleaned up
the libdap2 code to make it dap2 protocol + netcdf classic
only.
2014-03-24 14:02:52 -06:00
dmh
c7086dd04b Add support to detect authorization errors to DAP 2014-03-11 11:58:22 -06:00
dmh
19d377e87a conflict resolution 2014-03-10 12:13:16 -06:00
dmh
9d5c8ba308 1. Previous ci of conversion fixes in libdispatch
was incomplete; complete the fix.
2. There is an inconsistency in the netcdfh interface
   about whether rank (# dimensions) is an int or
   size_t. I inadvertently assumed the latter and that
   breaks some API calls; so revert back.
2014-03-10 12:09:36 -06:00
Ward Fisher
513cb29ea4 The replacement of 'int' with 'size_t' caused a number of errors across multiple platforms in our CI system. The culprit is not obvious, so I am reverting the commit until we can take a closer look at the underlying issue.
Revert "1. Attempted to reduce the number of conversion errors"

This reverts commit 1b941d342d.
2014-03-10 10:04:37 -06:00
dmh
1b941d342d 1. Attempted to reduce the number of conversion errors
when -Wconversion is set. Fixed libdispatch, but
   rest of netcdf remains to be done.
2014-03-09 15:51:45 -06:00
dmh
deeca5fb83 disable refcounting until semantics are decided 2014-03-07 14:56:52 -07:00
Russ Rew
1da02adcfa Merge branch 'master' of https://github.com/Unidata/netcdf-c 2014-03-07 13:30:49 -07:00
Russ Rew
b70968ed03 Delete inadvertant UTF-8 character in netcdf.h comment line. 2014-03-07 13:25:32 -07:00
dmh
e3545bf88d 1. Allow files to be opened by name multiple
times, but returning the same ncid.
2. Separate out the dap auth tests
   and make them disabled by default.
3. turn of ncdap_test/test_varm3 until
   we can find a copy of coads_climatology.nc
2014-03-07 12:04:38 -07:00
Quincey Koziol
d033f9f6ff Clean up Coverity warnings from last checkin. 2014-02-20 08:24:55 -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
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
Quincey Koziol
b3044de434 Refactored read_scale(), memio_new(), var_create_dataset() and makespecial()
to clean up resources properly on failure.

Refactored doubly-linked list code for objects in the libsrc4 directory,
    cleaning up the add/del routines, breaking out the common next/prev
    pointers into a struct and extracting the add/del operations on them,
    changed the list of dims to add new dims in the same order as the other
    types, made all add routines able to optionally return a pointer to the
    newly created object.

Removed some dead code (pg_var(), nc4_pg_var1(), nc4_pg_varm(), misc. small
    routines, etc)

Fixed fill value handling for string types in nc4_get_vara().

Changed many malloc()+strcpy() pairs into calls to strdup().

Cleaned up misc. other minor Coverity issues.
2013-12-08 03:29: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
Quincey Koziol
d9069aaeaa More progress toward fixing NCF-177. 2013-09-28 12:40:21 -05:00
Quincey Koziol
7a4479be6b Minor cleanups to reduce warnings in headers, and switch from MPI_BYTE to MPI_INT
for MPI_Allreduce() call.
2013-09-14 13:19:58 -05:00
dmh
6e954fa2ce Quincey noted the following declarations
are duplicated in netcdf.h and netcdf_par.h
This commit removed the duplicates from netcdf.h
since they are only used when parallism is
enabled.

    /* Use these with nc_var_par_access(). */
    #define NC_INDEPENDENT 0
    #define NC_COLLECTIVE 1

    /* Set parallel access for a variable to independent (the default) or
     * collective. */
    EXTERNL int
    nc_var_par_access(int ncid, int varid, int par_access);
2013-09-04 11:28:40 -06:00
Ward Fisher
c25b5b2ba2 Corrected error preventing LFS on 32-bit Windows. 2013-08-28 16:04:04 -06:00
Ward Fisher
e117af0ab7 Made H5_USE_16_API an option in CMakeLists.txt, added string to describe what it does. 2013-08-28 12:43:45 -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
b6d855c0b9 Added NC_HAVE_RENAME_GRP as per Charlie Zender's request:
https://www.unidata.ucar.edu/esupport/staff/index.php?_m=tickets&_a=viewticket&ticketid=22442

Updated configure.ac, CMakeLists.txt to reflect the upcoming 4.3.1-rc1
release.

Added notes to RELEASE_NOTES and RELEASE_NOTES.md
2013-08-01 21:55:32 +00:00
Dennis Heimbigner
67c486bfa0 fix include/netcdf.h:nc_rename_grp signature 2013-07-22 17:18:20 +00:00
Dennis Heimbigner
ee4cf07637 change nc_rename_group -> nc_rename_grp for consistency 2013-07-22 16:49:25 +00:00
Dennis Heimbigner
b85d3568ec Added the necessary code to support
group renaming. The primary API
is 'nc_rename_grp(int grpid, const char* name)'.
No test cases provided yet.
This also required adding a rename_grp entry
to the dispatch tables.
2013-07-19 21:48:37 +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
ce290d3459 Fix Jirs 255
The DAP code compiles constraints into an internal
tree form. When it goes to fetch data, it converts
that tree form into a string suitable for use in a url.
The tree->string code was using '<' when it should be
using '<=' and vice versa.
The fix is to make sure the right operator is used.
2013-05-16 18:22:17 +00:00
Dennis Heimbigner
c583f91992 merge with trunk and fix conflicts 2013-05-10 17:04:28 +00:00
Ward Fisher
10807379c3 Merging from CMake branch in preparation for 4.3.0 release. 2013-04-29 20:15:57 +00:00
Ward Fisher
67f96188ff Merged latest from netCDF-cmake branch in preparation for 4.3.0 release. 2013-04-23 21:50:07 +00:00
Russ Rew
e1c8870fea Renamed internal function. 2013-04-22 22:58:43 +00:00
Ward Fisher
b113f6f8b6 Merged a handful of changes from netcdf-cmake branch.
Addressed the following coverity issues:

711762
711763
711766
711788
711933
711934
711935
2013-04-16 23:02:54 +00:00
Ward Fisher
4a274b9870 Merged latest changes from cmake development branch.
Addressed a number of memory-related problems
reported by Coverity.
2013-04-02 22:09:31 +00:00
Ward Fisher
fe019785ba Update to include XGetopt.h when make dist is invoked. 2013-03-29 21:11:25 +00:00
Ward Fisher
57fa9b3d5f Merged latest changes from netcdf-cmake branch.
Includes a few windows fixes, plus the skeleton
for 'make dist' and 'make distcheck' support
in cmake-based builds.
2013-03-27 19:15:00 +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
Russ Rew
2071ca9bf3 Fixed NCF-244, a netCDF-4 bug resulting in two dimensions with the same dimension ID 2013-03-25 18:06:19 +00:00
Ward Fisher
f26a4a559a Merged latest from netcdf-cmake branch.
Addressed several cmake-related issues, in terms of
building on Windows.  Also added XGetopt.c to 
EXTRA_dist in Makefile.am files.
2013-03-19 22:40:15 +00:00
Dennis Heimbigner
dea3c726c8 merge trunk into this branch 2013-03-15 20:31:07 +00:00
Dennis Heimbigner
80cf3a2c75 fix typo in previous checkin 2013-03-08 18:27:45 +00:00
Dennis Heimbigner
841f7c7148 Move onstack.h from libsrc
to include because it is used
both in libsrc and libdispatch
2013-03-08 18:08:11 +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
57084316de Merging changes from netCDF branch. 2013-02-28 21:50:55 +00:00
Ward Fisher
0140ae8e71 Merge with latest cmake branch.
Added check for HAVE_STDINT_H in utf8proc.h,
to accomodate older visual studio versions
that require pnetcdf.h.
2013-02-26 17:54:41 +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
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
Ward Fisher
7b91248723 Merged changes from netcdf-branch.
o Changed variable names 'typeid' to 'typeid1' to avoid a namespace conflict
in visual studio.
o Cleaned up a handful of warnings in Visual Studio.
o Addressed a few Coverity-discovered issuesl
o Made changes to CMake-based builds.
2012-12-13 22:09:41 +00:00
Dennis Heimbigner
5f2eb8afbf Fix a number of potential problems by changing calls to nc_XXX to NC3/4_XXX 2012-12-12 20:05:06 +00:00
Ward Fisher
81280c7878 Merge from latest netcdf-cmake branch.
- Fixes for Windows.
- CMake-based changes (functionality, tests).
- Smattering of coverity-informed bug-fixes.
2012-12-05 18:35:42 +00:00
Ward Fisher
7a226dd3f1 Merging the win_netcdf branch into the trunk. 2012-09-27 22:50:41 +00:00
Ward Fisher
53843f134e 2012-09-10 22:37:38 +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
9e8cfcf808 Additional CMake support, CPack support. 2012-08-29 18:58:08 +00:00
Ward Fisher
04e61d5894 Added MSVC-compatibility items. 2012-08-27 21:19:25 +00:00
Ward Fisher
7ef113df5f 2012-08-24 18:24:58 +00:00
Russ Rew
eda91aa9cf Enhanced netcdf-4 to be able to deal with optional user area data
block at the front of some HDF5 files (NCF-28).  Also fixed some minor
typos in doxygen blocks in netcdf.h.
2012-08-22 21:53:06 +00:00
Ward Fisher
e8453be1e5 Merged from trunk into branch 2012-08-20 18:30:04 +00:00
Dennis Heimbigner
2a0d68c530 update nchashmap; move some old stuff in libdap2; fix new debug code 2012-08-19 21:12:35 +00:00
Russ Rew
4d6f11288b Fix Coverity complaint about passing big parameter by value 2012-08-17 22:00:36 +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