diff --git a/.claude/sweep-style-state.csv b/.claude/sweep-style-state.csv index b84f4b020..d00f119db 100644 --- a/.claude/sweep-style-state.csv +++ b/.claude/sweep-style-state.csv @@ -1,5 +1,6 @@ module,last_inspected,issue,severity_max,categories_found,notes aspect,2026-06-21,3437,MEDIUM,4,flake8 clean; isort drift (geodesic wrap + duplicate utils import line); Cat1/2/3/5 none; fixed via PR for issue 3437 +bump,2026-07-02,,MEDIUM,4,"flake8 baseline 0 (clean). Cat 4 isort only: 6-line vertical-hanging-indent from xrspatial.utils (...) block collapses to a 2-line grid wrap under line_length=100 (91 + 50 cols, both flake8-clean). Cat 1/2/3/5 clean (grep: no bare except, mutable defaults, ==None/True, or shadowed builtins). Same pervasive vertical-hanging-indent style flagged in 23/53 non-test modules; fixed per-module per established sweep precedent (visibility #3182, resample, geotiff #3588). Fixed by running isort; flake8+isort clean after; 18 bump tests pass (CUDA available)." classify,2026-06-20,3402,HIGH,3;4,"F401 unused not_implemented_func import; isort ordering (cmath group, dataset_support before utils). No Cat 1/2/5. Fixed in rockout PR." contour,2026-05-29,2698,HIGH,3,"F821 line 557: contours() return annotation ""gpd.GeoDataFrame"" referenced gpd not bound at module scope (only imported inside _to_geopandas). Fixed via TYPE_CHECKING-guarded import geopandas as gpd, matching polygonize.py. No runtime change; geopandas stays optional. isort clean. Cat 1/2/4/5 clean. 24 contour tests pass. PR open." cost_distance,2026-06-15,3339,HIGH,1;3;4;5,"Cat 3 F401: removed unused 'from functools import partial' (L32, refactor leftover, not re-exported). Cat 5 mutable default target_values: list = [] was found here too, but the parallel api-consistency PR #3348 fixed it first (same None-sentinel normalization, merged to main); on reconciliation this PR's duplicate source change and its two target_values tests were dropped, so PR #3350 is now lint-only. Cat 1: E302 L63 (1->2 blank lines before @ngjit _heap_push; placed blanks between comment divider and decorator to satisfy both E302 and isort) + E127 x5 (_cost_distance_dask_cupy L461-462, _cost_distance_dask_iterative L1005-1007 signature continuation over-indent). Cat 4 isort: dataset_support before utils, utils from-import reflowed to 100 cols. Cat 2 grep clean. flake8+isort clean on module after fix; cost_distance tests pass (CUDA available). Pre-existing test-file lint (F401 L314/L504, E201 L449, isort drift) left untouched - out of module scope. PR open." diff --git a/xrspatial/bump.py b/xrspatial/bump.py index c7518b461..3c08b2766 100644 --- a/xrspatial/bump.py +++ b/xrspatial/bump.py @@ -15,13 +15,8 @@ class cupy(object): except ImportError: da = None -from xrspatial.utils import ( - ArrayTypeFunctionMapping, - _validate_scalar, - has_cuda_and_cupy, - is_cupy_array, - ngjit, -) +from xrspatial.utils import (ArrayTypeFunctionMapping, _validate_scalar, has_cuda_and_cupy, + is_cupy_array, ngjit) # Upper bound on bump count to prevent accidental OOM from the default # w*h//10 heuristic. 16 bytes per bump (int32 loc pair + float64 height),