Skip to end of metadata
Go to start of metadata

Version 2.4.1 (August 2017)

  • [ECC-511] - Invalid data read from FRET grib2 files with grid_complex_spatial_differencing packing
  • [ECC-478] - Scaling values using grib_set ignores values=9999. when bitmapPresent=0
  • [ECC-514] - CMath library is added as a source file
  • [ECC-509] - Add option to skip install of fortran modules
  • [ECC-345] - "make install" should allow not to install definitions files and samples when MEMFS is on
  • [ECC-508] - Add option to not install grib definitions and samples
  • [ECC-510] - Add new MARS class for ERA5 land surface parameters

Version 2.4.0 (July 2017)

New Features/Improvements

  • [ECC-287] - Support for GRIB3 (experimental)

    This is an initial prototype GRIB edition 3 decoder/encoder to accelerate development of the standard to be proposed to WMO.
    At this point this implementation is entirely experimental and can change in future releases.
    It is provided here to solicit feedback.

  • [ECC-470] - BUFR: iasi encoding performance
  • [ECC-482] - datetime comparison in bufr_filter
  • [ECC-484] - Implement logical AND specialised expression
  • [ECC-486] - Implement logical OR specialised expression
  • [ECC-487] - Add parameter for '2 metre relative humidity with respect to water'
  • [ECC-488] - Add GRIB1 representation for parameter 260048 (total precipitation rate)
  • [ECC-496] - Request for a modification of the naming of the new lightning GRIB fields
  • [ECC-497] - New GRIB parameters needed for system 5 seasonal forecast
  • [ECC-420] - CPU time of BUFR unpacking increased significantly in 2.1.0
  • [ECC-483] - Add mars key 'system' for class 'c3'
  • [ECC-481] - extended BUFR rdbSubtype
  • [ECC-493] - Saral altika data using a wrong masterTablesVersionNumber
  • [ECC-489] - Remove unused 'name' data member from struct 'bufr_descriptor'
  • [ECC-411] - Add an environment variable so that GRIB_MAX_OPEN_FILES can be user configurable

Bug Fixes

  • [ECC-313] - Add support for BUFR operator 203YYY
  • [ECC-433] - BUFR operator 206YYY not working
  • [ECC-494] - DESTDIR ignored for Python bindings

Version 2.3.0 (May 2017)

Contributions

  • [ECC-441] - MeteoFrance contribution: GRIB second order packing
  • [ECC-458] - MeteoFrance contribution: GRIB spectral complex packing
  • [ECC-461] - Python: GribMessage class to allow multiple keys to be set

New Features/Improvements

  • [ECC-475] - BUFR WMO version 28 and local tables to be added to ecCodes
  • [ECC-472] - Update GRIB2 definitions with the latest WMO V19.0.0 code tables/templates
  • [ECC-452] - codes_bufr_copy_data missing in Pythonic interface
  • [ECC-460] - Add centre codes for New Delhi (dems/vabb)
  • [ECC-454] - Add new parameters for land reanalysis (ERA5-Land)
  • [ECC-466] - Add two parameters for evaporation in the last 6 and 24 hrs
  • [ECC-437] - tigge_check: bitmap fields with only undefined values
  • [ECC-449] - Remove unused "unpack" data member from grib_context
  • [ECC-456] - type=oi for UERRA class
  • [ECC-457] - GRIB1 to GRIB2 conversion: total precipitation
  • [ECC-459] - GRIB1 to GRIB2 conversion: Local Definition 5 (Forecast probability data)
  • [ECC-465] - Key 'deleteLocalDefinition' works for GRIB edition 1 only

Bug Fixes

  • [ECC-438] - stepUnits throws errors when processing GRIBs with stepUnit != 1 (hour)
  • [ECC-444] - eccodes fails to build when both fmemopen and funopen are available
  • [ECC-447] - ecCodes Python packages not added to the installation manifest
  • [ECC-448] - codes_new_from_message does not set product_kind on handle
  • [ECC-451] - new pythonic interface segv
  • [ECC-453] - grib_set fails randomly: Unable to set stepRange: end must be equal to start when timeRangeIndicator=10
  • [ECC-467] - JRA55: map indicatorOfTypeOfLevel=101 to mars.levtype='sfc'

Version 2.2.0 (March 2017)

New Features/Improvements

  • [ECC-442] - Implement codes_get_double_element for BUFR array keys (compressed data)
  • [ECC-415] - Performance of eccodes used in BUFR2ODB not good for operations
  • [ECC-418] - Fortran and Python codes_bufr_keys_iterator
  • [ECC-424] - codes_bufr_keys_iterator_delete should free memory allocated for name
  • [ECC-432] - GRIB2 local coding for SPP random field parameters
  • [ECC-436] - Add parameters: maximum CAPE in the last 6 hours and maximum CAPES (CAPE/Shear) in the last 6 hours
  • [ECC-106] - CMake: overriding default install directories

Bug Fixes

  • [ECC-89] - bufrHeaderCentre cannot be printed as string for edition 3 messages
  • [ECC-406] - Cannot convert grid_simple to grid_second_order for some files
  • [ECC-417] - MEMFS option does not work with Python3
  • [ECC-425] - grib_to_netcdf crash when running out of memory
  • [ECC-426] - Use common code tables C-1 and C-11 for GRIB/BUFR
  • [ECC-429] - BUFR: The "count" key works differently from GRIB

Version 2.1.0 (January 2017)

Contributions

  • [ECC-157] - Add high-level Pythonic interface (experimental)
  • [ECC-369] - Differentiate exception types in Python interface
    Thanks to Daniel Lee (DWD)
    The high-level interface is currently experimental and may change in a future release. It is provided here to solicit feedback.

  • [ECC-261] - Reduce packing error by optimizing scaling factor
    Thanks to Philippe Marguinaud (MeteoFrance)

  • [ECC-409] - GNU Hurd support
    Thanks to Alastair McKinstry

New Features/Improvements

  • [ECC-414] - Create a sample BUFR file with the new Sentinel 1 descriptors

    We have included a sample BUFR file with the new Sentinel 1 descriptors approved in WMO tables 27 (released Nov 2016)
    You can find this file in the data tarball. It is also downloaded when running the tests (data/bufr/sentinel1.bufr)

  • [ECC-383] - Implement GRIB lat/lon iterator for 'space view'
  • [ECC-358] - Update GRIB2 definitions with the latest WMO V18.0.0 code tables/templates
  • [ECC-372] - Performance improvement of search by rank
  • [ECC-222] - Decode BUFR data section providing only values array
  • [ECC-363] - Update unbalanced component parameters with WMO GRIB2 codes
  • [ECC-370] - Python: setting keys should handle both scalars and arrays
  • [ECC-395] - Add a new MARS class for YOPP
  • [ECC-396] - Support for Jasper 2.0
  • [ECC-410] - Add GRIB2 Product Definition Template 4.58
  • [ECC-412] - Support for CAMS and CERA-SAT: streams mnth/edmm/wamo/ewmm
  • [ECC-357] - Implement codes_bufr_copy_data in C, Fortran and Python
  • [ECC-365] - add placeholder facility in the output filename of grib_filter (like it is done in grib_set/grib_copy)
  • [ECC-379] - BUFR encoding failing when value out of range
  • [ECC-382] - Provide API function to access the name of the package
  • [ECC-391] - Text fix for grib_index.c
  • [ECC-392] - bufr_compare: should print double value as MISSING rather than -1e+100
  • [ECC-397] - Rename parameter 260242 to '2 metre relative humidity'
  • [ECC-399] - Detecting NaN values when encoding grib
  • [ECC-413] - DWD local definitions: Remove superfluous tables

Bug Fixes

  • [ECC-325] - Memory leaks during BUFR unpack
  • [ECC-339] - Improve keys iterator for BUFR
  • [ECC-376] - BUFR tables version 27 to be added to ecCodes
  • [ECC-386] - GRIB: Slow-down of read routine
  • [ECC-272] - Flat JSON dump of some BUFR files doesn't contain the last element
  • [ECC-275] - errors.pl not creating ecCodes header files
  • [ECC-336] - ctest gts failures on minimac
  • [ECC-351] - grib_util_set_spec() returns a corrupted field
  • [ECC-353] - grib_util_spec() does not always generate jpeg
  • [ECC-355] - grib_compare: using relative comparison (-R) with "all" does not work
  • [ECC-361] - Test failure: bufr_copy_data F90 example with PGI compiler
  • [ECC-364] - BUFR extractSubsets wrong result when key is constant in the extracted range
  • [ECC-367] - BUFR extractSubsets for stationOrSiteName key
  • [ECC-368] - Last element of a BUFR message not found when using search expression
  • [ECC-373] - grib_api.h incorrectly wraps system headers in extern "C"
  • [ECC-378] - Reading a file of 0 bytes does not generate any error and eventually crashes
  • [ECC-380] - ecCodes attempts to link to openjpeg 1.X library if found
  • [ECC-387] - Thread safety for BUFR decoding
  • [ECC-388] - Missing bounds check in grib_trie.c leads to segfault
  • [ECC-389] - BUFR encoding 2 values as different should be one value
  • [ECC-393] - bufr_compare: cannot blacklist a key with given rank
  • [ECC-398] - untrapped error : No descriptors in section 3. Malformed message
  • [ECC-402] - codes_set does not set localLongitude in BUFR to correct values
  • [ECC-404] - JPEG-specific tests run and fail when ENABLE_JPG is off / JPEG headers are not available
  • [ECC-405] - Corrupt BUFR file: bufr_new_from_file crash
  • [ECC-408] - grib_handle_new_from_partial_message should take const data pointer

Version 2.0.2 (November 2016)

  • [ECC-364] - BUFR extractSubsets wrong result when key is constant in the extracted range
  • [ECC-367] - BUFR extractSubsets for stationOrSiteName key
  • [ECC-368] - Last element of a BUFR message not found when using search expression
  • [ECC-358] - Update GRIB2 definitions with the latest WMO V18.0.0 code tables/templates
  • [ECC-385] - UERRA: Type of first fixed surface 118 should be mapped to the levtype=ml

Version 2.0.0 (October 2016)

This is the first full (Production-ready) release of ecCodes.
This means that the application has gone through a thorough internal testing process and that all known technical issues have been resolved.  It is now fully functional and ready to be released for general use.

GRIB encoding and decoding has been particularly well tested within the IFS and ecCodes replaces GRIB-API in the next operational cycle update.
BUFR encoding and decoding has been tested and work has started to replace BUFRDC with ecCodes in ECMWF operational software.

Contributions

  • [ECC-260] - Add support for template 5.42 (CCSDS)
    Thanks to Daniel Lee (DWD) and Mathis Rosenhauer (DKRZ)

  • [ECC-303] - Cannot build with OpenJPEG version 2
    Thanks to Alastair McKinstry

New Features/Improvements

  • [ECC-284] - Dump instructions to create the input BUFR message
  • [ECC-320] - Dump instructions to decode a BUFR message
  • [ECC-151] - Implement change of compression method in BUFR
  • [ECC-178] - Implement codes_set for delayedReplication in BUFR
  • [ECC-307] - implement area extraction in bufr_filter for compressed data
  • [ECC-314] - implement extraction of a time interval in BUFR for compressed data
  • [ECC-354] - simple thinning of BUFR data
  • [ECC-312] - Interface change: Remove functions codes_new_from_samples and codes_handle_new_from_samples
  • [ECC-297] - Add support for Data representation template 5.42 - Grid point and spectral data - CCSDS
  • [ECC-285] - bufr_dump -Efilter
  • [ECC-292] - bufr_dump -Efortran
  • [ECC-293] - bufr_dump -Epython
  • [ECC-327] - bufr_dump -EC
  • [ECC-295] - codes_set_string_array Fortran
  • [ECC-304] - New wave parameters as requested by member state users
  • [ECC-310] - Python codes_set_array with strings
  • [ECC-348] - BUFR decoding not to fail when wrong data section length
  • [ECC-283] - F90/Python: Add functions for setting definitions and samples paths
  • [ECC-294] - C function grib_get_data has unused argument 'size'
  • [ECC-296] - Use Python distutils to install Python modules
  • [ECC-300] - add some BUFR header keys to dump
  • [ECC-301] - Add tests for bufr_dump -Efortran feature
  • [ECC-323] - bufr_dump should fail if decoding fails
  • [ECC-330] - Array size control in grib_fortran.c
  • [ECC-334] - BUFR edition 3: bufr_dump does not show the key 'edition'
  • [ECC-224] - Make Python and Fortran test for set by rank
  • [ECC-251] - typicalDate should be localDate and read only
  • [ECC-332] - GRIB-netCDF parameter mappings updates


Bug Fixes

  • [ECC-200] - doxygen not working and documentation missing
  • [ECC-236] - bufr_ls does not print the right value for unpacked data
  • [ECC-286] - bufr_filter not able to set keys names starting with a number
  • [ECC-288] - bufr_compare -R key=tolerance does not work
  • [ECC-289] - problem encoding string in BUFR non compressed
  • [ECC-290] - not possible to set value for operator 205YYY in BUFR
  • [ECC-291] - numberOfObservations key in BUFR header conflict with element key name
  • [ECC-298] - fortran codes_new_from_samples does not work for BUFR
  • [ECC-299] - Fortran error messages in codes_ functions print message with grib_
  • [ECC-302] - bufr_compare does not compare attributes
  • [ECC-324] - bufr_dump: Segmentation fault
  • [ECC-328] - Compiler warning: passing incompatible pointer types on macosx
  • [ECC-333] - bufr_compare -H aborting
  • [ECC-335] - grib_util_set_spec: Setting edition=2 and deleteLocalDefinition=1 on GRIB1 does not delete the local definition in target GRIB2
  • [ECC-338] - Many transient keys are shown in the dump and keys_iterator
  • [ECC-317] - Number of values not set correct in JPEG encoded constant field.
  • [ECC-319] - GRIBEditionNumber returns "?" if queried as a string
  • [ECC-316] - GRIB1: Representation of 'seconds' unit (15) disagrees with WMO table 4 (254)
  • [ECC-308] - grib_to_netcdf duplicate grib message error output
  • [ECC-331] - grib_get_size returns incorrect size for GRIB 1 'reservedNeedNotBePresent' key

Version 0.16.0 Beta (June 2016)

New Features/Improvements

  • [ECC-280] - Provide feature to build the definition files and samples into the library
    For further details see Memory based access to definition/sample files
  • [ECC-274] - BUFR tables version 26 to be added to ecCodes
  • [ECC-276] - Change BUFR shortNames to avoid clashes in different classes
  • [ECC-267] - rename BufrTemplate to bufrTemplate
  • [ECC-269] - Provide equivalent of the C function codes_get_string_array in Fortran interface
  • [ECC-257] - Debugging: print filename and line number of triggered IF statement
  • [ECC-258] - Add support for Météo-France field name translation
  • [ECC-250] - bufr header documentation incorrect
  • [ECC-253] - Add tests for converting GRIB packingType to PNG
  • [ECC-277] - F90 Examples: replace 'double precision' with 'real(8)'
  • [ECC-263] - Add functions for setting definitions and samples paths

Bug Fixes

  • [ECC-143] - Error in BUFRDC & eccodes BUFR Table D Version 16
  • [ECC-210] - ecCodes Segmentation fault with DWD BUFR-encoded synop data
  • [ECC-233] - Stray comma character in BUFR json dump
  • [ECC-252] - grib_count_in_file() function does not support multi-field GRIB messages
  • [ECC-254] - grib_handle_new_from_message should take const data pointer
  • [ECC-255] - Parameters 186/187 (Low/Medium cloud cover) have incorrect WMO GRIB1 codings
  • [ECC-256] - Wrong decoding of nested delayed replication
  • [ECC-259] - numberOfValues not correctly set when using second order packing with missing values
  • [ECC-265] - totalLength of edition 3 BUFR not changed on reshape
  • [ECC-270] - Wrongly decoded associated field in TAMDAR data
  • [ECC-271] - National and WMO station number elements in BUFR SYNOP data use the same key

Version 0.13.0 Beta (February 2016)

New Features/Improvements

  • [ECC-218] - Implement BUFR edition change 3 to 4
  • [ECC-181] - Implement set of key with search by rank
  • [ECC-196] - Update the bufr_read_temp example
  • [ECC-183] - Implement key BufrTemplate
  • [ECC-203] - Remove the function grib_context_new
  • [ECC-214] - BUFR tables version 25
  • [ECC-219] - BUFR extracting subsets
  • [ECC-207] - Make read only delayedDescriptorReplicationFactor and expandedDelayedDescriptorReplicationFactor
  • [ECC-208] - Create messages with more than 1 replication when setting unexpandedDescriptors
  • [ECC-194] - Change the misleading "grib1" prefix for filenames in the definitions/mars directory

Bug Fixes

  • [ECC-197] - Problem in decoding missing repetition blocks in nested repetitions
  • [ECC-225] - Key edition in BUFR and good default for internationalDataSubCategory
  • [ECC-204] - Python bindings: make numpy a requirement (drop support for python arrays)
  • [ECC-206] - Support the GRIB-API environment variable names
  • [ECC-213] - Adding section 2 in BUFR produces broken message
  • [ECC-220] - Problem decoding some BUFR bitmap elements
  • [ECC-223] - Problem decoding wind profiler associated fields

Version 0.12.0 Beta (November 2015)

New Features/Improvements

  • [ECC-128] - Implement encoding of unexpandedDescriptors
  • [ECC-133] - Decode and re-encode a BUFR message
  • [ECC-150] - Implement codes_set for elements in BUFR data section
  • [ECC-158] - Change internal representation and encoding of strings in BUFR
  • [ECC-162] - bufr_filter is printing double precision values with %g. Not enough in some cases.
  • [ECC-171] - Make users aware of the change of CODES_MISSING_LONG
  • [ECC-185] - Implement the concept for bufrTemplate
  • [ECC-186] - Put content in the BUFRTemplate.def file
  • [ECC-187] - Document bufrTemplate key on the wiki
  • [ECC-53] - Make bufr subsets accessible in the API
  • [ECC-84] - Fix spelling errors in BUFR key names
  • [ECC-141] - Return an array of strings after decoding similar to BUFRDC
  • [ECC-149] - Setting unexpandedDescriptors without changing data section
  • [ECC-109] - Example for Tropical cyclones
  • [ECC-138] - Examples for bufr_filter have disappeared
  • [ECC-148] - New test for bufr_compare
  • [ECC-169] - wiki changes for 0.12.0 release
  • [ECC-175] - Create separate confluence page for tools examples
  • [ECC-176] - Update bufr tables in confluence for 0.12.0 release
  • [ECC-184] - Create python example to read CSV and encode BUFR
  • [ECC-188] - PEP8ify Python examples

Bug Fixes

  • [ECC-126] - eccodes can't decode E-AMDAR data from GTS
  • [ECC-129] - allocating before calling codes_get in fortran does not work
  • [ECC-134] - Case-sensitivity of codetable keys
  • [ECC-135] - Test fails when floating point exceptions are enabled
  • [ECC-137] - Change syntax of keys for access by rank
  • [ECC-140] - Search by condition does not work in some situations
  • [ECC-144] - Performance: ecCodes should be as fast as grib api
  • [ECC-147] - keys_iterator does not iterate on BUFR data keys
  • [ECC-152] - Crash: Calling python codes_set_array() instead of codes_set_double_array()
  • [ECC-154] - Python module installs as "grib_api/gribapi.py" instead of "gribapi/__init__.py".
  • [ECC-155] - Crash: calling codes_dump from Fortran
  • [ECC-156] - CMake: Does not find Jasper (Ubuntu)
  • [ECC-160] - ecCodes 0.11.0 and FM35_BUFR sounding data
  • [ECC-163] - Valgrind error: running the test bufr_filter.sh
  • [ECC-167] - codes_get_X does not search by condition and rank
  • [ECC-170] - CODES_MISSING_DOUBLE and CODES_MISSING_LONG not in fortran
  • [ECC-172] - attributes not working in search by condition
  • [ECC-177] - Valgrind error in search_from_accessors_list: Invalid read
  • [ECC-180] - Test failure with cray intel compiler: bufr_subset.sh

Version 0.11.0 Beta (May 2015)

New Features/Improvements

  • [ECC-97] - Add METAR decoder and tests
  • [ECC-99] - Implement operator 208XXX and few others
  • [ECC-112] - Add test for native type changed by operator
  • [ECC-120] - Change wiki examples to comply with distribution
  • [ECC-100] - CMake: Rename GRIB_THREADS to ECCODES_THREADS
  • [ECC-101] - Skip confusing padding like GRIB or BUFR
  • [ECC-103] - bufr_dump option to dump code, scale, reference and width
  • [ECC-110] - Create a test for BUFR bad data
  • [ECC-116] - Correct BUFR element shortNames

Bug Fixes

  • [ECC-85] - Accessing keys by condition does not work in python
  • [ECC-102] - Unable to decode high resolution TEMP
  • [ECC-104] - Overflow: computing the size of the codetable
  • [ECC-107] - BUFR tables missing
  • [ECC-108] - Return error when data section is not big enough
  • [ECC-111] - Change of scale does not change element type
  • [ECC-115] - Problem with bufr operator 205YYY

Version 0.10.0 Beta release (March 2015)

 

  • No labels