Downloadable from our Releases page.

Please note:

  • The CMake option ENABLE_AEC is now ON by default.
    AEC (Adaptive Entropy Coding) provides the WMO GRIB CCSDS compression and decompression of data.
    To force the build without it, use -DENABLE_AEC=OFF

Changes for Version 2.25.0:

New Features/Improvements

  • [ECC-1348] - CMake: Option Adaptive Entropy Coding (AEC) should be turned on by default

  • [ECC-1342] - GRIB2: Finalise the development of Ocean modelling
    The GRIB2 encodings of some parameters have changed. Please check the issue details.

  • [ECC-1318] - GRIB: Change units of parameter 260125
  • [ECC-1321] - GRIB2: replace is_s2s key with a generic S2S pseudo-centre
  • [ECC-1324] - GRIB2: replace is_tigge key with a generic TIGGE pseudo-centre
  • [ECC-1334] - GRIB2: add missing typeOfLevel from levtype mapping
  • [ECC-1344] - Always call fflush() and fsync() before fclose() of a written file
  • [ECC-1345] - GRIB: ECCODES_GRIB_IEEE_PACKING environment variable value should be checked
  • [ECC-1354] - GRIB2: Refactor and generalise the postProcessing concept
  • [ECC-1356] - OpenSuse Leap distribution fails to detect libaec even if installed, if sz2 is not installed too
  • [ECC-1357] - GRIB2: Add key 'aerosolTypeName' for aerosol templates
  • [ECC-1298] - GRIB2: Open Data parameters
  • [ECC-1335] - C API: Deprecate functions codes_box_new and codes_box_get_points
  • [ECC-1346] - GRIB: Fix the capitalisation in several parameter names
  • [ECC-1349] - GRIB2: Add the newly proposed heat index parameters
  • [ECC-1352] - GRIB CCSDS packing: Add extra tests
  • [ECC-1358] - GRIB2 UERRA: Add scaledValue/scaleFactor keys for param 174098
  • [ECC-1325] - Examples: Extend 'bufr_keys_iterator' example to determine the subset number
  • [ECC-1326] - grib_to_netcdf: Improve usage message
  • [ECC-1336] - CMake: Introduce ECCODES_ON_LINUX_32BIT variable for testing
  • [ECC-1327] - Examples: Provide the C version of bufr_read_tempf
  • [ECC-1351] - Python3 bindings: Support numpy.int64 as input to codes_set and codes_set_long

Bug Fixes

  • [ECC-670] - PowerPC: Some tests fail on ppc platform
  • [ECC-1315] - Keys like parameterName and nameOfFirstFixedSurface have a trailing space
  • [ECC-1316] - GRIB: Fortran API: codes_index_select doesn't work with 'parameterName' as key
  • [ECC-1319] - GRIB2: Add missing snow layer definition in marsLevtype concept
  • [ECC-1322] - grib_compare: Option '-e' generates dubious error message
  • [ECC-1323] - GRIB: Cannot convert gridType=space_view to edition 2
  • [ECC-1328] - GRIB2: Add missing marsLevtype concept: Lake or river bottom
  • [ECC-1329] - GRIB: Cannot convert Runoff (paramId=205) to edition 2
  • [ECC-1330] - BUFR: bufrTemplate='unknown' but should be 'aircraftReportWithSecondsAndPressure'
  • [ECC-1331] - GRIB: Polar stereographic projection with alternativeRowScanning is incorrect
  • [ECC-1332] - GRIB2: conditional levtype mapping for lake (sfc) vs ocean (o2d) for ice over water parameters
  • [ECC-1338] - Fortran: call to fclose() should check the return value
  • [ECC-1339] - GRIB2: ECCODES_GRIB_IEEE_PACKING environment variable does not work for edition 2
  • [ECC-1340] - GRIB1: setting packingType=grid_ieee does not work if there is a bitmap
  • [ECC-1347] - BUFR crash: malloc failure during encoding
  • [ECC-1350] - grib_compare: Incorrect behaviour when first file argument is a directory

  • [ECC-1254] - python-eccodes on conda uses the synchronised release tag for its version
  • [ECC-1317] - Python3 bindings: Data file tiggelam_cnmc_sfc.grib2 not included in released tar file