Skip to content

Releases: GlacioHack/xdem

v0.1.0

06 Dec 20:07
8e83319
Compare
Choose a tag to compare

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!

⚠️ This release breaks the behaviour of a couple early-dev functions! ⚠️
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 to DhMinimize 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

03 Aug 20:05
02c2026
Compare
Choose a tag to compare

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 GeoUtils 0.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() to translate 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

01 Jun 01:28
58585e2
Compare
Choose a tag to compare

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 with setuptools_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 and setuptools_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 and cast_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 an nd 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

Full Changelog: v0.0.18...v0.0.19

v0.0.18

22 Dec 16:17
c9cb929
Compare
Choose a tag to compare

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

29 Nov 00:00
3b318ac
Compare
Choose a tag to compare

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 in 1.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

04 Nov 00:05
47b1ada
Compare
Choose a tag to compare

Fixes the publishing to PyPI that was broken since 0.0.13

What's Changed

Full Changelog: v0.0.15...v0.0.16

v0.0.15

03 Nov 21:15
40bb20e
Compare
Choose a tag to compare

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 remove 3.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

26 Sep 03:49
f0596da
Compare
Choose a tag to compare

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

Full Changelog: v0.0.13...v0.0.14

v0.0.13

12 Aug 05:13
b9bd498
Compare
Choose a tag to compare

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

Full Changelog: v0.0.11...v0.0.13

v0.0.12pre

12 Aug 04:21
16f2fab
Compare
Choose a tag to compare
v0.0.12pre Pre-release
Pre-release

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

Full Changelog: v0.0.11...v0.0.12pre