Pygeoprocessing

Latest version: v2.4.7

Safety actively analyzes 722491 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 11

2.4.7

------------------
* Dropped support for Python 3.8. Added support for Python 3.13 and GDAL 3.9.
https://github.com/natcap/pygeoprocessing/issues/415
* Added validation to ``reclassify_raster`` to raise a ``TypeError`` with a
descriptive message if ``value_map`` contains non-numeric keys.
* In ``warp_raster``, if either ``base_raster_path`` or ``target_raster_path``
are not strings, a ``ValueError`` is now raised with a more helpful error
message. https://github.com/natcap/pygeoprocessing/issues/421

2.4.6

------------------
* Removing the ``numpy<2`` constraint for requirements.txt that should have
been included in the 2.4.5 release. https://github.com/natcap/pygeoprocessing/issues/396
* Fixed an issue in ``convolve_2d`` where a long-running convolution would
raise a cryptic exception involving ``queue.Empty``. This will instead now
raise ``RuntimeError`` with a more helpful exception message. We also fixed
an issue where the ``max_timeout`` parameter of ``convolve_2d`` was unused,
so it is now used correctly. https://github.com/natcap/pygeoprocessing/issues/360
* Handling GDAL-based ``RuntimeError`` raised during ``pygeoprocessing.reproject_vector``.
https://github.com/natcap/pygeoprocessing/issues/409

2.4.5

------------------
* Updating for numpy 2.0 API changes. Pygeoprocessing is now compatible with
numpy 2.0 and later. https://github.com/natcap/pygeoprocessing/issues/396

2.4.4

------------------
* Our github actions for building python distributions now use
`actions/setup-pythonv5`, which uses node 20.
https://github.com/natcap/pygeoprocessing/issues/384
* ``warp_raster`` and ``build_overviews`` no longer raise a ``ValueError`` if
called with an invalid resampling algorithm. We now fall back to the
underlying GDAL functions' error messages.
https://github.com/natcap/pygeoprocessing/issues/387
* Implementing decaying flow accumulation for D8 routing.
https://github.com/natcap/pygeoprocessing/issues/386
* Updated to Cython 3.
* Dropped support for Python 3.7.
* Enabled GDAL exceptions (``gdal.UseExceptions``) throughout pygeoprocessing.
This is done with a context manager so should not affect other code or
libraries. https://github.com/natcap/pygeoprocessing/issues/391

2.4.3

------------------
* Wheels for python 3.12 are now built during our github actions runs.
https://github.com/natcap/pygeoprocessing/issues/381
* ``get_gis_type`` can accept a path to a remote file, allowing the GDAL driver
to open it if the driver supports the protocol.
https://github.com/natcap/pygeoprocessing/issues/375
* If running on a SLURM system (identified by the presence of ``SLURM*``
environment variables), the GDAL cache max is checked against the amount of
memory available on the compute node. If GDAL may exceed the available slurm
memory, a warning is issued or logged.
https://github.com/natcap/pygeoprocessing/issues/361
* Fixed an issue in ``extract_strahler_streams_d8`` where a nodata pixel
could be mistakenly treated as a stream seed point, ultimately creating
a stream feature with no geometry.
https://github.com/natcap/pygeoprocessing/issues/361
* Improved ``align_and_resize_raster_stack`` so that rasterization of a vector
mask only happens once, regardless of the number of rasters in the stack.
In addition, the created mask raster's path may be defined by the caller so
that it persists across calls to ``align_and_resize_raster_stack``.
https://github.com/natcap/pygeoprocessing/issues/366
* Improved ``warp_raster`` to allow for a pre-defined mask raster to be
provided instead of a vector. If both are provided, the mask raster alone is
used. The new mask raster must have the same dimensions and geotransform as
the output warped raster. https://github.com/natcap/pygeoprocessing/issues/366
* Fixed a bug in ``zonal_statistics`` where the wrong number of disjoint
polygon sets were being reported in the logs.
https://github.com/natcap/pygeoprocessing/issues/368
* Pygeoprocessing is now tested against python 3.12.
https://github.com/natcap/pygeoprocessing/issues/355

2.4.2

------------------
* Fixed an issue where MFD flow direction was producing many nodata holes given
a large-enough DEM. These nodata holes would then propagate to flow
accumulation and stream extraction, producing very disjointed stream
networks. https://github.com/natcap/pygeoprocessing/issues/350
* Improved progress logging in MFD flow direction, MFD flow accumulation, MFD
stream extraction to prevent integer overflows in percentages and improve
the readability of log messages. https://github.com/natcap/pygeoprocessing/issues/246
* Fixed an issue introduced in 2.4.1 where ``zonal_statistics`` results could
vary depending on the bounding boxes of the disjoint polygon sets calculated
from the input vector.
* Added a new function, ``pygeoprocessing.align_bbox``, which pads a bounding
box to align with the grid of a given geotransform.
* Added support for int64 and uint64 (GDAL 3.5+)
https://github.com/natcap/pygeoprocessing/issues/352
* Added support for signed bytes (GDAL 3.7+)
https://github.com/natcap/pygeoprocessing/issues/329
* Fixed a bug where ``calculate_slope`` did not work as expected when the DEM
raster's nodata value is NaN (https://github.com/natcap/pygeoprocessing/issues/352)

Page 1 of 11

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.