Skip to content

v0.10.3

Choose a tag to compare

@brendancol brendancol released this 03 Jun 17:39
60185dd

New features

  • focal: implement the Getis-Ord Gi* statistic in hotspots() (#2803)

Bug fixes and improvements

  • slope: validate planar cell size (#2897) (#2901)
  • contours: validate return_type before doing data work (#2891) (#2898)
  • viewshed: build the GPU rtx mesh with real x/y resolution (#2861) (#2887)
  • hydro: validate MFD fraction values in public consumers (#2873) (#2883)
  • viewshed: warn and document dask Tier C divergence from the exact sweep (#2880)
  • viewshed: validate max_distance, rejecting negative and non-finite values (#2874)
  • contours: validate the n_levels contract (#2895) (#2899)
  • proximity: fix bounded dask dropping in-range targets on irregular coords (#2908) (#2909)
  • contours: drop zero-length geometry at exact-level corners (#2902)
  • viewshed: stop mutating the caller's input raster (#2852) (#2871)
  • proximity: fix bounded-dask crash on skinny rasters (#2877)
  • contours: resolve output CRS the same way as polygonize (#2893) (#2900)
  • geotiff: gate remote sources in read_geotiff_gpu under stable_only (#2867) (#2878)
  • proximity: reject non-finite target_values (#2868)
  • focal: reject non-binary kernels in apply() and focal_stats() (#2862)
  • terrain: resolve geodesic coords from real lat/lon over numeric y/x (#2903)
  • slope: set output units to degrees instead of leaking input units (#2904)
  • proximity: reject non-monotonic 1D coords in proximity/allocation/direction (#2875)
  • focal: fix hotspots() silent all-zeros on degenerate dask inputs (#2860)
  • focal: raise a clear error for non-2D custom kernels (#2842) (#2853)
  • aspect: warn on degree/meter unit mismatch in the planar path (#2839) (#2844)
  • contours: fix docstring overstating the Dask peak-memory guarantee (#2906)
  • viewshed: fix crash on NaN cells, marking them INVISIBLE (#2857) (#2876)
  • proximity: stop the dask fallback mutating the caller's input chunks (#2847) (#2864)
  • terrain: list accepted unit names in the invalid z_unit error (#2870)
  • hydro: reject cyclic MFD fraction grids instead of returning wrong results or hanging (#2884)
  • polygonize: replace the flaky visvalingam timing test with deterministic checks (#2889)
  • proximity: make allocation/direction tie-breaking deterministic across backends (#2881)
  • hydro: validate the MFD companion raster shape against the grid (#2863) (#2879)
  • geotiff: gate stable_only before the bbox metadata read on remote/VRT sources (#2882)
  • hydro: keep MFD dask output assembly lazy (#2865) (#2886)
  • viewshed: call has_cuda_and_cupy() in has_rtx() so GPU dispatch gates correctly (#2849) (#2859)
  • aspect: guard dask geodesic against single-chunk OOM (#2840) (#2846)
  • aspect: fix .name leak on dask backends when name=None (#2845)
  • slope: cover planar boundary modes on cupy and dask+cupy backends (#2832)
  • slope: fix .name leak on dask backends when name=None (#2838)
  • proximity: pin the dim-order error path and all-NaN raster across backends (#2836)
  • aspect: cover the northness/eastness method='geodesic' path (#2829) (#2835)
  • focal: fix GPU std/var precision on large-offset rasters (#2834)
  • aspect: make the planar cupy backend match numpy in [0, 360) (#2827) (#2833)
  • geotiff: enforce stable_only for HTTP/fsspec sources on non-VRT read paths (#2826)
  • geotiff: synthesize x/y coords for no-georef VRT reads (#2824)
  • geotiff: validate the gpu dispatch flag as bool and fail closed (#2819) (#2823)
  • geotiff: correct the stable_only docstring to state HTTP/fsspec rejection (#2822)
  • polygonize: optimize visvalingam_whyatt with a min-heap (#2817)
  • aspect: fix the compass-direction table in the docstring (#2825) (#2828)
  • proximity: raise on invalid distance_metric (#2814)
  • focal: make hotspots() lazy for Dask input (#2802)
  • aspect: apply cell-size correction to the planar path (#2760) (#2780)
  • slope: warn on degree coords with meter elevation in the planar path (#2764) (#2777)
  • focal: fix GPU variety undercount for kernels larger than 5x5 (#2800)
  • aspect: add an independent rectangular-cell oracle for the planar path (#2781)
  • proximity: validate negative max_distance (#2813)
  • focal: preserve input float dtype in apply() and focal_stats() (#2769) (#2805)
  • focal: validate the hotspots() kernel like apply() and focal_stats() (#2771) (#2799)
  • terrain: warn when planar resolution averages irregular coordinates (#2766) (#2784)
  • slope: propagate the NaN center cell in the planar path (#2761) (#2773)
  • proximity: fix GREAT_CIRCLE on the CPU line-sweep backend (#2816)
  • proximity: fix dask halo depth on irregular coords and 1xN/Nx1 rasters (#2815)
  • contours: fix auto-levels silently dropping all contours with +/-inf (#2801)
  • proximity: fix Great Circle docstrings to say meters, not kilometers (#2811)
  • focal: validate focal_stats() stats_funcs before dispatch (#2798)
  • slope: keep dask+cupy geodesic lat/lon lazy to avoid GPU OOM (#2776)
  • aspect: skip the full-raster geodesic memory guard for dask (#2774)
  • repo: add Codex command mirrors (#2806)
  • terrain: make the geodesic memory guard backend-aware for dask (#2765) (#2779)