Bug#1066747: rasterio: FTBFS: dh_auto_test: error: pybuild --test -i python{version} -p "3.12 3.11" returned exit code 13

Lucas Nussbaum lucas at debian.org
Wed Mar 13 15:00:02 GMT 2024


Source: rasterio
Version: 1.3.9-3
Severity: serious
Justification: FTBFS
Tags: trixie sid ftbfs
User: lucas at debian.org
Usertags: ftbfs-20240313 ftbfs-trixie

Hi,

During a rebuild of all packages in sid, your package failed to build
on amd64.


Relevant part (hopefully):
> make[1]: Entering directory '/<<PKGBUILDDIR>>'
> dh_auto_test
> I: pybuild pybuild:308: cp -r /<<PKGBUILDDIR>>/tests /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_rasterio/build
> I: pybuild base:305: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_rasterio/build; python3.12 -m pytest --ignore tests/test_env.py --ignore tests/test_io.py --ignore tests/test_merge.py --ignore tests/test_rio_blocks.py --ignore tests/test_rio_bounds.py --ignore tests/test_rio_calc.py --ignore tests/test_rio_clip.py --ignore tests/test_rio_convert.py --ignore tests/test_rio_edit_info.py --ignore tests/test_rio_gcp.py --ignore tests/test_rio_helpers.py --ignore tests/test_rio_info.py --ignore tests/test_rio_insp.py --ignore tests/test_rio_main.py --ignore tests/test_rio_mask.py --ignore tests/test_rio_merge.py --ignore tests/test_rio_options.py --ignore tests/test_rio_overview.py --ignore tests/test_rio_rasterize.py --ignore tests/test_rio_rm.py --ignore tests/test_rio_sample.py --ignore tests/test_rio_shapes.py --ignore tests/test_rio_stack.py --ignore tests/test_rio_warp.py --ignore tests/test_session.py --ignore tests/test_warp.py --ignore tests/test_warpedvrt.py
> Test data present.
> ============================= test session starts ==============================
> platform linux -- Python 3.12.2, pytest-8.0.2, pluggy-1.4.0
> rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_rasterio/build
> configfile: pyproject.toml
> plugins: hypothesis-6.98.15
> collected 1086 items / 1 skipped
> 
> tests/test__env.py .................                                     [  1%]
> tests/test__version.py .....                                             [  2%]
> tests/test_band.py .                                                     [  2%]
> tests/test_band_masks.py ...........                                     [  3%]
> tests/test_blocks.py .......................                             [  5%]
> tests/test_boundless_read.py .XX...X..XX.                                [  6%]
> tests/test_checksum.py ......                                            [  6%]
> tests/test_cli_main.py ..                                                [  7%]
> tests/test_colorinterp.py .....xx...............                         [  9%]
> tests/test_colormap.py ..                                                [  9%]
> tests/test_complex_dtypes.py .....                                       [  9%]
> tests/test_coords.py ......                                              [ 10%]
> tests/test_creation_options.py .                                         [ 10%]
> tests/test_crs.py ...................................................... [ 15%]
> .............................................................            [ 20%]
> tests/test_data_paths.py ..                                              [ 21%]
> tests/test_dataset.py .................................                  [ 24%]
> tests/test_dataset_mask.py ............                                  [ 25%]
> tests/test_dataset_rw.py ...                                             [ 25%]
> tests/test_deprecated.py .                                               [ 25%]
> tests/test_descriptions.py ....                                          [ 26%]
> tests/test_driver_management.py ....                                     [ 26%]
> tests/test_driver_policy.py ..                                           [ 26%]
> tests/test_dtypes.py ..........................                          [ 29%]
> tests/test_enums.py ...........                                          [ 30%]
> tests/test_err.py .....x                                                 [ 30%]
> tests/test_features.py ................................................. [ 35%]
> ..........................s..X.......................................... [ 41%]
> ..                                                                       [ 41%]
> tests/test_filepath.py .............xx...                                [ 43%]
> tests/test_fillnodata.py ....                                            [ 43%]
> tests/test_gcps.py .........                                             [ 44%]
> tests/test_gdal_raster_io.py ...................................         [ 47%]
> tests/test_image_structure.py ...............                            [ 49%]
> tests/test_indexing.py .....................                             [ 51%]
> tests/test_int8.py .....                                                 [ 51%]
> tests/test_io_mixins.py .....                                            [ 52%]
> tests/test_mask.py .......................                               [ 54%]
> tests/test_mask_creation.py .....                                        [ 54%]
> tests/test_memoryfile.py ............................                    [ 57%]
> tests/test_meta.py ..                                                    [ 57%]
> tests/test_no_georef.py ..                                               [ 57%]
> tests/test_nodata.py ......                                              [ 58%]
> tests/test_open.py ......                                                [ 58%]
> tests/test_open_options.py ...                                           [ 59%]
> tests/test_open_overview_level.py .                                      [ 59%]
> tests/test_open_sharing.py ..                                            [ 59%]
> tests/test_options.py .                                                  [ 59%]
> tests/test_overviews.py ..............                                   [ 60%]
> tests/test_pad.py .                                                      [ 60%]
> tests/test_path.py ...................................................   [ 65%]
> tests/test_png.py .                                                      [ 65%]
> tests/test_process_pool_executor.py ..                                   [ 65%]
> tests/test_profile.py ...................                                [ 67%]
> tests/test_read.py ........................                              [ 69%]
> tests/test_read_boundless.py .............x                              [ 71%]
> tests/test_read_dtype.py ....                                            [ 71%]
> tests/test_read_resample.py .......x                                     [ 72%]
> tests/test_reshape_image.py ...                                          [ 72%]
> tests/test_revolvingdoor.py .                                            [ 72%]
> tests/test_rio_env.py ....                                               [ 72%]
> tests/test_rio_transform.py .                                            [ 73%]
> tests/test_rpcs.py ......                                                [ 73%]
> tests/test_sampling.py ...........                                       [ 74%]
> tests/test_scale_offset.py ........                                      [ 75%]
> tests/test_show_versions.py ....                                         [ 75%]
> tests/test_shutil.py .................                                   [ 77%]
> tests/test_statistics.py ..                                              [ 77%]
> tests/test_subdatasets.py s.                                             [ 77%]
> tests/test_tag_item.py ...                                               [ 77%]
> tests/test_tag_ns.py .                                                   [ 77%]
> tests/test_tags.py .....                                                 [ 78%]
> tests/test_thread_pool_executor.py ..                                    [ 78%]
> tests/test_threading.py ....                                             [ 79%]
> tests/test_tools.py ..                                                   [ 79%]
> tests/test_transform.py ................................................ [ 83%]
> .....................                                                    [ 85%]
> tests/test_units.py ....                                                 [ 85%]
> tests/test_update.py ........                                            [ 86%]
> tests/test_vrt.py ..                                                     [ 86%]
> tests/test_warnings.py ..FFF                                             [ 87%]
> tests/test_warp_transform.py ........................                    [ 89%]
> tests/test_windows.py .................................................. [ 94%]
> ................                                                         [ 95%]
> tests/test_windows_mixins.py ......                                      [ 96%]
> tests/test_write.py ........................................s.           [100%]
> 
> =================================== FAILURES ===================================
> _______________ test_no_notgeoref_warning[transform0-None-None] ________________
> 
> transform = Affine(2.0, 0.0, 0.0,
>        0.0, 2.0, 0.0), gcps = None
> rpcs = None
> 
>     @pytest.mark.parametrize('transform, gcps, rpcs', [(Affine.identity() * Affine.scale(2.0), None, None),
>                                                        (None, [rasterio.control.GroundControlPoint(0, 0, 0, 0, 0)], None),
>                                                        (None, None, gen_rpcs())])
>     def test_no_notgeoref_warning(transform, gcps, rpcs):
>         with rasterio.MemoryFile() as mem:
>             with mem.open(driver='GTiff', width=10, height=10, dtype='uint8', count=1, transform=transform) as src:
>                 if gcps:
>                     src.gcps = (gcps, rasterio.crs.CRS.from_epsg(4326))
>                 if rpcs:
>                     src.rpcs = rpcs
>     
> >           with pytest.warns(None) as record:
> 
> tests/test_warnings.py:39: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = WarningsChecker(record=True), expected_warning = None, match_expr = None
> 
>     def __init__(
>         self,
>         expected_warning: Optional[
>             Union[Type[Warning], Tuple[Type[Warning], ...]]
>         ] = Warning,
>         match_expr: Optional[Union[str, Pattern[str]]] = None,
>         *,
>         _ispytest: bool = False,
>     ) -> None:
>         check_ispytest(_ispytest)
>         super().__init__(_ispytest=True)
>     
>         msg = "exceptions must be derived from Warning, not %s"
>         if expected_warning is None:
> >           warnings.warn(WARNS_NONE_ARG, stacklevel=4)
> E           pytest.PytestRemovedIn8Warning: Passing None has been deprecated.
> E           See https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests for alternatives in common use cases.
> 
> /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: PytestRemovedIn8Warning
> ------------------------------ Captured log call -------------------------------
> DEBUG    rasterio._env:env.py:326 GDAL data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 PROJ data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 Started GDALEnv: self=<rasterio._env.GDALEnv object at 0x7f319a5f9b40>.
> DEBUG    rasterio._env:env.py:362 Stopped GDALEnv <rasterio._env.GDALEnv object at 0x7f319a5f9b40>.
> DEBUG    rasterio._env:env.py:326 GDAL data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 PROJ data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 Started GDALEnv: self=<rasterio._env.GDALEnv object at 0x7f319a5f9870>.
> DEBUG    rasterio._env:env.py:362 Stopped GDALEnv <rasterio._env.GDALEnv object at 0x7f319a5f9870>.
> __________________ test_no_notgeoref_warning[None-gcps1-None] __________________
> 
> transform = None
> gcps = [GroundControlPoint(row=0, col=0, x=0, y=0, z=0, id='f73186b2-337a-4c3f-8b50-58eef0910d8f')]
> rpcs = None
> 
>     @pytest.mark.parametrize('transform, gcps, rpcs', [(Affine.identity() * Affine.scale(2.0), None, None),
>                                                        (None, [rasterio.control.GroundControlPoint(0, 0, 0, 0, 0)], None),
>                                                        (None, None, gen_rpcs())])
>     def test_no_notgeoref_warning(transform, gcps, rpcs):
>         with rasterio.MemoryFile() as mem:
>             with mem.open(driver='GTiff', width=10, height=10, dtype='uint8', count=1, transform=transform) as src:
>                 if gcps:
>                     src.gcps = (gcps, rasterio.crs.CRS.from_epsg(4326))
>                 if rpcs:
>                     src.rpcs = rpcs
>     
> >           with pytest.warns(None) as record:
> 
> tests/test_warnings.py:39: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: in __init__
>     warnings.warn(WARNS_NONE_ARG, stacklevel=4)
> /usr/lib/python3/dist-packages/_pytest/runner.py:342: in from_call
>     result: Optional[TResult] = func()
> /usr/lib/python3/dist-packages/_pytest/runner.py:263: in <lambda>
>     lambda: ihook(item=item, **kwds), when=when, reraise=reraise
> /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__
>     return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
> /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec
>     return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
> /usr/lib/python3/dist-packages/_pytest/threadexception.py:87: in pytest_runtest_call
>     yield from thread_exception_runtest_hook()
> /usr/lib/python3/dist-packages/_pytest/threadexception.py:63: in thread_exception_runtest_hook
>     yield
> /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:90: in pytest_runtest_call
>     yield from unraisable_exception_runtest_hook()
> /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:65: in unraisable_exception_runtest_hook
>     yield
> /usr/lib/python3/dist-packages/_pytest/logging.py:839: in pytest_runtest_call
>     yield from self._runtest_for(item, "call")
> /usr/lib/python3/dist-packages/_pytest/logging.py:822: in _runtest_for
>     yield
> /usr/lib/python3/dist-packages/_pytest/capture.py:882: in pytest_runtest_call
>     return (yield)
> /usr/lib/python3/dist-packages/_pytest/skipping.py:256: in pytest_runtest_call
>     return (yield)
> /usr/lib/python3/dist-packages/_pytest/runner.py:178: in pytest_runtest_call
>     raise e
> /usr/lib/python3/dist-packages/_pytest/runner.py:170: in pytest_runtest_call
>     item.runtest()
> /usr/lib/python3/dist-packages/_pytest/python.py:1831: in runtest
>     self.ihook.pytest_pyfunc_call(pyfuncitem=self)
> /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__
>     return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
> /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec
>     return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
> /usr/lib/python3/dist-packages/_pytest/python.py:194: in pytest_pyfunc_call
>     result = testfunction(**testargs)
> tests/test_warnings.py:39: in test_no_notgeoref_warning
>     with pytest.warns(None) as record:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = WarningsChecker(record=True), expected_warning = None, match_expr = None
> 
>     def __init__(
>         self,
>         expected_warning: Optional[
>             Union[Type[Warning], Tuple[Type[Warning], ...]]
>         ] = Warning,
>         match_expr: Optional[Union[str, Pattern[str]]] = None,
>         *,
>         _ispytest: bool = False,
>     ) -> None:
>         check_ispytest(_ispytest)
>         super().__init__(_ispytest=True)
>     
>         msg = "exceptions must be derived from Warning, not %s"
>         if expected_warning is None:
> >           warnings.warn(WARNS_NONE_ARG, stacklevel=4)
> E           pytest.PytestRemovedIn8Warning: Passing None has been deprecated.
> E           See https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests for alternatives in common use cases.
> 
> /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: PytestRemovedIn8Warning
> ------------------------------ Captured log call -------------------------------
> DEBUG    rasterio._env:env.py:326 GDAL data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 PROJ data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 Started GDALEnv: self=<rasterio._env.GDALEnv object at 0x7f319a5f9480>.
> DEBUG    rasterio._env:env.py:362 Stopped GDALEnv <rasterio._env.GDALEnv object at 0x7f319a5f9480>.
> DEBUG    rasterio._env:env.py:326 GDAL data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 PROJ data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 Started GDALEnv: self=<rasterio._env.GDALEnv object at 0x7f319a5fab90>.
> DEBUG    rasterio._env:env.py:362 Stopped GDALEnv <rasterio._env.GDALEnv object at 0x7f319a5fab90>.
> __________________ test_no_notgeoref_warning[None-None-rpcs2] __________________
> 
> transform = None, gcps = None
> rpcs = RPC(height_off=89.0, height_scale=701.0, lat_off=49.2199, lat_scale=0.3093, line_den_coeff=[1.0, 0.0009222511757408093...8e-05, -1.230207121465409e-06, -2.830467933081173e-06], samp_off=3724.0, samp_scale=3725.0, err_bias=0.5, err_rand=0.5)
> 
>     @pytest.mark.parametrize('transform, gcps, rpcs', [(Affine.identity() * Affine.scale(2.0), None, None),
>                                                        (None, [rasterio.control.GroundControlPoint(0, 0, 0, 0, 0)], None),
>                                                        (None, None, gen_rpcs())])
>     def test_no_notgeoref_warning(transform, gcps, rpcs):
>         with rasterio.MemoryFile() as mem:
>             with mem.open(driver='GTiff', width=10, height=10, dtype='uint8', count=1, transform=transform) as src:
>                 if gcps:
>                     src.gcps = (gcps, rasterio.crs.CRS.from_epsg(4326))
>                 if rpcs:
>                     src.rpcs = rpcs
>     
> >           with pytest.warns(None) as record:
> 
> tests/test_warnings.py:39: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: in __init__
>     warnings.warn(WARNS_NONE_ARG, stacklevel=4)
> /usr/lib/python3/dist-packages/_pytest/runner.py:342: in from_call
>     result: Optional[TResult] = func()
> /usr/lib/python3/dist-packages/_pytest/runner.py:263: in <lambda>
>     lambda: ihook(item=item, **kwds), when=when, reraise=reraise
> /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__
>     return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
> /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec
>     return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
> /usr/lib/python3/dist-packages/_pytest/threadexception.py:87: in pytest_runtest_call
>     yield from thread_exception_runtest_hook()
> /usr/lib/python3/dist-packages/_pytest/threadexception.py:63: in thread_exception_runtest_hook
>     yield
> /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:90: in pytest_runtest_call
>     yield from unraisable_exception_runtest_hook()
> /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:65: in unraisable_exception_runtest_hook
>     yield
> /usr/lib/python3/dist-packages/_pytest/logging.py:839: in pytest_runtest_call
>     yield from self._runtest_for(item, "call")
> /usr/lib/python3/dist-packages/_pytest/logging.py:822: in _runtest_for
>     yield
> /usr/lib/python3/dist-packages/_pytest/capture.py:882: in pytest_runtest_call
>     return (yield)
> /usr/lib/python3/dist-packages/_pytest/skipping.py:256: in pytest_runtest_call
>     return (yield)
> /usr/lib/python3/dist-packages/_pytest/runner.py:178: in pytest_runtest_call
>     raise e
> /usr/lib/python3/dist-packages/_pytest/runner.py:170: in pytest_runtest_call
>     item.runtest()
> /usr/lib/python3/dist-packages/_pytest/python.py:1831: in runtest
>     self.ihook.pytest_pyfunc_call(pyfuncitem=self)
> /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__
>     return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
> /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec
>     return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
> /usr/lib/python3/dist-packages/_pytest/python.py:194: in pytest_pyfunc_call
>     result = testfunction(**testargs)
> tests/test_warnings.py:39: in test_no_notgeoref_warning
>     with pytest.warns(None) as record:
> /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: in __init__
>     warnings.warn(WARNS_NONE_ARG, stacklevel=4)
> /usr/lib/python3/dist-packages/_pytest/runner.py:342: in from_call
>     result: Optional[TResult] = func()
> /usr/lib/python3/dist-packages/_pytest/runner.py:263: in <lambda>
>     lambda: ihook(item=item, **kwds), when=when, reraise=reraise
> /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__
>     return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
> /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec
>     return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
> /usr/lib/python3/dist-packages/_pytest/threadexception.py:87: in pytest_runtest_call
>     yield from thread_exception_runtest_hook()
> /usr/lib/python3/dist-packages/_pytest/threadexception.py:63: in thread_exception_runtest_hook
>     yield
> /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:90: in pytest_runtest_call
>     yield from unraisable_exception_runtest_hook()
> /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:65: in unraisable_exception_runtest_hook
>     yield
> /usr/lib/python3/dist-packages/_pytest/logging.py:839: in pytest_runtest_call
>     yield from self._runtest_for(item, "call")
> /usr/lib/python3/dist-packages/_pytest/logging.py:822: in _runtest_for
>     yield
> /usr/lib/python3/dist-packages/_pytest/capture.py:882: in pytest_runtest_call
>     return (yield)
> /usr/lib/python3/dist-packages/_pytest/skipping.py:256: in pytest_runtest_call
>     return (yield)
> /usr/lib/python3/dist-packages/_pytest/runner.py:178: in pytest_runtest_call
>     raise e
> /usr/lib/python3/dist-packages/_pytest/runner.py:170: in pytest_runtest_call
>     item.runtest()
> /usr/lib/python3/dist-packages/_pytest/python.py:1831: in runtest
>     self.ihook.pytest_pyfunc_call(pyfuncitem=self)
> /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__
>     return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
> /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec
>     return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
> /usr/lib/python3/dist-packages/_pytest/python.py:194: in pytest_pyfunc_call
>     result = testfunction(**testargs)
> tests/test_warnings.py:39: in test_no_notgeoref_warning
>     with pytest.warns(None) as record:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = WarningsChecker(record=True), expected_warning = None, match_expr = None
> 
>     def __init__(
>         self,
>         expected_warning: Optional[
>             Union[Type[Warning], Tuple[Type[Warning], ...]]
>         ] = Warning,
>         match_expr: Optional[Union[str, Pattern[str]]] = None,
>         *,
>         _ispytest: bool = False,
>     ) -> None:
>         check_ispytest(_ispytest)
>         super().__init__(_ispytest=True)
>     
>         msg = "exceptions must be derived from Warning, not %s"
>         if expected_warning is None:
> >           warnings.warn(WARNS_NONE_ARG, stacklevel=4)
> E           pytest.PytestRemovedIn8Warning: Passing None has been deprecated.
> E           See https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests for alternatives in common use cases.
> 
> /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: PytestRemovedIn8Warning
> ------------------------------ Captured log call -------------------------------
> DEBUG    rasterio._env:env.py:326 GDAL data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 PROJ data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 Started GDALEnv: self=<rasterio._env.GDALEnv object at 0x7f319a5fab90>.
> DEBUG    rasterio._env:env.py:362 Stopped GDALEnv <rasterio._env.GDALEnv object at 0x7f319a5fab90>.
> DEBUG    rasterio._env:env.py:326 GDAL data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 PROJ data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 Started GDALEnv: self=<rasterio._env.GDALEnv object at 0x7f319a5fbac0>.
> DEBUG    rasterio._env:env.py:362 Stopped GDALEnv <rasterio._env.GDALEnv object at 0x7f319a5fbac0>.
> =============================== warnings summary ===============================
> ../../../../../../usr/lib/python3/dist-packages/dateutil/tz/tz.py:37
>   /usr/lib/python3/dist-packages/dateutil/tz/tz.py:37: DeprecationWarning: datetime.datetime.utcfromtimestamp() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.fromtimestamp(timestamp, datetime.UTC).
>     EPOCH = datetime.datetime.utcfromtimestamp(0)
> 
> tests/test_cli_main.py:1
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_rasterio/build/tests/test_cli_main.py:1: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
>     from pkg_resources import iter_entry_points
> 
> rasterio/__init__.py:304: 1 warning
> tests/test_blocks.py: 5 warnings
> tests/test_boundless_read.py: 1 warning
> tests/test_crs.py: 1 warning
> tests/test_dataset.py: 6 warnings
> tests/test_dataset_rw.py: 1 warning
> tests/test_dtypes.py: 1 warning
> tests/test_gdal_raster_io.py: 14 warnings
> tests/test_mask_creation.py: 1 warning
> tests/test_no_georef.py: 1 warning
> tests/test_open_options.py: 1 warning
> tests/test_overviews.py: 1 warning
> tests/test_read.py: 1 warning
> tests/test_rpcs.py: 1 warning
> tests/test_subdatasets.py: 1 warning
> tests/test_tags.py: 1 warning
> tests/test_write.py: 6 warnings
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_rasterio/build/rasterio/__init__.py:304: NotGeoreferencedWarning: Dataset has no geotransform, gcps, or rpcs. The identity matrix will be returned.
>     dataset = DatasetReader(path, driver=driver, sharing=sharing, **kwargs)
> 
> tests/test_blocks.py: 5 warnings
> tests/test_complex_dtypes.py: 3 warnings
> tests/test_creation_options.py: 1 warning
> tests/test_dataset.py: 6 warnings
> tests/test_dataset_rw.py: 2 warnings
> tests/test_descriptions.py: 4 warnings
> tests/test_dtypes.py: 1 warning
> tests/test_gdal_raster_io.py: 35 warnings
> tests/test_no_georef.py: 2 warnings
> tests/test_png.py: 1 warning
> tests/test_profile.py: 1 warning
> tests/test_rpcs.py: 1 warning
> tests/test_scale_offset.py: 8 warnings
> tests/test_tags.py: 3 warnings
> tests/test_units.py: 4 warnings
> tests/test_write.py: 23 warnings
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_rasterio/build/rasterio/__init__.py:314: NotGeoreferencedWarning: Dataset has no geotransform, gcps, or rpcs. The identity matrix will be returned.
>     dataset = writer(
> 
> tests/test_boundless_read.py::test_issue2382
> tests/test_memoryfile.py::test_write_rpcs_to_memfile
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_rasterio/build/rasterio/io.py:141: NotGeoreferencedWarning: The given matrix is equal to Affine.identity or its flipped counterpart. GDAL may ignore this matrix and save no geotransform without raising an error. This behavior is somewhat driver-specific.
>     return writer(
> 
> tests/test_dataset.py: 4 warnings
> tests/test_features.py: 9 warnings
> tests/test_mask.py: 21 warnings
> tests/test_no_georef.py: 1 warning
> tests/test_write.py: 2 warnings
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_rasterio/build/rasterio/__init__.py:314: NotGeoreferencedWarning: The given matrix is equal to Affine.identity or its flipped counterpart. GDAL may ignore this matrix and save no geotransform without raising an error. This behavior is somewhat driver-specific.
>     dataset = writer(
> 
> tests/test_dtypes.py::test_cant_cast_dtype_nan[uint8]
> tests/test_dtypes.py::test_cant_cast_dtype_nan[uint16]
> tests/test_dtypes.py::test_cant_cast_dtype_nan[uint32]
> tests/test_dtypes.py::test_cant_cast_dtype_nan[int32]
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_rasterio/build/rasterio/dtypes.py:224: RuntimeWarning: invalid value encountered in cast
>     return np.allclose(values, values.astype(dtype), equal_nan=True)
> 
> tests/test_nodata.py::test_set_mem_inf_nodata
> tests/test_nodata.py::test_set_mem_nan_nodata
> tests/test_warnings.py::test_notgeoref_warning
> tests/test_warnings.py::test_no_notgeoref_warning[None-gcps1-None]
> tests/test_warnings.py::test_no_notgeoref_warning[None-None-rpcs2]
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_rasterio/build/rasterio/io.py:141: NotGeoreferencedWarning: Dataset has no geotransform, gcps, or rpcs. The identity matrix will be returned.
>     return writer(
> 
> -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
> =========================== short test summary info ============================
> FAILED tests/test_warnings.py::test_no_notgeoref_warning[transform0-None-None]
> FAILED tests/test_warnings.py::test_no_notgeoref_warning[None-gcps1-None] - p...
> FAILED tests/test_warnings.py::test_no_notgeoref_warning[None-None-rpcs2] - p...
> = 3 failed, 1067 passed, 4 skipped, 7 xfailed, 6 xpassed, 194 warnings in 21.83s =
> E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_rasterio/build; python3.12 -m pytest --ignore tests/test_env.py --ignore tests/test_io.py --ignore tests/test_merge.py --ignore tests/test_rio_blocks.py --ignore tests/test_rio_bounds.py --ignore tests/test_rio_calc.py --ignore tests/test_rio_clip.py --ignore tests/test_rio_convert.py --ignore tests/test_rio_edit_info.py --ignore tests/test_rio_gcp.py --ignore tests/test_rio_helpers.py --ignore tests/test_rio_info.py --ignore tests/test_rio_insp.py --ignore tests/test_rio_main.py --ignore tests/test_rio_mask.py --ignore tests/test_rio_merge.py --ignore tests/test_rio_options.py --ignore tests/test_rio_overview.py --ignore tests/test_rio_rasterize.py --ignore tests/test_rio_rm.py --ignore tests/test_rio_sample.py --ignore tests/test_rio_shapes.py --ignore tests/test_rio_stack.py --ignore tests/test_rio_warp.py --ignore tests/test_session.py --ignore tests/test_warp.py --ignore tests/test_warpedvrt.py
> I: pybuild pybuild:308: cp -r /<<PKGBUILDDIR>>/tests /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_rasterio/build
> I: pybuild base:305: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_rasterio/build; python3.11 -m pytest --ignore tests/test_env.py --ignore tests/test_io.py --ignore tests/test_merge.py --ignore tests/test_rio_blocks.py --ignore tests/test_rio_bounds.py --ignore tests/test_rio_calc.py --ignore tests/test_rio_clip.py --ignore tests/test_rio_convert.py --ignore tests/test_rio_edit_info.py --ignore tests/test_rio_gcp.py --ignore tests/test_rio_helpers.py --ignore tests/test_rio_info.py --ignore tests/test_rio_insp.py --ignore tests/test_rio_main.py --ignore tests/test_rio_mask.py --ignore tests/test_rio_merge.py --ignore tests/test_rio_options.py --ignore tests/test_rio_overview.py --ignore tests/test_rio_rasterize.py --ignore tests/test_rio_rm.py --ignore tests/test_rio_sample.py --ignore tests/test_rio_shapes.py --ignore tests/test_rio_stack.py --ignore tests/test_rio_warp.py --ignore tests/test_session.py --ignore tests/test_warp.py --ignore tests/test_warpedvrt.py
> Test data present.
> ============================= test session starts ==============================
> platform linux -- Python 3.11.8, pytest-8.0.2, pluggy-1.4.0
> rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_rasterio/build
> configfile: pyproject.toml
> plugins: hypothesis-6.98.15
> collected 1086 items / 1 skipped
> 
> tests/test__env.py .................                                     [  1%]
> tests/test__version.py .....                                             [  2%]
> tests/test_band.py .                                                     [  2%]
> tests/test_band_masks.py ...........                                     [  3%]
> tests/test_blocks.py .......................                             [  5%]
> tests/test_boundless_read.py .XX...X..XX.                                [  6%]
> tests/test_checksum.py ......                                            [  6%]
> tests/test_cli_main.py ..                                                [  7%]
> tests/test_colorinterp.py .....xx...............                         [  9%]
> tests/test_colormap.py ..                                                [  9%]
> tests/test_complex_dtypes.py .....                                       [  9%]
> tests/test_coords.py ......                                              [ 10%]
> tests/test_creation_options.py .                                         [ 10%]
> tests/test_crs.py ...................................................... [ 15%]
> .............................................................            [ 20%]
> tests/test_data_paths.py ..                                              [ 21%]
> tests/test_dataset.py .................................                  [ 24%]
> tests/test_dataset_mask.py ............                                  [ 25%]
> tests/test_dataset_rw.py ...                                             [ 25%]
> tests/test_deprecated.py .                                               [ 25%]
> tests/test_descriptions.py ....                                          [ 26%]
> tests/test_driver_management.py ....                                     [ 26%]
> tests/test_driver_policy.py ..                                           [ 26%]
> tests/test_dtypes.py ..........................                          [ 29%]
> tests/test_enums.py ...........                                          [ 30%]
> tests/test_err.py .....x                                                 [ 30%]
> tests/test_features.py ................................................. [ 35%]
> ..........................s..X.......................................... [ 41%]
> ..                                                                       [ 41%]
> tests/test_filepath.py .............xx...                                [ 43%]
> tests/test_fillnodata.py ....                                            [ 43%]
> tests/test_gcps.py .........                                             [ 44%]
> tests/test_gdal_raster_io.py ...................................         [ 47%]
> tests/test_image_structure.py ...............                            [ 49%]
> tests/test_indexing.py .....................                             [ 51%]
> tests/test_int8.py .....                                                 [ 51%]
> tests/test_io_mixins.py .....                                            [ 52%]
> tests/test_mask.py .......................                               [ 54%]
> tests/test_mask_creation.py .....                                        [ 54%]
> tests/test_memoryfile.py ............................                    [ 57%]
> tests/test_meta.py ..                                                    [ 57%]
> tests/test_no_georef.py ..                                               [ 57%]
> tests/test_nodata.py ......                                              [ 58%]
> tests/test_open.py ......                                                [ 58%]
> tests/test_open_options.py ...                                           [ 59%]
> tests/test_open_overview_level.py .                                      [ 59%]
> tests/test_open_sharing.py ..                                            [ 59%]
> tests/test_options.py .                                                  [ 59%]
> tests/test_overviews.py ..............                                   [ 60%]
> tests/test_pad.py .                                                      [ 60%]
> tests/test_path.py ...................................................   [ 65%]
> tests/test_png.py .                                                      [ 65%]
> tests/test_process_pool_executor.py ..                                   [ 65%]
> tests/test_profile.py ...................                                [ 67%]
> tests/test_read.py ........................                              [ 69%]
> tests/test_read_boundless.py .............x                              [ 71%]
> tests/test_read_dtype.py ....                                            [ 71%]
> tests/test_read_resample.py .......x                                     [ 72%]
> tests/test_reshape_image.py ...                                          [ 72%]
> tests/test_revolvingdoor.py .                                            [ 72%]
> tests/test_rio_env.py ....                                               [ 72%]
> tests/test_rio_transform.py .                                            [ 73%]
> tests/test_rpcs.py ......                                                [ 73%]
> tests/test_sampling.py ...........                                       [ 74%]
> tests/test_scale_offset.py ........                                      [ 75%]
> tests/test_show_versions.py ....                                         [ 75%]
> tests/test_shutil.py .................                                   [ 77%]
> tests/test_statistics.py ..                                              [ 77%]
> tests/test_subdatasets.py s.                                             [ 77%]
> tests/test_tag_item.py ...                                               [ 77%]
> tests/test_tag_ns.py .                                                   [ 77%]
> tests/test_tags.py .....                                                 [ 78%]
> tests/test_thread_pool_executor.py ..                                    [ 78%]
> tests/test_threading.py ....                                             [ 79%]
> tests/test_tools.py ..                                                   [ 79%]
> tests/test_transform.py ................................................ [ 83%]
> .....................                                                    [ 85%]
> tests/test_units.py ....                                                 [ 85%]
> tests/test_update.py ........                                            [ 86%]
> tests/test_vrt.py ..                                                     [ 86%]
> tests/test_warnings.py ..FFF                                             [ 87%]
> tests/test_warp_transform.py ........................                    [ 89%]
> tests/test_windows.py .................................................. [ 94%]
> ................                                                         [ 95%]
> tests/test_windows_mixins.py ......                                      [ 96%]
> tests/test_write.py ........................................s.           [100%]
> 
> =================================== FAILURES ===================================
> _______________ test_no_notgeoref_warning[transform0-None-None] ________________
> 
> transform = Affine(2.0, 0.0, 0.0,
>        0.0, 2.0, 0.0), gcps = None
> rpcs = None
> 
>     @pytest.mark.parametrize('transform, gcps, rpcs', [(Affine.identity() * Affine.scale(2.0), None, None),
>                                                        (None, [rasterio.control.GroundControlPoint(0, 0, 0, 0, 0)], None),
>                                                        (None, None, gen_rpcs())])
>     def test_no_notgeoref_warning(transform, gcps, rpcs):
>         with rasterio.MemoryFile() as mem:
>             with mem.open(driver='GTiff', width=10, height=10, dtype='uint8', count=1, transform=transform) as src:
>                 if gcps:
>                     src.gcps = (gcps, rasterio.crs.CRS.from_epsg(4326))
>                 if rpcs:
>                     src.rpcs = rpcs
>     
> >           with pytest.warns(None) as record:
> 
> tests/test_warnings.py:39: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = WarningsChecker(record=True), expected_warning = None, match_expr = None
> 
>     def __init__(
>         self,
>         expected_warning: Optional[
>             Union[Type[Warning], Tuple[Type[Warning], ...]]
>         ] = Warning,
>         match_expr: Optional[Union[str, Pattern[str]]] = None,
>         *,
>         _ispytest: bool = False,
>     ) -> None:
>         check_ispytest(_ispytest)
>         super().__init__(_ispytest=True)
>     
>         msg = "exceptions must be derived from Warning, not %s"
>         if expected_warning is None:
> >           warnings.warn(WARNS_NONE_ARG, stacklevel=4)
> E           pytest.PytestRemovedIn8Warning: Passing None has been deprecated.
> E           See https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests for alternatives in common use cases.
> 
> /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: PytestRemovedIn8Warning
> ------------------------------ Captured log call -------------------------------
> DEBUG    rasterio._env:env.py:326 GDAL data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 PROJ data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 Started GDALEnv: self=<rasterio._env.GDALEnv object at 0x7f6bb864aa40>.
> DEBUG    rasterio._env:env.py:362 Stopped GDALEnv <rasterio._env.GDALEnv object at 0x7f6bb864aa40>.
> DEBUG    rasterio._env:env.py:326 GDAL data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 PROJ data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 Started GDALEnv: self=<rasterio._env.GDALEnv object at 0x7f6bb864a800>.
> DEBUG    rasterio._env:env.py:362 Stopped GDALEnv <rasterio._env.GDALEnv object at 0x7f6bb864a800>.
> __________________ test_no_notgeoref_warning[None-gcps1-None] __________________
> 
> transform = None
> gcps = [GroundControlPoint(row=0, col=0, x=0, y=0, z=0, id='8da4522e-9f72-419c-9f46-12e8fdf37254')]
> rpcs = None
> 
>     @pytest.mark.parametrize('transform, gcps, rpcs', [(Affine.identity() * Affine.scale(2.0), None, None),
>                                                        (None, [rasterio.control.GroundControlPoint(0, 0, 0, 0, 0)], None),
>                                                        (None, None, gen_rpcs())])
>     def test_no_notgeoref_warning(transform, gcps, rpcs):
>         with rasterio.MemoryFile() as mem:
>             with mem.open(driver='GTiff', width=10, height=10, dtype='uint8', count=1, transform=transform) as src:
>                 if gcps:
>                     src.gcps = (gcps, rasterio.crs.CRS.from_epsg(4326))
>                 if rpcs:
>                     src.rpcs = rpcs
>     
> >           with pytest.warns(None) as record:
> 
> tests/test_warnings.py:39: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: in __init__
>     warnings.warn(WARNS_NONE_ARG, stacklevel=4)
> /usr/lib/python3/dist-packages/_pytest/runner.py:342: in from_call
>     result: Optional[TResult] = func()
> /usr/lib/python3/dist-packages/_pytest/runner.py:263: in <lambda>
>     lambda: ihook(item=item, **kwds), when=when, reraise=reraise
> /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__
>     return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
> /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec
>     return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
> /usr/lib/python3/dist-packages/_pytest/threadexception.py:87: in pytest_runtest_call
>     yield from thread_exception_runtest_hook()
> /usr/lib/python3/dist-packages/_pytest/threadexception.py:63: in thread_exception_runtest_hook
>     yield
> /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:90: in pytest_runtest_call
>     yield from unraisable_exception_runtest_hook()
> /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:65: in unraisable_exception_runtest_hook
>     yield
> /usr/lib/python3/dist-packages/_pytest/logging.py:839: in pytest_runtest_call
>     yield from self._runtest_for(item, "call")
> /usr/lib/python3/dist-packages/_pytest/logging.py:822: in _runtest_for
>     yield
> /usr/lib/python3/dist-packages/_pytest/capture.py:882: in pytest_runtest_call
>     return (yield)
> /usr/lib/python3/dist-packages/_pytest/skipping.py:256: in pytest_runtest_call
>     return (yield)
> /usr/lib/python3/dist-packages/_pytest/runner.py:178: in pytest_runtest_call
>     raise e
> /usr/lib/python3/dist-packages/_pytest/runner.py:170: in pytest_runtest_call
>     item.runtest()
> /usr/lib/python3/dist-packages/_pytest/python.py:1831: in runtest
>     self.ihook.pytest_pyfunc_call(pyfuncitem=self)
> /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__
>     return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
> /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec
>     return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
> /usr/lib/python3/dist-packages/_pytest/python.py:194: in pytest_pyfunc_call
>     result = testfunction(**testargs)
> tests/test_warnings.py:39: in test_no_notgeoref_warning
>     with pytest.warns(None) as record:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = WarningsChecker(record=True), expected_warning = None, match_expr = None
> 
>     def __init__(
>         self,
>         expected_warning: Optional[
>             Union[Type[Warning], Tuple[Type[Warning], ...]]
>         ] = Warning,
>         match_expr: Optional[Union[str, Pattern[str]]] = None,
>         *,
>         _ispytest: bool = False,
>     ) -> None:
>         check_ispytest(_ispytest)
>         super().__init__(_ispytest=True)
>     
>         msg = "exceptions must be derived from Warning, not %s"
>         if expected_warning is None:
> >           warnings.warn(WARNS_NONE_ARG, stacklevel=4)
> E           pytest.PytestRemovedIn8Warning: Passing None has been deprecated.
> E           See https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests for alternatives in common use cases.
> 
> /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: PytestRemovedIn8Warning
> ------------------------------ Captured log call -------------------------------
> DEBUG    rasterio._env:env.py:326 GDAL data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 PROJ data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 Started GDALEnv: self=<rasterio._env.GDALEnv object at 0x7f6bb8527a30>.
> DEBUG    rasterio._env:env.py:362 Stopped GDALEnv <rasterio._env.GDALEnv object at 0x7f6bb8527a30>.
> DEBUG    rasterio._env:env.py:326 GDAL data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 PROJ data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 Started GDALEnv: self=<rasterio._env.GDALEnv object at 0x7f6bb8527e50>.
> DEBUG    rasterio._env:env.py:362 Stopped GDALEnv <rasterio._env.GDALEnv object at 0x7f6bb8527e50>.
> __________________ test_no_notgeoref_warning[None-None-rpcs2] __________________
> 
> transform = None, gcps = None
> rpcs = RPC(height_off=89.0, height_scale=701.0, lat_off=49.2199, lat_scale=0.3093, line_den_coeff=[1.0, 0.0009222511757408093...8e-05, -1.230207121465409e-06, -2.830467933081173e-06], samp_off=3724.0, samp_scale=3725.0, err_bias=0.5, err_rand=0.5)
> 
>     @pytest.mark.parametrize('transform, gcps, rpcs', [(Affine.identity() * Affine.scale(2.0), None, None),
>                                                        (None, [rasterio.control.GroundControlPoint(0, 0, 0, 0, 0)], None),
>                                                        (None, None, gen_rpcs())])
>     def test_no_notgeoref_warning(transform, gcps, rpcs):
>         with rasterio.MemoryFile() as mem:
>             with mem.open(driver='GTiff', width=10, height=10, dtype='uint8', count=1, transform=transform) as src:
>                 if gcps:
>                     src.gcps = (gcps, rasterio.crs.CRS.from_epsg(4326))
>                 if rpcs:
>                     src.rpcs = rpcs
>     
> >           with pytest.warns(None) as record:
> 
> tests/test_warnings.py:39: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: in __init__
>     warnings.warn(WARNS_NONE_ARG, stacklevel=4)
> /usr/lib/python3/dist-packages/_pytest/runner.py:342: in from_call
>     result: Optional[TResult] = func()
> /usr/lib/python3/dist-packages/_pytest/runner.py:263: in <lambda>
>     lambda: ihook(item=item, **kwds), when=when, reraise=reraise
> /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__
>     return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
> /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec
>     return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
> /usr/lib/python3/dist-packages/_pytest/threadexception.py:87: in pytest_runtest_call
>     yield from thread_exception_runtest_hook()
> /usr/lib/python3/dist-packages/_pytest/threadexception.py:63: in thread_exception_runtest_hook
>     yield
> /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:90: in pytest_runtest_call
>     yield from unraisable_exception_runtest_hook()
> /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:65: in unraisable_exception_runtest_hook
>     yield
> /usr/lib/python3/dist-packages/_pytest/logging.py:839: in pytest_runtest_call
>     yield from self._runtest_for(item, "call")
> /usr/lib/python3/dist-packages/_pytest/logging.py:822: in _runtest_for
>     yield
> /usr/lib/python3/dist-packages/_pytest/capture.py:882: in pytest_runtest_call
>     return (yield)
> /usr/lib/python3/dist-packages/_pytest/skipping.py:256: in pytest_runtest_call
>     return (yield)
> /usr/lib/python3/dist-packages/_pytest/runner.py:178: in pytest_runtest_call
>     raise e
> /usr/lib/python3/dist-packages/_pytest/runner.py:170: in pytest_runtest_call
>     item.runtest()
> /usr/lib/python3/dist-packages/_pytest/python.py:1831: in runtest
>     self.ihook.pytest_pyfunc_call(pyfuncitem=self)
> /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__
>     return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
> /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec
>     return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
> /usr/lib/python3/dist-packages/_pytest/python.py:194: in pytest_pyfunc_call
>     result = testfunction(**testargs)
> tests/test_warnings.py:39: in test_no_notgeoref_warning
>     with pytest.warns(None) as record:
> /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: in __init__
>     warnings.warn(WARNS_NONE_ARG, stacklevel=4)
> /usr/lib/python3/dist-packages/_pytest/runner.py:342: in from_call
>     result: Optional[TResult] = func()
> /usr/lib/python3/dist-packages/_pytest/runner.py:263: in <lambda>
>     lambda: ihook(item=item, **kwds), when=when, reraise=reraise
> /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__
>     return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
> /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec
>     return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
> /usr/lib/python3/dist-packages/_pytest/threadexception.py:87: in pytest_runtest_call
>     yield from thread_exception_runtest_hook()
> /usr/lib/python3/dist-packages/_pytest/threadexception.py:63: in thread_exception_runtest_hook
>     yield
> /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:90: in pytest_runtest_call
>     yield from unraisable_exception_runtest_hook()
> /usr/lib/python3/dist-packages/_pytest/unraisableexception.py:65: in unraisable_exception_runtest_hook
>     yield
> /usr/lib/python3/dist-packages/_pytest/logging.py:839: in pytest_runtest_call
>     yield from self._runtest_for(item, "call")
> /usr/lib/python3/dist-packages/_pytest/logging.py:822: in _runtest_for
>     yield
> /usr/lib/python3/dist-packages/_pytest/capture.py:882: in pytest_runtest_call
>     return (yield)
> /usr/lib/python3/dist-packages/_pytest/skipping.py:256: in pytest_runtest_call
>     return (yield)
> /usr/lib/python3/dist-packages/_pytest/runner.py:178: in pytest_runtest_call
>     raise e
> /usr/lib/python3/dist-packages/_pytest/runner.py:170: in pytest_runtest_call
>     item.runtest()
> /usr/lib/python3/dist-packages/_pytest/python.py:1831: in runtest
>     self.ihook.pytest_pyfunc_call(pyfuncitem=self)
> /usr/lib/python3/dist-packages/pluggy/_hooks.py:501: in __call__
>     return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult)
> /usr/lib/python3/dist-packages/pluggy/_manager.py:119: in _hookexec
>     return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
> /usr/lib/python3/dist-packages/_pytest/python.py:194: in pytest_pyfunc_call
>     result = testfunction(**testargs)
> tests/test_warnings.py:39: in test_no_notgeoref_warning
>     with pytest.warns(None) as record:
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> self = WarningsChecker(record=True), expected_warning = None, match_expr = None
> 
>     def __init__(
>         self,
>         expected_warning: Optional[
>             Union[Type[Warning], Tuple[Type[Warning], ...]]
>         ] = Warning,
>         match_expr: Optional[Union[str, Pattern[str]]] = None,
>         *,
>         _ispytest: bool = False,
>     ) -> None:
>         check_ispytest(_ispytest)
>         super().__init__(_ispytest=True)
>     
>         msg = "exceptions must be derived from Warning, not %s"
>         if expected_warning is None:
> >           warnings.warn(WARNS_NONE_ARG, stacklevel=4)
> E           pytest.PytestRemovedIn8Warning: Passing None has been deprecated.
> E           See https://docs.pytest.org/en/latest/how-to/capture-warnings.html#additional-use-cases-of-warnings-in-tests for alternatives in common use cases.
> 
> /usr/lib/python3/dist-packages/_pytest/recwarn.py:281: PytestRemovedIn8Warning
> ------------------------------ Captured log call -------------------------------
> DEBUG    rasterio._env:env.py:326 GDAL data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 PROJ data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 Started GDALEnv: self=<rasterio._env.GDALEnv object at 0x7f6bb842ecb0>.
> DEBUG    rasterio._env:env.py:362 Stopped GDALEnv <rasterio._env.GDALEnv object at 0x7f6bb842ecb0>.
> DEBUG    rasterio._env:env.py:326 GDAL data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 PROJ data files are available at built-in paths.
> DEBUG    rasterio._env:env.py:326 Started GDALEnv: self=<rasterio._env.GDALEnv object at 0x7f6bb842ece0>.
> DEBUG    rasterio._env:env.py:362 Stopped GDALEnv <rasterio._env.GDALEnv object at 0x7f6bb842ece0>.
> =============================== warnings summary ===============================
> tests/test_cli_main.py:1
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_rasterio/build/tests/test_cli_main.py:1: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
>     from pkg_resources import iter_entry_points
> 
> rasterio/__init__.py:304: 1 warning
> tests/test_blocks.py: 5 warnings
> tests/test_boundless_read.py: 1 warning
> tests/test_crs.py: 1 warning
> tests/test_dataset.py: 6 warnings
> tests/test_dataset_rw.py: 1 warning
> tests/test_dtypes.py: 1 warning
> tests/test_gdal_raster_io.py: 14 warnings
> tests/test_mask_creation.py: 1 warning
> tests/test_no_georef.py: 1 warning
> tests/test_open_options.py: 1 warning
> tests/test_overviews.py: 1 warning
> tests/test_read.py: 1 warning
> tests/test_rpcs.py: 1 warning
> tests/test_subdatasets.py: 1 warning
> tests/test_tags.py: 1 warning
> tests/test_write.py: 6 warnings
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_rasterio/build/rasterio/__init__.py:304: NotGeoreferencedWarning: Dataset has no geotransform, gcps, or rpcs. The identity matrix will be returned.
>     dataset = DatasetReader(path, driver=driver, sharing=sharing, **kwargs)
> 
> tests/test_blocks.py: 5 warnings
> tests/test_complex_dtypes.py: 3 warnings
> tests/test_creation_options.py: 1 warning
> tests/test_dataset.py: 6 warnings
> tests/test_dataset_rw.py: 2 warnings
> tests/test_descriptions.py: 4 warnings
> tests/test_dtypes.py: 1 warning
> tests/test_gdal_raster_io.py: 35 warnings
> tests/test_no_georef.py: 2 warnings
> tests/test_png.py: 1 warning
> tests/test_profile.py: 1 warning
> tests/test_rpcs.py: 1 warning
> tests/test_scale_offset.py: 8 warnings
> tests/test_tags.py: 3 warnings
> tests/test_units.py: 4 warnings
> tests/test_write.py: 23 warnings
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_rasterio/build/rasterio/__init__.py:314: NotGeoreferencedWarning: Dataset has no geotransform, gcps, or rpcs. The identity matrix will be returned.
>     dataset = writer(
> 
> tests/test_boundless_read.py::test_issue2382
> tests/test_memoryfile.py::test_write_rpcs_to_memfile
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_rasterio/build/rasterio/io.py:141: NotGeoreferencedWarning: The given matrix is equal to Affine.identity or its flipped counterpart. GDAL may ignore this matrix and save no geotransform without raising an error. This behavior is somewhat driver-specific.
>     return writer(
> 
> tests/test_dataset.py: 4 warnings
> tests/test_features.py: 9 warnings
> tests/test_mask.py: 21 warnings
> tests/test_no_georef.py: 1 warning
> tests/test_write.py: 2 warnings
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_rasterio/build/rasterio/__init__.py:314: NotGeoreferencedWarning: The given matrix is equal to Affine.identity or its flipped counterpart. GDAL may ignore this matrix and save no geotransform without raising an error. This behavior is somewhat driver-specific.
>     dataset = writer(
> 
> tests/test_dtypes.py::test_cant_cast_dtype_nan[uint8]
> tests/test_dtypes.py::test_cant_cast_dtype_nan[uint16]
> tests/test_dtypes.py::test_cant_cast_dtype_nan[uint32]
> tests/test_dtypes.py::test_cant_cast_dtype_nan[int32]
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_rasterio/build/rasterio/dtypes.py:224: RuntimeWarning: invalid value encountered in cast
>     return np.allclose(values, values.astype(dtype), equal_nan=True)
> 
> tests/test_nodata.py::test_set_mem_inf_nodata
> tests/test_nodata.py::test_set_mem_nan_nodata
> tests/test_warnings.py::test_notgeoref_warning
> tests/test_warnings.py::test_no_notgeoref_warning[None-gcps1-None]
> tests/test_warnings.py::test_no_notgeoref_warning[None-None-rpcs2]
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_rasterio/build/rasterio/io.py:141: NotGeoreferencedWarning: Dataset has no geotransform, gcps, or rpcs. The identity matrix will be returned.
>     return writer(
> 
> -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
> =========================== short test summary info ============================
> FAILED tests/test_warnings.py::test_no_notgeoref_warning[transform0-None-None]
> FAILED tests/test_warnings.py::test_no_notgeoref_warning[None-gcps1-None] - p...
> FAILED tests/test_warnings.py::test_no_notgeoref_warning[None-None-rpcs2] - p...
> = 3 failed, 1067 passed, 4 skipped, 7 xfailed, 6 xpassed, 193 warnings in 22.41s =
> E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_rasterio/build; python3.11 -m pytest --ignore tests/test_env.py --ignore tests/test_io.py --ignore tests/test_merge.py --ignore tests/test_rio_blocks.py --ignore tests/test_rio_bounds.py --ignore tests/test_rio_calc.py --ignore tests/test_rio_clip.py --ignore tests/test_rio_convert.py --ignore tests/test_rio_edit_info.py --ignore tests/test_rio_gcp.py --ignore tests/test_rio_helpers.py --ignore tests/test_rio_info.py --ignore tests/test_rio_insp.py --ignore tests/test_rio_main.py --ignore tests/test_rio_mask.py --ignore tests/test_rio_merge.py --ignore tests/test_rio_options.py --ignore tests/test_rio_overview.py --ignore tests/test_rio_rasterize.py --ignore tests/test_rio_rm.py --ignore tests/test_rio_sample.py --ignore tests/test_rio_shapes.py --ignore tests/test_rio_stack.py --ignore tests/test_rio_warp.py --ignore tests/test_session.py --ignore tests/test_warp.py --ignore tests/test_warpedvrt.py
> dh_auto_test: error: pybuild --test -i python{version} -p "3.12 3.11" returned exit code 13


The full build log is available from:
http://qa-logs.debian.net/2024/03/13/rasterio_1.3.9-3_unstable.log

All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20240313;users=lucas@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20240313&fusertaguser=lucas@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

If you reassign this bug to another package, please mark it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects

If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.



More information about the Pkg-grass-devel mailing list