Skip to content

2.4.0

Compare
Choose a tag to compare
@phargogh phargogh released this 04 Mar 03:03
· 210 commits to main since this release
c3296f7

2.4.0 (2023-03-03)

  • A new submodule, pygeoprocessing.kernels has been added to facilitate the
    creation of kernel rasters needed for calls to
    pygeoprocessing.convolve_2d. Functions for creating common decay kernels
    have been added, along with functions to facilitate the creation of
    distance-based kernels using a user-defined function
    (pygeoprocessing.create_kernel) and to facilitate the creation of kernels
    using custom 2D numpy arrays, such as those commonly used in image processing
    (pygeoprocessing.kernel_from_numpy_array).
    #268
  • Logging across functions in pygeoprocessing.geoprocessing now correctly
    reports the function that it's being called from rather than <lambda>.
    #300
  • The function pygeoprocessing.reproject_vector now accepts an optional
    parameter layer_name to allow the target vector layer name to be defined
    by the user. If the user does not provide a layer_name, the layer name
    will be copied from the source vector.
    #301
  • Implement the proposed new function pygeoprocessing.raster_reduce, a
    wrapper around pygeoprocessing.iterblocks
    (#285)
  • Nodata value checking in pygeoprocessing.routing now correctly handles
    comparison of nan values. This is explicitly tested in
    pygeoprocessing.routing.fill_pits, but should also improve the
    experience of other routing functions as well.
    #248
  • Added a function to build overviews for a raster,
    pygeoprocessing.build_overviews. Related to this,
    pygeoprocessing.get_raster_info() now includes an 'overviews' key
    listing the pixel dimensions of each overview layer in a raster.
    #280
  • Added a D8 stream extraction function at
    pygeoprocessing.routing.extract_streams_d8 which takes a D8 flow
    accumulation raster and a flow accumulation threshold, setting all pixels
    with accumulation above that threshold to 1 and all other valid pixels to 0.
    #272
  • Adding a new function, pygeoprocessing.create_raster_from_bounding_box,
    that enables the creation of a new raster from a bounding box.
    #276
  • Win32 wheels of PyGeoprocessing are no longer created through our GitHub
    Actions workflows and will no longer be produced or distributed as part of
    our release checklist. For details (and metrics!) see:
    #232