NetCDF  4.3.2
RELEASE_NOTES.md
00001 Release Notes {#release_notes}
00002 ===============================
00003 
00004 \brief Release notes file for the netcdf-c package.
00005 
00006 This file contains a high-level description of this package's evolution. Releases are in reverse chronological order (most recent first). Note that, as of netcdf 4.2, the netcdf-c++ and netcdf-fortran libraries have been separated into their own libraries.
00007 
00008 ## 4.3.2 Released 2014-04-23
00009 
00010 * As part of an ongoing project, the Doxygen-generated netcdf documentation has been reorganized.  The goal is to make the documentation easier to parse, and to eliminate redundant material.  This project is ongoing.
00011 
00012 * The oc .dodsrc reader was improperly handling the user name and password entries. [NCF-299](https://bugtracking.unidata.ucar.edu/browse/NCF-299)
00013 
00014 * CTestConfig.cmake has been made into a template so that users may easily specify the location of an alternative CDash-based Dashboard using the following two options:
00015 
00016         * `NC_TEST_DROP_SITE` - Specify an alternative Dashboard by URL or IP address.
00017 
00018         * `NC_CTEST_DROP_LOC_PREFIX` - Specify a prefix on the remote webserver relative to the root directory. This lets CTest accommodate dashboards that do not live at the top level of the web server.
00019         
00020 * Return an error code on open instead of an assertion violation for truncated file.
00021 
00022 ### 4.3.2-rc2 Released 2014-04-15
00023 
00024 * Cleaned up a number of CMake inconsistencies related to CMake usage, parallel builds.
00025 * Now passing -Wl,--no-undefined to linker when appropriate.
00026 * Corrected an issue preventing large file tests from running correctly under Windows.
00027 * Misc Bug Fixes detected by static analysis.
00028 
00029 ### 4.3.2-rc1 Released 2014-03-20
00030 
00031 * Pre-built Windows downloads will now be bundled with the latest (as of the time of this writing) versions of the various dependencies:
00032         * `hdf5: 1.8.12`
00033         * `zlib: 1.2.8`
00034         * `libcurl: 7.35.0`
00035         
00036 * Added a separate flag to enable DAP AUTH tests. These tests are disabled by default.  The flags for autotools and CMAKE-based builds are (respectively):
00037         * --enable-dap-auth-tests
00038         * -DENABLE\_DAP\_AUTH\_TESTS
00039 
00040 * Fixed small default chunk size for 1-dimensional record variables.  [NCF-211](https://bugtracking.unidata.ucar.edu/browse/NCF-211)
00041 
00042 * Cleaned up type handling in netCDF-4 to fix bugs with fill-values.
00043 
00044 * Corrected "BAIL" macros to avoid infinite loop when logging is disabled and an error occurs.
00045 
00046 * Refactored how types are used for attributes, variables, and committed types, clarifying and categorizing fields in structs, and eliminating duplicated type information between variables and types they use.
00047 
00048 * Made type structure sharable by committed datatypes and variables that use it.
00049 
00050 * Handled string datatypes correctly, particularly for fill value attributes. Expanded testing for string fill values.
00051 
00052 * Simplified iteration of objects in the file when it's opened, tracking fewer objects and using less memory.
00053 
00054 * Enabled netCDF-4 bit-for-bit reproducibility for nccopy and other applications (thanks to Rimvydas Jasinskas and Quincey Koziol) by turning off HDF5 object creation, access, and modification time tracking.  [NCF-290](https://bugtracking.unidata.ucar.edu/browse/NCF-290)
00055 
00056 * Addressed an issue where `cmake`-based builds would not properly create a `pkg-config` file. This file is now created properly by `cmake`.  [NCF-288](https://bugtracking.unidata.ucar.edu/browse/NCF-288)
00057 
00058 * Addressed an issue related to old DAP servers. [NCF-287](https://bugtracking.unidata.ucar.edu/browse/NCF-287)
00059 
00060 ## 4.3.1.1 Released 2014-02-05
00061 
00062 This is a bug-fix-only release for version 4.3.1.
00063 
00064 * Corrected a DAP issue reported by Jeff Whitaker related to non-conforming servers.
00065 
00066 * Corrected an issue with DAP tests failing in a 64-bit Cygwin environment. [NCF-286](https://bugtracking.unidata.ucar.edu/browse/NCF-286)
00067 
00068 ## 4.3.1 Released 2014-01-16
00069 
00070 * Add an extended format inquiry method to the netCDF API: nc\_inq\_format\_extended. NC\_HAVE\_INQ\_FORMAT\_EXTENDED is defined in netcdf.h [NCF-273]
00071 
00072 [NCF-273]:https://bugtracking.unidata.ucar.edu/browse/NCF-273
00073 
00074 
00075 ### 4.3.1-rc6 Released 2013-12-19
00076 
00077 * Fixed fill value handling for string types in nc4\_get\_vara().
00078 
00079 * Corrected behavior of nc\_inq\_unlimdim and nv\_inq\_unlimdims to report dimids
00080   in same order as nc\_inq\_dimids.
00081 
00082 * Addressed an issue reported by Jeff Whitaker regarding `nc_inq_nvars` returning an incorrect number of dimensions (this issue was introduced in 4.3.1-rc5).  Integrated a test contributed by Jeff Whitaker.
00083 
00084 * A number of previously-disabled unit tests were reviewed and made active. 
00085 
00086 
00087 ### 4.3.1-rc5 Released 2013-12-06
00088 
00089 * When opening a netCDF-4 file, streamline the iteration over objects in the underlying HDF5 file.
00090 
00091 * Fixed netCDF-4 failure when renaming a dimension and renaming a variable using that dimension, in either order. [NCF-177]
00092 
00093 [NCF-177]:https://bugtracking.unidata.ucar.edu/browse/NCF-177
00094 
00095 * When compiling with `hdf4` support, both autotools and cmake-based builds now properly look for the `libjpeg` dependency and will link against it when found (or complain if it's not).  Also added `ENABLE_HDF4_FILE_TESTS` option to CMake-based builds.
00096 
00097 * Fixed bug in ncgen; it was not properly filling empty string constants ("") to be the proper length. [NCF-279]
00098 
00099 [NCF-279]:https://bugtracking.unidata.ucar.edu/browse/NCF-279
00100 
00101 * Fixed bug in ncgen where it was interpreting int64 constants
00102   as uint64 constants. [NCF-278]
00103 
00104 [NCF-278]:https://bugtracking.unidata.ucar.edu/browse/NCF-278
00105 
00106 * Fixed bug in handling Http Basic Authorization. The code was actually there but was not being executed. [NCF-277]
00107 
00108 [NCF-277]:https://bugtracking.unidata.ucar.edu/browse/NCF-277
00109 
00110 * Added hack to the DAP code to address a problem with the Columbia.edu server. That server does not serve up proper DAP2 DDS replies. The Dataset {...} name changes depending on if the request has certain kinds of constraints. [NCF-276]
00111 
00112 [NCF-276]:https://bugtracking.unidata.ucar.edu/browse/NCF-276
00113 
00114 * Fixed bugs with ncdump annotation of values, using -b or -f
00115   options. [NCF-275]
00116 
00117 [NCF-275]:https://bugtracking.unidata.ucar.edu/browse/NCF-275
00118 
00119 
00120 ### 4.3.1-rc4 Released 2013-11-06
00121 
00122 * Addressed an issue on Windows where `fstat` would report an incorrect file size on files > 4GB.  [NCF-219]
00123 
00124 
00125 * Added better documentation about accessing ESG datasets.
00126   See http://www.unidata.ucar.edu/software/netcdf/docs/esg.html.
00127 
00128 * Corrected an issue with CMake-based builds enabling HDF4 support where the HDF4 libraries were in a non-standard location.
00129 
00130 * Fix bug introduced by [NCF-267] where octal constants above
00131 '\177' were not recognized as proper octal constants. [NCF-271]
00132 
00133 [NCF-271]:https://bugtracking.unidata.ucar.edu/browse/NCF-271
00134 
00135 * Fixed an issue where the `netcdf.3` man page was not being installed by CMake-based builds. [Github](https://github.com/Unidata/netcdf-c/issues/3)
00136 
00137 
00138 
00139 ### 4.3.1-rc3 Released 2013-09-24
00140 
00141 * Modify ncgen to support NUL characters in character array
00142   constants. [NCF-267]
00143 
00144 [NCF-267]:https://bugtracking.unidata.ucar.edu/browse/NCF-267
00145 
00146 * Modify ncgen to support disambiguating references to
00147   an enum constant in a data list. [NCF-265]
00148   
00149 [NCF-265]:https://bugtracking.unidata.ucar.edu/browse/NCF-265
00150 
00151 * Corrected bug in netCDF-4 dimension ID ordering assumptions, resulting in access that works locally but fails through DAP server. [NCF-166]
00152 
00153 [NCF-166]:https://bugtracking.unidata.ucar.edu/browse/NCF-166
00154 
00155 * Added a new configuration flag, `NC_USE_STATIC_CRT` for CMake-based Windows builds.  The default value is 'OFF'.  This will allow the user to define whether to use the shared CRT libraries (\\MD) or static CRT libraries (\\MT) in Visual Studio builds.
00156 
00157 * Ensure netCDF-4 compiles with OpenMPI as an alternative to MPICH2. [NCF-160]
00158 
00159 [NCF-160]:https://bugtracking.unidata.ucar.edu/browse/NCF-160
00160 
00161 * Addressed issue with hanging Parallel netCDF-4 using HDF5 1.8.10. [NCF-240]
00162 
00163 [NCF-240]:https://bugtracking.unidata.ucar.edu/browse/NCF-240
00164 
00165 * Addressed issue with Large File Support on Windows, using both 32 and 64-bit builds. [NCF-219]
00166 
00167 [NCF-219]:https://bugtracking.unidata.ucar.edu/browse/NCF-219
00168 
00169 * Removed deprecated directories:
00170         * librpc/
00171         * udunits/
00172         * libcf/
00173         * libcdmr/
00174 
00175 ### 4.3.1-rc2 Released 2013-08-19
00176 
00177 * Added `configure` and accompanying configuration files/templates to release repository.  **These will only be added to tagged releases on GitHub**.
00178 
00179 * Integrated a fix by Quincey Koziol which addressed a variation of [NCF-250], *Fix issue of netCDF-4 parallel independent access with unlimited dimension hanging*.
00180 
00181 [NCF-250]:https://www.unidata.ucar.edu/jira/browse/NCF-250
00182 
00183 * Integrated change contributed by Orion Poplawski which integrated GNUInstallDirs into the netCDF-C CMake system; this will permit systems that install into lib64 (such as Fedora) to `make install` without problem.
00184 
00185 * Corrected an error with the CMake config files that resulted in the `netcdf.3` manpage not being built or installed.
00186 
00187 ### 4.3.1-rc1 Released 2013-08-09
00188 
00189 * Migrated from the netCDF-C `subversion` repository to a publically available GitHub repository available at https://github.com/Unidata/netCDF-C.  This repository may be checked out (cloned) with the following command:
00190 
00191         $ git clone https://github.com/Unidata/netCDF-C.git
00192 
00193 * Note: in this release, it is necessary to generate the `configure` script and makefile templates using `autoreconf` in the root netCDF-C directory.:
00194         
00195         $ autoreconf -i -f 
00196 
00197 * Added `nc_rename_grp` to allow for group renaming in netCDF-4 files. [NCF-204]
00198 
00199 [NCF-204]: https://bugtracking.unidata.ucar.edu/browse/NCF-204
00200 
00201 * Added a `NC_HAVE_RENAME_GRP` macro to netcdf.h, [as per a request by Charlie Zender][cz1]. This will allow software compiling against netcdf to easily query whether or not nc\_rename\_grp() is available.
00202 
00203 [cz1]: https://www.unidata.ucar.edu/esupport/staff/index.php?_m=tickets&_a=viewticket&ticketid=22442
00204 
00205 * Added Greg Sjaardema's contributed optimization for the nc4\_find\_dim\_len function in libsrc4/nc4internal.c. The patch eliminates several malloc/free calls that exist in the original coding.
00206 
00207 * Added support for dynamic loading, to compliment the dynamic loading support introduced in hdf 1.8.11.  Dynamic loading support depends on libdl, and is enabled as follows: [NCF-258]
00208         * autotools-based builds: --enable-dynamic-loading
00209         * cmake-based builds: -DENABLE\_DYNAMIC\_LOADING=ON
00210         
00211 [NCF-258]: https://www.unidata.ucar.edu/jira/browse/NCF-258
00212 
00213 * Fix issue of 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. [NCF-250]
00214 
00215 [NCF-250]: https://bugtracking.unidata.ucar.edu/browse/NCF-250
00216 
00217 * Fixed bug with netCDF-4's inability to read HDF5 scalar numeric attributes. Also allow, in addition to zero length strings, a new NULL pointer as a string value. to improve interoperability with HDF5. This required a new CDL constant, 'NIL', that can be output from ncdump for such a string value in an HDF5 or netCDF-4 file. The ncgen utility was also modified to properly handle such NIL values for strings. [NCF-56]
00218 
00219 [NCF-56]: https://bugtracking.unidata.ucar.edu/browse/NCF-56
00220 
00221 * Parallel-build portability fixes, particularly for OpenMPI and gcc/gfortran-4.8.x on OSX.
00222 
00223 * 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.
00224 
00225 * Fixed various minor documentation problems.
00226 
00227 ## 4.3.0 Released 2013-04-29
00228 
00229 * fsync: Changed default in autotools config file; fsync must now be
00230 explicitely enabled instead of explicitely disabled. [NCF-239]
00231 
00232 [NCF-239]: https://www.unidata.ucar.edu/jira/browse/NCF-239
00233 
00234 * Fixed netCDF-4 bug where odometer code for libdap2 mishandled stride > 1. Bug reported by Ansley Manke. [NCF-249]
00235 
00236 [NCF-249]: https://www.unidata.ucar.edu/jira/browse/NCF-249
00237 
00238 * Fixed netCDF-4 bug so netCDF just ignores objects of HDF5 reference type in
00239 the file, instead of rejecting the file. [NCF-29]
00240 
00241 [NCF-29]: https://www.unidata.ucar.edu/jira/browse/NCF-29
00242 
00243 * Fixed netCDF-4 bug with particular order of creation of dimensions,
00244 coordinate variables, and subgroups resulting in two dimensions with the
00245 same dimension ID. [NCF-244]
00246 
00247 [NCF-244]: https://www.unidata.ucar.edu/jira/browse/NCF-244
00248 
00249 * Fixed netCDF-4 bug with a multidimensional coordinate variable in a
00250 subgroup getting the wrong dimension IDs for its dimensions. [NCF-247]
00251 
00252 [NCF-247]: https://www.unidata.ucar.edu/jira/browse/NCF-247
00253 
00254 * Fixed bug with incorrect fixed-size variable offsets in header getting
00255 written when schema changed for files created by parallel-netcdf. Thanks
00256 to Wei-keng Liao for developing and contributing the fix. [NCF-234]
00257 
00258 [NCF-234]: https://www.unidata.ucar.edu/jira/browse/NCF-234
00259 
00260 * Fixed bug in handling old servers that do not do proper Grid to
00261 Structure conversions. [NCF-232]
00262 
00263 [NCF-232]: https://www.unidata.ucar.edu/jira/browse/NCF-232
00264 
00265 * Replaced the oc library with oc2.0
00266 
00267 * Fix bug with nc\_get\_var1\_uint() not accepting unsigned ints larger
00268 than 2\*\*31. [NCF-226]
00269 
00270 [NCF-226]: https://www.unidata.ucar.edu/jira/browse/NCF-226
00271 
00272 * Fix to convert occurrences of '/' in DAP names to %2f. [NCF-223]
00273 
00274 [NCF-223]: https://www.unidata.ucar.edu/jira/browse/NCF-223
00275 
00276 * Fix bug in netCDF-4 with scalar non-coordinate variables with same name
00277 as dimensions. [NCF-222]
00278 
00279 [NCF-222]: https://www.unidata.ucar.edu/jira/browse/NCF-222
00280 
00281 * Fix bug in which calling netCDF-4 functions in which behavior that
00282 should not depend on order of calls sometimes produces the wrong
00283 results. [NCF-217]
00284 
00285 [NCF-217]: https://www.unidata.ucar.edu/jira/browse/NCF-217
00286 
00287 * Merged in nccopy additions from Martin van Driel to support -g and -v
00288 options for specifying which groups or variables are to be copied.
00289 [NCF-216]
00290 
00291 [NCF-216]: https://www.unidata.ucar.edu/jira/browse/NCF-216
00292 
00293 * Merged in parallel-netcdf bugs fixes from Greg Sjaardema. [NCF-214]
00294 
00295 [NCF-214]: https://www.unidata.ucar.edu/jira/browse/NCF-214
00296 
00297 * Modify ncgen so that if the incoming file has a special attribute, then
00298 it is used to establish the special property of the netcdf file, but the
00299 attribute is not included as a real attribute in the file. [NCF-213].
00300 
00301 [NCF-213]: https://www.unidata.ucar.edu/jira/browse/NCF-213
00302 
00303 * Added library version info to the user-agent string so that the server
00304 logs will be more informative. [NCF-210]
00305 
00306 [NCF-210]: https://www.unidata.ucar.edu/jira/browse/NCF-210
00307 
00308 * Added work around for bad servers that sometimes sends DAP dataset with
00309 duplicate field names. [NCF-208]
00310 
00311 [NCF-208]: https://www.unidata.ucar.edu/jira/browse/NCF-208
00312 
00313 * Fixed bug with strided access for NC\_STRING type. [NCF-206]
00314 
00315 [NCF-206]: https://www.unidata.ucar.edu/jira/browse/NCF-206
00316 
00317 * Prevented adding an invalid \_FillValue attribute to a variable (with
00318 nonmatching type or multiple values), to avoid later error when any
00319 record variable is extended. [NCF-190]
00320 
00321 [NCF-190]: https://www.unidata.ucar.edu/jira/browse/NCF-190
00322 
00323 * Fix bug in which some uses of vlen within compounds causes HDF5 errors.
00324 [NCF-155]
00325 
00326 [NCF-155]: https://www.unidata.ucar.edu/jira/browse/NCF-155
00327 
00328 * Fixed ncdump bug in display of data values of variables that use
00329 multiple unlimited dimensions. [NCF-144]
00330 
00331 [NCF-144]: https://www.unidata.ucar.edu/jira/browse/NCF-144
00332 
00333 * Fix bug in which interspersing def\_var calls with put\_var calls can
00334 lead to corrupt metadata in a netCDF file with groups and inherited
00335 dimensions. [NCF-134]
00336 
00337 [NCF-134]: https://www.unidata.ucar.edu/jira/browse/NCF-134
00338 
00339 * Building shared libraries works with DAP and netCDF4 functionality.
00340 [NCF-205] [NCF-57]
00341 
00342 [NCF-205]: https://www.unidata.ucar.edu/jira/browse/NCF-205
00343 [NCF-57]: https://www.unidata.ucar.edu/jira/browse/NCF-57
00344 
00345 * 32-and-64-bit builds are working under MinGW on Windows. [NCF-112]
00346 
00347 [NCF-112]: https://www.unidata.ucar.edu/jira/browse/NCF-112
00348 
00349 * Config.h for Windows compiles are included in the build. [NCF-98]
00350 
00351 [NCF-98]: https://www.unidata.ucar.edu/jira/browse/NCF-98
00352 
00353 * NetCDF-4 dependency on NC\_MAX\_DIMS has been removed. [NCF-71]
00354 
00355 [NCF-71]: https://www.unidata.ucar.edu/jira/browse/NCF-71
00356 
00357 * 64-bit DLL's are produced on Windows. [NCF-65]
00358 
00359 [NCF-65]: https://www.unidata.ucar.edu/jira/browse/NCF-65
00360 
00361 * DLL Packaging issues are resolved. [NCF-54]
00362 
00363 [NCF-54]: https://www.unidata.ucar.edu/jira/browse/NCF-54
00364 
00365 * The CMake build system (with related ctest and cdash systems for
00366 testing) has been integrated into netCDF-C. This allows for Visual
00367 Studio-based builds in addition to gcc-based builds. This requires at
00368 least CMake version 2.8.8. This replaces/supplements the cross-compiled
00369 set of Visual-Studio compatible netCDF libraries introduced in netCDF
00370 4.2.1-rc1.
00371 
00372 ## 4.2.1.1 Released 2012-08-03
00373 
00374 * Patched libdap2/ncdap3.c to fix DAP performance bug remotely accessing large files (> 2GiB).
00375 
00376 * Patched ncdump/dumplib.c to properly escape special characters in CDL output from ncdump for netCDF-4 string data.
00377 
00378 
00379 ### 4.2.1 Released 2012-07-18
00380 
00381 * Added a specific NC\_MMAP mode flag to modify behavior of NC\_DISKLESS.
00382 
00383 * Changed the file protections for NC\_DISKLESS created files to 0666
00384 [NCF-182]
00385 
00386 * Fixed ncdump to report error when an unsupported option is specified.
00387 [NCF-180]
00388 
00389 * Fixed documentation of CDL char constants in Users Guide and ncgen man
00390 page.
00391 
00392 * Fixed memory leak detected by valgrind in one of the HDF5 tests.
00393 
00394 * Fixed problem with \#elif directives in posixio.c revealed by PGI
00395 compilers.
00396 
00397 ### 4.2.1-rc1 Released 2012-06-18
00398 
00399 * Ported static and shared libraries (DLL's) for both 32- and 64-bit
00400 Windows, including support for DAP remote access, with netCDF-3 and
00401 netCDF-4/HDF5 support enabled. The environment for this build is
00402 MSYS/MinGW/MinGW64, but the resulting DLLs may be used with Visual
00403 Studio. [NCF-112] [NCF-54] [NCF-57] [NCF-65]
00404 
00405 * Implemented diskless files for all netCDF formats. For nc\_create(),
00406 diskless operation performs all operations in memory and then optionally
00407 persists the results to a file on close. For nc\_open(), but only for
00408 netcdf classic files, diskless operation caches the file in-memory,
00409 performs all operations on the memory resident version and then writes
00410 all changes back to the original file on close.
00411 [NCF-110][NCF-109][NCF-5]
00412 
00413 * Added MMAP support. If diskless file support is enabled, then it is
00414 possible to enable implementation of diskless files using the operating
00415 system's MMAP facility (if available). The enabling flag is
00416 "--enable-mmap". This is most useful when using nc\_open() and when only
00417 parts of files, a single variable say, need to be read.
00418 
00419 * Added configure flag for --disable-diskless.
00420 
00421 * Added nccopy command-line options to exploit diskless files, resulting
00422 in large speedups for some operations, for example converting unlimited
00423 dimension to fixed size or rechunking files for faster access. Upgraded
00424 doxygen and man-page documentation for ncdump and nccopy utilities,
00425 including new -w option for diskless nccopy, with an example.
00426 
00427 * Modified Makefile to allow for concurrent builds and to support builds
00428 outside the source tree, e.g. 'mkdir build; cd build;
00429 SOURCE-DIR/configure' where SOURCE-DIR is the top-level source
00430 directory.
00431 
00432 * Fixed some netCDF-4 bugs with handling strings in non-netCDF-4 HDF5
00433 files. [NCF-150]
00434 
00435 * Fixed bug using nccopy to compress with shuffling that doesn't compress
00436 output variables unless they were already compressed in the input file.
00437 [NCF-162]
00438 
00439 * Fixed bug in 64-bit offset files with large records, when last record
00440 variable requires more than 2\*\*32 bytes per record. [NCF-164]
00441 
00442 * Fix bug in which passing a NULL path to nc\_open causes failure.
00443 [NCF-173]
00444 
00445 * Fixed ncgen bugs in parsing and handling opaque data.
00446 
00447 * Fixed ncdump bug, not escaping characters special to CDL in enumeration
00448 labels. [NCF-169]
00449 
00450 * Fixed bug reading netCDF int into a C longlong or writing from longlong
00451 to external int on 32-bit platforms with classic format files. The upper
00452 32 bits of the longlong were not cleared on read or used on write.
00453 [NCF-171]
00454 
00455 * Resolved some erroneous returns of BADTYPE errors and RANGE errors due
00456 to conflating C memory types with external netCDF types when accessing
00457 classic or 64-bit offset files. [NCF-172]
00458 
00459 * Fixed bug with ncdump -t interpreting unit attribute without base time
00460 as a time unit. [NCF-175]
00461 
00462 * Changed port for testing remote access test server to increase
00463 reliability of tests.
00464 
00465 * Modified ncio mechanism to support multiple ncio packages, so that it is
00466 possible to have e.g. posixio and memio operating at the same time.
00467 
00468 * Generation of documentation is disabled by default. Use --enable-doxygen
00469 to generate. [NCF-168]
00470 
00471 * Added description of configure flags to installation guide.
00472 
00473 * Clarified documentation of arguments to nc**open() and nc**create() and
00474 their default values.
00475 
00476 * Fixed doxygen installation guide source file to preserve line breaks in
00477 code and scripts. [NCF-174]
00478 
00479 * Cleaned up a bunch of lint issues (unused variables, etc.) and some
00480 similar problems reported by clang static analysis.
00481 
00482 * Updated and fixed pkg-config source file netcdf.pc.in to work with
00483 separated netCDF language-specific packages. Also fixed nc-config to
00484 call nf-config, ncxx-config, and ncxx4-config for for backward
00485 compatibility with use of nc-config in current Makefiles. [NCF-165]
00486 [NCF-179]
00487 
00488 * 4.2 Released 2012-03-19 (Note: Jira entries include reference to
00489 '[NCF-XX]')
00490 
00491 * Completely rebuilt the DAP constraint handling. This primarily affects
00492 users who specify a DAP constraint as part of their URL. [NCF-120]
00493 
00494 * Fixed cause of slow nccopy performance on file systems with many records
00495 and large disk block size or many record variables, by accessing data a
00496 record at a time instead of a variable at a time. [NCF-142]
00497 
00498 * Performance improvement to DAP code to support fetching partial
00499 variables into the cache; especially important when using nc\_get\_var()
00500 API. A partial variable is one that has ranges attached to the
00501 projection variables (e.g. x[1:10][20:21]) [NCF-157]
00502 
00503 * Separate the Fortran and C++ libraries and release the C library and
00504 ncdump/ncgen/nccopy without Fortran or C++. [NCF-24]
00505 
00506 * Documentation mostly migrated to Doxygen, from Texinfo. [NCF-26]
00507 
00508 * Properly convert vara start/count parameters to DAP [NCF-105][NCF-106]
00509 
00510 * Fixed major wasted space from previous default variable chunk sizes
00511 algorithm. [NCF-81]
00512 
00513 * Fixed bug in nccopy, in which compression and chunking options were
00514 ignored for netCDF-4 input files. [NCF-79]
00515 
00516 * Fixed bug in ncgen in which large variables (more than 2**18 elements)
00517 duplicates the first 2**18 values into subsequent chunks of data
00518 [NCF-154].
00519 
00520 * Applied Greg Sjaardema's nccopy bug fix, not compressing output
00521 variables f they were not already using compression on the input file
00522 when shuffle specified. [NCF-162]
00523 
00524 * Fixed problem when a URL is provided that contains only a host name.
00525 [NCF-103]
00526 
00527 * Fixed behavior of ncgen flags so that -o =\> -lb and, in the absence of
00528 any other markers, make the default be -k1 [NCF-158]
00529 
00530 * Created a text INSTALL file for netCDF-4.2 release. [NCF-161]
00531 
00532 * Fixed bug in ncgen for vlen arrays as fields of compound types where
00533 datalists for those types was improperly interpreted [NCF-145] (but see
00534 NCF-155).
00535 
00536 * Improve use of chunk cache in nccopy utility, making it practical for
00537 rechunking large files. [NCF-85]
00538 
00539 * Fixed nccopy bug copying a netCDF-4 file with a chunksize for an
00540 unlimited dimension that is larger than the associated dimension size.
00541 [NCF-139]
00542 
00543 * Fixed nccopy bug when rechunking a netCDF-4 file with a chunkspec option
00544 that doesn't explicitly specify all dimensions. [NCF-140]
00545 
00546 * Fixed bug in netCDF-4 files with non-coordinate variable with the same
00547 name as a dimension. [NCF-141]
00548 
00549 * Incorporated Wei Huang's fix for bug where netCDF-4 sometimes skips over
00550 too many values before adding fill values to an in-memory buffer.
00551 [NCF-143]
00552 
00553 * Fixed ncgen bug with netCDF-4 variable-length constants (H/T to Lynton
00554 Appel). [NCF-145]
00555 
00556 * Incorporated Peter Cao's performance fixes using HDF5 link iterator for
00557 any group with many variables or types. [NCF-148]
00558 
00559 * Incorporated Constantine Khroulev's bug fix for invalid usage of
00560 MPI\_Comm\_f2c in nc\_create\_par. [NCF-135]
00561 
00562 * Fixed turning off fill values in HDF5 layers when NOFILL mode is set in
00563 netCDF-4 API (thanks to Karen Schuchardt). [NCF-151]
00564 
00565 * Fixed bug with scalar coordinate variables in netCDF-4 files, causing
00566 failure with --enable-extra-tests [NCF-149]
00567 
00568 * Cleaned up the definition and use of nulldup. [NCF-92][NCF-93][NCF-94]
00569 
00570 * Fixed various '\#include' bugs. [NCF-91][NCF-96][NCF-127]
00571 
00572 * v2 API functions modified to properly call the external API instead of
00573 directly calling the netcdf-3 functions. [NCF-100]
00574 
00575 * Fixed problem with 64-bit offset format where writing more than 2\*\*31
00576 records resulted in erroneous NC\_EINVALCOORDS error. [NCF-101]
00577 
00578 * Restored original functionality of ncgen so that a call with no flags,
00579 only does the syntax check. [NCF-104]
00580 
00581 * Corrected misc. test bugs [NCF-107]
00582 
00583 * Modified ncdump to properly output various new types (ubyte, ushort,
00584 uint, int64, and uint64). [NCF-111]
00585 
00586 * Fixed incorrect link flag for szip in configure.ac [NCF-116]
00587 
00588 * ncdump -t now properly parses ISO "T" separator in date-time strings.
00589 [NCF-16]
00590 
00591 * ncdump -t "human time" functionality now available for attributes and
00592 bounds variables [NCF-70]
00593 
00594 * In ncdump, add -g option to support selection of groups for which data
00595 is displayed. [NCF-11]
00596 
00597 * Now supports bluefire platform [NCF-52]
00598 
00599 * ncdump now properly displays values of attributes of type NC\_USHORT as
00600 signed shorts [NCF-82]
00601 
00602 * Rename some code files so that there are no duplicate filenames.
00603 [NCF-99]
00604 
00605 * Demonstration of netCDF-4 Performance Improvement with KNMI Data
00606 [NCF-113]
00607 
00608 * Dimension size in classic model netCDF-4 files now allows larger sizes
00609 than allowed for 64-bit offset classic files. [NCF-117]
00610 
00611 * ncdump now reports correct error message when "-x" option specifying
00612 NcML output is used on netCDF-4 enhanced model input. [NCF-129]
00613 
00614 * Fixed bug causing infinite loop in ncdump -c of netCDF-4 file with
00615 subgroup with variables using inherited dimensions. [NCF-136]
00616 
00617 ## 4.1.3 2011-06-17
00618 
00619 * Replace use of --with-hdf5= and other such configure options that
00620 violate conventions and causes build problems. Set environment variables
00621 CPPFLAGS, LDFLAGS, and LD\_LIBRARY\_PATH instead, before running
00622 configure script. [NCF-20]
00623 
00624 * Detect from configure script when szlib is needed [NCF-21]
00625 
00626 * Fix bug that can silently zero out portions of a file when writing data
00627 in nofill mode beyond the end of a file, crossing disk-block boundaries
00628 with region to be written while in-memory buffer is in a specific state.
00629 This bug was observed disabling fill mode using Lustre (or other large
00630 blksize file system) and writing data slices in reverse order on disk.
00631 [NCF-22]
00632 
00633 * Fix bug that prevents netCDF-4/HDF5 files created with netCDF-4.1.2 from
00634 being read by earlier versions of netCDF or HDF5 versions before 1.8.7.
00635 [NCF-23]
00636 
00637 * Fix bug in configure that did not make the search for the xdr library
00638 depend on --enable-dap. [NCF-41]
00639 
00640 * Fix ncgen bug that did not use the value of a \_Format attribute in the
00641 input CDL file to determine the kind of output file created, when not
00642 specified by the -k command-line flag. [NCF-42]
00643 
00644 * Fix ncgen bug, not properly handling unsigned longlong parsing. [NCF-43]
00645 
00646 * Fix DAP client code to suppress variables with names such as "x.y",
00647 which DAP protocol interprets as variable "y" inside container "x". Such
00648 variables will be invisible when accessed through DAP client. [NCF-47]
00649 
00650 * Define uint type for unsigned integer, if not otherwise available.
00651 Symptom was compile error involving uint in putget.c. [NCF-49]
00652 
00653 * Fix username+password handling in the DAP client code. [NCF-50]
00654 
00655 * Add test for handling parallel I/O problem from f77 when user forgets to
00656 turn on one of the two MPI flags. [NCF-60]
00657 
00658 * Resolved "make check" problems when ifort compiler. Some "make install"
00659 problems remain when using MPI and shared libraries. [NCF-61]
00660 
00661 * Fix problem with f90\_def\_var not always handle deflate setting when
00662 compiler was ifort. [NCF-67]
00663 
00664 * Check that either MPIIO or MPIPOSIX flag is set when parallel create or
00665 open is called. Also fix examples that didn't set at least one of these
00666 flags. [NCF-68]
00667 
00668 * Improve documentation on handling client-side certificates [NCF-48]
00669 
00670 * Document that array arguments, except in varm functions, must point to
00671 contiguous blocks of memory. [NCF-69]
00672 
00673 * Get netCDF-4 tests working for DLLs generated with mingw. [NCF-6]
00674 
00675 * Make changes necessary for upgrading to HDF5 1.8.7 [NCF-66]
00676 
00677 ### 4.1.3-rc1 2011-05-06 
00678 
00679 * Stop looking for xdr if --disable-dap is used.
00680 
00681 * Don't try to run (some) fortran configure tests on machines with no
00682 fortran.
00683 
00684 * Allow nccopy to rechunk with chunksizes larger than current dimension
00685 lengths.
00686 
00687 * Initial implementation of CDMREMOTE is complete; needs comprehensive
00688 testing.
00689 
00690 ### 4.1.3-beta1 2011-04-29
00691 
00692 * Fixed szlib not linking bug.
00693 
00694 * Fixed dreaded "nofill bug", lurking in netCDF classic since at least
00695 1999. Writing more than a disk block's worth of data that crossed disk
00696 block boundaries more than a disk block beyond the end of file in nofill
00697 mode could zero out recently written earlier data that hadn't yet been
00698 flushed to disk.
00699 
00700 * Changed setting for H5Pset\_libver\_bounds to ensure that all netCDF-4
00701 files can be read by HDF5 1.8.x.
00702 
00703 * Merged libncdap3 and libncdap4 into new libdap2 library. The suffix dap2
00704 now refers to the dap protocol. This is in prep for adding dap4 protocol
00705 support.
00706 
00707 * Took out --with-hdf5 and related options due to high cost of maintaining
00708 this non-standard way of finding libraries.
00709 
00710 ## 4.1.2 2011-03-29
00711 
00712 * Changes in build system to support building dlls on cygwin/mingw32.
00713 
00714 * Changes to fix portability problems and get things running on all test
00715 platforms.
00716 
00717 * Some minor documentation fixes.
00718 
00719 * Fixed opendap performance bug for nc\_get\_vars; required adding
00720 nc\_get\_var{s,m} to the dispatch table.
00721 
00722 * Now check for libz in configure.ac.
00723 
00724 * Fixed some bugs and some performance problems with default chunksizes.
00725 
00726 ### 4.1.2-beta2 2011-01-11
00727 
00728 * Add "-c" option to nccopy to specify chunk sizes used in output in terms
00729 of list of dimension names.
00730 
00731 * Rewrite netCDF-4 attribute put code for a large speedup when writing
00732 lots of attributes.
00733 
00734 * Fix nc-config --libs when static dependent libraries are not installed
00735 in the same directory as netCDF libraries (thanks to Jeff Whitaker).
00736 
00737 * Build shared libraries by default, requiring separate Fortran library.
00738 Static libraries now built only with --disable-shared.
00739 
00740 * Refactor of HDF5 file metadata scan for large speedup in opening files,
00741 especially large files.
00742 
00743 * Complete rewrite of the handling of character datalist constants. The
00744 heuristics are documented in ncgen.1.
00745 
00746 * Eliminate use of NC\_MAX\_DIMS and NC\_MAX\_VARS in ncdump and nccopy,
00747 allocating memory as needed and reducing their memory footprint.
00748 
00749 * Add documentation for new nc\_inq\_path() function.
00750 
00751 * Use hashing to speedup lookups by name for files with lots of dimensions
00752 and variables (thanks to Greg Sjaardema).
00753 
00754 * Add options to nccopy to support uniform compression of variables in
00755 output, shuffling, and fixing unlimited dimensions. Documented in
00756 nccopy.1 man page and User's Guide.
00757 
00758 ### 4.1.2-beta1 2010-07-09
00759 
00760 * Fix "ncdump -c" bug identifying coordinate variables in groups.
00761 
00762 * Fix bug in libsrc/posixio.c when providing sizehint larger than default,
00763 which then doesn't get used (thanks to Harald Anlauf).
00764 
00765 * Fix netCDF-4 bug caused when doing enddef/redef and then defining
00766 coordinate variable out of order.
00767 
00768 * Fixed bug in man4 directory automake file which caused documentation to
00769 be rebuilt after make clean.
00770 
00771 * Turned off HDF5 caching when parallel I/O is in use because of its
00772 memory use.
00773 
00774 * Refactoring of netCDF code with dispatch layer to decide whether to call
00775 netCDF classic, netCDF-4, or opendap version of a function.
00776 
00777 * Refactoring of netCDF-4 memory internals to reduce memory use and end
00778 dependence on NC\_MAX\_DIMS and NC\_MAX\_NAME.
00779 
00780 * Modified constraint parser to be more compatible with a java version of
00781 the parser.
00782 
00783 * Modified ncgen to utilize iterators internally; should be no user
00784 visible effect.
00785 
00786 * Fixed two large-file bugs with using classic format or 64-bit offset
00787 format and accessing multidimensional variables with more than 2\*\*32
00788 values.
00789 
00790 ## 4.1.1 2010-04-01
00791 
00792 * Fixed various build issues.
00793 
00794 * Fixed various memory bugs.
00795 
00796 * Fixed bug for netCDF-4 files with dimensions and coord vars written in
00797 different orders, with data writes interspersed.
00798 
00799 * Added test for HDF5-1.8.4 bug.
00800 
00801 * Added new C++ API from Lynton Appel.
00802 
00803 ## 4.1 2010-01-30
00804 
00805 * Much better memory leak checking with valgrind.
00806 
00807 * Added per-variable chunk cache control for better performance. Use
00808 nc\_set\_var\_chunk\_cache / nf\_set\_var\_chunk\_cache /
00809 nf90\_set\_var\_chunk\_cache to set the per-variable cache.
00810 
00811 * Automatically set per-variable chunk cache when opening a file, or
00812 creating a variable, so that the cache is big enough for more than one
00813 chunk. (Can be overridden by user). Settings may be changed with
00814 configure options --max-default-chunk-size and
00815 --default-chunks-in-cache.
00816 
00817 * Better default chunks size. Now chunks are sized to fit inside the
00818 DEFAULT\_CHUNK\_SIZE (settable at configure time with
00819 --with-default-chunk-size= option.)
00820 
00821 * Added nccopy utility for converting among netCDF format variants or to
00822 copy data from DAP servers to netCDF files.
00823 
00824 * The oc library has been modified to allow the occurrence of alias
00825 definitions in the DAS, but they will be ignored.
00826 
00827 * The old ncgen has been moved to ncgen3 and ncgen is now the new ncgen4.
00828 
00829 * Modified --enable-remote-tests to be on by default.
00830 
00831 * Fixed the nc\_get\_varm code as applied to DAP data sources.
00832 
00833 * Added tests for nc-config.
00834 
00835 * Many documentation fixes.
00836 
00837 * Added capability to use the parallel-netcdf (a.k.a. pnetcdf) library to
00838 perform parallel I/O on classic and 32-bit offset files. Use the
00839 NC\_PNETCDF mode flag to get parallel I/O for non-netcdf-4 files.
00840 
00841 * Added libcf library to netCDF distribution. Turn it on with configure
00842 option --with-libcf.
00843 
00844 * Added capability to read HDF4 files created with the SD (Scientific
00845 Data) API.
00846 
00847 * The DAP support was revised to closely mimic the original libnc-dap
00848 support.
00849 
00850 * Significantly revised the data handling mechanism in ncgen4 to more
00851 closely mimic the output from the original ncgen.
00852 
00853 * Added prototype NcML output capability to ncgen4. It is specified by the
00854 -lcml flag.
00855 
00856 * Added capability to read HDF5 files without dimension scales. This will
00857 allow most existing HDF5 datasets to be read by netCDF-4.
00858 
00859 * Fixed bug with endianness of default fill values for integer types when
00860 variables are created with a non-native endiannesss and use the default
00861 fill value.
00862 
00863 * Significant refactoring of HDF5 type handling to improve performance and
00864 handle complicated nesting of types in cross-platform cases.
00865 
00866 * Added UDUNITS2 to the distribution. Use --with-udunits to build udunits
00867 along with netcdf.
00868 
00869 * Made changes suggested by HDF5 team to relax creation-order requirement
00870 (for read-only cases) which allows HDF5 1.6.x files to be retrofitted
00871 with dimension scales, and be readable to netCDF-4.
00872 
00873 * Handle duplicate type names within different groups in ncdump. Fix group
00874 path handling in absolute and relative variable names for "-v" option.
00875 
00876 * Added nc-config shell script to help users build netCDF programs without
00877 having to figure out all the compiler options they will need.
00878 
00879 * Fixed ncdump -s bug with displaying special attributes for classic and
00880 64-bit offset files.
00881 
00882 * For writers, nc\_sync() now calls fsync() to flush data to disk sooner.
00883 
00884 * The nc\_inq\_type() function now works for primitive types.
00885 
00886 ## 4.0.1 2009-03-26
00887 
00888 * Added optional arguments to F90 API to nf90\_open/create,
00889 nf90\_create\_var, and nf90\_inquire\_variable so that all netCDF-4
00890 settings may be accomplished with optional arguments, instead of
00891 separate function calls.
00892 
00893 * Added control of HDF5 chunk cache to allow for user performance tuning.
00894 
00895 * Added parallel example program in F90.
00896 
00897 * Changed default chunking to better handle very large variables.
00898 
00899 * Made contiguous the default for fixed size data sets with no filters.
00900 
00901 * Fixed bug in nc\_inq\_ncid; now it returns NC\_ENOGRP if the named group
00902 is not found.
00903 
00904 * Fixed man pages for C and F77 so that netCDF-4 builds will result in man
00905 pages that document new netCDF-4 functions.
00906 
00907 * Added OPeNDAP support based on a new C-only implementation. This is
00908 enabled using --enable-dap option and requires libcurl. The configure
00909 script will attempt to locate libcurl, but if it fails, then its
00910 location must be specified by the --with-curl option.
00911 
00912 ### 4.0.1-beta2 2008-12-26
00913 
00914 * Changed chunksizes to size\_t from int.
00915 
00916 * Fixed fill value problem from F77 API.
00917 
00918 * Fixed problems in netcdf-4 files with multi-dimensional coordinate
00919 variables.
00920 
00921 * Fixed ncgen to properly handle CDL input that uses Windows line endings
00922 ("\r\n"), instead of getting a syntax error.
00923 
00924 * Added "-s" option to ncdump to display performance characterisitics of
00925 netCDF-4 files as special virtual attributes, such as \_Chunking,
00926 \_DeflateLevel, \_Format, and \_Endianness.
00927 
00928 * Added "-t" option to ncdump to display times in human readable form as
00929 strings. Added code to interpret "calendar" attribute according to CF
00930 conventions, if present, in displaying human-readable times.
00931 
00932 * Added experimental version of ncgen4 capable of generating netcdf-4 data
00933 files and C code for creating them. In addition, it supports the special
00934 attributes \_Format, etc.
00935 
00936 * 4.0.1-beta1 2008-10-16
00937 
00938 * Fixed Fortran 90 int64 problems.
00939 
00940 * Rewrote HDF5 read/write code in accordance with performance advice from
00941 Kent.
00942 
00943 * Fixed memory leaks in gets/puts of HDF5 data.
00944 
00945 * Fixed some broken tests for parallel I/O (i.e. MPI) builds.
00946 
00947 * Fixed some cross-compile problems.
00948 
00949 * Rewrote code which placed bogus errors on the HDF5 error stack, trying
00950 to open non-existant attributes and variables. Now no HDF5 errors are
00951 seen.
00952 
00953 * Removed man subdirectory. Now man4 subdirectory is used for all builds.
00954 
00955 * Changed build so that users with access to parallel make can use it.
00956 
00957 * Added experimental support for accessing data through OPeNDAP servers
00958 using the DAP protocol (use --enable-opendap to build it).
00959 
00960 * Fixed ncdump bugs with array field members of compound type variables.
00961 Fixed ncdump bug of assuming default fill value for data of type
00962 unsigned byte.
00963 
00964 ## 4.0 2008-05-31
00965 
00966 * Introduced the use of HDF5 as a storage layer, which allows use of
00967 groups, user-defined types, multiple unlimited dimensions, compression,
00968 data chunking, parallel I/O, and other features. See the netCDF Users
00969 Guide for more information.
00970 
00971 ## 3.6.3 2008-05-31
00972 
00973 * In ncdump and ncgen, added CDL support for UTF-8 encoding of characters
00974 in names and for escaped special chars in names. Made sure UTF-8 names
00975 are normalized using NFC rules before storing or comparing.
00976 
00977 * Handle IEEE NaNs and infinities in a platform-independent way in ncdump
00978 output.
00979 
00980 * Added support for ARM representation of doubles, (thanks to Warren
00981 Turkal).
00982 
00983 * Fixed bug in C++ API creating 64-bit offset files. (See
00984 http://www.unidata.ucar.edu/software/netcdf/docs/known\_problems.html\#cxx\_64-bit.)
00985 
00986 * Fixed bug for variables larger than 4 GB. (See
00987 http://www.unidata.ucar.edu/software/netcdf/docs/known\_problems.html\#large\_vars\_362.)
00988 
00989 * Changed the configure.ac to build either 3.6.x or 4.x build from the
00990 same configure.ac.
00991 
00992 * Build now checks gfortran version and handles it cleanly, also Portland
00993 Group in Intel fortran, with various configurations.
00994 
00995 * A Fortran netcdf.inc file is now created at build time, based on the
00996 setting of --disable-v2.
00997 
00998 * Documentation has been fixed in several places.
00999 
01000 * Upgraded to automake 1.10, autoconf 2.62, and libtool 2.2.2.
01001 
01002 * Includes missing Windows Visual Studio build files.
01003 
01004 * Fixed missing include of config.h in a C++ test program.
01005 
01006 * Fixed maintainer-clean in man directory.
01007 
01008 * Fixed --enable-c-only and make check.
01009 
01010 * Fixed behavior when opening a zero-length file.
01011 
01012 * Many portability enhancements to build cleanly on various platforms.
01013 
01014 * Turned on some old test programs which were not being used in the build.
01015 
01016 ## 3.6.2 2007-03-05
01017 
01018 * Released.
01019 
01020 ### 3.6.2 beta6 2007-01-20
01021 
01022 * Fine tuning of build system to properly handle cygwin, Mingw, and
01023 strange configuration issues.
01024 
01025 * Automake 1.10 has a problem with running our tests on MinGW, so I'm
01026 switching back to automake 1.9.6 for this release.
01027 
01028 ### 3.6.2 beta5 2006-12-30
01029 
01030 * Now netCDF configuration uses autoconf 2.61, and automake 1.10. (Thanks
01031 to Ralf Wildenhues for the patches, and all the autotools help in
01032 general!)
01033 
01034 * Final major revision of netCDF tutorial before the 3.6.2 release.
01035 
01036 * Now netCDF builds under MinGW, producing a windows DLL with the C and
01037 F77 APIs. Use the --enable-shared --enable-dll --disable-cxx
01038 --disable-f90 flags to configure. (C++ and F90 have never been built as
01039 windows DLLs, but might be in a future release if there is user
01040 interest). This has all been documented in the netCDF Porting and
01041 Installation Guide.
01042 
01043 * Now extreme numbers (i.e. those close to the limits of their type) can
01044 be turned off in nc\_test/nf\_test, with --disable-extreme-numbers. It
01045 is turned off automatically for Solaris i386 systems.
01046 
01047 * Added --enable-c-only option to configure. This causes only the core
01048 netCDF-3 C library to be built. It's the same as --disable-f77
01049 --disable-cxx --disable-v2 --disable-utilities.
01050 
01051 * Added --disable-utilities to turn off building and testing of
01052 ncgen/ncdump.
01053 
01054 * Fix a long-standing bug in nf90\_get\_att\_text() pointed out by Ryo
01055 Furue, to make sure resulting string is blank-padded on return. This is
01056 fixed in the Fortran-90 interface, but is impractical to fix in the
01057 Fortran-77 interface implemented via cfortran.h.
01058 
01059 * Now large file tests are run if --enable-large-file-tests is used in the
01060 configure.
01061 
01062 * For Cray users, the ffio module is used if the --enable-ffio option is
01063 passed to configure.
01064 
01065 * Unrolled loops in byte-swapping code used on little-endian platforms to
01066 reduce loop overhead. This optimization resulted in a 22% speedup for
01067 some applications accessing floats or ints (e.g. NCO utilities ncap and
01068 ncbo) and a smaller speedup for shorts or doubles.
01069 
01070 * Added "-k" option to ncdump and ncgen, for identifying and specifying
01071 the kind of netCDF file, one of "classic", "64-bit-offset", "hdf5", or
01072 "hdf5-nc3". Removed output of kind of netCDF file in CDL comment
01073 produced by ncdump.
01074 
01075 * Fixed bug of ncdump seg-faulting if invoked incorrectly with option like
01076 "-c" or "-h" but no file name.
01077 
01078 ### 3.6.2 beta4 2006-08-15
01079 
01080 * Changed F77/F90 man pages from netcdf.3f and netcdf.3f90 to
01081 netcdf\_f77.3 and netcdf\_f90.3. Also fixed broken install of man pages.
01082 
01083 * Changed configure script so that "-g -O2" is no longer set as CFLAGS,
01084 CXXFLAGS, and FFLAGS by default if a GNU compiler is being used. Now
01085 nothing is set.
01086 
01087 * Changed configure script so that fortran flag is set in config.h.
01088 
01089 * Updated Installation and Porting Guide, C++ Interface Guide, F77 and F90
01090 Interface Guides.
01091 
01092 * Build with static libraries by default.
01093 
01094 * Added configure option --enable-separate-fortran, which causes the
01095 fortran library to be built separately. This is turned on automatically
01096 for shared libraries.
01097 
01098 * Improved clarity of error messages.
01099 
01100 * Changed configuration to get cygwin DLL and mingw DLL builds working,
01101 for the C library only (i.e. no F77, F90, or C++ APIs).
01102 
01103 * Changed type of ncbyte in C++ interface from unsigned char to signed
01104 char, for consistency with C interface. The C++ documentation warned
01105 this change would eventually occur.
01106 
01107 * Changed the C++ interface to use only the netCDF-3 C interface instead
01108 of the older netCDF-2 C interface. This has the added benefit that
01109 on-the-fly numeric conversions are now supported using get methods, for
01110 example you can get data of any type as double. When using --disable-v2
01111 flag to configure, the C++ interface can now be built and installed.
01112 
01113 ### 3.6.2 beta3 2006-05-24
01114 
01115 * Changed to use default prefix of /usr/local instead of package-based
01116 prefix of previous releases of netCDF. Use the --prefix argument to the
01117 configure script to override the default.
01118 
01119 * Made separate fortran library file, instead of appending fortran library
01120 functions to the C library file, if --enable-separate-fortran is used
01121 during configure (it's turned on automatically if --enable-shared is
01122 used). If uses, the fortran API users must link to *both* the C library
01123 and the new fortran library, like this: -lnetcdff -lnetcdf
01124 
01125 * Added netCDF examples in C, C++, F77, F90, and CDL. See the examples
01126 subdirectory.
01127 
01128 * Added the NetCDF Tutorial.
01129 
01130 * Minor fixes to some of the netCDF documentation.
01131 
01132 * Made it possible to build without V2 API using --disable-v2 from
01133 configure.
01134 
01135 * Switched to new build system, with automake and libtool. Now shared
01136 libraries are built (as well as static ones) on platforms which support
01137 it. For more information about shared libraries, see
01138 http://www.unidata.ucar.edu/software/netcdf/docs/faq.html\#shared\_intro
01139 
01140 * Fixed ncdump crash that happened when no arguments were used.
01141 
01142 * Fixed for building with gfortran 4.1.0.
01143 
01144 * Important fix for machines whose SIZEOF\_SIZE\_T != SIZEOF\_LONG, such
01145 as NEC-SX, thanks to Stephen Leak.
01146 
01147 * Fixed C++ on AIX platform.
01148 
01149 * Fixed 64-bit builds on AIX platform.
01150 
01151 * Removed bad assertion that could be triggered in rare cases when reading
01152 a small file.
01153 
01154 * Added comments in v1hpg.c to clarify purpose of each internal function.
01155 
01156 * Make sure filesize is determined in nc\_close() *after* buffers get
01157 flushed.
01158 
01159 * Fix long-standing problem resulting in files up to 3 bytes longer than
01160 necessary if there is exactly one record variable of type byte, char, or
01161 short and if the number of values per record for that variable is not
01162 divisible by 4 (or 2 in the case of short). Now the filesize determined
01163 from header info by NC\_calcsize should be correct in all cases.
01164 
01165 ## 3.6.1 2006-01-31
01166 
01167 * Updated installation manual for 3.6.1.
01168 
01169 * Changed installation to try to provide correct compiler flags for
01170 compiling in 64-bit mode on Sun, Irix, AIX, and HPUX. (HPUX doesn't work
01171 for me, however). Now run configure with --enable-64bit to get a 64 bit
01172 compile.
01173 
01174 * Fixed long-standing bug that would cause small netCDF files to be padded
01175 on the end with zero bytes to 4096 bytes when they were opened and
01176 changed. Now small files should stay small after you change a value.
01177 
01178 * Fixed bug in assertions in putget.c that would only be noticed if you
01179 change the manifest constant NC\_MAX\_DIMS in netcdf.h to be different
01180 from NC\_MAX\_VAR\_DIMS.
01181 
01182 * Moved test ftest.F from fortran to nf\_test directory, and fixed bug in
01183 ftest.F which caused it to return 0 even if tests failed (no tests were
01184 failing, however). Also renamed some test output files to make things a
01185 little clearer.
01186 
01187 * If open for writing, pad with up to 3 extra zero bytes before close to
01188 the correct canonical length, calculated from the header. Previously
01189 files could be short due to not padding when writing in NOFILL mode.
01190 
01191 * Doubled arbitrary limits on number of dimensions, variables, attributes,
01192 and length of names.
01193 
01194 * Change name of nc\_get\_format() to nc\_inq\_format(). Add analogous
01195 interfaces for nf\_inq\_format(), nf90\_inquire(), and
01196 NcFile::get\_format() to f77, f90, and C++ interfaces. Document new
01197 function in texinfo files. Add minimal test to nc\_test, nf\_test.
01198 
01199 ### 3.6.1-beta3 2005-02-17
01200 
01201 * Added function nc\_get\_format(int ncid, int\* formatp) that returns
01202 either NC\_FORMAT\_CLASSIC or NC\_FORMAT\_64BIT for a CDF1 or CDF2 file,
01203 respectively.
01204 
01205 * Added test to nc\_test that detects whether format version was changed
01206 after a file is reopened and define mode is entered.
01207 
01208 * Correctly configure for Intel ifort Fortran compiler on Linux.
01209 
01210 ### 3.6.0-p1 2005-02-18
01211 
01212 * Fixed bug that changes CDF2 files to CDF1 files if CDF2 file is reopened
01213 for write access and either an attribute is changed or define mode is
01214 entered.
01215 
01216 ### 3.6.1-beta2 2005-1-6
01217 
01218 * Fixed absoft compile problem. Maybe.
01219 
01220 ### 3.6.1-beta1 2005-1-3
01221 
01222 * Fixed Cygwin C++ problem.
01223 
01224 * Fixed large file problem in MS Visual C++.NET environment.
01225 
01226 * More information in installation and porting guide.
01227 
01228 ## 3.6.0 2004-12-16
01229 
01230 * Added texinfo source for the documentation.
01231 
01232 * Added large file tests to Windows directory in distribution.
01233 
01234 * Modified win32 visual studio project files so that m4 is no longer
01235 required to build netcdf under visual studio.
01236 
01237 * Modified rules.make to use install instead of cp, fixing install problem
01238 for cygwin users.
01239 
01240 * Modified configure/install stuff to support HP-UX.
01241 
01242 * Modified configure/install stuff to support G95.
01243 
01244 * In the f90 interface, applied Arnaud Desitter's fixes to correct
01245 mismatches between scalar and array arguments, eliminating (legitimate)
01246 complaints by the NAGWare f95 compiler. Also fixed bugs introduced in
01247 3.6.0-beta5 in the mapped array interfaces.
01248 
01249 ### 3.6.0-beta6 2004-10-05
01250 
01251 * Fixed AIX 64-bit/largefile install problems.
01252 
01253 * Removed FAQ section from netcdf.texi User's Guide, in deference to
01254 online version that can be kept up to date more easily.
01255 
01256 ### 3.6.0-beta5 2004-10-04
01257 
01258 * Fixed assertion violation on 64-bit platforms when size of last fixed
01259 size variable exceeds 2\^32 - 1.
01260 
01261 * Removed another restriction on file size by making record size (derived
01262 from other sizes, not part of the format) an off\_t instead of a
01263 size\_t, when an off\_t is larger than a size\_t. This permits records
01264 to be *much* larger in either classic format or 64-bit-offset format.
01265 
01266 * Incorporated patch from Mathis Rosenhauer to improve performance of
01267 Fortran 90 interface for calls to nf90\_put\_var\_TYPE(),
01268 nf90\_get\_var\_TYPE(), nf90\_put\_vara\_TYPE(), and
01269 nf90\_get\_vara\_TYPE() functions by not emulating them with the
01270 corresponding nf90\_put\_varm\_TYPE() and nf90\_get\_varm\_TYPE() calls.
01271 
01272 * Added tests for invalid offsets in classic format when defining multiple
01273 large variables.
01274 
01275 * Improved installation ease. Have configure script use Large File Support
01276 as a default, if available.
01277 
01278 * Add "extra\_test" as a target for testing Large File Support.
01279 
01280 ### 3.6.0-beta3 2004-08-24
01281 
01282 * Upgraded to recent autoconf, changed configure to (hopefully) improve
01283 installation. Also added macros to deal with large file systems.
01284 
01285 * Added nf\_set\_default\_format to Fortran interface.
01286 
01287 * Added testing to the set\_default\_format functions to nc\_test and
01288 nf\_test.
01289 
01290 * Added documentation to the man page for set\_default\_format functions.
01291 
01292 * Added two new error return codes to C, f77, and f90 interfaces for
01293 invalid dimension size and for bad variable size. Made test for max
01294 dimension size depend on whether 64-bit offsets used. Fixed bug with
01295 dimension sizes between 2\^31 and 2\^32 (for byte variables).
01296 
01297 * Fixed ncdump to properly print dimensions larger than 2\^31.
01298 
01299 * Fixed ncgen to properly handle dimensions between 2\^31 and 2\^32.
01300 
01301 ### 3.6.0-beta2 
01302 
01303 * Added -v2 (version 2 format with 64-bit offsets) option to
01304 ncgen, to specify that generated files or generated C/Fortran code
01305 should create 64-bit offset files. Also added -x option to ncgen to
01306 specify use of no-fill mode for fast creation of large files.
01307 
01308 * Added function to set default create mode to C interface
01309 (nc\_set\_default\_create).
01310 
01311 * Added win32 directory, with NET subdirectory to hold .NET port of
01312 netCDF. To use, open netcdf.sln with Visual Studio, and do a clean and
01313 then a build of either the debug or release builds. Tests will be run as
01314 part of the build process. VC++ with managed extensions is required
01315 (i.e. VC++.NET).
01316 
01317 * Added windows installer files to build windows binary installs.
01318 
01319 ### 3.6.0-beta1 
01320 
01321 * By incorporating Greg Sjaardema's patch, added support for
01322 64-bit offset files, which remove many of the restrictions relating to
01323 very large files (i.e. larger than 2 GB.) This introduces a new data
01324 format for the first time since the original netCDF format was
01325 introduced. Files in this new 64-bit offset format can't be read by
01326 earlier versions of netCDF. Users should continue to use the netCDF
01327 classic format unless they need to create very large files.
01328 
01329 * The test suite, nc\_test, will now be run twice, once for netCDF classic
01330 format testing, and once for 64-bit offset format testing.
01331 
01332 * The implementation of the Fortran-77 interface has been adapted to
01333 version 4.3 of Burkhard Burow's "cfortran.h".
01334 
01335 ### 3.6.0-alpha 
01336 
01337 * Added NEC SX specific optimization for NFILL tunable
01338 parameter in libsrc/putget.c
01339 
01340 Added support for the ifc Fortran-90 compiler creating files "netcdf.d"
01341 and "typesizes.d" (instead of ".mod" files).
01342 
01343 * Fixed access to iargc and getarg functions from Fortran-90 for NAG f90
01344 compiler, contributed by Harald Anlauf.
01345 
01346 ## 3.5.1 2004-02-03
01347 
01348 * Updated INSTALL.html for Mac OS X (Darwin).
01349 
01350 * Made the installation of the netCDF Fortran-90 module file more robust
01351 regarding the name of the file.
01352 
01353 * Added support for eight-byte integers in Fortran90 interface.
01354 
01355 * Increased advisory limits in C netcdf.h and Fortran netcdf.inc for
01356 maximum number of dimensions, variables, and attributes.
01357 
01358 * Changed C++ declarations "friend NcFile" to "friend class NcFile" in
01359 cxx/netcdfcpp.h to conform to standard.
01360 
01361 * Added Dan Schmitt's backward compatible extension to the C++ record
01362 interface to work with arbitrary dimension slices.
01363 
01364 * Added C++ documentation note that caller is responsible for deleting
01365 pointer returned by Variable::values() method when no longer needed.
01366 
01367 * Made C++ interface more standard; the result may not compile on some old
01368 pre-standard C++ compilers.
01369 
01370 * Fixed bug in ncgen when parsing values of a multidimensional char
01371 variable that resulted in failure to pad a value with nulls on IRIX.
01372 
01373 * Fixed ncdump bug adding extra quote to char variable data when using -fc
01374 or -ff option.
01375 
01376 * Fixed so compiling with -DNO\_NETCDF\_2 will work for building without
01377 backward-compatibility netCDF-2 interfaces.
01378 
01379 * Eliminated use of ftruncate(), because it fails on FAT32 file systems
01380 under Linux.
01381 
01382 * Initialized a pointer in putget.m4 (used to generate putget.c) that was
01383 involved in uninitialized memory references when nc\_test is run under
01384 Purify. Two users had reported seeing crashes resulting from this
01385 problem in their applications.
01386 
01387 * Reverted pointer initializations in putget.m4, after testing revealed
01388 these caused a performance problem, resulting in many extra calls to
01389 px\_pgin and px\_pgout when running nc\_test.
01390 
01391 * Added checking of size of "dimids" vector in function
01392 nf90\_inquire\_variable(...) and error-returning if it isn't
01393 sufficiently capacious.
01394 
01395 * Added variable index to ncvarget() and ncattinq() error messages and
01396 attribute name to ncattinq() error message.
01397 
01398 * Tweaked configure script to work with recent C++ compilers.
01399 
01400 * Fixed a memory leak in C++ interface, making sure NcVar::cur\_rec[] gets
01401 deleted in NcVar destructor.
01402 
01403 * Reimplemented nc\_sync() fix of version 3.5.0 to eliminate performance
01404 penalty when synchronization is unnecessary.
01405 
01406 * Changed order of targets in Makefile to build Fortran interface last, as
01407 a workaround for problem with make on AIX platforms.
01408 
01409 ## 3.5.0 2001-03-23
01410 
01411 * Added Fortran 90 interface.
01412 
01413 * Changed C macro TIMELEN in file cxx/nctst.cpp to TIMESTRINGLEN to avoid
01414 clash with macro defined on AIX systems in /usr/include/time.h.
01415 
01416 * Fixed miswriting of netCDF header when exiting define mode. Because the
01417 header was always written correctly later, this was only a problem if
01418 there was another reader of the netCDF file.
01419 
01420 * Fixed explicit synchronizing between netCDF writer and readers via the
01421 nc\_sync(), nf\_sync(), and ncsync() functions.
01422 
01423 * Fixed a number of bugs related to attempts to support shrinking the
01424 header in netCDF files when attributes are rewritten or deleted. Also
01425 fixed the problem that nc\_\_endef() did not work as intended in
01426 reserving extra space in the file header, since the extra space would be
01427 compacted again on calling nc\_close().
01428 
01429 * Fixed the "redef bug" that occurred when nc\_enddef() or nf\_enddef() is
01430 called after nc\_redef() or nf\_redef(), the file is growing such that
01431 the new beginning of a record variable is in the next "chunk", and the
01432 size of at least one record variable exceeds the chunk size (see
01433 netcdf.3 man page for a description of this tuning parameter and how to
01434 set it). This bug resulted in corruption of some values in other
01435 variables than the one being added.
01436 
01437 * The "\*\*" tuning functions for the Fortran interface, nf\*\*create,
01438 nf\*\*open, and nf\*\*enddef, are now documented in the Fortran interface
01439 man pages.
01440 
01441 * Add an 'uninstall' target to all the Makefiles. Dave Glowacki
01442 <dglo@SSEC.WISC.EDU> 199810011851.MAA27335
01443 
01444 * Added support for multiprocessing on Cray T3E. Hooks added by Glenn, but
01445 the majority of the work was done at NERSC. Also includes changes to
01446 ffio option specification. Patch rollup provided by R. K. Owen
01447 <rkowen@Nersc.GOV>. The following functions are added to the public
01448 interface. nc**create\_mp() nc**open\_mp() nc\_set\_base\_pe()
01449 nc\_inq\_base\_pe()
01450 
01451 * Fixed makefile URL for Win32 systems in INSTALL file.
01452 
01453 * Made test for UNICOS system in the configure script case independent.
01454 
01455 * Ported to the following systems: AIX 4.3 (both /bin/xlc and
01456 /usr/vac/bin/xlc compilers) IRIX 6.5 IRIX64 6.5
01457 
01458 * Changed the extension of C++ files from ".cc" to ".cpp". Renamed the C++
01459 interface header file "netcdfcpp.h" instead of "netcdf.hh", changing
01460 "netcdf.hh" to include "netcdfcpp.h" for backward compatibility.
01461 
01462 * Treat "FreeBSD" systems the same as "BSD/OS" system w.r.t. Fortran and
01463 "whatis" database.
01464 
01465 * Corrected manual pages: corrected spelling of "enddef" (was "endef") and
01466 ensured that the words "index" and "format" will be correctly printed.
01467 
01468 * Updated support for Fortran-calling-C interface by updating
01469 "fortran/cfortran.h" from version 3.9 to version 4.1. This new version
01470 supports the Portland Group Fortran compiler (C macro "pgiFortran") and
01471 the Absoft Pro Fortran compiler (C macro "AbsoftProFortran").
01472 
01473 * Corrected use of non-integral-constant-expression in specifying size of
01474 temporary arrays in file "libsrc/ncx\_cray.c".
01475 
01476 * Added Compaq Alpha Linux workstation example to INSTALL file.
01477 
01478 * Ported cfortran.h to Cygnus GNU Win32 C compiler (gcc for Windows).
01479 
01480 * Fixed bug in ncdump using same CDL header name when called with multiple
01481 files.
01482 
01483 * Added new NULL data type NC\_NAT (Not A Type) to facilitate checking
01484 whether a variable object has had its type defined yet, for example when
01485 working with packed values.
01486 
01487 * Fixed use of compile-time macro NO\_NETCDF\_2 so it really doesn't
01488 include old netCDF-2 interfaces, as intended.
01489 
01490 * Ported to MacOS X Public Beta (Darwin 1.2/PowerPC).
01491 
01492 * Fixed C++ friend declarations to conform to C++ standard.
01493 
01494 * Changed INSTALL file to INSTALL.html instead.
01495 
01496 ## 3.4 1998-03-09
01497 
01498 * Fixed ncx\_cray.c to work on all CRAY systems, not just CRAY1. Reworked
01499 USE\_IEG, which was incorrect. Reworked short support. Now USE\_IEG and
01500 otherwise both pass t\_ncx.
01501 
01502 * To better support parallel systems, static and malloc'ed scratch areas
01503 which were shared in the library were eliminated. These were made
01504 private and on the stack where possible. To support this, the macros
01505 ALLOC\_ONSTACK and FREE\_ONSTACK are defined in onstack.h.
01506 
01507 * The buffered i/o system implementation in posixio.c was reimplemented to
01508 limit the number and size of read() or write() system calls and use
01509 greater reliance on memory to memory copy. This saves a great deal of
01510 wall clock time on slow (NFS) filesystems, especially during
01511 nc\_endef().
01512 
01513 * Added performance tuning "underbar underbar" interfaces nc**open(),
01514 nc**create(), and nc\_\_enddef().
01515 
01516 * The 'sizehint' contract between the higher layers and the ncio layer is
01517 consistently enforced.
01518 
01519 * The C++ interface has been updated so that the deprecated "nclong"
01520 typedef should no longer be required, and casts to nclong no longer
01521 necessary. Just use int or long as appropriate. nclong is still
01522 supported for backwards compatibility.
01523 
01524 * The ncdump utility now displays byte values as signed, even on platforms
01525 where the type corresponding to a C char is unsigned (SGI, for example).
01526 Also the ncdump and ncgen utilities have been updated to display and
01527 accept byte attributes as signed numeric values (with a "b" suffix)
01528 instead of using character constants.
01529 
01530 * In libsrc/error.c:nc\_strerror(int), explain that NC\_EBADTYPE applies
01531 to "\_FillValue type mismatch".
01532 
01533 * Some changes to configure scripts (aclocal.m4), macros.make.in and
01534 ncgen/Makefile to support NEC SUPER-UX 7.2.
01535 
01536 * The "usage" messages of ncgen and ncdump include the string returned
01537 from nc\_inq\_libvers().
01538 
01539 * Corrected some casts in the library so that all phases of the arithmetic
01540 computing file offsets occurs with "off\_t" type. This allows certain
01541 larger netcdf files to be created and read on systems with larger
01542 (64bit) off\_t.
01543 
01544 * In ncgen, multidimensional character variables are now padded to the
01545 length of last dimension, instead of just concatenating them. This
01546 restores an undocumented but convenient feature of ncgen under netCDF-2.
01547 Also, a syntax error is now reliably reported if the netcdf name is
01548 omitted in CDL input.
01549 
01550 * Fortran and C code generated by ncgen for netCDF components whose names
01551 contain "-" characters will now compile and run correctly instead of
01552 causing syntax errors.
01553 
01554 * The library allows "." characters in names as well as "\_" and "-"
01555 characters. A zero length name "" is explicitly not allowed. The ncgen
01556 utility will now permit "." characters in CDL names as well.
01557 
01558 * Memory leaks in the C++ interface NcVar::as\_\*() member functions and
01559 NcFile::add\_var() member function are fixed. The documentation was
01560 fixed where it indicated incorrectly that the library managed value
01561 blocks that the user is actually responsible for deleting.
01562 
01563 * he values of the version 2 Fortran error codes have been modified to
01564 make the version 2 Fortran interface more backward compatible at the
01565 source level.
01566 
01567 * Added support for systems whose Fortran INTEGER*1 and INTEGER*2 types
01568 are equivalent to the C "long" type but whose C "int" and "long" types
01569 differ. An example of such a system is the NEC SX-4 with the "-ew"
01570 option to the f90 compiler (sheesh, what a system!).
01571 
01572 * Fixed Version 2 Fortran compatibility bug: NCVGTG, NCVGGC, NCVPTG, and
01573 NCVPGC didn't work according to the Version 2 documentation if the
01574 innermost mapping value (i.e. IMAP[1]) was zero (indicating that the
01575 netCDF structure of the variable should be used).
01576 
01577 ## 3.3.1 1997-06-16
01578 
01579 * One can now inquire about the number of attributes that a variable has
01580 using the global variable ID.
01581 
01582 * The FORTRAN interface should now work on more systems. In particular:
01583 
01584 * It should now work with FORTRAN compilers whose "integer*1" datatype is
01585 either a C "signed char", "short", or "int" and whose "integer*2"
01586 datatype is either a C "short" or "int".
01587 
01588 * It should now work with FORTRAN compilers that are extremely picky about
01589 source code formatting (e.g. the NAG f90 compiler).
01590 
01591 * The dependency on the non-POSIX utility m4(1) for generating the C and
01592 FORTRAN manual pages has been eliminated.
01593 
01594 * EXTERNAL statements have been added to the FORTRAN include-file
01595 "netcdf.inc" to eliminate excessive warnings about "unused" variables
01596 (which were actually functions) by some compilers (e.g. SunOS 4.1.3's
01597 f77(1) version 1.x).
01598 
01599 * Building the netCDF-3 package no longer requires the existence of the
01600 Standard C macro RAND\_MAX.
01601 
01602 * Fixed an ncdump bug resulting in ncdump reporting Attempt to convert
01603 between text & numbers when \_FillValue attribute of a character
01604 variable set to the empty string "".
01605 
01606 * Made ncgen tests more stringent and fixed various bugs this uncovered.
01607 These included bugs in handling byte attributes on platforms on which
01608 char is unsigned, initializing scalar character variables in generated C
01609 code under "-c" option, interspersing DATA statements with declaration
01610 statements in generated Fortran code under "-f" option, handling empty
01611 string as a value correctly in generated C and Fortran, and handling
01612 escape characters in strings. The Fortran output under the "-f" option
01613 was also made less obscure and more portable, using automatic conversion
01614 with netCDF-3 interfaces instead of "BYTE", "INTEGER*1", or "INTEGER*2"
01615 declarations.
01616 
01617 * Fixed a C++ interface problem that prevented compiling the C++ library
01618 with Digital's cxx compiler.
01619 
01620 * Made ncgen "make test" report failure and stop if test resulted in a
01621 failure of generated C or Fortran code.
01622 
01623 * The file that you are now reading was created to contain a high-level
01624 description of the evolution of the netCDF-3 package.
01625 
01626 ## 3.3 1997-05-15
01627 
01628 * The production version of the netCDF-3 package was released.
01629 
01630 * A comparison of the netCDF-2 and netCDF-3 releases can be found in the
01631 file COMPATIBILITY.
01632 
01633 */
 All Data Structures Files Functions Variables Typedefs Defines