DRAFT!
ECMWF is updating the default versions of its software packages and libraries used across all user platforms at the centre as part of the regular update cycle.
When?
The changes will take place on Wednesday 5 May 2021 09:00 UTC
What platforms are affected?
All user platforms at the centre will see their default additional software stack updated:
- All clusters in our High Performance Computing Facility, mainly CCA and CCB
- ECGATE
- Linux Clusters
- Linux Desktops
- TEMS
Do I need to do anything?
We strongly recommend you test that your programs, scripts and suites work with the new versions of any software or library affected before the change happens.
Table of contents
Highlights
Software stack ready for next operational IFS cycle
With the upcoming Implementation of IFS Cycle 47r2, this set of defaults is ready to handle the data produced, including all the new parameters introduced in this cycle and the update to Tropical Cyclone tracks.
Python 3.8 becomes default
For our Python users, we offer now a more recent version of Python 3.8 with the usual extra modules found on the previous default 3.6 which would be out of official maintenance at the end of the year.
For those still using Python 2, note that this major version of Python reached its end of life on 1st January 2020, If you haven't done moved to Python 3.6 yet, please see Migration to Python 3 for some guidance on where to start. We are providing a latest Python 2.7 for compatibility purposes only.
ecCodes improvements
ecCodes, the heart of GRIB and BUFR handling, brings performance improvements, latest WMO GRIB/BUFR tables, contributions from users and several smaller features/bug fixes.
Magics Improvements
Magics, ECMWF's plotting library, brings more improvements:
- New palettes have been imported from matplotlib and Colorbrewer (https://colorbrewer2.org/) The full list can be found at Predefined palettes in Magics.
- Improvements have been done on the tilted perspective (tpers) projection allowing now to create nice animations.
- Memory leaks have been found and fixed.
Metview improvements
Metview, ECMWF's interactive and batch software for manipulation and plotting of data, brings a number of fixes for performance and stability, including:
- fixed issue where the Hovmoeller module's 'expand' option did not work
- fixed issue that caused a crash when plotting a tephigram using the Stations module for location input
- performance optimisation in the lookup function - see Fieldset Functions
- added two new Gallery examples that answer commonly asked questions about setting up curve plotting
- built with the latest ecCodes and Magics, Metview will of course inherit their improvements, and the new Magics palettes will be available to browse in the Contouring icon's editor
- more - see the release notes!
Metview's Python interface version 1.6.0 brings new features, including:
- added png driver keyword arguments to setoutput('jupyter') to control output size in notebooks
- added write(filename) method for classes Fieldset, Geopoints, GeopointSet, Bufr and NetCDF
- added ability to construct a Fieldset from a list of Fieldsets, e.g. Fieldset([f1, f2, f3])
A lot of other bugfixes and improvements
All the new versions, both ECMWF and 3rd Party, come with a number of bug fixes and improvements. You may see the Change logs for any individual package or library in the list below if you want to have all the details.
How to use the new versions for testing BEFORE the update
Users are strongly encouraged to test their software applications and data processing chain with the new versions of the various software packages before the date of the change to the default versions.
The new versions of the software packages can be selected by using the may21 tag in modules. For example:
|
How to revert to the old versions in case of problems AFTER the update
Users that experience problems with the new default software packages after the update will be able to revert to the old default versions. These can be selected with the commands:
|
Please let ECMWF know if you need to revert to the old version of any of the packages after the update of the defaults has taken place.
Change list
ECMWF Software
This table summarises the changes in the version of the different packages:
Package | Default version | Release notes | Download page | |
---|---|---|---|---|
Before | After | |||
CodesUI | 1.4.1 | 1.5.0 | CodesUI - Change History | CodesUI - Releases |
ecCodes | 2.19.1 | 2.21.0 | ecCodes Releases | |
ecFlow | 4.17.2 | 4.17.2 no change | ecFlow Releases | |
ecFlow/5 | 5.5.3 | 5.6.0 | ecFlow Releases | |
Magics | 4.5.2 | 4.6.0 | Latest News | Magics Releases |
Metview | 5.7.5 | 5.11.0 | Metview Releases Metview Bundle | |
ODC | 1.1.1 | 1.3.0 | - | - |
ODB API | 0.19.5 | 0.19.5 no change | Change history | ODB API Release |
ecCodes is now the official ECMWF encoder and decoder for GRIB and BUFR formats. It supersedes GRIB-API, for the GRIB format, and EMOSLIB, for the BUFR. If you still use any of those, we encourage you to migrate to ecCodes.
Please see the Release notes for full details of the changes implemented in each package.
Third-party software
Some of the versions in this list may already be the default for a specific package on a certain platform, so no changes will be made in those cases. After the update, all platforms will have the same defaults for all these packages.