Release Notes#

Please note that \(\omega radlib\) releases follow semantic versioning. API breaks will be announced via deprecation warnings. All \(\omega radlib\) releases come without any warranty. Release notes might be incomplete. See commit history for a complete record of changes.

You can install the latest \(\omega radlib\) release from PyPI via $ python -m pip install wradlib or specific version via $ pip install wradlib==x.y.z. The recommended installation process is described in Installation.

Development Version#

New features

  • ENH: add PZ-product (DWD station product) to RADOLAN reader (PR656) by {at}`kmuehlbauer

Maintenance - Code

Maintenance - CI

  • MNT: add codecov.yml to configure coverage status checks (PR647) by {at}`kmuehlbauer

  • FIX: pin sphinx-book-theme to fix rtd buildss (PR658) by {at}`kmuehlbauer

Documentation

Bugfixes

  • FIX: make pyproj import lazy in georef.polar (PR646) by @kmuehlbauer

  • FIX: enable radolan backend to work without GDAL/pyproj, by falling back to trigonometric calculations (GH648, PR649) by @kmuehlbauer

  • FIX: update util.cross_section_ppi to work with wradlib 2.0 (RadarVolume no longer available) (PR650) by @JulianGiles

  • FIX: disentangle cg/normal plotting for better maintainability and apply explicit colorbar handling for cg plotting (PR652) by @kmuehlbauer

  • FIX: properly implement bearer token authentication adn function calling convention for plot_scan_strategy with terrain=True (GH651) by @JulianGiles, (PR652) by @kmuehlbauer

  • FIX: align earth radius in plot_scan_strategy for CG plots (PR655) by @kmuehlbauer

  • FIX: new default value for crs in cross_section_ppi is “None”: crs = kwargs.get(“crs”, “None”). This fixes an issue with the altitude value of the georeferenced object. By @JulianGiles

Version 2.0.0#

For \(\omega radlib\) 2.0.0 there have been quite some deprecations and additions. Most of the changes have been announced over the latest \(\omega radlib\) 1 versions. Nevertheless, to make a clean cut it was neccessary to change and remove code and functionality which was not yet being officially deprecated.

Please follow up at wradlib 2.0 migration.

The major new feature is the smooth integration into xradar-based reading into xarray-based data structures and the convenient use of xarray-accessors. The tutorials and examples got a major overhaul to show the capabilities of \(\omega radlib\) in the light of these new developments.

This version also brings doc-folder back into wradlib repo. The wradlib-docs repo will be archived. wradlib-notebooks repo has been restructured as well, with a single point of access.

New features

Maintenance - CI

Maintenance - Code

Bugfixes

  • fix RADOLAN xarray ‘prediction_time’ for RADVOR datasets (PR639) by @Hoffmann77

Version 1.19.0#

This version is most likely the last version before wradlib 2.0. We’ve switched to use xradar for reading radar data in polar coordinates. The relevant code has been ported from wradlib to xradar and only a shallow compatibility layer is kept in wradlib.

New features

Maintenance code

Maintenance - CI

Bugfixes

Version 1.18.0#

New features

Maintenance code

Maintenance - CI

Bugfixes

Version 1.17.0#

New features

Maintenance code

Bugfixes

Version 1.16.0#

New features

Maintenance - Code

  • update docstring for classify_echo_fuzzy (PR570) by @swatelet

  • use np.expand_dims instead of np.newaxis to make functions work with xarray DataArray (PR568) by @kmuehlbauer

Maintenance - CI

Bugfixes

  • fix RADOLAN xarray coordinates (which have been off by 0.5km) (PR568) by @kmuehlbauer

Deprecations

Version 1.15.0#

New features

Version 1.14.0#

New features

  • zonalstats enhancements, new VectorSource class, geopandas connector and more (PR558) by @kmuehlbauer

Maintenance - Code

Maintenance - Build/CI

Bugfixes

Version 1.13.0#

New features

Maintenance

Bugfixes

  • use reasonable default values in io.xarray.to_odim (gain, offset, nodata, undetect, fillvalue)

  • add cf attributes when reading GAMIC files (PR523) by @kmuehlbauer

  • fix regression in legacy GAMIC reader (PR523) by @kmuehlbauer

  • catch dt.accessor TypeError (PR529) by @kmuehlbauer

  • fix thread-lock issue, if dask is not installed (PR531) by @kmuehlbauer

  • use int instead np.int in radolan header parser (PR531) by @kmuehlbauer

  • fix several tests (PR531) by @kmuehlbauer

  • other minor fixes distributed over several PR’s

Version 1.12.0#

  • withdrawn, please use 1.13.0.

Version 1.11.0#

New features

Maintenance

Bugfixes

Version 1.10.0#

New features

Maintenance

Bugfixes

Version 1.9.0#

New features

Maintenance

Bugfixes

Version 1.8.0#

New features

  • add WN product size (1200,1000) to radolan grid, add test for correct reference point (lower left) (GH448) reported by @julste (PR449) by @kmuehlbauer

  • add WN and YW products to radolan to xarray converter (PR450) by @kmuehlbauer

Maintenance

  • remove deprecated and unused code and handle upstream deprecations (PR450) by @kmuehlbauer

Bugfixes

Version 1.7.4#

Bugfixes

Version 1.7.3#

Bugfixes

Maintenance

Version 1.7.2#

Bugfixes

Maintenance

  • use pytest for testing, implement “@require_data” to be able to run tests in case of missing wradlib-data (PR434) by @kmuehlbauer

  • enhance azure ci workflow by adding flake8 linter and uploading coverage (PR436) by @kmuehlbauer

  • minor changes to README.md

Version 1.7.1#

Maintenance

  • add azure CI tests

  • code formatting according to black/isort/flake8, add setup.cfg

  • add show_versions

  • use new semver parse

  • add github templates

  • all above done in (PR432) by @kmuehlbauer

Version 1.7.0#

Highlights

  • implement generalized :py:func:util.derivate function with improved NaN-handling (PR419, PR423) by @kmuehlbauer

  • complete rework of phidp/kdp estimation code (Vulpiani) including new keyword-parameters, handling of ndimensional arrays, using scipy.integrate.cumtrapz instead of np.cumsum (PR412, PR422) by @kmuehlbauer

  • new interpolators on regular grids (PR390, PR429, PR430) by @egouden and @kmuehlbauer

New features

  • reimplement dp.linear_despeckle as :py:func:util.despeckle (PR420) by @kmuehlbauer

  • read RHI in ODIM reader (PR424) by @kmuehlbauer

  • new :py:func:.get_earth_projection and :py:func:.get_radar_projection functions (PR379) by @egouden

  • new convenience functions :py:func:.set_raster_indexing and :py:func:.set_coordinate_indexing (PR429) by @kmuehlbauer

  • implement rainrate decoder to iris reader (PR428) by @tsmsalper

Bugfixes

Version 1.6.2#

Version 1.6.1#

Version 1.6.0#

Highlights

New features

Bugfixes

Version 1.5.0#

Highlights

  • consolidation of xarray based functionality, bugfixing, feature adding

  • speedup zonal statistics by using /vsimem, by creation of spatial and attribute index files as well as by faster reading of attributes and properties

New features

  • make OdimH5 reader accept list of files and merge into one structure

  • make chunks available for transparently use dask with OdimH5 and CfRadial readers

  • make gdal3 compatible (added by @egouden)

  • use loaddata='xarray' kwargs to output data as Xarray Dataset in read_radolan_composite

  • CI: add Appveyor to run test-suite under Windows OS

Bugfixes

  • use importlib in import_optional, correct multidimensional calling in gradient_along_axis

  • several fixes for OdimH5 and Cf/Radial readers/writers

  • set destination projection to destination dataset in reproject_raster_dataset (spotted by wradlib-forum)

Version 1.4.0#

Highlights

  • read sigmet/iris ingest files, redesign of sigmet reader (suggested by @aschueth)

  • enhance/rewrite fuzzy echo classifier (implemented with @overeem11)

New features

  • parametrize xarray based OdimH5-reader (suggested by @egouden)

  • add depolarization ratio calculation (implemented by @overeem11)

  • add script for test profiling (added by @egouden)

Bugfixes

  • remove unnecessary seek in radolan-reader (suggested by @PPazderski)

  • correct handling of edge cases in dp.texture processing (spotted by @overeem11)

  • correct decoding of DB_FLIQUID2 (sigmet-reader) (implemented by @ckaradavut)

  • correct handling of non-precip in 2D hmc (spotted by and fixed with @bzohidov)

  • fix semver handling and install process (suggested by @s-m-e)

  • fix import for MutableMapping (added by @zssherman)

Version 1.3.0#

Highlights

  • wradlib is considered Python3 only working with Python >= 3.6

  • xarray-powered reader/writer for Cf/Radial 1.X and 2.0 as well as ODIM_H5

  • xarray-powered plotting using DataArray via xarray-DataArray Accessor

New features

  • creation of xarray DataArray from spherical coordinates and radar data

  • update test machinery to use pytest (mainly CI use)

  • correctly apply semver

Bugfixes

  • beamblockage calculation, precisely detect clear or blocked beam

  • catch HTTPError in test_radiosonde, graceful skip test

  • spherical_to_xyz better aligns with input dimensions

Version 1.2.0#

Highlights

  • significantly speed up functions using interpolation classes

  • add classify module including 2d membershipfunctions hydrometeor classification

  • fix conformance, correctness and consistency issues in wradlib-docs (thanks @CAM-Gerlach)

New features

  • add new header token VR and U to radolan header parser

  • add load_vector-method to zonaldata.DataSource

  • enable zonaldata.ZonaldataBase to take DataSource objects as parameters

  • add get_radiosonde to io.misc to retrieve radiosonde data from internet

  • add minalt keyword argument to vpr.make_3d_grid

Bugfixes

  • update links, fix typos, improve CI workflow

  • fix bug in all adjustment classes when checking for None

  • show angle axis curvelinear grid again

  • align docstring with actual code and use sweep in iris-reader

Version 1.1.0#

Highlights

  • use with-statement in rainbow-reader

  • fix in gpm-reader and rainbow_reader

  • fix issues with cg-plot in vis-module

  • fix in gdal/ogr exception handling

  • update in versioning/release procedure

  • automatic build of devel-docs

Version 1.0.0#

Highlights

  • export notebooks into dedicated wradlib-notebooks

  • export doc into dedicated wradlib-docs

  • complete rewrite of CI-integration

  • complete rework of modules

Pre 1.0.0 Versions#

Versions before 1.0.0 are available from the wradlib-old repository.