netcdf-java icon indicating copy to clipboard operation
netcdf-java copied to clipboard

[Hacktoberfest 2021] Contribute filters to the netCDF-Java Zarr project

Open haileyajohnson opened this issue 4 years ago • 4 comments
trafficstars

About

NetCDF-Java recently completed work on beta read support for Zarr data formats. Part of the Zarr project is the implementation of compressors and filters (codecs). Currently, netCDF-Java includes implementation of Shuffle, Deflate/Zlib, 32-bit Checksums, and FixedScaleOffset, but we're still missing some!

If you have developed or are interested in developing filters in Java, we would love to have you contribute!

Contributing to this issue

The list of Zarr compatible codecs is provided by NumCodecs.

If you're interested in implementing a filter for netCDF-Java, follow these instructions:

  • Checkout the maint-5.x branch (Zarr is currenly only support in 5.x)
  • Create a new class in the ucar.nc2.filter package that extends the Filter.java class
  • Implement two methods: encode(byte[] dataIn) and decode(byte[] dataIn)
  • Add a FilterProvider that returns the name of your filter
  • Create a pull requests against the maint-5.x branch

Helpful links

Thank you for considering contributing!

haileyajohnson avatar Oct 13 '21 20:10 haileyajohnson

@haileyajohnson Can I take care of this ?

sumitsawant avatar Oct 13 '21 20:10 sumitsawant

@sumitsawant we'd appreciate any contributions on this!

haileyajohnson avatar Oct 13 '21 20:10 haileyajohnson

@haileyajohnson Can you please assign this to me ? I'll get started .

sumitsawant avatar Oct 13 '21 20:10 sumitsawant

@sumitsawant thank you for the enthusiasm, but I'm reluctant to assign this to one person; there could be a number of pull requests contributing to this issue, implementing different filters. But you will get Hacktoberfest credit if you submit a PR that's accepted!

haileyajohnson avatar Oct 13 '21 20:10 haileyajohnson