Releases: Unidata/netcdf-java
v5.6.0
NetCDF-Java 5.6.0
The NetCDF-Java/Common Data Model (CDM) library version 5.6.0 release was announced on August 16th, 2024. This is a minor version release, as it contains a number of new features. This release has been built and test using Temurin 8 from the (Eclipse Adoptium project) 8, 11, and Zulu 8 and 11.
See here for a full list of commits.
Downloads
netCDF-Java artifacts may be obtained from our Nexus artifacts server using these instructions.
ToolsUI and netCDFAll may be found at https://www.unidata.ucar.edu/downloads/netcdf-java/
Documentation
NetCDF-Java documentation
javadocs
Changes
Features:
- gCDM, a gRPC endpoint for the netcdf-java library, is now supported
- significant improvements to DAP4 support
- Zarr support has been expanded and improved, including a new API for the
Filters
package - Two new pre-processing modules are now available as NcML enhancements:
Standardize
andNormalize
- UGrid support
- Support for saving geotiffs with a pallette
- Support for all cdm-radial data types
- Inclusion of bufr tables 33 and 37, Grib2 template 4.60, and MRMS GRIB table version 12.2
Notable bug fixes:
- Race condition fixed in the h5iosps
- Fix “coordinates must be monotonic” bug for 1D and 2D axes
- Fix performance issue that aggregation cache was not used for coverages
- Enhancements (e.g. scale and offset) performance issues
- Remove old dimension when renaming a dimension through NcML
- Do not create reftime scalar dimension in individual grib file
- Parse variable length char elements from NcML
- Fix units in some projections
- Fix canonical order of coverage axes
- Fix renamed variable reading in aggregations
- Cleanup deleted files in the RandomAccessFile cache
- Fix resource leak that caused files to be locked
The following changes have been made to the project infrastructure:
- updated licenses
- removed unused jars and tars from the code base
- removed dependency on groovy/spock
- replaced an external server for testing with
TestContainers
The following 3rd party libraries have been upgrades to address security vulnerabilities:
- protobuf
- jackson
- guava
- grpc
- logback
- jdom2
- jna
- joda-time
Real-world use by the user community is integral to the process of creating and refining these libraries. Please direct all potential security issues directly to Unidata using the address security@unidata.ucar.edu. Please send all other potential issues to the development team via the the user community mailing lists (netcdf-java@unidata.ucar.edu), through the Unidata support system (support-netcdf-java@unidata.ucar.edu), or on the netCDF-Java GitHub issue tracker.
v5.5.3
netCDF-Java
Version 5.5.3
The NetCDF-Java/Common Data Model (CDM) library version 5.5.3 release was announced on July 5th, 2022. NetCDF-Java requires Java 8 or later. This release has been built and tested using Temurin (from the Eclipse Adoptium project) and Zulu versions 8, 11, and 14.
Notices
As of this release, NetCDF-Java is now built and distributed with Java version 11, targeting version 8 compatibility. Please report any compatibility issues to support-netcdf-java@unidata.ucar.edu.
Downloads
netCDF-Java artifacts may be obtained from our Nexus artifacts server using these instructions.
ToolsUI and netCDFAll may be found at https://www.unidata.ucar.edu/downloads/netcdf-java/
Documentation
Changes
Features:
- Expanded support for object storage
Notable bug fixes:
- Several changes to address issues in TDS NCSS
- Handle get coord bounds for an axis with size=1 without error
- Correctly determine projection coordinates bounding shape
- Register UTM by UTMProjection grid mapping name
Security upgrades:
- Upgraded Jackson Databind libraries to 2.13.2
- Upgrade Google Protobuf library to 3.19.3
For a full list of changes and bug fixes between netCDF-Java v5.5.2 and v5.5.3, please visit v5.5.2...v5.5.3
Real-world use by the user community is integral to the process of creating and refining these libraries. Please direct all potential security issues directly to Unidata using the address security@unidata.ucar.edu. Please send all other potential issues to the development team via the the user community mailing lists (netcdf-java@unidata.ucar.edu), through the Unidata support system (support-netcdf-java@unidata.ucar.edu), or on the netCDF-Java GitHub issue tracker.
v5.5.2
netCDF-Java
Version 5.5.2
The NetCDF-Java/Common Data Model (CDM) library version 5.5.2 release was announced on January 5th, 2022. NetCDF-Java requires Java 8 or later. This release has been built and tested using Temurin 8 from the (Eclipse Adoptium project) 8, 11, and Zulu 8 and 11.
Notices
The previous release, 5.5.1, although tested on Java versions 8 and 11, was compiled with Java 11, and caused errors for some users running JDK 8. This release addresses those compatibility issues, and was compiled using Temurin 8.
Our intention is to continue to provide support for v5.x
as long as we are able to maintain Java 8 compatibility, which is dependent on upstream library support for providing security releases that do not require moving to Java 11.
Downloads
netCDF-Java artifacts may be obtained from our Nexus artifacts server using these instructions.
ToolsUI and netCDFAll may be found at https://www.unidata.ucar.edu/downloads/netcdf-java/
Documentation
Changes
This release includes a fix for a compatibility bug, discovered in v5.5.1:
- Users running JDK 8 would get the following error message:
java.lang.NoSuchMethodError: java.nio.ByteBuffer.flip()Ljava/nio/ByteBuffer;
For more information, please visit https://docs.unidata.ucar.edu/netcdf-java/5.5/userguide/upgrade.html.
For a full list of changes and bug fixes between netCDF-Java v5.4.2 and v5.5.2, please visit v5.4.2...v5.5.1
Real-world use by the user community is integral to the process of creating and refining these libraries. Please direct all potential security issues directly to Unidata using the address security@unidata.ucar.edu. Please send all other potential issues to the development team via the the user community mailing lists (netcdf-java@unidata.ucar.edu), through the Unidata support system (support-netcdf-java@unidata.ucar.edu), or on the netCDF-Java GitHub issue tracker.
v5.5.1
netCDF-Java
Version 5.5.1
The NetCDF-Java/Common Data Model (CDM) library version 5.5.1 release was announced on December 20th, 2021. NetCDF-Java requires Java 8 or later. This release has been built and test using Temurin 8 from the (Eclipse Adoptium project) 8, 11, and Zulu 8 and 11.
Notices
Our intention is to continue to provide support for v5.x
as long as we are able to maintain Java 8 compatibility, which is dependent on upstream library support for providing security releases that do not require moving to Java 11. The next major version of netCDF-Java (v6.x
) will continue to provide Java 8 support, but will only provide the new API. A high-level roadmap for the library can be found on the project wiki.
Downloads
netCDF-Java artifacts may be obtained from our Nexus artifacts server using these instructions.
ToolsUI and netCDFAll may be found at https://www.unidata.ucar.edu/downloads/netcdf-java/
Documentation
Changes
Outside of the various bug fixes, dependency upgrades (some related to security), build/doc infrastructure changes, notable updates include:
- Read support for Zarr v.2
- Support for user-supplied filters through a Service Provider Interface
For more information, please visit https://docs.unidata.ucar.edu/netcdf-java/5.5/userguide/upgrade.html.
For a full list of changes and bug fixes between netCDF-Java v5.4.2 and v5.5.1, please visit v5.4.2...v5.5.1
Real-world use by the user community is integral to the process of creating and refining these libraries. Please direct all potential security issues directly to Unidata using the address security@unidata.ucar.edu. Please send all other potential issues to the development team via the the user community mailing lists (netcdf-java@unidata.ucar.edu), through the Unidata support system (support-netcdf-java@unidata.ucar.edu), or on the netCDF-Java GitHub issue tracker.
v5.4.2
netCDF-Java
Version 5.4.2
The NetCDF-Java/Common Data Model (CDM) library version 5.4.2 release was announced on August 27th, 2021. NetCDF-Java requires Java 8 or later. This release has been built and test using Temurin 8 from the (Eclipse Adoptium project) 8, 11, and Zulu 8 and 11.
Notices
Our intention is to continue to provide support for v5.x
as long as we are able to maintain Java 8 compatibility, which is dependent on upstream library support for providing security releases that do not require moving to Java 11. The next major version of netCDF-Java (v6.x
) will continue to provide Java 8 support, but will only provide the new API. A high-level roadmap for the library can be found on the project wiki.
Downloads
netCDF-Java artifacts may be obtained from our Nexus artifacts server using these instructions.
ToolsUI and netCDFAll may be found at https://www.unidata.ucar.edu/downloads/netcdf-java/
Documentation
Changes
Outside of the various bug fixes, dependency upgrades (some related to security), build/doc infrastructure changes, notable updates include:
- Updated the following GRIB tables:
- MRMS GRIB2 Tables to v12.0.
- NCEP GRIB 1 Tables.
- Experimental HRRR GRIB2 tables to v4.
- NDFD GRIB2 tables to reflect degrib v2.25.
- Support for GRIB2 PNG encoding (24- and 32-bit depth)
For more information, please visit https://docs.unidata.ucar.edu/netcdf-java/5.4/userguide/upgrade.html.
For a full list of changes and bug fixes between netCDF-Java v5.4.1 and v5.4.2, please visit v5.4.1...v5.4.2
Real-world use by the user community is integral to the process of creating and refining these libraries. Please direct all potential security issues directly to Unidata using the address security@unidata.ucar.edu. Please send all other potential issues to the development team via the the user community mailing lists (netcdf-java@unidata.ucar.edu), through the Unidata support system (support-netcdf-java@unidata.ucar.edu), or on the netCDF-Java GitHub issue tracker.
v5.4.1
netCDF-Java
Version 5.4.1
The NetCDF-Java/Common Data Model (CDM) library version 5.4.1 release was announced on December 17th, 2020. NetCDF-Java requires Java 8 or later. This release has been built and test using AdoptOpenJDK (a.k.a. Adoptium) 8, 11, and 14, and Zulu 8 and 11.
v5.4.0
?
What happened to v5.4.0
? As we were wrapping up the release, we were notified by our dependency check scanner than one of the libraries we use had posted a CVE. Rather than finalizing the release using a dependency with a known vulnerability, we decided to skip v5.4.0
, upgrade the impacted dependency, and move to v5.4.1
.
Notices
We have been in the process of solidifying the public API for the library, and this release contains the results of those efforts. The 5.x
line of development will provide both the old and new classes/methods, and you are likely to encounter deprecations when you first compile against this release. Our intention is to continue to provide support for v5.x
as long as we are able to maintain Java 8 compatibility, which is dependent on upstream library support for providing security releases that do not require moving to Java 11. The next major version of netCDF-Java (v6.x
) will continue to provide Java 8 support, but will only provide the new API. A high-level roadmap for the library can be found on the project wiki.
Downloads
netCDF-Java artifacts may be obtained from our Nexus artifacts server using these instructions.
ToolsUI and netCDFAll may be found at https://www.unidata.ucar.edu/downloads/netcdf-java/
Documentation
Changes
New features include:
- Build support for Java 11 through 14 (upgraded from Gradle
3.5.1
to6.7
). - Object Storage support (tested against AWS S3, Google Cloud Platform, Microsoft Azure Blob Storage, ActiveScale).
- Now producing platform and BOM project-level maven POMs (netcdf-java-platform-5.4.1.pom, netcdf-java-bom-5.4.1.pom)
- "Super-res" Level 3 NEXRAD support
For more information, please visit https://docs.unidata.ucar.edu/netcdf-java/5.4/userguide/upgrade_to_50.html.
For a full list of changes and bug fixes between netCDF-Java v5.3.3 and v5.4.1, please visit v5.3.3...v5.4.1
Real-world use by the user community is integral to the process of creating and refining these libraries. Please direct all potential security issues directly to Unidata using the address security@unidata.ucar.edu. Please send all other potential issues to the development team via the the user community mailing lists (netcdf-java@unidata.ucar.edu), through the Unidata support system (support-netcdf-java@unidata.ucar.edu), or on the netCDF-Java GitHub issue tracker.
v5.3.3
netCDF-Java
Version 5.3.3
The NetCDF-Java/Common Data Model (CDM) library version 5.3.3 release was announced on June 17th, 2020. Version 5.3.3 contains a fix for a critical bug related to the netCDF-Java DiskCache2 class (ucar.nc2.util.DiskCache2
).
Notices
This release addresses a critical bug in the netCDF-Java library's DiskCache2 class.
The DiskCache2 bug is critical, and due to this, anyone using ucar.nc2.util.DiskCache2
from the netCDF-java library should update immediately. THIS BUG MAY LEAD TO DATA CORRUPTION OR FILES WITH INCORRECT DATA AND/OR METADATA. For more information, please see DiskCache2 Issue in netCDF-Java Library.
Special notes about netCDF-Java
As you migrate to this and future 5.x
releases, you will encounter several deprecation warnings. We are in the process of solidifying the public API, and as such some of these warnings will come without a clear alternative. Over the next week, we will be documenting the current status of the future public API on the netCDF-Java Wiki, and are currently seeking actively developed projects that use the NetCDF-Java library who are interested in providing feedback. For more information, please visit the Developers@Unidata blog post NetCDF-Java - Looking Ahead.
The v5.3.3
release is the current stable version of netCDF-Java. The minimum version required to use netCDF-Java is Java 8. We build and test against both OracleJDK and OpenJDK 8. Initial testing using our artifacts running against OpenJDK 11 are promising, and so far we have not had any reports of issues. We are working towards building with OpenJDK 11 (targeting v5.5), although we will continue to limit netCDF-Java to Java 8 features until netCDF-Java version 6 (which will move to Java 11 features).
Downloads
netCDF-Java artifacts may be obtained from our Nexus artifacts server using these instructions.
ToolsUI and netCDFAll may be found at https://www.unidata.ucar.edu/downloads/netcdf-java/
Documentation
Changes
Please visit https://docs.unidata.ucar.edu/netcdf-java/5.3/userguide/upgrade_to_50.html.
For a full list of changes and bug fixes between netCDF-Java v5.3.2 and v5.3.3, please visit v5.3.2...v5.3.3
Real-world use by the user community is integral to the process of creating and refining these libraries. Please direct all potential security issues directly to Unidata using the address security@unidata.ucar.edu. Please send all other potential issues to the development team via the the user community mailing lists (netcdf-java@unidata.ucar.edu), through the Unidata support system (support-netcdf-java@unidata.ucar.edu), or on the netCDF-Java GitHub issue tracker.
v5.3.2
netCDF-Java
Version 5.3.2
The NetCDF-Java/Common Data Model (CDM) library version 5.3.2 release was announced on April 29th, 2020. Version 5.3.2 adds the capability for netCDF-Java to read CDM datasets stored in any AWS S3 API compatible object store using HTTP Byte-Range requests, which removes the need to download an entire object blob before reading (GRIB support will be part of the next release). For information on how to reference objects for consumption by the netCDF-Java API, please see https://docs.unidata.ucar.edu/netcdf-java/5.3/userguide/dataset_urls.html#object-stores. Note that you will need to include the cdm-s3
artifact in your build, and utilize the new NetcdfFiles.open* or NetcdfDatasets.open* or NetcdfDatasets.acquire* methods. Due to the potential increase in size, ucar.edu:cdm-s3
is not part of netCDFAll.jar
at this time.
Notices
Special notes about netCDF-Java
As you migrate to this and future 5.x
releases, you will encounter several deprecation warnings. We are in the process of solidifying the public API, and as such some of these warnings will come without a clear alternative. Over the next week, we will be documenting the current status of the future public API on the netCDF-Java Wiki, and are currently seeking actively developed projects that use the NetCDF-Java library who are interested in providing feedback. For more information, please visit the Developers@Unidata blog post NetCDF-Java - Looking Ahead.
The v5.3.2
release is the current stable version of netCDF-Java. The minimum version required to use netCDF-Java is Java 8. We build and test against both OracleJDK and OpenJDK 8. Initial testing using our artifacts running against OpenJDK 11 are promising, and so far we have not had any reports of issues. We are working towards building with OpenJDK 11 (targeting v5.5), although we will continue to limit netCDF-Java to Java 8 features until netCDF-Java version 6 (which will move to Java 11 features).
Downloads
How to use netCDF-Java Maven Artifacts
Standalone Jars | Description |
---|---|
netCDFAll.jar | The netCDF library implements the full CDM model, including all other jar dependencies except for a logging implementation and cdm-s3 . [md5] [sha1] |
toolsUI.jar | The toolsUI.jar contains everything to run the ToolsUI application. [md5] [sha1] |
Documentation
Changes
Please visit https://docs.unidata.ucar.edu/netcdf-java/5.3/userguide/upgrade_to_50.html.
For a full list of changes between netCDF-Java v5.2.0 and v5.3.2, please visit v5.2.0...v5.3.2
Real-world use by the user community is integral to the process of creating and refining these libraries. Please direct all potential security issues directly to Unidata using the address security@unidata.ucar.edu. Please send all other potential issues to the development team via the the user community mailing lists (netcdf-java@unidata.ucar.edu), through the Unidata support system (support-netcdf-java@unidata.ucar.edu), or on the netCDF-Java GitHub issue tracker.
v5.2.0
netCDF-Java
Version 5.2.0
The NetCDF-Java/Common Data Model (CDM) library version 5.2.0 release was announced on October 23rd, 2019. Of particular note with the 5.2 release is the reorganization of the gradle modules used in the project, which has resulted in a change in the published maven artifacts. For details on these changes, please visit https://docs.unidata.ucar.edu/netcdf-java/5.2/userguide/upgrade_to_50.html#netcdf-java-api-changes-52x. This move is a stepping stone towards supporting the Java Platform Module System in future releases of netCDF-Java. At the very least, this change will require updating your build infrastructure to use the new cdm-core
artifact instead of cdm
. The netCDF-java development team recommends this upgrade to anyone using the netCDF-Java or its associated artifacts. If you encounter issues while upgrading, please contact us with your report (see how below).
Notices
Special notes about netCDF-Java
The next release of netCDF-Java will be a first step towards creating a well defined public API (see here for a taste). Your feedback on the next release will be critical.
The v5.2.0
release is the current stable version of netCDF-Java. The minimum version required to use netCDF-Java is Java 8. We build and test against both OracleJDK and OpenJDK 8. Initial testing using our artifacts running against OpenJDK 11 are promising, and so far we have not had any reports of issues. We are working towards building with OpenJDK 11 (set for v5.4), although we will continue to limit netCDF-Java to Java 8 features for the time being.
Downloads
Artifact | Description |
---|---|
netCDFAll.jar | The netCDF library implements the full CDM model, including all other jar dependencies. [md5] [sha1] |
toolsUI.jar | The toolsUI.jar contains everything to run the ToolsUI application. [md5] [sha1] |
Documentation
Changes
Please visit https://docs.unidata.ucar.edu/netcdf-java/5.2/userguide/upgrade_to_50.html.
For a full list of changes between netCDF-Java v5.1.0 and v5.2.0, please visit v5.1.0...v5.2.0
Real-world use by the user community is integral to the process of creating and refining these libraries. Please direct all potential security issues directly to Unidata using the address security@unidata.ucar.edu. Please send all other potential issues to the development team via the the user community mailing lists (netcdf-java@unidata.ucar.edu), through the Unidata support system (support-netcdf-java@unidata.ucar.edu), or on the netCDF-Java GitHub issue tracker.
v5.1.0
netCDF-Java
Version 5.1.0
The NetCDF-Java/Common Data Model (CDM) library version 5.1.0 release was announced on September 18th, 2019. 5.0.0 was a major release and included many bug fixes, enhancements, and a variety of updates to 3rd party libraries which include security updates. v5.1.0 contains many under the hood changes, but only a few potential API breaking changes when upgrading from v5.0.0. For details on these changes, please visit https://docs.unidata.ucar.edu/netcdf-java/5.1/userguide/upgrade_to_50.html#netcdf-java-api-changes-51x. The netCDF-java development team recommends this upgrade to anyone using the netCDF-Java or its associated artifacts. If you encounter issues while upgrading, please contact us with your report (see how below).
Notices
Special note about netCDF-Java
The v5.1.0
release is the current stable version of netCDF-Java. The minimum version required to use netCDF-Java is Java 8. We build and test against both OracleJDK and OpenJDK 8. Initial testing using our artifacts running against OpenJDK 11 are promising, and so far we have not had any reports of issues. We are working towards building with OpenJDK 11 (set for v5.2), although we will continue to limit netCDF-Java to Java 8 features for the time being.
Downloads
Artifact | Description |
---|---|
netCDFAll.jar | The netCDF library implements the full CDM model, including all other jar dependencies. [md5] [sha1] |
toolsUI.jar | The toolsUI.jar contains everything to run the ToolsUI application. [md5] [sha1] |
Documentation
Changes
Please visit https://docs.unidata.ucar.edu/netcdf-java/5.1/userguide/upgrade_to_50.html.
For a full list of changes between netCDF-Java 5.0.0 and v5.1.0, please visit v5.0.0...v5.1.0
Real-world use by the user community is integral to the process of creating and refining these libraries. Please direct all potential security issues directly to Unidata using the address security@unidata.ucar.edu. Please send all other potential issues to the development team via the the user community mailing lists (netcdf-java@unidata.ucar.edu), through the Unidata support system (support-netcdf-java@unidata.ucar.edu), or on the netCDF-Java GitHub issue tracker.