Py3dep

Latest version: v0.18.0

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

Scan your dependencies

Page 2 of 7

0.16.0

-------------------

New Features
~~~~~~~~~~~~
- Add a new function called ``get_map_vrt`` for getting DEM
within a bounding box and saving it as a ``VRT`` file. This
function has low memory usage and is useful for cases where
the DEM is needed for a large area. Moreover, even for usual
use cases it can be much faster than ``get_dem`` since it
loads the data lazily, at the cost of higher disk usage.
- In the ``get_map`` function, check if the input geometry is
within the bounds of the 3DEP's WMS service and if not, raise
an exception.
- In the ``fill_depressions`` function add a new argument called
``outlets`` for specifying outlet detection method: At the edge
of all cells (``edge``) or only the minimum elevation edge cell
(``min``; default).
- Significantly improve the performance of ``check_3dep_availability``
function by minimizng the number of requests to the service and
sending all requests asynchronously. Also, the returned ``dict`` now
uses ``Failed`` for those resolutions where the service fails to
return a valid response. It will remove the failed responses from
the cache, so next time the function is called, it will try to
get only the failed resolutions.
- Add four new options to ``add_elevation``: ``mask`` for passing a
mask and ``resolution`` for specifying the resolution of the source
DEM, and ``x_dim`` and ``y_dim`` for passing the names of spatial
dimensions in the input dataset. The ``mask`` option is useful for
cases where the input ``xarray.DataArray`` or ``xarray.Dataset`` has
a mask and the user wants to use that mask for the elevation data as well.
The ``resolution`` option is useful for cases where the user wants
to get the elevation data at a higher resolution that will be
downsampled by bilinear interpolation to the resolution of the input
``xarray.DataArray`` or ``xarray.Dataset``. The default is
``resolution=None`` which means the resolution of the input
``xarray.DataArray`` or ``xarray.Dataset`` will be used. The ``x_dim``
and ``y_dim`` options are useful for cases where the input
``xarray.DataArray`` or ``xarray.Dataset`` has different names for
spatial dimensions than ``x`` and ``y``. The default is ``x_dim="x"``
and ``y_dim="y"``.

Breaking Changes
~~~~~~~~~~~~~~~~
- In the ``elevation_profile`` function remove the ``res`` argument
and use 10-m resolution DEM from 3DEP. Also, add two new attributes
to the output ``xarray.Dataset``: ``source`` for the dataset to
state the data source used and ``units`` for the ``distance`` variable
to state the units of the distance, which is meters.

Internal Changes
~~~~~~~~~~~~~~~~
- Improve initial load time by moving ``import pyflwdir`` to the
``fill_depressions`` function.

Bug Fixes
~~~~~~~~~
- Decrease the number of pixels per request from 10e6 to 8e6 to reduce the
request load (:issue_3dep:`65`).

0.15.2

-------------------

Internal Changes
~~~~~~~~~~~~~~~~
- Remove dependency on ``dask``.

0.15.1

-------------------

Bug Fixes
~~~~~~~~~
- Fix HyRiver libraries requirements by specifying a range instead
of exact version so ``conda-forge`` can resolve the dependencies.

0.15.0

-------------------
From release 0.15 onward, all minor versions of HyRiver packages
will be pinned. This ensures that previous minor versions of HyRiver
packages cannot be installed with later minor releases. For example,
if you have ``py3dep==0.14.x`` installed, you cannot install
``pydaymet==0.15.x``. This is to ensure that the API is
consistent across all minor versions.

New Features
~~~~~~~~~~~~
- In ``static_3dep_dem`` use ``rioxarray`` directly instead of
``rasterio`` since it can handle VRT files.
- Improve performance and accuracy of ``add_elevation`` by using
the dynamic 3DEP service and setting the resolution based on the
input ``xarray.DataArray`` or ``xarray.Dataset``.
- Improve the performance of ``elevation_profile`` by using the
static 3DEP service when the input resolution is 10 m (which is
the default for this function).
- For now, retain compatibility with ``shapely<2`` while supporting
``shapley>=2``.

Bug Fixes
~~~~~~~~~
- In ``add_elevation``, ensure that the resolution is in meters
by reprojecting the input dataset to 5070 before extracting
resolution and bound attributes.

0.14.0

-------------------

New Features
~~~~~~~~~~~~
- Add a new function called ``add_elevation`` for adding elevation
data as a new variable to an input ``xarray.DataArray`` or
``xarray.Dataset``.
- The ``elevation_bycoords`` function now accepts a single coordinate
and returns a float in addition to a list of coordinates that returned
a list of elevations.
- Modify the ``elevation_bycoords`` function to use the new elevation
point query service (EPQS) web service. This only affects the
``source="tnm"`` option.

Breaking Changes
~~~~~~~~~~~~~~~~
- Bump the minimum required version of ``shapely`` to 2.0,
and use its new API.

Internal Changes
~~~~~~~~~~~~~~~~
- Sync all minor versions of HyRiver packages to 0.14.0.

0.13.12

--------------------

New Features
~~~~~~~~~~~~
- Use `pyflwdir <https://github.com/Deltares/pyflwdir>`__ package for
depression filling operation instead of ``richdem`` since it appears
to be unmaintained. Note that ``pyflwdir`` is an optional dependency.
Also, ``pyflwdir`` depends on ``numba`` which is not available for
Python 3.11 yet. You can follow the progress of ``numba``'s support
for Python 3.11 `here <https://github.com/numba/numba/issues/8304>`__.
- Add a new function called ``get_dem`` for obtaining DEM that is a wrapper of
``static_3dep_dem`` and ``get_map`` functions. Since ``static_3dep_dem``
is faster, if the requested resolution is 10 m, 30 m, or 60 m,
``static_3dep_dem`` will be used. Otherwise, ``get_map`` will be used.

Internal Changes
~~~~~~~~~~~~~~~~
- Significantly improve the performance of ``elevation_bycoords`` when
``tep`` is used as the source by using the static DEM data instead of
the dynamic DEM.
- Fully migrate ``setup.cfg`` and ``setup.py`` to ``pyproject.toml``.
- Convert relative imports to absolute with ``absolufy-imports``.
- Sync all patch versions of HyRiver packages to x.x.12.

Page 2 of 7

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.