-------------------
Breaking Changes
~~~~~~~~~~~~~~~~
- Rewrite the command-line interface using ``click.group`` to improve UX.
The command is now ``py3dep [command] [args] [options]``. The two supported commands are
``coords`` for getting elevations of a dataframe of coordinates in ``EPSG:4326`` CRS
and ``geometry`` for getting the elevation of a geo-dataframe of geometries. Each sub-command
now has a separate help message. The format of the input file for the ``coords`` command
is now ``csv`` and for the ``geometry`` command is ``.shp`` or ``.gpkg`` and must have a
``crs`` attribute. Also, the ``geometry`` command now accepts multiple layers via the
``--layers`` (``-l``) option. More information and examples can be in the ``README.rst`` file.
New Features
~~~~~~~~~~~~
- Make ``fill_depressions`` function public. This function conditions an input DEM
by applying
`depression filling <https://richdem.readthedocs.io/en/latest/depression_filling.html>`__
and
`flat area resolution <https://richdem.readthedocs.io/en/latest/flat_resolution.html>`__
operations.
Internal Changes
~~~~~~~~~~~~~~~~
- The ``get_map`` function now checks for validation of the input ``layers`` argument before
sending the actual request with a more helpful message.
- Improve docstrings.
- Move ``deg2mpm``, ``fill_depressions``, and ``reproject_gtiff`` functions to a new file
called ``utils``. Both ``deg2mpm`` and ``fill_depressions`` functions are still accessible
from ``py3dep`` directly.
- Increase the test coverage.
- Use one of the ``click``'s internal functions, ``click..testing.CliRunner``,
to run the CLI tests.