v0.1.0
This is the first minor release of GeoUtils which contains all core features originally drafted, and is the result of more than 3 years of work! 🥳
The next planned minor releases will include point cloud support for easier point-raster analysis, an Xarray accessor, both in the works, and more! See the roadmap here: https://github.com/GlacioHack/geoutils/wiki/Roadmap-to-v1.0.
Due to the early stages of previous functions, there is no warning for these changes, see the short guide to update your code below. In the future, deprecation warnings will be issued in advance before discontinuing a function name/behaviour.
This minor version also comes with a couple bug fixes and a lot of new tests to ensure the robustness of our functionalities!
Guide to update your code
- Rename
show()
toplot()
for bothRaster
,Vector
and subclasses such asDEM
in xDEM, - The operations
.crop()
and.shift()
are not done inplace by default anymore, they now use the same logic as other functions (and default in Pandas or Xarray), to maintain inplace logic, replace to:raster = raster.crop()
or specifyraster.crop(inplace=True)
, - Several function arguments are renamed for consistency throughout the package and clarity, in particular
dst_xxx
arguments of reproject such asreproject(dst_res=)
are all renamed toreproject(res=)
. You can find all argument names in the API: https://geoutils.readthedocs.io/en/stable/api.html. - New
UserWarning
are sometimes raised, in particular if yourRaster.nodata
is not defined or defined but with some values not masked in your array. Those warnings should give an indication as to how to silence them.
What's Changed
- Update CI action versions by @rhugonnet in #423
- Fix README build by @rhugonnet in #424
- Pin max Python version for PyPI publish by @rhugonnet in #425
- Fix
test_deprecate
to work withsetuptools_scm
versions by @rhugonnet in #429 - Fix for issue #409 and #407 by @adehecq in #410
- Restrict dev environment to python<3.12 by @atedstone in #437
- Fix several issues in geoviewer by @adehecq in #418
- Change default behaviour of crop to inplace=False by @atedstone in #439
- Attempt to fix issue with doc building on Mac/Windows by @adehecq in #436
- Homogenize API arguments by @atedstone in #440
- Updates in Raster.reproject: fix bug, simplify code and improve tests by @adehecq in #443
- Solves #408 (incompatibility between crop and downsampling) by @adehecq in #448
- Fix #451 and improve tests for downsampling by @adehecq in #452
- Additional homogenization and fixes of argument names by @rhugonnet in #450
- Improve error messages and make
Raster
indexing/assigment NumPy compatible by @rhugonnet in #454 - Add
inplace
argument to all potential functions (Raster
to modifiedRaster
, same forVector
) by @rhugonnet in #455 - Fix warnings and raise
UserWarning
as error in CI by @rhugonnet in #458 - Two fixes in Raster.reproject by @adehecq in #465
- Pin max versions of all major dependencies for future compatibility by @rhugonnet in #462
- Make
raster_equal
acceptFalse
mask values of masked arrays by @rhugonnet in #468 - Make
astype
set newnodata
by default, anddata.setter
check for unmasked nodata by @rhugonnet in #472 - Add dependabot and pre-commit CI for automatic versioning updates by @rhugonnet in #476
- Bump actions/setup-python from 4 to 5 by @dependabot in #477
- Bump conda-incubator/setup-miniconda from 2 to 3 by @dependabot in #478
- Bump actions/checkout from 3 to 4 by @dependabot in #479
- Bump actions/cache from 3 to 4 by @dependabot in #480
- Allow pandas v2 by @rhugonnet in #481
- Refactor
.show()
to.plot()
andsample
tosubsample
by @rhugonnet in #487 - Update documentation for
v0.1
: Index, Quick start and Feature overview by @rhugonnet in #482 - Bump pre-commit/action from 3.0.0 to 3.0.1 by @dependabot in #488
- Add announcement banner in doc to help users update early-dev code to
0.1
by @rhugonnet in #489 - Update version number to
0.1.0
by @rhugonnet in #490
New Contributors
- @dependabot made their first contribution in #477
Full Changelog: v0.0.17...v0.1.0