Releases: GlacioHack/xdem
v0.1.0
This is the first minor release of xDEM which contains nearly all core features originally drafted, and is the result of more than 4 years of work! 🥳
It is accompanied by a renovated documentation, that moves scientific background into separate "Guide" pages to keep other more clear and succinct, improves examples on all the "Feature" pages with quick-use sections, clearer structure and more figures to visualize each functionality, streamlines the API, and adds many new auxiliary pages to give essential overview of the package "Method overview" that lists all methods in one place, "Cheatsheet: How to correct..." to know how to improve your DEM, and much more!
xDEM and demcompare are also joining efforts to fuse the best of both tools into xDEM!
Our next planned minor releases will include a command-line interface, an elevation point cloud object for easier point-raster analysis (already supported in co-registration!) and an Xarray dem
accessor with Dask support for scalability, all already well in the works, and more!
Due to the early stages of previous functions, there is no warning for these changes, see the short guide to update your code in the "Release notes" section of the documentation. In the future, deprecation warnings will be issued in advance before discontinuing a function.
What's Changed
- Re-structure coregistration affine methods, point-raster pre-processing, binning and fitting, and add pixel interpretation support by @rhugonnet in #530
- Unpin SciPy now that SciKit-GStat fix released by @rhugonnet in #580
- Homogenize sign of translation coregistration and add affine tests by @rhugonnet in #585
- Refactor
GradientDescending
toDhMinimize
with generic inputs by @rhugonnet in #595 - Fix pip tests since Python 3.13 release by @rhugonnet in #618
- Replace print statements and verbose flag with logging and log levels by @vschaffn in #610
- Remove RichDEM from source, moved utility functions to conftest.py by @vschaffn in #612
- Fix inlier masking in BlockwiseCoreg by @rhugonnet in #625
- Add support for Python 3.12 by @rhugonnet in #627
- Update documentation and warnings before
0.1
release by @rhugonnet in #502 - Unpin Rasterio<1.4 now that 2D xy/rowcol fixed by @rhugonnet in #615
- Add ASPRS reference to page on "Accuracy and precision" by @rhugonnet in #641
- Pin random state for
test_estimate_uncertainty
by @rhugonnet in #647 - Fix Python version in PyPI description by @rhugonnet in #648
- Update and unskip test for
dem_coregistration
workflow by @rhugonnet in #651 - Announce CNES/
demcompare
collaboration and update lead team background by @rhugonnet in #640 - Transition to Apache License 2.0: License Update, Author Attribution, and Documentation Compliance by @vschaffn in #617
- Deprecate Mambaforge for Miniforge in CI by @rhugonnet in #655
- Move license header files to avoid GitHub misrecognizing license by @rhugonnet in #657
- Update
pre-commit
hooks to latest versions by @rhugonnet in #658 - Fix small typo in License header by @rhugonnet in #659
- Update with
SatelliteImage
class removal and restructuration in GeoUtils by @rhugonnet in #649 - Fix default method definition in
dem_coregistration
by @rhugonnet in #662 - Makefile initial installation by @vschaffn in #630
- Add Initial shift Capability to DEM Coregistration by @vschaffn in #650
- Fix
BlockwiseCoreg
shift direction by @rhugonnet in #665 - Update version number to
0.1.0
by @rhugonnet in #667 - Fix downloading of vertical CRS on Readthedocs and re-order Credits section by @rhugonnet in #666
New Contributors
Full Changelog: v0.0.20...v0.1.0
v0.0.20
A small release primarily aimed at fixing the pip
dependencies, which started breaking now that GeoPandas has dropped Fiona by default. Mirroring https://github.com/GlacioHack/geoutils/releases/tag/v0.1.8.
What's Changed
- Pin max version of SciKit-GStat for backward compatibility by @rhugonnet in #537
- Fix
CoregPipeline
tests subsampling by passing non-init Coreg objects by @rhugonnet in #539 - Update
Raster.interp_points
point input for GeoUtils0.1.6
by @rhugonnet in #540 - Rework affine transformation re-gridding (from 3D point cloud to 2.5D DEM) for accuracy and performance by @rhugonnet in #531
- Update
Raster.shift()
totranslate
by @rhugonnet in #545 - Fix pip install and add new tests by @rhugonnet in #559
- Update release number to
0.0.20
by @rhugonnet in #560
Full Changelog: v0.0.19...v0.0.20
v0.0.19
This is a small release ahead of a soon-to-be-released 0.1
to solve for dependency issues created by the SciPy 1.13 release in the environment file, and to update code to the latest GeoUtils to facilitate building a conda
environment.
Some changes break early-development code, in great part due to changes in GeoUtils, see https://github.com/GlacioHack/geoutils/releases/tag/v0.1.0 for updating. After the 0.1
release, breaking changes should come with deprecation warnings for core functionalities.
Most new features (e.g., support for point clouds in coregistration) will be documented in the next release.
What's Changed
- Fix README build badge by @rhugonnet in #457
- Pin max Python version for
setuptools
by @rhugonnet in #458 - Pin max Python version for PyPI publish by @rhugonnet in #459
- Fix
test_deprecate
to work withsetuptools_scm
versions by @rhugonnet in #461 - Add dependabot and pre-commit CI for automatic versioning updates by @rhugonnet in #466
- Pin max major versions of dependencies for future compatibility by @rhugonnet in #467
- Bump conda-incubator/setup-miniconda from 2 to 3 by @dependabot in #468
- Bump actions/setup-python from 4 to 5 by @dependabot in #469
- Bump actions/checkout from 3 to 4 by @dependabot in #470
- Bump actions/cache from 3 to 4 by @dependabot in #471
- Bump pre-commit/action from 3.0.0 to 3.0.1 by @dependabot in #476
- Mirror geoutils API changes by @adehecq in #462
- Update documentation's "Quick start" by @rhugonnet in #473
- Wrap all functionalities as
DEM
methods by @rhugonnet in #478 - Fix link in coregistration.md by @fnands in #487
- Remove
setuptools
andsetuptools_scm
from requirements.txt by @rhugonnet in #488 - Clarify
resolution
in terrain docstrings by @rhugonnet in #491 - Increase sample size of empirical variograms in advanced examples for clearer plots by @rhugonnet in #492
- Minor improvements to gallery examples by @rhugonnet in #493
- Fuse
Coreg
point functions and add consistent Raster-Point logic by @rhugonnet in #480 - Update to
Raster.dtype
refactorisation andcast_nodata
logic from GeoUtils by @rhugonnet in #498 - Fix CI errors due to basinhopping algorithm and coverage by @rhugonnet in #520
- Remove
Bias1D/2D/ND
classes in favor of annd
metadata attribute by @rhugonnet in #517 - Make
DEM.to_vcrs()
inplace by default by @rhugonnet in #518 - Add random seed for point cloud subsampling in
test_biascorr
by @rhugonnet in #524 - Remove legacy NumPy random number generator by @rhugonnet in #511
- Make coregistration metadata consistent and public by @rhugonnet in #526
- Update link to
xdem-data
to use COGs example files by @rhugonnet in #529 - Add
Coreg.fit_and_apply()
to run everything in one step by @rhugonnet in #527 - Set random seed in
to_pointcloud
of pipeline point-raster test by @rhugonnet in #535 - Update release number to
0.0.19
by @rhugonnet in #534 - Pin GeoUtils version exactly to avoid backward conflicts by @rhugonnet in #536
New Contributors
- @dependabot made their first contribution in #468
- @fnands made their first contribution in #487
Full Changelog: v0.0.18...v0.0.19
v0.0.18
This release fixes a recent bug that made pip install xdem
fail, and ensures it'll always work in the future.
What's Changed
- Fix PyPI publish, add tests and update action names by @rhugonnet in #456
Full Changelog: v0.0.17...v0.0.18
v0.0.17
Several bug fixes, in particular fixes a bug recently introduced in CoregPipeline.fit
that yielded erroneous pipeline coregistration (did not affect coregistration with individual methods).
What's Changed
- Definitive fix of negative uncertainties from linear extrapolation by @MatteaE in #446
- Fix bug in
CoregPipeline.fit()
by @rhugonnet in #450 - Fix documentation rendering due to Pydata theme update by @rhugonnet in #451
- Unfix scipy version with
curve_fit
bug now fixed in1.11.4
by @rhugonnet in #453 - Update version number before releasing
0.0.17
by @rhugonnet in #454
New Contributors
Full Changelog: v0.0.16...v0.0.17
v0.0.16
Fixes the publishing to PyPI that was broken since 0.0.13
What's Changed
- Fix PyPI publish by @rhugonnet in #443
- Update version to
0.0.16
by @rhugonnet in #444
Full Changelog: v0.0.15...v0.0.16
v0.0.15
Release fixing a sampling bug introduced in NuthKaab
(that is the most used in the coregistration module), and officially supporting Python 3.11
.
What's Changed
- Add support for Python
3.11
and remove3.8
by @rhugonnet in #441 - Fix sampling in
NuthKaab
and set better default values for other classes by @rhugonnet in #439
Full Changelog: v0.0.14...v0.0.15
v0.0.14
This release adds several fixes and improvements for the coregistration module, in particular for point data and pipelines.
It also significantly improves the environment management, to ensure it is more robust to updates and consistent between pip
and conda
(the latest remaining the recommended channel for installation).
What's Changed
- Update typing with GeoUtils
0.0.13
by @rhugonnet in #400 - Update README.md to point to xdem instead of geoutils by @erikmannerfelt in #412
- Update CI action versions. by @erikmannerfelt in #411
- Multiple coreg
fit_pts
fixes. by @erikmannerfelt in #407 - Fix
dDEM.nodata
setting on instantiation by @rhugonnet in #418 - Make environment files management consistent between
pip
andconda
by @rhugonnet in #429 - Fix
CoregPipeline
to work withbiascorr
methods by @rhugonnet in #424 - Minor a posteriori fixes on recent PRs by @rhugonnet in #433
- Update contributing guidelines to be more accessible by @rhugonnet in #432
- Declare
xdem.coreg
module explicitly forconda-forge
by @rhugonnet in #438 - Improve
subsample
acrossCoreg
subclasses and pipelines by @rhugonnet in #436
Full Changelog: v0.0.13...v0.0.14
v0.0.13
No new functionality, simply making PyPI and Conda versions fully consistent and functional by fixing a circular import error that happened only in conda-forge
build.
Note: re-release due to accidentally publishing the pre-release 0.0.12
on PyPI.
What's Changed
- Silence numba warning for
@jit
by @rhugonnet in #395 - Make
noisyopt
an optional dependency by @rhugonnet in #397 - Only use
conda-forge
channel in environment by @rhugonnet in #398
Full Changelog: v0.0.11...v0.0.13
v0.0.12pre
Pre-releasing to solve a mysterious build error in conda-forge, with some optional dependency changes and fix for warning issues on import.
Note: Accidentally released on PyPI, will bump to 0.0.13
for consistency between PyPI and conda-forge.
What's Changed
- Silence numba warning for
@jit
by @rhugonnet in #395 - Make
noisyopt
an optional dependency by @rhugonnet in #397 - Only use
conda-forge
channel in environment by @rhugonnet in #398
Full Changelog: v0.0.11...v0.0.12pre