mirror of
https://github.com/Unidata/netcdf-c.git
synced 2024-11-21 03:13:42 +08:00
8d53da4826
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.
1524 lines
48 KiB
Plaintext
1524 lines
48 KiB
Plaintext
This file contains a high-level description of this package's
|
|
evolution. Releases are in reverse chronological order (most recent
|
|
first). Recent releases include references to Jira issue identifiers
|
|
for more information, where '[NCF-XXX]' refers to
|
|
https://www.unidata.ucar.edu/jira/browse/NCF-XXX .
|
|
|
|
VERSION COMMENTS
|
|
------- --------
|
|
4.3 Released 201?-??-??
|
|
|
|
Replaced the oc library with oc2.0
|
|
|
|
Prevented adding an invalid _FillValue attribute to a
|
|
variable (with nonmatching type or multiple values),
|
|
to avoid later error when any record variable is
|
|
extended.
|
|
[NCF-190]
|
|
|
|
4.2.1 Released 2012-07-18
|
|
|
|
Added a specific NC_MMAP mode flag to modify
|
|
behavior of NC_DISKLESS.
|
|
|
|
Changed the file protections for NC_DISKLESS
|
|
created files to 0666
|
|
[NCF-182]
|
|
|
|
Fixed ncdump to report error when an unsupported
|
|
option is specified.
|
|
[NCF-180]
|
|
|
|
Fixed documentation of CDL char constants in Users
|
|
Guide and ncgen man page.
|
|
|
|
Fixed memory leak detected by valgrind in one of the
|
|
HDF5 tests.
|
|
|
|
Fixed problem with #elif directives in posixio.c
|
|
revealed by PGI compilers.
|
|
|
|
4.2.1-rc1 Released 2012-06-18
|
|
|
|
Ported static and shared libraries (DLL's) for both
|
|
32- and 64-bit Windows, including support for DAP
|
|
remote access, with netCDF-3 and netCDF-4/HDF5 support
|
|
enabled. The environment for this build is
|
|
MSYS/MinGW/MinGW64, but the resulting DLLs may be used
|
|
with Visual Studio.
|
|
[NCF-112][NCF-54][NCF-57][NCF-65]
|
|
|
|
Implemented diskless files for all netCDF formats. For
|
|
nc_create(), diskless operation performs all
|
|
operations in memory and then optionally persists the
|
|
results to a file on close. For nc_open(), but only
|
|
for netcdf classic files, diskless operation caches
|
|
the file in-memory, performs all operations on the
|
|
memory resident version and then writes all changes
|
|
back to the original file on close.
|
|
[NCF-110][NCF-109][NCF-5]
|
|
|
|
Added MMAP support. If diskless file support is
|
|
enabled, then it is possible to enable implementation
|
|
of diskless files using the operating system's MMAP
|
|
facility (if available). The enabling flag is
|
|
"--enable-mmap". This is most useful when using
|
|
nc_open() and when only parts of files, a single
|
|
variable say, need to be read.
|
|
|
|
Added configure flag for --disable-diskless.
|
|
|
|
Added nccopy command-line options to exploit diskless
|
|
files, resulting in large speedups for some
|
|
operations, for example converting unlimited dimension
|
|
to fixed size or rechunking files for faster access.
|
|
Upgraded doxygen and man-page documentation for ncdump
|
|
and nccopy utilities, including new -w option for
|
|
diskless nccopy, with an example.
|
|
|
|
Modified Makefile to allow for concurrent builds and
|
|
to support builds outside the source tree, e.g.
|
|
'mkdir build; cd build; SOURCE-DIR/configure' where
|
|
SOURCE-DIR is the top-level source directory.
|
|
|
|
Fixed some netCDF-4 bugs with handling strings in
|
|
non-netCDF-4 HDF5 files.
|
|
[NCF-150]
|
|
|
|
Fixed bug using nccopy to compress with shuffling that
|
|
doesn't compress output variables unless they were
|
|
already compressed in the input file.
|
|
[NCF-162]
|
|
|
|
Fixed bug in 64-bit offset files with large records,
|
|
when last record variable requires more than 2**32
|
|
bytes per record.
|
|
[NCF-164]
|
|
|
|
Fix bug in which passing a NULL path to nc_open causes failure.
|
|
[NCF-173]
|
|
|
|
Fixed ncgen bugs in parsing and handling opaque data.
|
|
|
|
Fixed ncdump bug, not escaping characters special to CDL
|
|
in enumeration labels.
|
|
[NCF-169]
|
|
|
|
Fixed bug reading netCDF int into a C longlong or
|
|
writing from longlong to external int on 32-bit
|
|
platforms with classic format files. The upper 32
|
|
bits of the longlong were not cleared on read or used
|
|
on write.
|
|
[NCF-171]
|
|
|
|
Resolved some erroneous returns of BADTYPE errors and
|
|
RANGE errors due to conflating C memory types with
|
|
external netCDF types when accessing classic or 64-bit
|
|
offset files.
|
|
[NCF-172]
|
|
|
|
Fixed bug with ncdump -t interpreting unit attribute
|
|
without base time as a time unit.
|
|
[NCF-175]
|
|
|
|
Changed port for testing remote access test server to
|
|
increase reliability of tests.
|
|
|
|
Modified ncio mechanism to support multiple ncio
|
|
packages, so that it is possible to have e.g. posixio
|
|
and memio operating at the same time.
|
|
|
|
Generation of documentation is disabled by default. Use
|
|
--enable-doxygen to generate.
|
|
[NCF-168]
|
|
|
|
Added description of configure flags to installation
|
|
guide.
|
|
|
|
Clarified documentation of arguments to nc__open() and
|
|
nc__create() and their default values.
|
|
|
|
Fixed doxygen installation guide source file to
|
|
preserve line breaks in code and scripts.
|
|
[NCF-174]
|
|
|
|
Cleaned up a bunch of lint issues (unused variables,
|
|
etc.) and some similar problems reported by clang
|
|
static analysis.
|
|
|
|
Updated and fixed pkg-config source file netcdf.pc.in
|
|
to work with separated netCDF language-specific
|
|
packages. Also fixed nc-config to call nf-config,
|
|
ncxx-config, and ncxx4-config for for backward
|
|
compatibility with use of nc-config in current
|
|
Makefiles.
|
|
[NCF-165] [NCF-179]
|
|
|
|
4.2 Released 2012-03-19 (Note: Jira entries include reference to '[NCF-XX]')
|
|
|
|
Completely rebuilt the DAP constraint handling.
|
|
This primarily affects users who specify a DAP constraint
|
|
as part of their URL.
|
|
[NCF-120]
|
|
|
|
Fixed cause of slow nccopy performance on file systems
|
|
with many records and large disk block size or many
|
|
record variables, by accessing data a record at a time
|
|
instead of a variable at a time.
|
|
[NCF-142]
|
|
|
|
Performance improvement to DAP code to support
|
|
fetching partial variables into the cache; especially
|
|
important when using nc_get_var() API.
|
|
A partial variable is one that has ranges attached
|
|
to the projection variables (e.g. x[1:10][20:21])
|
|
[NCF-157]
|
|
|
|
Separate the Fortran and C++ libraries and release
|
|
the C library and ncdump/ncgen/nccopy without Fortran or C++.
|
|
[NCF-24]
|
|
|
|
Documentation mostly migrated to Doxygen, from Texinfo.
|
|
[NCF-26]
|
|
|
|
Properly convert vara start/count parameters to DAP
|
|
[NCF-105][NCF-106]
|
|
|
|
Fixed major wasted space from previous default variable
|
|
chunk sizes algorithm.
|
|
[NCF-81]
|
|
|
|
Fixed bug in nccopy, in which compression and chunking
|
|
options were ignored for netCDF-4 input files.
|
|
[NCF-79]
|
|
|
|
Fixed bug in ncgen in which large variables
|
|
(more than 2**18 elements) duplicates the first
|
|
2**18 values into subsequent chunks of data
|
|
[NCF-154].
|
|
|
|
Applied Greg Sjaardema's nccopy bug fix, not
|
|
compressing output variables f they were not already
|
|
using compression on the input file when shuffle
|
|
specified.
|
|
[NCF-162]
|
|
|
|
Fixed problem when a URL is provided that contains only a
|
|
host name.
|
|
[NCF-103]
|
|
|
|
Fixed behavior of ncgen flags so that -o => -lb
|
|
and, in the absence of any other markers, make
|
|
the default be -k1
|
|
[NCF-158]
|
|
|
|
Created a text INSTALL file for netCDF-4.2 release.
|
|
[NCF-161]
|
|
|
|
Fixed bug in ncgen for vlen arrays as fields
|
|
of compound types where datalists for those
|
|
types was improperly interpreted
|
|
[NCF-145] (but see NCF-155).
|
|
|
|
Improve use of chunk cache in nccopy utility, making it
|
|
practical for rechunking large files.
|
|
[NCF-85]
|
|
|
|
Fixed nccopy bug copying a netCDF-4 file with a
|
|
chunksize for an unlimited dimension that is
|
|
larger than the associated dimension size.
|
|
[NCF-139]
|
|
|
|
Fixed nccopy bug when rechunking a netCDF-4 file with
|
|
a chunkspec option that doesn't explicitly specify all
|
|
dimensions.
|
|
[NCF-140]
|
|
|
|
Fixed bug in netCDF-4 files with non-coordinate
|
|
variable with the same name as a dimension.
|
|
[NCF-141]
|
|
|
|
Incorporated Wei Huang's fix for bug where netCDF-4
|
|
sometimes skips over too many values before adding
|
|
fill values to an in-memory buffer.
|
|
[NCF-143]
|
|
|
|
Fixed ncgen bug with netCDF-4 variable-length
|
|
constants (H/T to Lynton Appel).
|
|
[NCF-145]
|
|
|
|
Incorporated Peter Cao's performance fixes using HDF5
|
|
link iterator for any group with many variables or
|
|
types.
|
|
[NCF-148]
|
|
|
|
Incorporated Constantine Khroulev's bug fix for
|
|
invalid usage of MPI_Comm_f2c in nc_create_par.
|
|
[NCF-135]
|
|
|
|
Fixed turning off fill values in HDF5 layers when NOFILL
|
|
mode is set in netCDF-4 API (thanks to Karen
|
|
Schuchardt).
|
|
[NCF-151]
|
|
|
|
Fixed bug with scalar coordinate variables in netCDF-4
|
|
files, causing failure with --enable-extra-tests
|
|
[NCF-149]
|
|
|
|
Cleaned up the definition and use of nulldup.
|
|
[NCF-92][NCF-93][NCF-94]
|
|
|
|
Fixed various '#include' bugs.
|
|
[NCF-91][NCF-96][NCF-127]
|
|
|
|
v2 API functions modified to properly call the external API
|
|
instead of directly calling the netcdf-3 functions.
|
|
[NCF-100]
|
|
|
|
Fixed problem with 64-bit offset format where writing more
|
|
than 2**31 records resulted in erroneous NC_EINVALCOORDS error.
|
|
[NCF-101]
|
|
|
|
Restored original functionality of ncgen so that a call with
|
|
no flags, only does the syntax check.
|
|
[NCF-104]
|
|
|
|
Corrected misc. test bugs
|
|
[NCF-107]
|
|
|
|
Modified ncdump to properly output various new types
|
|
(ubyte, ushort, uint, int64, and uint64).
|
|
[NCF-111]
|
|
|
|
Fixed incorrect link flag for szip in configure.ac
|
|
[NCF-116]
|
|
|
|
ncdump -t now properly parses ISO "T" separator in
|
|
date-time strings.
|
|
[NCF-16]
|
|
|
|
ncdump -t "human time" functionality now available for
|
|
attributes and bounds variables
|
|
[NCF-70]
|
|
|
|
In ncdump, add -g option to support selection of groups
|
|
for which data is displayed.
|
|
[NCF-11]
|
|
|
|
Now supports bluefire platform
|
|
[NCF-52]
|
|
|
|
ncdump now properly displays values of attributes
|
|
of type NC_USHORT as signed shorts
|
|
[NCF-82]
|
|
|
|
Rename some code files so that there are no duplicate filenames.
|
|
[NCF-99]
|
|
|
|
Demonstration of netCDF-4 Performance Improvement with KNMI Data
|
|
[NCF-113]
|
|
|
|
Dimension size in classic model netCDF-4 files now allows
|
|
larger sizes than allowed for 64-bit offset classic files.
|
|
[NCF-117]
|
|
|
|
ncdump now reports correct error message when "-x" option
|
|
specifying NcML output is used on netCDF-4 enhanced model input.
|
|
[NCF-129]
|
|
|
|
Fixed bug causing infinite loop in ncdump -c of netCDF-4
|
|
file with subgroup with variables using inherited
|
|
dimensions.
|
|
[NCF-136]
|
|
|
|
4.1.3 2011-06-17
|
|
|
|
Replace use of --with-hdf5= and other such configure
|
|
options that violate conventions and causes build
|
|
problems. Set environment variables CPPFLAGS,
|
|
LDFLAGS, and LD_LIBRARY_PATH instead, before running
|
|
configure script.
|
|
[NCF-20]
|
|
|
|
Detect from configure script when szlib is needed
|
|
[NCF-21]
|
|
|
|
Fix bug that can silently zero out portions of a file
|
|
when writing data in nofill mode beyond the end of a
|
|
file, crossing disk-block boundaries with region to be
|
|
written while in-memory buffer is in a specific
|
|
state. This bug was observed disabling fill mode
|
|
using Lustre (or other large blksize file system) and
|
|
writing data slices in reverse order on disk.
|
|
[NCF-22]
|
|
|
|
Fix bug that prevents netCDF-4/HDF5 files created with
|
|
netCDF-4.1.2 from being read by earlier versions of
|
|
netCDF or HDF5 versions before 1.8.7.
|
|
[NCF-23]
|
|
|
|
Fix bug in configure that did not make the search for
|
|
the xdr library depend on --enable-dap.
|
|
[NCF-41]
|
|
|
|
Fix ncgen bug that did not use the value of a _Format
|
|
attribute in the input CDL file to determine the kind
|
|
of output file created, when not specified by the -k
|
|
command-line flag.
|
|
[NCF-42]
|
|
|
|
Fix ncgen bug, not properly handling unsigned longlong parsing.
|
|
[NCF-43]
|
|
|
|
Fix DAP client code to suppress variables with names
|
|
such as "x.y", which DAP protocol interprets as
|
|
variable "y" inside container "x". Such variables
|
|
will be invisible when accessed through DAP client.
|
|
[NCF-47]
|
|
|
|
Define uint type for unsigned integer, if not
|
|
otherwise available. Symptom was compile error
|
|
involving uint in putget.c.
|
|
[NCF-49]
|
|
|
|
Fix username+password handling in the DAP client code.
|
|
[NCF-50]
|
|
|
|
Add test for handling parallel I/O problem from f77
|
|
when user forgets to turn on one of the two MPI flags.
|
|
[NCF-60]
|
|
|
|
Resolved "make check" problems when ifort compiler.
|
|
Some "make install" problems remain when using MPI and
|
|
shared libraries.
|
|
[NCF-61]
|
|
|
|
Fix problem with f90_def_var not always handle deflate
|
|
setting when compiler was ifort.
|
|
[NCF-67]
|
|
|
|
Check that either MPIIO or MPIPOSIX flag is set when
|
|
parallel create or open is called. Also fix examples
|
|
that didn't set at least one of these flags.
|
|
[NCF-68]
|
|
|
|
Improve documentation on handling client-side certificates
|
|
[NCF-48]
|
|
|
|
Document that array arguments, except in varm
|
|
functions, must point to contiguous blocks of memory.
|
|
[NCF-69]
|
|
|
|
Get netCDF-4 tests working for DLLs generated with mingw.
|
|
[NCF-6]
|
|
|
|
Make changes necessary for upgrading to HDF5 1.8.7
|
|
[NCF-66]
|
|
|
|
4.1.3-rc1 2011-05-06
|
|
Stop looking for xdr if --disable-dap is used.
|
|
|
|
Don't try to run (some) fortran configure tests on
|
|
machines with no fortran.
|
|
|
|
Allow nccopy to rechunk with chunksizes larger than
|
|
current dimension lengths.
|
|
|
|
Initial implementation of CDMREMOTE is complete; needs
|
|
comprehensive testing.
|
|
|
|
4.1.3-beta1 2011-04-29
|
|
|
|
Fixed szlib not linking bug.
|
|
|
|
Fixed dreaded "nofill bug", lurking in netCDF classic
|
|
since at least 1999. Writing more than a disk
|
|
block's worth of data that crossed disk block
|
|
boundaries more than a disk block beyond the end of
|
|
file in nofill mode could zero out recently written
|
|
earlier data that hadn't yet been flushed to disk.
|
|
|
|
Changed setting for H5Pset_libver_bounds to ensure
|
|
that all netCDF-4 files can be read by HDF5 1.8.x.
|
|
|
|
Merged libncdap3 and libncdap4 into new libdap2 library.
|
|
The suffix dap2 now refers to the dap protocol. This is
|
|
in prep for adding dap4 protocol support.
|
|
|
|
Took out --with-hdf5 and related options due to high
|
|
cost of maintaining this non-standard way of finding
|
|
libraries.
|
|
|
|
4.1.2 2011-03-29
|
|
|
|
Changes in build system to support building dlls on
|
|
cygwin/mingw32.
|
|
|
|
Changes to fix portability problems and get things
|
|
running on all test platforms.
|
|
|
|
Some minor documentation fixes.
|
|
|
|
Fixed opendap performance bug for nc_get_vars; required
|
|
adding nc_get_var{s,m} to the dispatch table.
|
|
|
|
Now check for libz in configure.ac.
|
|
|
|
Fixed some bugs and some performance problems with
|
|
default chunksizes.
|
|
|
|
4.1.2-beta2 2011-01-11
|
|
|
|
Add "-c" option to nccopy to specify chunk sizes used
|
|
in output in terms of list of dimension names.
|
|
|
|
Rewrite netCDF-4 attribute put code for a large
|
|
speedup when writing lots of attributes.
|
|
|
|
Fix nc-config --libs when static dependent libraries
|
|
are not installed in the same directory as netCDF
|
|
libraries (thanks to Jeff Whitaker).
|
|
|
|
Build shared libraries by default, requiring separate
|
|
Fortran library. Static libraries now built only with
|
|
--disable-shared.
|
|
|
|
Refactor of HDF5 file metadata scan for large speedup
|
|
in opening files, especially large files.
|
|
|
|
Complete rewrite of the handling of character datalist
|
|
constants. The heuristics are documented in ncgen.1.
|
|
|
|
Eliminate use of NC_MAX_DIMS and NC_MAX_VARS in ncdump
|
|
and nccopy, allocating memory as needed and reducing
|
|
their memory footprint.
|
|
|
|
Add documentation for new nc_inq_path() function.
|
|
|
|
Use hashing to speedup lookups by name for files with
|
|
lots of dimensions and variables (thanks to Greg
|
|
Sjaardema).
|
|
|
|
Add options to nccopy to support uniform compression
|
|
of variables in output, shuffling, and fixing
|
|
unlimited dimensions. Documented in nccopy.1 man page
|
|
and User's Guide.
|
|
|
|
4.1.2-beta1 2010-07-09
|
|
|
|
Fix "ncdump -c" bug identifying coordinate variables in groups.
|
|
|
|
Fix bug in libsrc/posixio.c when providing sizehint
|
|
larger than default, which then doesn't get used
|
|
(thanks to Harald Anlauf).
|
|
|
|
Fix netCDF-4 bug caused when doing enddef/redef and
|
|
then defining coordinate variable out of order.
|
|
|
|
Fixed bug in man4 directory automake file which caused
|
|
documentation to be rebuilt after make clean.
|
|
|
|
Turned off HDF5 caching when parallel I/O is in use
|
|
because of its memory use.
|
|
|
|
Refactoring of netCDF code with dispatch layer to
|
|
decide whether to call netCDF classic, netCDF-4, or
|
|
opendap version of a function.
|
|
|
|
Refactoring of netCDF-4 memory internals to reduce
|
|
memory use and end dependence on NC_MAX_DIMS and
|
|
NC_MAX_NAME.
|
|
|
|
Modified constraint parser to be more compatible with
|
|
a java version of the parser.
|
|
|
|
Modified ncgen to utilize iterators internally; should be
|
|
no user visible effect.
|
|
|
|
Fixed two large-file bugs with using classic format or
|
|
64-bit offset format and accessing multidimensional
|
|
variables with more than 2**32 values.
|
|
|
|
4.1.1 2010-04-01
|
|
|
|
Fixed various build issues.
|
|
|
|
Fixed various memory bugs.
|
|
|
|
Fixed bug for netCDF-4 files with dimensions and coord
|
|
vars written in different orders, with data writes
|
|
interspersed.
|
|
|
|
Added test for HDF5-1.8.4 bug.
|
|
|
|
Added new C++ API from Lynton Appel.
|
|
|
|
4.1 2010-01-30
|
|
|
|
Much better memory leak checking with valgrind.
|
|
|
|
Added per-variable chunk cache control for better
|
|
performance. Use nc_set_var_chunk_cache /
|
|
nf_set_var_chunk_cache / nf90_set_var_chunk_cache to
|
|
set the per-variable cache.
|
|
|
|
Automatically set per-variable chunk cache when
|
|
opening a file, or creating a variable, so that the
|
|
cache is big enough for more than one chunk. (Can be
|
|
overridden by user). Settings may be changed with
|
|
configure options --max-default-chunk-size and
|
|
--default-chunks-in-cache.
|
|
|
|
Better default chunks size. Now chunks are sized to
|
|
fit inside the DEFAULT_CHUNK_SIZE (settable at
|
|
configure time with --with-default-chunk-size=
|
|
option.)
|
|
|
|
Added nccopy utility for converting among netCDF
|
|
format variants or to copy data from DAP servers to
|
|
netCDF files.
|
|
|
|
The oc library has been modified to allow the occurrence
|
|
of alias definitions in the DAS, but they will be ignored.
|
|
|
|
The old ncgen has been moved to ncgen3 and
|
|
ncgen is now the new ncgen4.
|
|
|
|
Modified --enable-remote-tests to be on by default.
|
|
|
|
Fixed the nc_get_varm code as applied to DAP data sources.
|
|
|
|
Added tests for nc-config.
|
|
|
|
Many documentation fixes.
|
|
|
|
Added capability to use the parallel-netcdf
|
|
(a.k.a. pnetcdf) library to perform parallel I/O on
|
|
classic and 32-bit offset files. Use the NC_PNETCDF
|
|
mode flag to get parallel I/O for non-netcdf-4 files.
|
|
|
|
Added libcf library to netCDF distribution. Turn it on
|
|
with configure option --with-libcf.
|
|
|
|
Added capability to read HDF4 files created with the
|
|
SD (Scientific Data) API.
|
|
|
|
The DAP support was revised to closely mimic the
|
|
original libnc-dap support.
|
|
|
|
Significantly revised the data handling mechanism
|
|
in ncgen4 to more closely mimic the output from the
|
|
original ncgen.
|
|
|
|
Added prototype NcML output capability to ncgen4.
|
|
It is specified by the -lcml flag.
|
|
|
|
Added capability to read HDF5 files without dimension
|
|
scales. This will allow most existing HDF5 datasets to
|
|
be read by netCDF-4.
|
|
|
|
Fixed bug with endianness of default fill values for
|
|
integer types when variables are created with a
|
|
non-native endiannesss and use the default fill value.
|
|
|
|
Significant refactoring of HDF5 type handling to
|
|
improve performance and handle complicated nesting of
|
|
types in cross-platform cases.
|
|
|
|
Added UDUNITS2 to the distribution. Use --with-udunits
|
|
to build udunits along with netcdf.
|
|
|
|
Made changes suggested by HDF5 team to relax
|
|
creation-order requirement (for read-only cases) which
|
|
allows HDF5 1.6.x files to be retrofitted with
|
|
dimension scales, and be readable to netCDF-4.
|
|
|
|
Handle duplicate type names within different groups in
|
|
ncdump. Fix group path handling in absolute and
|
|
relative variable names for "-v" option.
|
|
|
|
Added nc-config shell script to help users build
|
|
netCDF programs without having to figure out all the
|
|
compiler options they will need.
|
|
|
|
Fixed ncdump -s bug with displaying special attributes
|
|
for classic and 64-bit offset files.
|
|
|
|
For writers, nc_sync() now calls fsync() to flush data
|
|
to disk sooner.
|
|
|
|
The nc_inq_type() function now works for primitive types.
|
|
|
|
4.0.1 2009-03-26
|
|
|
|
Added optional arguments to F90 API to
|
|
nf90_open/create, nf90_create_var, and
|
|
nf90_inquire_variable so that all netCDF-4 settings
|
|
may be accomplished with optional arguments, instead
|
|
of separate function calls.
|
|
|
|
Added control of HDF5 chunk cache to allow for user
|
|
performance tuning.
|
|
|
|
Added parallel example program in F90.
|
|
|
|
Changed default chunking to better handle very large
|
|
variables.
|
|
|
|
Made contiguous the default for fixed size data sets
|
|
with no filters.
|
|
|
|
Fixed bug in nc_inq_ncid; now it returns NC_ENOGRP if
|
|
the named group is not found.
|
|
|
|
Fixed man pages for C and F77 so that netCDF-4 builds
|
|
will result in man pages that document new netCDF-4
|
|
functions.
|
|
|
|
Added OPeNDAP support based on a new C-only implementation.
|
|
This is enabled using --enable-dap option and requires
|
|
libcurl. The configure script will attempt to locate libcurl,
|
|
but if it fails, then its location must be specified by the
|
|
--with-curl option.
|
|
|
|
4.0.1-beta2 2008-12-26
|
|
|
|
Changed chunksizes to size_t from int.
|
|
|
|
Fixed fill value problem from F77 API.
|
|
|
|
Fixed problems in netcdf-4 files with
|
|
multi-dimensional coordinate variables.
|
|
|
|
Fixed ncgen to properly handle CDL input that uses
|
|
Windows line endings ("\r\n"), instead of getting a
|
|
syntax error.
|
|
|
|
Added "-s" option to ncdump to display performance
|
|
characterisitics of netCDF-4 files as special virtual
|
|
attributes, such as _Chunking, _DeflateLevel, _Format,
|
|
and _Endianness.
|
|
|
|
Added "-t" option to ncdump to display times in human
|
|
readable form as strings. Added code to interpret
|
|
"calendar" attribute according to CF conventions, if
|
|
present, in displaying human-readable times.
|
|
|
|
Added experimental version of ncgen4 capable of
|
|
generating netcdf-4 data files and C code for creating
|
|
them. In addition, it supports the special attributes
|
|
_Format, etc.
|
|
|
|
4.0.1-beta1 2008-10-16
|
|
|
|
Fixed Fortran 90 int64 problems.
|
|
|
|
Rewrote HDF5 read/write code in accordance with
|
|
performance advice from Kent.
|
|
|
|
Fixed memory leaks in gets/puts of HDF5 data.
|
|
|
|
Fixed some broken tests for parallel I/O (i.e. MPI)
|
|
builds.
|
|
|
|
Fixed some cross-compile problems.
|
|
|
|
Rewrote code which placed bogus errors on the HDF5
|
|
error stack, trying to open non-existant attributes
|
|
and variables. Now no HDF5 errors are seen.
|
|
|
|
Removed man subdirectory. Now man4 subdirectory is
|
|
used for all builds.
|
|
|
|
Changed build so that users with access to parallel
|
|
make can use it.
|
|
|
|
Added experimental support for accessing data through
|
|
OPeNDAP servers using the DAP protocol (use
|
|
--enable-opendap to build it).
|
|
|
|
Fixed ncdump bugs with array field members of compound
|
|
type variables. Fixed ncdump bug of assuming default
|
|
fill value for data of type unsigned byte.
|
|
|
|
4.0 2008-05-31
|
|
|
|
Introduced the use of HDF5 as a storage layer, which
|
|
allows use of groups, user-defined types, multiple
|
|
unlimited dimensions, compression, data chunking,
|
|
parallel I/O, and other features. See the netCDF
|
|
Users Guide for more information.
|
|
|
|
3.6.3 2008-05-31
|
|
|
|
In ncdump and ncgen, added CDL support for UTF-8
|
|
encoding of characters in names and for escaped
|
|
special chars in names. Made sure UTF-8 names are
|
|
normalized using NFC rules before storing or
|
|
comparing.
|
|
|
|
Handle IEEE NaNs and infinities in a
|
|
platform-independent way in ncdump output.
|
|
|
|
Added support for ARM representation of doubles,
|
|
(thanks to Warren Turkal).
|
|
|
|
Fixed bug in C++ API creating 64-bit offset
|
|
files. (See
|
|
http://www.unidata.ucar.edu/software/netcdf/docs/known_problems.html#cxx_64-bit.)
|
|
|
|
Fixed bug for variables larger than 4 GB. (See
|
|
http://www.unidata.ucar.edu/software/netcdf/docs/known_problems.html#large_vars_362.)
|
|
|
|
Changed the configure.ac to build either 3.6.x or 4.x
|
|
build from the same configure.ac.
|
|
|
|
Build now checks gfortran version and handles it
|
|
cleanly, also Portland Group in Intel fortran, with
|
|
various configurations.
|
|
|
|
A Fortran netcdf.inc file is now created at build time, based
|
|
on the setting of --disable-v2.
|
|
|
|
Documentation has been fixed in several places.
|
|
|
|
Upgraded to automake 1.10, autoconf 2.62, and libtool 2.2.2.
|
|
|
|
Includes missing Windows Visual Studio build files.
|
|
|
|
Fixed missing include of config.h in a C++ test program.
|
|
|
|
Fixed maintainer-clean in man directory.
|
|
|
|
Fixed --enable-c-only and make check.
|
|
|
|
Fixed behavior when opening a zero-length file.
|
|
|
|
Many portability enhancements to build cleanly on
|
|
various platforms.
|
|
|
|
Turned on some old test programs which were not being
|
|
used in the build.
|
|
|
|
3.6.2 2007-03-05
|
|
|
|
Released.
|
|
|
|
3.6.2 beta6 2007-01-20
|
|
|
|
Fine tuning of build system to properly handle cygwin,
|
|
Mingw, and strange configuration issues.
|
|
|
|
Automake 1.10 has a problem with running our tests on
|
|
MinGW, so I'm switching back to automake 1.9.6 for
|
|
this release.
|
|
|
|
3.6.2 beta5 2006-12-30
|
|
|
|
Now netCDF configuration uses autoconf 2.61, and
|
|
automake 1.10. (Thanks to Ralf Wildenhues for the
|
|
patches, and all the autotools help in general!)
|
|
|
|
Final major revision of netCDF tutorial before the
|
|
3.6.2 release.
|
|
|
|
Now netCDF builds under MinGW, producing a windows DLL
|
|
with the C and F77 APIs. Use the --enable-shared --enable-dll
|
|
--disable-cxx --disable-f90 flags to configure. (C++
|
|
and F90 have never been built as windows DLLs, but
|
|
might be in a future release if there is user
|
|
interest). This has all been documented in the netCDF
|
|
Porting and Installation Guide.
|
|
|
|
Now extreme numbers (i.e. those close to the limits of
|
|
their type) can be turned off in nc_test/nf_test, with
|
|
--disable-extreme-numbers. It is turned off
|
|
automatically for Solaris i386 systems.
|
|
|
|
Added --enable-c-only option to configure. This causes
|
|
only the core netCDF-3 C library to be built. It's the
|
|
same as --disable-f77 --disable-cxx --disable-v2
|
|
--disable-utilities.
|
|
|
|
Added --disable-utilities to turn off building and
|
|
testing of ncgen/ncdump.
|
|
|
|
Fix a long-standing bug in nf90_get_att_text() pointed
|
|
out by Ryo Furue, to make sure resulting string is
|
|
blank-padded on return. This is fixed in the
|
|
Fortran-90 interface, but is impractical to fix in the
|
|
Fortran-77 interface implemented via cfortran.h.
|
|
|
|
Now large file tests are run if --enable-large-file-tests
|
|
is used in the configure.
|
|
|
|
For Cray users, the ffio module is used if the
|
|
--enable-ffio option is passed to configure.
|
|
|
|
Unrolled loops in byte-swapping code used on
|
|
little-endian platforms to reduce loop overhead. This
|
|
optimization resulted in a 22% speedup for some
|
|
applications accessing floats or ints (e.g. NCO
|
|
utilities ncap and ncbo) and a smaller speedup for
|
|
shorts or doubles.
|
|
|
|
Added "-k" option to ncdump and ncgen, for identifying
|
|
and specifying the kind of netCDF file, one of
|
|
"classic", "64-bit-offset", "hdf5", or "hdf5-nc3".
|
|
Removed output of kind of netCDF file in CDL comment
|
|
produced by ncdump.
|
|
|
|
Fixed bug of ncdump seg-faulting if invoked
|
|
incorrectly with option like "-c" or "-h" but no file
|
|
name.
|
|
|
|
3.6.2 beta4 2006-08-15
|
|
|
|
Changed F77/F90 man pages from netcdf.3f and
|
|
netcdf.3f90 to netcdf_f77.3 and netcdf_f90.3. Also
|
|
fixed broken install of man pages.
|
|
|
|
Changed configure script so that "-g -O2" is no longer
|
|
set as CFLAGS, CXXFLAGS, and FFLAGS by default if a
|
|
GNU compiler is being used. Now nothing is set.
|
|
|
|
Changed configure script so that fortran flag is set
|
|
in config.h.
|
|
|
|
Updated Installation and Porting Guide, C++
|
|
Interface Guide, F77 and F90 Interface Guides.
|
|
|
|
Build with static libraries by default.
|
|
|
|
Added configure option --enable-separate-fortran,
|
|
which causes the fortran library to be built
|
|
separately. This is turned on automatically for shared
|
|
libraries.
|
|
|
|
Improved clarity of error messages.
|
|
|
|
Changed configuration to get cygwin DLL and mingw DLL
|
|
builds working, for the C library only (i.e. no
|
|
F77, F90, or C++ APIs).
|
|
|
|
Changed type of ncbyte in C++ interface from unsigned
|
|
char to signed char, for consistency with C interface.
|
|
The C++ documentation warned this change would
|
|
eventually occur.
|
|
|
|
Changed the C++ interface to use only the netCDF-3 C
|
|
interface instead of the older netCDF-2 C interface.
|
|
This has the added benefit that on-the-fly numeric
|
|
conversions are now supported using get methods, for
|
|
example you can get data of any type as double. When
|
|
using --disable-v2 flag to configure, the C++
|
|
interface can now be built and installed.
|
|
|
|
3.6.2 beta3 2006-05-24
|
|
|
|
Changed to use default prefix of /usr/local instead of
|
|
package-based prefix of previous releases of
|
|
netCDF. Use the --prefix argument to the configure
|
|
script to override the default.
|
|
|
|
Made separate fortran library file, instead of
|
|
appending fortran library functions to the C library
|
|
file, if --enable-separate-fortran is used during
|
|
configure (it's turned on automatically if
|
|
--enable-shared is used). If uses, the fortran API
|
|
users must link to *both* the C library and the new
|
|
fortran library, like this: -lnetcdff -lnetcdf
|
|
|
|
Added netCDF examples in C, C++, F77, F90, and
|
|
CDL. See the examples subdirectory.
|
|
|
|
Added the NetCDF Tutorial.
|
|
|
|
Minor fixes to some of the netCDF documentation.
|
|
|
|
Made it possible to build without V2 API using
|
|
--disable-v2 from configure.
|
|
|
|
Switched to new build system, with automake and
|
|
libtool. Now shared libraries are built (as well as
|
|
static ones) on platforms which support it. For more
|
|
information about shared libraries, see
|
|
http://www.unidata.ucar.edu/software/netcdf/docs/faq.html#shared_intro
|
|
|
|
Fixed ncdump crash that happened when no arguments were
|
|
used.
|
|
|
|
Fixed for building with gfortran 4.1.0.
|
|
|
|
Important fix for machines whose SIZEOF_SIZE_T !=
|
|
SIZEOF_LONG, such as NEC-SX, thanks to Stephen Leak.
|
|
|
|
Fixed C++ on AIX platform.
|
|
|
|
Fixed 64-bit builds on AIX platform.
|
|
|
|
Removed bad assertion that could be triggered in rare
|
|
cases when reading a small file.
|
|
|
|
Added comments in v1hpg.c to clarify purpose of each
|
|
internal function.
|
|
|
|
Make sure filesize is determined in nc_close() *after*
|
|
buffers get flushed.
|
|
|
|
Fix long-standing problem resulting in files up to 3
|
|
bytes longer than necessary if there is exactly one
|
|
record variable of type byte, char, or short and if
|
|
the number of values per record for that variable is
|
|
not divisible by 4 (or 2 in the case of short). Now
|
|
the filesize determined from header info by
|
|
NC_calcsize should be correct in all cases.
|
|
|
|
3.6.1 2006-01-31
|
|
|
|
Updated installation manual for 3.6.1.
|
|
|
|
Changed installation to try to provide correct
|
|
compiler flags for compiling in 64-bit mode on Sun,
|
|
Irix, AIX, and HPUX. (HPUX doesn't work for me,
|
|
however). Now run configure with --enable-64bit to get
|
|
a 64 bit compile.
|
|
|
|
Fixed long-standing bug that would cause small netCDF
|
|
files to be padded on the end with zero bytes to 4096
|
|
bytes when they were opened and changed. Now small
|
|
files should stay small after you change a value.
|
|
|
|
Fixed bug in assertions in putget.c that would only be
|
|
noticed if you change the manifest constant
|
|
NC_MAX_DIMS in netcdf.h to be different from
|
|
NC_MAX_VAR_DIMS.
|
|
|
|
Moved test ftest.F from fortran to nf_test directory,
|
|
and fixed bug in ftest.F which caused it to return 0
|
|
even if tests failed (no tests were failing,
|
|
however). Also renamed some test
|
|
output files to make things a little clearer.
|
|
|
|
If open for writing, pad with up to 3 extra zero bytes
|
|
before close to the correct canonical length,
|
|
calculated from the header. Previously files could be
|
|
short due to not padding when writing in NOFILL mode.
|
|
|
|
Doubled arbitrary limits on number of dimensions,
|
|
variables, attributes, and length of names.
|
|
|
|
Change name of nc_get_format() to nc_inq_format().
|
|
Add analogous interfaces for nf_inq_format(),
|
|
nf90_inquire(), and NcFile::get_format() to f77, f90,
|
|
and C++ interfaces. Document new function in texinfo
|
|
files. Add minimal test to nc_test, nf_test.
|
|
|
|
3.6.1-beta3 2005-02-17
|
|
|
|
Added function nc_get_format(int ncid, int* formatp)
|
|
that returns either NC_FORMAT_CLASSIC or
|
|
NC_FORMAT_64BIT for a CDF1 or CDF2 file, respectively.
|
|
|
|
Added test to nc_test that detects whether format
|
|
version was changed after a file is reopened and
|
|
define mode is entered.
|
|
|
|
Correctly configure for Intel ifort Fortran compiler on Linux.
|
|
|
|
3.6.0-p1 2005-02-18
|
|
|
|
Fixed bug that changes CDF2 files to CDF1 files if CDF2
|
|
file is reopened for write access and either an
|
|
attribute is changed or define mode is entered.
|
|
|
|
3.6.1-beta2 2005-1-6
|
|
|
|
Fixed absoft compile problem. Maybe.
|
|
|
|
3.6.1-beta1 2005-1-3
|
|
|
|
Fixed Cygwin C++ problem.
|
|
|
|
Fixed large file problem in MS Visual C++.NET environment.
|
|
|
|
More information in installation and porting guide.
|
|
|
|
3.6.0 2004-12-16
|
|
|
|
Added texinfo source for the documentation.
|
|
|
|
Added large file tests to Windows directory in distribution.
|
|
|
|
Modified win32 visual studio project files so that m4
|
|
is no longer required to build netcdf under visual studio.
|
|
|
|
Modified rules.make to use install instead of cp,
|
|
fixing install problem for cygwin users.
|
|
|
|
Modified configure/install stuff to support HP-UX.
|
|
|
|
Modified configure/install stuff to support G95.
|
|
|
|
In the f90 interface, applied Arnaud Desitter's fixes
|
|
to correct mismatches between scalar and array
|
|
arguments, eliminating (legitimate) complaints by the
|
|
NAGWare f95 compiler. Also fixed bugs introduced in
|
|
3.6.0-beta5 in the mapped array interfaces.
|
|
|
|
3.6.0-beta6 2004-10-05
|
|
|
|
Fixed AIX 64-bit/largefile install problems.
|
|
|
|
Removed FAQ section from netcdf.texi User's Guide, in
|
|
deference to online version that can be kept up to
|
|
date more easily.
|
|
|
|
3.6.0-beta5 2004-10-04
|
|
|
|
Fixed assertion violation on 64-bit platforms when
|
|
size of last fixed size variable exceeds 2^32 - 1.
|
|
|
|
Removed another restriction on file size by making
|
|
record size (derived from other sizes, not part of the
|
|
format) an off_t instead of a size_t, when an off_t is
|
|
larger than a size_t. This permits records to be
|
|
*much* larger in either classic format or
|
|
64-bit-offset format.
|
|
|
|
Incorporated patch from Mathis Rosenhauer to improve
|
|
performance of Fortran 90 interface for calls to
|
|
nf90_put_var_TYPE(), nf90_get_var_TYPE(),
|
|
nf90_put_vara_TYPE(), and nf90_get_vara_TYPE()
|
|
functions by not emulating them with the corresponding
|
|
nf90_put_varm_TYPE() and nf90_get_varm_TYPE() calls.
|
|
|
|
Added tests for invalid offsets in classic format when
|
|
defining multiple large variables.
|
|
|
|
Improved installation ease. Have configure script use
|
|
Large File Support as a default, if available.
|
|
|
|
Add "extra_test" as a target for testing Large File
|
|
Support.
|
|
|
|
3.6.0-beta3 2004-08-24
|
|
|
|
Upgraded to recent autoconf, changed configure to
|
|
(hopefully) improve installation. Also added macros
|
|
to deal with large file systems.
|
|
|
|
Added nf_set_default_format to Fortran interface.
|
|
|
|
Added testing to the set_default_format functions to
|
|
nc_test and nf_test.
|
|
|
|
Added documentation to the man page for
|
|
set_default_format functions.
|
|
|
|
Added two new error return codes to C, f77, and f90
|
|
interfaces for invalid dimension size and for bad
|
|
variable size. Made test for max dimension size
|
|
depend on whether 64-bit offsets used. Fixed bug with
|
|
dimension sizes between 2^31 and 2^32 (for byte
|
|
variables).
|
|
|
|
Fixed ncdump to properly print dimensions larger than
|
|
2^31.
|
|
|
|
Fixed ncgen to properly handle dimensions between 2^31
|
|
and 2^32.
|
|
|
|
3.6.0-beta2
|
|
Added -v2 (version 2 format with 64-bit offsets)
|
|
option to ncgen, to specify that generated files or
|
|
generated C/Fortran code should create 64-bit offset
|
|
files. Also added -x option to ncgen to specify use
|
|
of no-fill mode for fast creation of large files.
|
|
|
|
Added function to set default create mode to C
|
|
interface (nc_set_default_create).
|
|
|
|
Added win32 directory, with NET subdirectory to hold
|
|
.NET port of netCDF. To use, open netcdf.sln with
|
|
Visual Studio, and do a clean and then a build of
|
|
either the debug or release builds. Tests will be run
|
|
as part of the build process. VC++ with managed
|
|
extensions is required (i.e. VC++.NET).
|
|
|
|
Added windows installer files to build windows binary
|
|
installs.
|
|
|
|
3.6.0-beta1 By incorporating Greg Sjaardema's patch, added support
|
|
for 64-bit offset files, which remove many of the
|
|
restrictions relating to very large files (i.e.
|
|
larger than 2 GB.) This introduces a new data format
|
|
for the first time since the original netCDF format
|
|
was introduced. Files in this new 64-bit offset
|
|
format can't be read by earlier versions of
|
|
netCDF. Users should continue to use the netCDF
|
|
classic format unless they need to create very large
|
|
files.
|
|
|
|
The test suite, nc_test, will now be run twice, once for
|
|
netCDF classic format testing, and once for 64-bit offset
|
|
format testing.
|
|
|
|
The implementation of the Fortran-77 interface has been
|
|
adapted to version 4.3 of Burkhard Burow's "cfortran.h".
|
|
|
|
3.6.0-alpha
|
|
Added NEC SX specific optimization for NFILL tunable
|
|
parameter in libsrc/putget.c
|
|
|
|
Added support for the ifc Fortran-90 compiler creating
|
|
files "netcdf.d" and "typesizes.d" (instead of ".mod"
|
|
files).
|
|
|
|
Fixed access to iargc and getarg functions from
|
|
Fortran-90 for NAG f90 compiler, contributed by Harald
|
|
Anlauf.
|
|
|
|
3.5.1 2004-02-03
|
|
|
|
Updated INSTALL.html for Mac OS X (Darwin).
|
|
|
|
Made the installation of the netCDF Fortran-90 module
|
|
file more robust regarding the name of the file.
|
|
|
|
Added support for eight-byte integers in Fortran90
|
|
interface.
|
|
|
|
Increased advisory limits in C netcdf.h and Fortran
|
|
netcdf.inc for maximum number of dimensions,
|
|
variables, and attributes.
|
|
|
|
Changed C++ declarations "friend NcFile" to "friend
|
|
class NcFile" in cxx/netcdfcpp.h to conform to
|
|
standard.
|
|
|
|
Added Dan Schmitt's backward compatible extension to
|
|
the C++ record interface to work with arbitrary
|
|
dimension slices.
|
|
|
|
Added C++ documentation note that caller is
|
|
responsible for deleting pointer returned by
|
|
Variable::values() method when no longer needed.
|
|
|
|
Made C++ interface more standard; the result may not
|
|
compile on some old pre-standard C++ compilers.
|
|
|
|
Fixed bug in ncgen when parsing values of a
|
|
multidimensional char variable that resulted in
|
|
failure to pad a value with nulls on IRIX.
|
|
|
|
Fixed ncdump bug adding extra quote to char variable
|
|
data when using -fc or -ff option.
|
|
|
|
Fixed so compiling with -DNO_NETCDF_2 will work for
|
|
building without backward-compatibility netCDF-2
|
|
interfaces.
|
|
|
|
Eliminated use of ftruncate(), because it fails on
|
|
FAT32 file systems under Linux.
|
|
|
|
Initialized a pointer in putget.m4 (used to generate
|
|
putget.c) that was involved in uninitialized memory
|
|
references when nc_test is run under Purify. Two
|
|
users had reported seeing crashes resulting from this
|
|
problem in their applications.
|
|
|
|
Reverted pointer initializations in putget.m4, after
|
|
testing revealed these caused a performance problem,
|
|
resulting in many extra calls to px_pgin and px_pgout
|
|
when running nc_test.
|
|
|
|
Added checking of size of "dimids" vector in function
|
|
nf90_inquire_variable(...) and error-returning if it
|
|
isn't sufficiently capacious.
|
|
|
|
Added variable index to ncvarget() and ncattinq() error
|
|
messages and attribute name to ncattinq() error message.
|
|
|
|
Tweaked configure script to work with recent C++ compilers.
|
|
|
|
Fixed a memory leak in C++ interface, making sure
|
|
NcVar::cur_rec[] gets deleted in NcVar destructor.
|
|
|
|
Reimplemented nc_sync() fix of version 3.5.0 to eliminate
|
|
performance penalty when synchronization is unnecessary.
|
|
|
|
Changed order of targets in Makefile to build Fortran
|
|
interface last, as a workaround for problem with make
|
|
on AIX platforms.
|
|
|
|
3.5.0 2001-03-23
|
|
|
|
Added Fortran 90 interface.
|
|
|
|
Changed C macro TIMELEN in file cxx/nctst.cpp to
|
|
TIMESTRINGLEN to avoid clash with macro defined on AIX
|
|
systems in /usr/include/time.h.
|
|
|
|
Fixed miswriting of netCDF header when exiting define
|
|
mode. Because the header was always written correctly
|
|
later, this was only a problem if there was another
|
|
reader of the netCDF file.
|
|
|
|
Fixed explicit synchronizing between netCDF writer and
|
|
readers via the nc_sync(), nf_sync(), and ncsync()
|
|
functions.
|
|
|
|
Fixed a number of bugs related to attempts to support
|
|
shrinking the header in netCDF files when attributes
|
|
are rewritten or deleted. Also fixed the problem that
|
|
nc__endef() did not work as intended in reserving
|
|
extra space in the file header, since the extra space
|
|
would be compacted again on calling nc_close().
|
|
|
|
Fixed the "redef bug" that occurred when nc_enddef()
|
|
or nf_enddef() is called after nc_redef() or
|
|
nf_redef(), the file is growing such that the new
|
|
beginning of a record variable is in the next "chunk",
|
|
and the size of at least one record variable exceeds
|
|
the chunk size (see netcdf.3 man page for a
|
|
description of this tuning parameter and how to set
|
|
it). This bug resulted in corruption of some values
|
|
in other variables than the one being added.
|
|
|
|
The "__" tuning functions for the Fortran interface,
|
|
nf__create, nf__open, and nf__enddef, are now
|
|
documented in the Fortran interface man pages.
|
|
|
|
Add an 'uninstall' target to all the Makefiles.
|
|
Dave Glowacki <dglo@SSEC.WISC.EDU> 199810011851.MAA27335
|
|
|
|
Added support for multiprocessing on Cray T3E.
|
|
Hooks added by Glenn, but the majority of the work
|
|
was done at NERSC. Also includes changes to ffio
|
|
option specification. Patch rollup provided by
|
|
R. K. Owen <rkowen@Nersc.GOV>. The following functions
|
|
are added to the public interface.
|
|
nc__create_mp()
|
|
nc__open_mp()
|
|
nc_set_base_pe()
|
|
nc_inq_base_pe()
|
|
|
|
Fixed makefile URL for Win32 systems in INSTALL file.
|
|
|
|
Made test for UNICOS system in the configure script case
|
|
independent.
|
|
|
|
Ported to the following systems:
|
|
AIX 4.3 (both /bin/xlc and /usr/vac/bin/xlc compilers)
|
|
IRIX 6.5
|
|
IRIX64 6.5
|
|
|
|
Changed the extension of C++ files from ".cc" to ".cpp".
|
|
Renamed the C++ interface header file "netcdfcpp.h"
|
|
instead of "netcdf.hh", changing "netcdf.hh" to
|
|
include "netcdfcpp.h" for backward compatibility.
|
|
|
|
Treat "FreeBSD" systems the same as "BSD/OS" system
|
|
w.r.t. Fortran and "whatis" database.
|
|
|
|
Corrected manual pages: corrected spelling of "enddef" (was
|
|
"endef") and ensured that the words "index" and "format"
|
|
will be correctly printed.
|
|
|
|
Updated support for Fortran-calling-C interface by
|
|
updating "fortran/cfortran.h" from version 3.9 to
|
|
version 4.1. This new version supports the Portland
|
|
Group Fortran compiler (C macro "pgiFortran")
|
|
and the Absoft Pro Fortran compiler (C macro
|
|
"AbsoftProFortran").
|
|
|
|
Corrected use of non-integral-constant-expression
|
|
in specifying size of temporary arrays in file
|
|
"libsrc/ncx_cray.c".
|
|
|
|
Added Compaq Alpha Linux workstation example to INSTALL
|
|
file.
|
|
|
|
Ported cfortran.h to Cygnus GNU Win32 C compiler (gcc
|
|
for Windows).
|
|
|
|
Fixed bug in ncdump using same CDL header name when
|
|
called with multiple files.
|
|
|
|
Added new NULL data type NC_NAT (Not A Type) to
|
|
facilitate checking whether a variable object has had
|
|
its type defined yet, for example when working with
|
|
packed values.
|
|
|
|
Fixed use of compile-time macro NO_NETCDF_2 so it
|
|
really doesn't include old netCDF-2 interfaces, as
|
|
intended.
|
|
|
|
Ported to MacOS X Public Beta (Darwin 1.2/PowerPC).
|
|
|
|
Fixed C++ friend declarations to conform to C++ standard.
|
|
|
|
Changed INSTALL file to INSTALL.html instead.
|
|
|
|
3.4 1998-03-09
|
|
|
|
Fixed ncx_cray.c to work on all CRAY systems,
|
|
not just CRAY1. Reworked USE_IEG, which was incorrect.
|
|
Reworked short support. Now USE_IEG and otherwise
|
|
both pass t_ncx.
|
|
|
|
To better support parallel systems, static and malloc'ed
|
|
scratch areas which were shared in the library
|
|
were eliminated. These were made private and on the
|
|
stack where possible. To support this, the macros
|
|
ALLOC_ONSTACK and FREE_ONSTACK are defined in onstack.h.
|
|
|
|
The buffered i/o system implementation in posixio.c
|
|
was reimplemented to limit the number and size of read()
|
|
or write() system calls and use greater reliance on memory
|
|
to memory copy. This saves a great deal of wall clock time
|
|
on slow (NFS) filesystems, especially during nc_endef().
|
|
|
|
Added performance tuning "underbar underbar" interfaces
|
|
nc__open(), nc__create(), and nc__enddef().
|
|
|
|
The 'sizehint' contract between the higher
|
|
layers and the ncio layer is consistently enforced.
|
|
|
|
The C++ interface has been updated so that the
|
|
deprecated "nclong" typedef should no longer be
|
|
required, and casts to nclong no longer necessary. Just
|
|
use int or long as appropriate. nclong is still
|
|
supported for backwards compatibility.
|
|
|
|
The ncdump utility now displays byte values as signed,
|
|
even on platforms where the type corresponding to a C
|
|
char is unsigned (SGI, for example). Also the ncdump
|
|
and ncgen utilities have been updated to display and
|
|
accept byte attributes as signed numeric values (with a
|
|
"b" suffix) instead of using character constants.
|
|
|
|
In libsrc/error.c:nc_strerror(int), explain that
|
|
NC_EBADTYPE applies to "_FillValue type mismatch".
|
|
|
|
Some changes to configure scripts (aclocal.m4),
|
|
macros.make.in and ncgen/Makefile to support
|
|
NEC SUPER-UX 7.2.
|
|
|
|
The "usage" messages of ncgen and ncdump include the
|
|
string returned from nc_inq_libvers().
|
|
|
|
Corrected some casts in the library so that all phases of
|
|
the arithmetic computing file offsets occurs with "off_t"
|
|
type. This allows certain larger netcdf files to be created
|
|
and read on systems with larger (64bit) off_t.
|
|
|
|
In ncgen, multidimensional character variables are now
|
|
padded to the length of last dimension, instead of just
|
|
concatenating them. This restores an undocumented but
|
|
convenient feature of ncgen under netCDF-2. Also, a
|
|
syntax error is now reliably reported if the netcdf name
|
|
is omitted in CDL input.
|
|
|
|
Fortran and C code generated by ncgen for netCDF
|
|
components whose names contain "-" characters will now
|
|
compile and run correctly instead of causing syntax
|
|
errors.
|
|
|
|
The library allows "." characters in names as well
|
|
as "_" and "-" characters. A zero length name "" is
|
|
explicitly not allowed. The ncgen utility will now
|
|
permit "." characters in CDL names as well.
|
|
|
|
Memory leaks in the C++ interface NcVar::as_*() member
|
|
functions and NcFile::add_var() member function are
|
|
fixed. The documentation was fixed where it indicated
|
|
incorrectly that the library managed value blocks that
|
|
the user is actually responsible for deleting.
|
|
|
|
The values of the version 2 Fortran error codes have
|
|
been modified to make the version 2 Fortran interface
|
|
more backward compatible at the source level.
|
|
|
|
Added support for systems whose Fortran INTEGER*1 and
|
|
INTEGER*2 types are equivalent to the C "long" type but
|
|
whose C "int" and "long" types differ. An example of
|
|
such a system is the NEC SX-4 with the "-ew" option to
|
|
the f90 compiler (sheesh, what a system!).
|
|
|
|
Fixed Version 2 Fortran compatibility bug: NCVGTG,
|
|
NCVGGC, NCVPTG, and NCVPGC didn't work according to the
|
|
Version 2 documentation if the innermost mapping value
|
|
(i.e. IMAP[1]) was zero (indicating that the netCDF
|
|
structure of the variable should be used).
|
|
|
|
3.3.1 1997-06-16
|
|
|
|
One can now inquire about the number of attributes that a
|
|
variable has using the global variable ID.
|
|
|
|
The FORTRAN interface should now work on more systems.
|
|
In particular:
|
|
|
|
It should now work with FORTRAN compilers whose
|
|
"integer*1" datatype is either a C "signed char",
|
|
"short", or "int" and whose "integer*2" datatype is
|
|
either a C "short" or "int".
|
|
|
|
It should now work with FORTRAN compilers that are
|
|
extremely picky about source code formatting (e.g.
|
|
the NAG f90 compiler).
|
|
|
|
The dependency on the non-POSIX utility m4(1) for
|
|
generating the C and FORTRAN manual pages has been
|
|
eliminated.
|
|
|
|
EXTERNAL statements have been added to the FORTRAN
|
|
include-file "netcdf.inc" to eliminate excessive
|
|
warnings about "unused" variables (which were actually
|
|
functions) by some compilers (e.g. SunOS 4.1.3's f77(1)
|
|
version 1.x).
|
|
|
|
Building the netCDF-3 package no longer requires the
|
|
existence of the Standard C macro RAND_MAX.
|
|
|
|
Fixed an ncdump bug resulting in ncdump reporting
|
|
Attempt to convert between text & numbers
|
|
when _FillValue attribute of a character variable set to
|
|
the empty string "".
|
|
|
|
Made ncgen tests more stringent and fixed various bugs
|
|
this uncovered. These included bugs in handling byte
|
|
attributes on platforms on which char is unsigned,
|
|
initializing scalar character variables in generated C
|
|
code under "-c" option, interspersing DATA statements
|
|
with declaration statements in generated Fortran code
|
|
under "-f" option, handling empty string as a value
|
|
correctly in generated C and Fortran, and handling
|
|
escape characters in strings. The Fortran output under
|
|
the "-f" option was also made less obscure and more
|
|
portable, using automatic conversion with netCDF-3
|
|
interfaces instead of "BYTE", "INTEGER*1", or
|
|
"INTEGER*2" declarations.
|
|
|
|
Fixed a C++ interface problem that prevented compiling
|
|
the C++ library with Digital's cxx compiler.
|
|
|
|
Made ncgen "make test" report failure and stop if test
|
|
resulted in a failure of generated C or Fortran code.
|
|
|
|
The file that you are now reading was created to contain
|
|
a high-level description of the evolution of the
|
|
netCDF-3 package.
|
|
|
|
3.3 1997-05-15
|
|
|
|
The production version of the netCDF-3 package was
|
|
released.
|
|
|
|
A comparison of the netCDF-2 and netCDF-3 releases can
|
|
be found in the file COMPATIBILITY.
|
|
|
|
|