Downloadable from our Releases page.

Please note:

  • The following C API functions are deprecated and will be removed in a future release:

    codes_string_list* codes_grib_util_get_param_id(const char* mars_param);
    codes_string_list* codes_grib_util_get_mars_param(const char* param_id);

  • The CMake option ENABLE_TIMER is deprecated and will be removed in the next release
  • bufr_dump will fail if an unknown descriptor is encountered. See ECC-2030.

Please note: There is a new webpage for the Migration to GRIB2: Migration to GRIB2
This webpage also includes a section where changes in the parameter encodings for the coming ecCodes versions are documented: Changes in the parameter encodings

New Features/Improvements

  • [ECC-2013] - GRIB2: Enforce scale factor and scaled value to be missing for the fixed surfaces
  • [ECC-2042] - GRIB2: add new origin ecmf_l5 for the Global Fire Information System (class=gw)
  • [ECC-2053] - GRIB: Allow setting class=ci on CARRA/CERRA data
  • [ECC-2033] - GRIB: Detect if bitmap info is inconsistent
  • [ECC-2031] - GRIB2: Migrate to WMO recommended table entry for geometric height parameters
  • [ECC-2036] - GRIB2: Add parameter Reciprocal Obukhov length
  • [ECC-2038] - GRIB: Update 'param_limits.def' to include new paramIds
  • [ECC-2040] - GRIB2: correction of unit for accumulated parameters 435002,436002,437002
  • [ECC-2043] - GRIB2: Correct generic height of isotherm to +3degC isotherm for On-Demand ExtremesDT
  • [ECC-2047] - GRIB2: WMO encodings for SPP parameters
  • [ECC-2048] - GRIB2: tropospheric and stratospheric mass density
  • [ECC-2057] - GRIB2: FT2025-1 chem and health parameters
  • [ECC-2058] - GRIB2: FT2025-1 wave and ocean parameters
  • [ECC-2059] - GRIB2: FT2025-1 new radar related paramIds
  • [ECC-2062] - GRIB2: FT2025-1 new ocean parameters
  • [ECC-2063] - GRIB2: FT2025-1 new radiation parameters
  • [ECC-2064] - GRIB2: time-mean hydrological parameters
  • [ECC-2065] - GRIB2: FT2025-1 new hazard indices parameters
  • [ECC-2034] - GRIB encoding: Data quality checks via the API
  • [ECC-2035] - Revamped directory structure and introduction of CamelCase in accessors

Bug Fixes

  • [ECC-2030] - BUFR: bufr_dump should fail if unknown descriptor
  • [ECC-2024] - BUFR: Repeated subset extraction segfaults
  • [ECC-2055] - BUFR: splitting subsets with bufr_filter produces incorrect header values
  • [ECC-2037] - BUFR: Computed key typicalDate doesn't update properly in BUFR4
  • [ECC-2044] - BUFR: codes_is_defined() segfaults if key is an empty string
  • [ECC-2028] - GRIB2: Key isGridded is wrong for several grid types
  • [ECC-2029] - GRIB: IFS sample grib1_mlgrib2_ccsds/gg_sfc_grib2.tmpl has incorrect scaledValue/scaleFactor keys
  • [ECC-2032] - GRIB: Remove the 'model' keyword from the MARS namespace for class 'ml'
  • [ECC-2039] - GRIB2: Cannot set modelName after setLocalDefinition=1 and class='ai'
  • [ECC-2045] - GRIB: cannot clone repeatedly with headers only
  • [ECC-2049] - GRIB: Problems with clone headers_only after edition conversion
  • [ECC-2050] - GRIB: Modifying section 2 unexpectedly alters section 4 PDT
  • [ECC-2052] - GRIB2: setting stream to enda changes the PDTN
  • [ECC-2066] - MARS namespace for wave data on gaussian grid - domain=unknown