<commit_before>---
title: Upgrading to netCDF-Java version 5.x
last_updated: 2021-06-02
sidebar: netcdfJavaTutorial_sidebar
toc: false
permalink: upgrade.html
---

## Requirements

* Java 8 or later is required

## Overview

A number of API enhancements have been made to take advantage of evolution in the Java language, for example _try-with-resource_ and _foreach_ constructs.
The use of these make code simpler and more reliable.

Deprecated classes and methods have been removed, and the module structure and third-party jar use has been improved.

Java WebStart has been deprecated as of [Java 9](https://www.oracle.com/technetwork/java/javase/9-deprecated-features-3745636.html#JDK-8184998){:target="_blank"}.
As such, we no longer utilize WebStart.

## Quick Navigation
* [Summary of changes for v5.5.x](#netcdf-java-api-changes-55x)
* [Summary of changes for v5.4.x](#netcdf-java-api-changes-54x)
* [Summary of changes for v5.3.x](#netcdf-java-api-changes-53x)
* [Summary of changes for v5.2.x](#netcdf-java-api-changes-52x)
* [Summary of changes for v5.1.x](#netcdf-java-api-changes-51x)
* [Summary of changes for v5.0.x](#netcdf-java-api-changes-50x)

## netCDF-Java API Changes (5.5.x)

## netCDF-Java API Changes (5.4.x)

Point release notes:
* [5.4.2](https://github.com/Unidata/netcdf-java/releases/tag/v5.4.2){:target="_blank"} (_2021-08-26_)
* [5.4.1](https://github.com/Unidata/netcdf-java/releases/tag/v5.4.1){:target="_blank"} (_2020-12-17_)
* `5.4.0` was released but not announced.
  It should not be used.

Much of the work in 5.4.x is focused on establishing a public API.
We now publish two sets of javadocs - [with](../javadoc-with-deprecations/){:target="_blank"} and [without deprecations](../javadoc/){:target="_blank"}.
For more information about these efforts and why this work is being done, please visit ([link](https://www.unidata.ucar.edu/blogs/developer/en/entry/netcdf-java-looking-ahead){:target="_blank"}).
Only those classes and methods outlined in the javadocs [without deprecations](../javadoc/) will exist in the next major release of netCDF-Java (`v6.0`).

For more information about the changes in this release, please visit the [netCDF-Java github wiki](https://github.com/Unidata/netcdf-java/wiki#public-api-details){:target="_blank"}.

## netCDF-Java API Changes (5.3.x)

Point release notes:
* [5.3.3](https://github.com/Unidata/netcdf-java/releases/tag/v5.3.3){:target="_blank"} (_2020-06-18_)
* [5.3.2](https://github.com/Unidata/netcdf-java/releases/tag/v5.3.2){:target="_blank"} (_2020-04-29_)
* `5.3.0` and `5.3.1` were released but not announced due to various issues with the release process.
  These should not be used.

### Opening remote files on Object Stores that support the AWS S3 API

Object Store support has been extended to interface with any AWS S3 API compatible system, and has been tested against Google Cloud Storage, Azure Blob Storage, ActiveScale Object Store, and Ceph.<commit_msg>prep docs for 5.5.0 release<commit_after>---
title: Upgrading to netCDF-Java version 5.x
last_updated: 2021-06-02
sidebar: netcdfJavaTutorial_sidebar
toc: false
permalink: upgrade.html
---

## Requirements

* Java 8 or later is required

## Overview

A number of API enhancements have been made to take advantage of evolution in the Java language, for example _try-with-resource_ and _foreach_ constructs.
The use of these make code simpler and more reliable.

Deprecated classes and methods have been removed, and the module structure and third-party jar use has been improved.

Java WebStart has been deprecated as of [Java 9](https://www.oracle.com/technetwork/java/javase/9-deprecated-features-3745636.html#JDK-8184998){:target="_blank"}.
As such, we no longer utilize WebStart.

## Quick Navigation
* [Summary of changes for v5.5.x](#netcdf-java-api-changes-55x)
* [Summary of changes for v5.4.x](#netcdf-java-api-changes-54x)
* [Summary of changes for v5.3.x](#netcdf-java-api-changes-53x)
* [Summary of changes for v5.2.x](#netcdf-java-api-changes-52x)
* [Summary of changes for v5.1.x](#netcdf-java-api-changes-51x)
* [Summary of changes for v5.0.x](#netcdf-java-api-changes-50x)

## netCDF-Java API Changes (5.5.x)

Point release notes:
* [5.5.0](https://github.com/Unidata/netcdf-java/releases/tag/v5.5.0){:target="_blank"} (_2021-12-20_)

5.5.x is the first release that includes read support for [Zarr](https://zarr.readthedocs.io/en/stable/index.html){:target="_blank"}. 
There is also a new package for filters, `ucar.ma2.filters`, which allows user-provided compressors and filters to be supplied through a [Service Provider Interface](https://www.baeldung.com/java-spi){:target="_blank"}.

## netCDF-Java API Changes (5.4.x)

Point release notes:
* [5.4.2](https://github.com/Unidata/netcdf-java/releases/tag/v5.4.2){:target="_blank"} (_2021-08-26_)
* [5.4.1](https://github.com/Unidata/netcdf-java/releases/tag/v5.4.1){:target="_blank"} (_2020-12-17_)
* `5.4.0` was released but not announced.
  It should not be used.

Much of the work in 5.4.x is focused on establishing a public API.
We now publish two sets of javadocs - [with](../javadoc-with-deprecations/){:target="_blank"} and [without deprecations](../javadoc/){:target="_blank"}.
For more information about these efforts and why this work is being done, please visit ([link](https://www.unidata.ucar.edu/blogs/developer/en/entry/netcdf-java-looking-ahead){:target="_blank"}).
Only those classes and methods outlined in the javadocs [without deprecations](../javadoc/) will exist in the next major release of netCDF-Java (`v6.0`).

For more information about the changes in this release, please visit the [netCDF-Java github wiki](https://github.com/Unidata/netcdf-java/wiki#public-api-details){:target="_blank"}.

## netCDF-Java API Changes (5.3.x)

Point release notes:
* [5.3.3](https://github.com/Unidata/netcdf-java/releases/tag/v5.3.3){:target="_blank"} (_2020-06-18_)
* [5.3.2](https://github.com/Unidata/netcdf-java/releases/tag/v5.3.2){:target="_blank"} (_2020-04-29_)
* `5.3.0` and `5.3.1` were released but not announced due to various issues with the release process.
  These should not be used.

### Opening remote files on Object Stores that support the AWS S3 API

Object Store support has been extended to interface with any AWS S3 API compatible system, and has been tested against Google Cloud Storage, Azure Blob Storage, ActiveScale Object Store, and Ceph.
{'fraction_non_alphanumeric': 0.1374629427367764, 'fraction_numerical': 0.04275237946637541, 'mean_word_length': 4.544982698961937, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 17, 'lorem ipsum': 0, 'www.': 5, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '920332', 'n_tokens_mistral': 2309, 'n_tokens_neox': 2114, 'n_words': 640}