Skip to content

@WardF WardF released this Mar 21, 2019 · 38 commits to master since this release

The changes from 4.6.2 include but are not limited to:

  • [Bug Fix] Correctly generated netcdf.pc generated either by configure or cmake. If linking against a static netcdf, you would need to pass the --static argument to pkg-config in order to list all of the downstream dependencies. See Github #1324 for more information.
  • Now always write hidden coordinates attribute, which allows faster file opens when present. See Github #1262 for more information.
  • Some fixes for rename, including fix for renumbering of varids after a rename (#1307), renaming var to dim without coordinate var. See Github #1297.
  • Fix of NULL parameter causing segfaults in put_vars functions. See Github #1265 for more information.
  • Fix of --enable-benchmark benchmark tests Github #1211
  • Update the license from the home-brewed NetCDF license to the standard 3-Clause BSD License. This change does not result in any new restrictions; it is merely the adoption of a standard, well-known and well-understood license in place of the historic NetCDF license written at Unidata. This is part of a broader push by Unidata to adopt modern, standardized licensing.
  • [BugFix] Corrected DAP-releated issues on big-endian machines. See Github #1321, Github #1302 for more information.
  • [BugFix][Enhancement] Various and sundry bugfixes and performance enhancements, thanks to @edhartnett, @gsjaardema, @t-b, @wkliao, and all of our other contributors.
  • [Enhancement] Extended nccopy -F syntax to support multiple variables with a single invocation. See Github #1311 for more information.
  • [BugFix] Corrected an issue where DAP2 was incorrectly converting signed bytes, resulting in an erroneous error message under some circumstances. See GitHub #1317 for more information. See Github #1319 for related information.
  • [BugFix][Enhancement] Modified nccopy so that _NCProperties is not copied over verbatim but is instead generated based on the version of libnetcdf used when copying the file. Additionally, _NCProperties are displayed if/when associated with a netcdf3 file, now. See GitHub #803 for more information.
Assets 2

@WardF WardF released this Nov 19, 2018 · 476 commits to master since this release

The changes from version 4.6.1 include (but are not limited to):

  • [Enhancement] Lazy att read - only read atts when user requests one of them. See GitHub #857.
  • [Enhancement] Fast global att read - when global atts are read, they are read much more quickly. See GitHub #857.
  • [Enhancement] Add nccopy command options for per-variable chunk sizing, and minimum chunk size. See GitHub #1087.
  • [Bug Fix] Fix nccopy handling of user specified chunk sizes. See GitHub #725,#1087.
  • [Bug Fix] Avoid limit on number of times a netCDF4 attribute can be updated. Not a complete fix for the HDF5 "maximum creation order" problem, but should greatly reduce occurrences in many real-world cases. See GitHub #350.
  • [Bug Fix] The use of NC_DISKLESS has been modified to make it cleaner. This adds a new flag called NC_PERSIST that takes over the now obsolete NC_MPIPOSIX.
  • [Obsolete] Obsolete the MPIPOSIX flag.
  • [Bug Fix] When using filters with HDF5 1.10.x or later, it is necessary to utilize the HDF5 replacements for malloc, realloc, and free in the filter code.
  • [Enhancement] Create a new version of _NCProperties provenance attribute. This version (version 2) supports arbitrary key-value pairs. It is the default when new files are created. Version 1 continues to be accepted.
  • [Enhancement] Allow user to set http read buffersize for DAP2 and DAP4 using the tag HTTP.READ.BUFFERSIZE in the .daprc file.
  • [Enhancement] Allow user to set http keepalive for DAP2 and DAP4 using the tag HTTP.KEEPALIVE in the .daprc file (see the OPeNDAP documentation for details).
  • [Enhancement] Support DAP4 remote tests using a new remote test server locatedon the Unidata JetStream project.
  • [Enhancement] Improved the performance of the nc_get/put_vars operations by using the equivalent slab capabilities of hdf5. Result is a significant speedup of these operations. See GitHub #1001 for more information.
  • [Enhancement] Expanded the capabilities of NC_INMEMORY to support writing and accessing the final modified memory. See GitHub #879 for more information.
  • [Enhancement] Made CDF5 support enabled by default. See Github #931 for more information.
  • [Bug Fix] Corrected a number of memory issues identified in ncgen. See GitHub #558 for more information.
Assets 2
Pre-release

@WardF WardF released this Nov 1, 2018 · 606 commits to master since this release

The changes from the pervious version include (but are not limited to):

  • [Enhancement] Add nccopy command options for per-variable chunk sizing, and minimum chunk size. See GitHub #1087.
  • [Bug Fix] Fix nccopy handling of user specified chunk sizes. See GitHub #725,#1087.
  • [Bug Fix] Avoid limit on number of times a netCDF4 attribute can be updated. Not a complete fix for the HDF5 "maximum creation order" problem, but should greatly reduce occurrences in many real-world cases. See GitHub #350.
  • [Bug Fix] The use of NC_DISKLESS has been modified to make it cleaner. This adds a new flag called NC_PERSIST that takes over the now obsolete NC_MPIPOSIX.
  • [Obsolete] Obsolete the MPIPOSIX flag.
  • [Bug Fix] When using filters with HDF5 1.10.x or later, it is necessary to utilize the HDF5 replacements for malloc, realloc, and free in the filter code.
Assets 2
Pre-release

@WardF WardF released this Sep 20, 2018 · 681 commits to master since this release

The changes from the previous version include (but are not limited to):

  • [Enhancement] Create a new version of _NCProperties provenance attribute. This version (version 2) supports arbitrary key-value pairs. It is the default when new files are created. Version 1 continues to be accepted.
  • [Enhancement] Allow user to set http read buffersize for DAP2 and DAP4 using the tag HTTP.READ.BUFFERSIZE in the .daprc file.
  • [Enhancement] Allow user to set http keepalive for DAP2 and DAP4 using the tag HTTP.KEEPALIVE in the .daprc file (see the OPeNDAP documentation for details).
  • [Enhancement] Support DAP4 remote tests using a new remote test server locatedon the Unidata JetStream project.
  • [Enhancement] Improved the performance of the nc_get/put_vars operations by using the equivalent slab capabilities of hdf5. Result is a significant speedup of these operations. See GitHub #1001 for more information.
  • [Enhancement] Expanded the capabilities of NC_INMEMORY to support writing and accessing the final modified memory. See GitHub #879 for more information.
  • [Enhancement] Made CDF5 support enabled by default. See Github #931 for more information.
  • [Bug Fix] Corrected a number of memory issues identified in ncgen. See GitHub #558 for more information.
Assets 2

@WardF WardF released this Mar 20, 2018 · 1609 commits to master since this release

We are happy to announce the availability of netCDF-C 4.6.1. This is primarily a maintenance release. In addition to numerous internal changes, cleanup, bug fixes and reorganization, some notable changes since netCDF-C 4.6.0 are as follows:

  • [Enhancement] Reverted some new behaviors that, while in line with the netCDF specification, broke existing workflows. See Github #843 for more information.
  • [Bug Fix] Corrected an issue which could result in a dap4 failure. See Github #888 for more information.
  • [Bug Fix][Enhancement] Allow nccopy to control output filter suppresion. See Github #894 for more information.
  • [Bug Fix] Improved support for CRT builds with Visual Studio, improves zlib detection in hdf5 library. See Github #853 for more information.
  • [Enhancement][Internal] Moved HDF4 into a distinct dispatch layer. See Github #849 for more information.
Assets 2

@WardF WardF released this Jan 25, 2018 · 1807 commits to master since this release

We are pleased to announce the netCDF-C 4.6.0 release. Highlighted changes from the 4.5.0 release are as follows:

  • [Enhancement] Full support for using HDF5 dynamic filters, both for reading and writing. See the file docs/filters.md.
  • [Enhancement] Reversed a handful of 4.5.0 changes which enforced documented-yet-previously-unenforced specifications, as these broke long established workflows.
  • [Enhancement] Added an option to enable strict null-byte padding for headers; this padding was specified in the spec but was not enforced. Enabling this option will allow you to check your files, as it will return an E_NULLPAD error. It is possible for these files to have been written by older versions of libnetcdf. There is no effective problem caused by this lack of null padding, so enabling these options is informational only. The options for configure and cmake are --enable-strict-null-byte-header-padding and -DENABLE_STRICT_NULL_BYTE_HEADER_PADDING, respectively. See Github #657 for more information.
  • [Enhancement] Reverted behavior/handling of out-of-range attribute values to pre-4.5.0 default. See Github #512 for more information.
  • [Bug] Fixed error in tst_parallel2.c. See Github #545 for more information.
  • [Bug] Fixed handling of corrupt files + proper offset handling for hdf5 files. See Github #552 for more information.
  • [Bug] Corrected a memory overflow in tst_h_dimscales, see Github #511, Github #505, Github #363 and Github #244 for more information.
Assets 2

@WardF WardF released this Oct 20, 2017 · 2359 commits to master since this release

We are very happy to announce netCDF 4.5.0. In addition to general bug fixes and improvements, the improvements from the previous release candidate are listed below. For a full list of changes since the 4.4.1.1 release, please see the full Release Notes.


  • Corrected an issue which could potential result in a hang while using parallel file I/O. See Github #449 for more information.
  • Addressed an issue with ncdump not properly handling dates on a 366 day calendar. See GitHub #359 for more information.
Assets 2

@WardF WardF released this Sep 29, 2017 · 2392 commits to master since this release

We are pleased to announce the third release candidate for netCDF 4.5.0. Assuming no further bug reports (won't that be nice!) we should have the full release out soon. In addition to general bug fixes, the main improvements from rc2 are as follows:


  • [Update] Due to ongoing issues, native CDF5 support has been disabled by default. You can use the options mentioned below (--enable-cdf5 or -DENABLE_CDF5=TRUE for configure or cmake, respectively). Just be aware that for the time being, Reading/Writing CDF5 files on 32-bit platforms may result in unexpected behavior when using extremely large variables. For 32-bit platforms it is best to continue using NC_FORMAT_64BIT_OFFSET.
  • [Bug] Corrected an issue where older versions of curl might fail. See GitHub #487 for more information.
  • [Enhancement] Added options to enable/disable CDF5 support at configure time for autotools and cmake-based builds. The options are --enable/disable-cdf5 and ENABLE_CDF5, respectively. See Github #484 for more information.
  • [Bug Fix] Corrected an issue when subsetting a netcdf3 file via nccopy -v/-V. See Github #425 and Github #463 for more information.
  • [Bug Fix] Corrected --has-dap and --has-dap4 output for cmake-based builds. See GitHub #473 for more information.
  • [Bug Fix] Corrected an issue where NC_64BIT_DATA files were being read incorrectly by ncdump, despite the data having been written correctly. See GitHub #457 for more information.
  • [Bug Fix] Corrected a potential stack buffer overflow. See GitHub #450 for more information.

Release Tarball - https://github.com/Unidata/netcdf-c/releases
Windows Installer Downloads - http://www.unidata.ucar.edu/software/netcdf/docs_rc/winbin.html
Documentation - http://www.unidata.ucar.edu/software/netcdf/docs_rc

Assets 2

@WardF WardF released this Aug 7, 2017 · 2510 commits to master since this release

We are pleased to announce the second release candidate for netCDF 4.5.0. Assuming no further bug reports (won't that be nice!) we should have the full release out soon. In addition to general bug fixes, the main improvements from rc1 are as follows:

  • [Bug Fix] Addressed an issue with how cmake was implementing large file support on 32-bit systems. See GitHub #385 for more information.
  • [Bug Fix] Addressed an issue where ncgen would not respect keyword case. See GitHub #310 for more information.

The documentation and release code may be downloaded via the following links. We look forward to any feedback and suggestions. Once the official 4.5.0 release is out, we will move forward with the next versions of the Fortran and C++ interfaces.

Assets 2

@WardF WardF released this Jun 5, 2017 · 2588 commits to master since this release

The following list captures the main changes/improvements/bug fixes since version 4.4.1.1:

4.5.0-rc1 - June 5, 2017

  • [Enhancement] DAP4 is now included. Since dap2 is the default for urls, dap4 must be specified by
    (1) using "dap4:" as the url protocol, or
    (2) appending "#protocol=dap4" to the end of the url, or
    (3) appending "#dap4" to the end of the url
    Note that dap4 is enabled by default but remote-testing is
    disbled until the testserver situation is resolved.
  • [Enhancement] The remote testing server can now be specified with the --with-testserver option to ./configure.
  • [Enhancement] Modified netCDF4 to use ASCII for NC_CHAR. See Github Pull request #316 for more information.
  • [Bug Fix] Corrected an error with how dimsizes might be read. See Github #410 for more information.
  • [Bug Fix] Corrected an issue where 'make check' would fail if 'make' or 'make all' had not run first. See Github #339 for more information.
  • [Bug Fix] Corrected an issue on Windows with Large file tests. See Github #385 for more information.
  • [Bug Fix] Corrected an issue with diskless file access, see Pull Request #400 and Pull Request #403 for more information.
  • [Upgrade] The bash based test scripts have been upgraded to use a common test_common.sh include file that isolates build specific information.
  • [Upgrade] The bash based test scripts have been upgraded to use a common test_common.sh include file that isolates build specific information.
  • [Refactor] the oc2 library is no longer independent of the main netcdf-c library. For example, it now uses ncuri, nclist, and ncbytes instead of its homegrown equivalents.
  • [Bug Fix] NC_EGLOBAL is now properly returned when attempting to set a global _FillValue attribute. See GitHub #388 and GitHub #389 for more information.
  • [Bug Fix] Corrected an issue where data loss would occur when _FillValue was mistakenly allowed to be redefined. See Github #390, GitHub #387 for more information.
  • [Upgrade][Bug] Corrected an issue regarding how "orphaned" DAS attributes were handled. See GitHub #376 for more information.
  • [Upgrade] Update utf8proc.[ch] to use the version now maintained by the Julia Language project (https://github.com/JuliaLang/utf8proc/blob/master/LICENSE.md).
  • [Bug] Addressed conversion problem with Windows sscanf. This primarily affected some OPeNDAP URLs on Windows. See GitHub #365 and GitHub #366 for more information.
  • [Enhancement] Added support for HDF5 collective metadata operations when available. Patch submitted by Greg Sjaardema, see Pull request #335 for more information.
  • [Bug] Addressed a potential type punning issue. See GitHub #351 for more information.
  • [Bug] Addressed an issue where netCDF wouldn't build on Windows systems using MSVC 2012. See GitHub #304 for more information.
  • [Bug] Fixed an issue related to potential type punning, see GitHub #344 for more information.
  • [Enhancement] Incorporated an enhancement provided by Greg Sjaardema, which may improve read/write times for some complex files. Basically, linked lists were replaced in some locations where it was safe to use an array/table. See Pull request #328 for more information.
Assets 2
You can’t perform that action at this time.