Commit Graph

279 Commits

Author SHA1 Message Date
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
Ward Fisher
5e3d265743 Removed vestigal function related to currently-inactive multiple-open functionality. 2014-03-19 16:14:22 -06:00
Ward Fisher
dcb30d2a15 Merge branch 'sub_doc' of https://github.com/Unidata/netcdf-c into sub_doc 2014-03-17 13:45:44 -06:00
dmh
b524e151ef Remove last vestiges of thredds-test 2014-03-14 14:07:35 -06:00
Ward Fisher
43e3c28d64 Merge branch 'sub_doc' of https://github.com/Unidata/netcdf-c into sub_doc 2014-03-11 13:14:22 -06:00
Ward Fisher
1e9f243f85 Fixed netcdf-c issue #30 (on github) related to cmake-generated nc-config script.
Initial split of Guide from rest of documentation.  Using 'tagfiles' to cross-reference from one documentation set to the other works, but then it drags all of the 'external' related pages into the index of the other.

Modified visability of the external groups and pages.

Adding proper section names to 'Example' sections, to avoid Doxygen warnings.

Initial split of Guide from rest of documentation.  Using 'tagfiles' to cross-reference from one documentation set to the other works, but then it drags all of the 'external' related pages into the index of the other.

Modified visability of the external groups and pages.

Adding proper section names to 'Example' sections, to avoid Doxygen warnings.

Reorganizing documentation into two separate doxygen projects.

Moved .texi documents into an old directory.

Pulled the tutorial document into a separate document, similar to the guide document.

Turned on treeview
2014-03-11 13:07:04 -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
a189b98b0b 1. Any test that references nctestserver/NC_findtestserver
should be under ENABLE_DAP_REMOTE_TESTS.
   Fixed to make sure that this is so.
   Also attempted to fix ncdap_test/CMakeLists.txt,
   but probably got it wrong.
   HT to Nico Schlomer.
2. Attempted to reduce the number of conversion errors
   when -Wconversion is set. Fixed oc2, but
   rest of netcdf remains to be done.
   HT to Nico Schlomer.
3. When doing #2, I discovered an error in ncgen.y
   that has remained hidden. This required some other
   test case fixes.
2014-03-08 20:41:30 -07:00
dmh
deeca5fb83 disable refcounting until semantics are decided 2014-03-07 14:56:52 -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
Ward Fisher
e68710d465 Added a new cmake-based option, ENABLE_DOXYGEN_TODO_LIST. When used, the generated documentation will include a 'todo' page. This is generally for internal consumption only, so that pages and sections that need review or editing can be flagged. 2014-02-27 14:19:28 -07:00
Ward Fisher
75a71ffcf0 Reorganized doxygen documents, renamed .doc files as .dox.
Bumped revision to 4.3.1.2.  There may not be a 4.3.1.2 release, but I didn't want to leave it as 4.3.1.1.
Removed CMake-specific doxygen/documentation template, made changes required so that
CMake and autotools-based builds can use the same template (Doxyfile.in).
2014-02-19 16:32:26 -07:00
Quincey Koziol
b98a475f37 Minor tweaks to comments and LOG messages. 2014-02-17 13:34:05 -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
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
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
dmh
a35d3c04d8 dfile.c:NC_open has a couple of
uninitialized local variables.
Fix was to initialize them.
2013-10-15 14:33:30 -06:00
Ward Fisher
f43bf8f1da Addressed a handful of issues identified by
Coverity static analysis.
2013-08-05 20:36:33 +00: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
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
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
Russ Rew
58a63708cc Fix contributed by Nath Gopalaswamy to large file problem reading
netCDF classic or 64-bit offset files that have a UINT32_MAX flag for
large last record size of a variable that has values larger than 1
byte.  This problem had previously been fixed for *writing* such data,
but was only tested with an ncbyte variable.  Fixed test to
demonstrate problem and the fix.

More updates to chunking documentation, cosmetic fixes for some
"--option=" documentation that doxygen turns into mdash.
2013-06-25 17:04:10 +00:00
Ward Fisher
33d3d06971 Added initial 'make dist', 'make distcheck' support to
CMake-based builds.
2013-06-03 16:42:04 +00:00
Ward Fisher
1df00fa579 Re-added fix for very small files. 2013-05-22 18:56:52 +00:00
Dennis Heimbigner
228e8439d2 1. The code to parse a constraint
was losing the initial double quote
for a quoted string.
2. The code in ncuri.c was not properly
   handling occurrences of e.g. %xx
2013-05-16 21:37:58 +00:00
Dennis Heimbigner
253a26cb82 change format of url parameters in fragment part 2013-05-13 19:12:37 +00:00
Dennis Heimbigner
5be772b6c0 1. Moved all the PNETCDF code
(primarily from libsrc4)
   into its own dispatch library
   called libsrc5.

2. Fixed part of Jira NCF-253
   by removing the need for the
   pnetcdf_ndims field.
   For some reason, the original
   code tried to cache the variable
   ranks rather than computing them
   as needed. Fixed by doing
   an ...inq_varndims call as needed.

3. found some places where NC_MAX_DIMS
   was being stack allocated and changed
   to heap allocation.
   Still some cases in nc_test4.
2013-05-11 20:04:33 +00:00
Dennis Heimbigner
de34ed2d5b merge from netcdf/trunk prior to merge back to trunk 2013-05-11 19:37:38 +00:00
Dennis Heimbigner
cc7cd9a142 Fix part of JIRA NCF-253.
libdispatch/dv2i.c
now heap allocates rs[NC_MAX_VARS]
instead of stack allocation.
2013-05-10 18:15:11 +00:00
Dennis Heimbigner
c583f91992 merge with trunk and fix conflicts 2013-05-10 17:04:28 +00:00
Ward Fisher
2d0dbcfa1d Merged latest from CMake branche.
Fixed an error on very small files (< 4 bytes) that was only occuring on sol. Updated CMake configuration file.
2013-05-01 23:55:24 +00:00
Dennis Heimbigner
19c1c11f1d It turns out that my dap code
is not properly checking the incoming
count argument for nc_get_vars.
It is treating the count as pre-stride
rather than post-stride.
2013-05-01 22:31:01 +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
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
Dennis Heimbigner
c659633d2e merge from trunk 2013-03-26 16:45:02 +00:00
Dennis Heimbigner
ab17dded89 Caron says to use thredds-test
as the default test server.
2013-03-25 18:01:32 +00:00
Dennis Heimbigner
b15a7b1191 Make some initial changes to support move to thredds.ucar.edu 2013-03-25 17:44:08 +00:00
Dennis Heimbigner
9b4db7a039 Make some things static that do not need to be externally visible 2013-03-24 17:33:17 +00:00
Dennis Heimbigner
11c2083b1c Add note about nc_put/get_varm to discourage their use 2013-03-17 21:23:28 +00:00
Dennis Heimbigner
dea3c726c8 merge trunk into this branch 2013-03-15 20:31:07 +00:00
Dennis Heimbigner
1abb2ecb56 Fix jira NCF-243
Problem was that the NC_create
code was not checking for the NC_CLASSIC_MODEL
mode flag in deciding what dispatch table to use.
This meant that it was then defaulting to use
the default format, and if that was changed
to e.g. NC_FORMAT_NETCDF4, then it would try
to create a netcdf-4 format file, even is
NC_CLASSIC_MODEL mode flag was set.
2013-03-15 20:03:59 +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
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
Russ Rew
ba1a494579 Fix bug NCF-226 2013-02-11 18:04:03 +00:00
Dennis Heimbigner
4109174d00 Add quick check for Error {...} at start of the datadds data part 2013-02-07 22:14:57 +00:00
Ward Fisher
ff062bb588 Fixed a windows-specific issue in nc_open. When attempting to
read 4 bytes from a 3 byte file, Windows would fail with an
error 22, "Invalid Operation". This would happen when trying to
read the 4-byte magic number from a very small file.

This problem was uncovered by nc_test/tst_misc.c.  

When fread returns 0 and errno is 22, NC_ENOTNC is returned.
2013-01-24 20:23:18 +00:00
Russ Rew
2e29d2876e Distinguish between NC_MAX_DIMS and NC_MAX_VAR_DIMS 2013-01-23 23:31:34 +00:00
Russ Rew
c7e69906a5 Finish fix of Jira ticket NCF-216, modifying nc_copy_var() limitation so that dimension IDs in output don't have to match dimension IDs in input. 2013-01-23 21:46:22 +00:00
Dennis Heimbigner
0d8c0b9276 more pnetcdf fixes 2013-01-18 02:25:12 +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
Russ Rew
068b35cb4d Updated doxygen and texinfo documentation for nc_var_copy function. 2012-12-13 18:00:03 +00:00
Dennis Heimbigner
fc91587e26 Fix weird code in nc.c/free_NC; wonder how it got that way? 2012-12-11 23:51:05 +00:00
Dennis Heimbigner
6bed1e932e fix previous change to ensure proper return code 2012-12-07 02:25:57 +00:00
Dennis Heimbigner
c114861e68 fix dfile.c error reporting 2012-12-06 21:17:36 +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
027e503c3e Fixed a dangling pointer post-free. Marcos uncovered this issue
when using netcdf on linux via JNI.
2012-11-27 23:56:36 +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
7a226dd3f1 Merging the win_netcdf branch into the trunk. 2012-09-27 22:50:41 +00:00
Ward Fisher
f2d2ddf435 2012-09-26 20:30:19 +00:00
Ward Fisher
98675a8047 Merged with latest trunk. 2012-09-26 17:08:23 +00:00
Russ Rew
a92c7c98a0 Fixed DOS line endings in source file.
Fixed minor memory leak found by Coverity.
Fixed misleading error message in configure.
2012-09-25 21:48:14 +00:00
Ward Fisher
f820e5e5ee 2012-09-10 21:19:57 +00:00
Ward Fisher
54a3c8290a 2012-09-07 16:34:23 +00:00
Ward Fisher
776e179f23 Corrected CMakeList files. 2012-09-06 21:50:00 +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
2fdea864a2 Changes to includes to supress a few specific MSVC warnings. 2012-09-04 22:39:10 +00:00
Ward Fisher
419c6a3b0a 2012-09-04 22:10:32 +00:00
Ward Fisher
5f92acd032 2012-09-04 21:06:23 +00:00
Ward Fisher
7736efcc62 2012-09-04 20:46:45 +00:00
Dennis Heimbigner
880b5c3f7e fix perf bug in bytebuffer code where setlength was always realloc'ing even when enough space was available 2012-08-30 16:43:34 +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
Ward Fisher
58035ff8f2 Added new tests, CMake functionality. 2012-08-21 20:08:53 +00:00
Ward Fisher
e8453be1e5 Merged from trunk into branch 2012-08-20 18:30:04 +00:00
Dennis Heimbigner
5380aa5b67 update utilities: list,byte,hash,uri,log 2012-08-19 21:54:30 +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
Ward Fisher
fa681b231b 2012-08-17 22:26:55 +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
Ward Fisher
3ccf4c78c3 2012-08-13 20:41:11 +00:00
Ward Fisher
747cd16106 2012-08-13 20:27:48 +00:00
Ward Fisher
ffb7dc6f0d Merged latest trunk into branch 2012-08-13 19:57:51 +00:00
Dennis Heimbigner
23e66f5adb update list utilities 2012-08-09 19:42:02 +00:00
Ward Fisher
14619ec4c4 2012-08-09 18:40:41 +00:00
Ward Fisher
0607b62375 Added coverage test flags to CMakeLists.txt files. 2012-08-09 17:07:41 +00:00
Dennis Heimbigner
499f8d3a1c complete update of utilities: ncbyte, nclist, ncuri, nclog 2012-08-08 23:15:18 +00:00
Ward Fisher
02a1448dd1 2012-08-08 21:34:53 +00:00
Ward Fisher
402c4277e1 2012-08-08 21:29:57 +00:00
Ward Fisher
c8e9772237 2012-08-08 21:04:44 +00:00
Ward Fisher
c9fae163fb 2012-08-08 20:51:41 +00:00
Ward Fisher
a6c95c65b1 2012-08-08 19:45:38 +00:00
Ward Fisher
0d90326575 Integrated latest changes to trunk, added preliminary CPack support. 2012-08-02 22:56:57 +00:00