Source: sarsen Version: 0.9.3+ds-2 Severity: serious Hello, looks like something (new python-xarray?) broke autopkgtests for this package:
https://ci.debian.net/data/autopkgtest/unstable/amd64/s/sarsen/37316930/log.gz 63s autopkgtest [23:46:19]: test python3: [----------------------- 63s === python3.11 === 64s ============================= test session starts ============================== 64s platform linux -- Python 3.11.5, pytest-7.4.0, pluggy-1.3.0 -- /usr/bin/python3.11 64s cachedir: .pytest_cache 64s rootdir: /tmp/autopkgtest-lxc.1xlnzicc/downtmp 64s collecting ... collected 30 items / 2 deselected / 28 selected 64s 64s ../build.0ip/src/tests/test_10_chunking.py::test_compute_chunk_1d PASSED [ 3%] 64s ../build.0ip/src/tests/test_10_chunking.py::test_compute_chunks PASSED [ 7%] 64s ../build.0ip/src/tests/test_10_chunking.py::test_map_ovelap PASSED [ 10%] 64s ../build.0ip/src/tests/test_10_datamodel.py::test_SarProduct PASSED [ 14%] 64s ../build.0ip/src/tests/test_10_orbit.py::test_OrbitPolyfitIterpolator_datetime64 PASSED [ 17%] 64s ../build.0ip/src/tests/test_10_orbit.py::test_OrbitPolyfitIterpolator_timedelta64 PASSED [ 21%] 64s ../build.0ip/src/tests/test_10_scene.py::test_convert_to_dem_3d PASSED [ 25%] 65s ../build.0ip/src/tests/test_10_scene.py::test_transform_dem_3d PASSED [ 28%] 65s ../build.0ip/src/tests/test_10_scene.py::test_compute_dem_oriented_area FAILED [ 32%] 65s ../build.0ip/src/tests/test_20_geocoding.py::test_secant_method PASSED [ 35%] 65s ../build.0ip/src/tests/test_20_geocoding.py::test_zero_doppler_plane_distance PASSED [ 39%] 65s ../build.0ip/src/tests/test_20_geocoding.py::test_backward_geocode PASSED [ 42%] 66s ../build.0ip/src/tests/test_20_sentinel1.py::test_product_info PASSED [ 46%] 67s ../build.0ip/src/tests/test_30_radiometry.py::test_compute_gamma_area FAILED [ 50%] 67s ../build.0ip/src/tests/test_50_apps.py::test_terrain_correction_gtc[data_path0-IW/VV] SKIPPED [ 53%] 67s ../build.0ip/src/tests/test_50_apps.py::test_terrain_correction_gtc[data_path1-IW1/VV] SKIPPED [ 57%] 67s ../build.0ip/src/tests/test_50_apps.py::test_terrain_correction_fast_rtc[data_path0-IW/VV] SKIPPED [ 60%] 67s ../build.0ip/src/tests/test_50_apps.py::test_terrain_correction_fast_rtc[data_path1-IW1/VV] SKIPPED [ 64%] 67s ../build.0ip/src/tests/test_50_apps.py::test_terrain_correction_rtc[data_path0-IW/VV] SKIPPED [ 67%] 67s ../build.0ip/src/tests/test_50_apps.py::test_terrain_correction_rtc[data_path1-IW1/VV] SKIPPED [ 71%] 67s ../build.0ip/src/tests/test_50_apps.py::test_terrain_correction_gtc_dask[data_path0-IW/VV] SKIPPED [ 75%] 67s ../build.0ip/src/tests/test_50_apps.py::test_terrain_correction_gtc_dask[data_path1-IW1/VV] SKIPPED [ 78%] 67s ../build.0ip/src/tests/test_50_apps.py::test_terrain_correction_fast_rtc_dask[data_path0-IW/VV] SKIPPED [ 82%] 67s ../build.0ip/src/tests/test_50_apps.py::test_terrain_correction_fast_rtc_dask[data_path1-IW1/VV] SKIPPED [ 85%] 67s ../build.0ip/src/tests/test_50_apps.py::test_terrain_correction_rtc_dask[data_path0-IW/VV] SKIPPED [ 89%] 67s ../build.0ip/src/tests/test_50_apps.py::test_terrain_correction_rtc_dask[data_path1-IW1/VV] SKIPPED [ 92%] 67s ../build.0ip/src/tests/test_60_main.py::test_main PASSED [ 96%] 67s ../build.0ip/src/tests/test_90_sarsen.py::test_version PASSED [100%] 67s 67s =================================== FAILURES =================================== 67s ________________________ test_compute_dem_oriented_area ________________________ 67s 67s dem_raster = <xarray.DataArray 'dem' (y: 360, x: 360)> 67s [129600 values with dtype=float32] 67s Coordinates: 67s * x (x) float64....05 67s spatial_ref int64 ... 67s Attributes: 67s AREA_OR_POINT: Area 67s units: m 67s long_name: elevation 67s 67s def test_compute_dem_oriented_area(dem_raster: xr.DataArray) -> None: 67s dem_3d = scene.convert_to_dem_3d(dem_raster) 67s 67s > res = scene.compute_dem_oriented_area(dem_3d) 67s 67s ../build.0ip/src/tests/test_10_scene.py:39: 67s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 67s /usr/lib/python3/dist-packages/sarsen/scene.py:110: in compute_dem_oriented_area 67s cross_2 = xr.cross(dx2, dy2, dim="axis") / 2 67s /usr/lib/python3/dist-packages/xarray/core/computation.py:1609: in cross 67s c = apply_ufunc( 67s /usr/lib/python3/dist-packages/xarray/core/computation.py:1197: in apply_ufunc 67s return apply_dataarray_vfunc( 67s /usr/lib/python3/dist-packages/xarray/core/computation.py:288: in apply_dataarray_vfunc 67s args = deep_align( 67s /usr/lib/python3/dist-packages/xarray/core/alignment.py:847: in deep_align 67s aligned = align( 67s /usr/lib/python3/dist-packages/xarray/core/alignment.py:783: in align 67s aligner.align() 67s /usr/lib/python3/dist-packages/xarray/core/alignment.py:568: in align 67s self.align_indexes() 67s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 67s 67s self = <xarray.core.alignment.Aligner object at 0x7f9478e9f250> 67s 67s def align_indexes(self) -> None: 67s """Compute all aligned indexes and their corresponding coordinate variables.""" 67s 67s aligned_indexes = {} 67s aligned_index_vars = {} 67s reindex = {} 67s new_indexes = {} 67s new_index_vars = {} 67s 67s for key, matching_indexes in self.all_indexes.items(): 67s matching_index_vars = self.all_index_vars[key] 67s dims = {d for coord in matching_index_vars[0].values() for d in coord.dims} 67s index_cls = key[1] 67s 67s if self.join == "override": 67s joined_index = matching_indexes[0] 67s joined_index_vars = matching_index_vars[0] 67s need_reindex = False 67s elif key in self.indexes: 67s joined_index = self.indexes[key] 67s joined_index_vars = self.index_vars[key] 67s cmp_indexes = list( 67s zip( 67s [joined_index] + matching_indexes, 67s [joined_index_vars] + matching_index_vars, 67s ) 67s ) 67s need_reindex = self._need_reindex(dims, cmp_indexes) 67s else: 67s if len(matching_indexes) > 1: 67s need_reindex = self._need_reindex( 67s dims, 67s list(zip(matching_indexes, matching_index_vars)), 67s ) 67s else: 67s need_reindex = False 67s if need_reindex: 67s if self.join == "exact": 67s > raise ValueError( 67s "cannot align objects with join='exact' where " 67s "index/labels/sizes are not equal along " 67s "these coordinates (dimensions): " 67s + ", ".join(f"{name!r} {dims!r}" for name, dims in key[0]) 67s ) 67s E ValueError: cannot align objects with join='exact' where index/labels/sizes are not equal along these coordinates (dimensions): 'x' ('x',) 67s 67s /usr/lib/python3/dist-packages/xarray/core/alignment.py:415: ValueError 67s ___________________________ test_compute_gamma_area ____________________________ 67s 67s dem_ecef = <xarray.DataArray 'dem_3d' (axis: 3, y: 360, x: 360)> 67s array([[[4639071.14581699, 4639064.72787912, 4639056.85736609, .... 0 67s * y (y) float64 41.95 41.95 41.95 41.95 ... 42.05 42.05 42.05 42.05 67s * axis (axis) int64 0 1 2 67s 67s def test_compute_gamma_area(dem_ecef: xr.DataArray) -> None: 67s dem_direction = xr.DataArray() 67s > res = radiometry.compute_gamma_area(dem_ecef, dem_direction) 67s 67s ../build.0ip/src/tests/test_30_radiometry.py:8: 67s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 67s /usr/lib/python3/dist-packages/sarsen/radiometry.py:56: in compute_gamma_area 67s dem_oriented_area = scene.compute_dem_oriented_area(dem_ecef) 67s /usr/lib/python3/dist-packages/sarsen/scene.py:110: in compute_dem_oriented_area 67s cross_2 = xr.cross(dx2, dy2, dim="axis") / 2 67s /usr/lib/python3/dist-packages/xarray/core/computation.py:1609: in cross 67s c = apply_ufunc( 67s /usr/lib/python3/dist-packages/xarray/core/computation.py:1197: in apply_ufunc 67s return apply_dataarray_vfunc( 67s /usr/lib/python3/dist-packages/xarray/core/computation.py:288: in apply_dataarray_vfunc 67s args = deep_align( 67s /usr/lib/python3/dist-packages/xarray/core/alignment.py:847: in deep_align 67s aligned = align( 67s /usr/lib/python3/dist-packages/xarray/core/alignment.py:783: in align 67s aligner.align() 67s /usr/lib/python3/dist-packages/xarray/core/alignment.py:568: in align 67s self.align_indexes() 67s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 67s 67s self = <xarray.core.alignment.Aligner object at 0x7f9478151d10> 67s 67s def align_indexes(self) -> None: 67s """Compute all aligned indexes and their corresponding coordinate variables.""" 67s 67s aligned_indexes = {} 67s aligned_index_vars = {} 67s reindex = {} 67s new_indexes = {} 67s new_index_vars = {} 67s 67s for key, matching_indexes in self.all_indexes.items(): 67s matching_index_vars = self.all_index_vars[key] 67s dims = {d for coord in matching_index_vars[0].values() for d in coord.dims} 67s index_cls = key[1] 67s 67s if self.join == "override": 67s joined_index = matching_indexes[0] 67s joined_index_vars = matching_index_vars[0] 67s need_reindex = False 67s elif key in self.indexes: 67s joined_index = self.indexes[key] 67s joined_index_vars = self.index_vars[key] 67s cmp_indexes = list( 67s zip( 67s [joined_index] + matching_indexes, 67s [joined_index_vars] + matching_index_vars, 67s ) 67s ) 67s need_reindex = self._need_reindex(dims, cmp_indexes) 67s else: 67s if len(matching_indexes) > 1: 67s need_reindex = self._need_reindex( 67s dims, 67s list(zip(matching_indexes, matching_index_vars)), 67s ) 67s else: 67s need_reindex = False 67s if need_reindex: 67s if self.join == "exact": 67s > raise ValueError( 67s "cannot align objects with join='exact' where " 67s "index/labels/sizes are not equal along " 67s "these coordinates (dimensions): " 67s + ", ".join(f"{name!r} {dims!r}" for name, dims in key[0]) 67s ) 67s E ValueError: cannot align objects with join='exact' where index/labels/sizes are not equal along these coordinates (dimensions): 'x' ('x',) 67s 67s /usr/lib/python3/dist-packages/xarray/core/alignment.py:415: ValueError 67s =============================== warnings summary =============================== 67s ../../../../usr/lib/python3/dist-packages/xarray_sentinel/esa_safe.py:7 67s /usr/lib/python3/dist-packages/xarray_sentinel/esa_safe.py:7: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html 67s import pkg_resources 67s 67s build.0ip/src/tests/test_20_geocoding.py::test_secant_method 67s /usr/lib/python3/dist-packages/sarsen/geocoding.py:46: RuntimeWarning: invalid value encountered in divide 67s t_prev, t_curr = t_curr, t_curr - np.where(q != 0, p / q, 0) # type: ignore 67s 67s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 67s =========================== short test summary info ============================ 67s FAILED ../build.0ip/src/tests/test_10_scene.py::test_compute_dem_oriented_area 67s FAILED ../build.0ip/src/tests/test_30_radiometry.py::test_compute_gamma_area 67s ====== 2 failed, 14 passed, 12 skipped, 2 deselected, 2 warnings in 2.85s ====== 67s autopkgtest [23:46:23]: test python3: -----------------------] 67s autopkgtest [23:46:23]: test python3: - - - - - - - - - - results - - - - - - - - - -
OpenPGP_signature
Description: OpenPGP digital signature