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 - - - - 
- - - - - -

Attachment: OpenPGP_signature
Description: OpenPGP digital signature

Reply via email to