Source: cfgrib
Version: 0.9.10.3-1
Severity: serious
Justification: FTBFS
Tags: bookworm sid ftbfs
User: lu...@debian.org
Usertags: ftbfs-20230323 ftbfs-bookworm

Hi,

During a rebuild of all packages in testing (bookworm), your package failed
to build on amd64.


Relevant part (hopefully):
> make[1]: Entering directory '/<<PKGBUILDDIR>>'
> for p in python3.11; do \
> PY3VERNUM=`echo $p | sed -e 's/python//' `; \
>       pybuild --test --test-pytest -i $p -p $PY3VERNUM  ;  \
>                 done
> I: pybuild base:240: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cfgrib/build; 
> python3.11 -m pytest tests
> ============================= test session starts 
> ==============================
> platform linux -- Python 3.11.2, pytest-7.2.1, pluggy-1.0.0+repack
> rootdir: /<<PKGBUILDDIR>>, configfile: pyproject.toml
> collected 117 items / 1 skipped
> 
> tests/test_10_cfunits.py .                                               [  
> 0%]
> tests/test_20_cfcoords.py .....                                          [  
> 5%]
> tests/test_20_main.py .                                                  [  
> 5%]
> tests/test_20_messages.py .........                                      [ 
> 13%]
> tests/test_25_cfmessage.py .....                                         [ 
> 17%]
> tests/test_30_dataset.py ............................                    [ 
> 41%]
> tests/test_40_xarray_store.py .....X..                                   [ 
> 48%]
> tests/test_40_xarray_to_grib_regular_ll.py .....                         [ 
> 52%]
> tests/test_50_datamodels.py ..                                           [ 
> 54%]
> tests/test_50_sample_data.py .....................X.x.FF.x.X.x.XX.       [ 
> 86%]
> tests/test_50_xarray_getitem.py ..........                               [ 
> 94%]
> tests/test_50_xarray_plugin.py ......                                    
> [100%]
> 
> =================================== FAILURES 
> ===================================
> ________________ test_canonical_dataset_to_grib[regular_gg_sfc] 
> ________________
> 
> grib_name = 'regular_gg_sfc'
> tmpdir = 
> local('/tmp/pytest-of-user42/pytest-5/test_canonical_dataset_to_grib5')
> 
>     @pytest.mark.parametrize(
>         "grib_name",
>         [
>             pytest.param("era5-levels-members", marks=pytest.mark.xfail),
>             "fields_with_missing_values",
>             pytest.param("lambert_grid", marks=pytest.mark.xfail),
>             "reduced_gg",
>             "regular_gg_sfc",
>             "regular_gg_pl",
>             "regular_gg_ml",
>             pytest.param("regular_gg_ml_g2", marks=pytest.mark.xfail),
>             "regular_ll_sfc",
>             pytest.param("regular_ll_msl", marks=pytest.mark.xfail),
>             "scanning_mode_64",
>             pytest.param("spherical_harmonics", marks=pytest.mark.xfail),
>             "t_analysis_and_fc_0",
>         ],
>     )
>     def test_canonical_dataset_to_grib(grib_name: str, tmpdir: py.path.local) 
> -> None:
>         grib_path = os.path.join(SAMPLE_DATA_FOLDER, grib_name + ".grib")
>         out_path = str(tmpdir.join(grib_name + ".grib"))
>     
>         res = xarray_store.open_dataset(grib_path)
>     
>         with pytest.warns(FutureWarning):
>             xarray_to_grib.canonical_dataset_to_grib(res, out_path)
> >       reread = xarray_store.open_dataset(out_path)
> 
> tests/test_50_sample_data.py:93: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> cfgrib/xarray_store.py:39: in open_dataset
>     return xr.open_dataset(path, **kwargs)  # type: ignore
> /usr/lib/python3/dist-packages/xarray/backends/api.py:541: in open_dataset
>     backend_ds = backend.open_dataset(
> cfgrib/xarray_plugin.py:109: in open_dataset
>     store = CfGribDataStore(
> cfgrib/xarray_plugin.py:40: in __init__
>     self.ds = opener(filename, **backend_kwargs)
> cfgrib/dataset.py:780: in open_file
>     return open_from_index(index, read_keys, time_dims, extra_coords, 
> **kwargs)
> cfgrib/dataset.py:722: in open_from_index
>     dimensions, variables, attributes, encoding = build_dataset_components(
> cfgrib/dataset.py:649: in build_dataset_components
>     dims, data_var, coord_vars = build_variable_components(
> cfgrib/dataset.py:525: in build_variable_components
>     geo_dims, geo_shape, geo_coord_vars = build_geography_coordinates(first, 
> encode_cf, errors)
> cfgrib/dataset.py:388: in build_geography_coordinates
>     latitudes = np.array(first["distinctLatitudes"], ndmin=1)
> cfgrib/messages.py:246: in __getitem__
>     return self.context[item]
> cfgrib/messages.py:168: in __getitem__
>     return self.message_get(key, key_type=key_type)
> cfgrib/messages.py:130: in message_get
>     if eccodes.codes_get_size(self.codes_id, item) > 1:
> /usr/lib/python3/dist-packages/gribapi/gribapi.py:599: in grib_get_size
>     GRIB_CHECK(err)
> /usr/lib/python3/dist-packages/gribapi/gribapi.py:230: in GRIB_CHECK
>     errors.raise_grib_error(errid)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> errid = -16
> 
>     def raise_grib_error(errid):
>         """
>         Raise the GribInternalError corresponding to ``errid``.
>         """
> >       raise ERROR_MAP[errid](errid)
> E       gribapi.errors.GeocalculusError: Problem with calculation of 
> geographic attributes
> 
> /usr/lib/python3/dist-packages/gribapi/errors.py:382: GeocalculusError
> ----------------------------- Captured stderr call 
> -----------------------------
> ECCODES ERROR   :  Failed to find index for latitude=87.864
> ECCODES ERROR   :  Geoiterator factory: Error instantiating iterator gaussian 
> (Problem with calculation of geographic attributes)
> ECCODES ERROR   :  latitudes: Unable to create iterator
> ________________ test_canonical_dataset_to_grib[regular_gg_pl] 
> _________________
> 
> grib_name = 'regular_gg_pl'
> tmpdir = 
> local('/tmp/pytest-of-user42/pytest-5/test_canonical_dataset_to_grib6')
> 
>     @pytest.mark.parametrize(
>         "grib_name",
>         [
>             pytest.param("era5-levels-members", marks=pytest.mark.xfail),
>             "fields_with_missing_values",
>             pytest.param("lambert_grid", marks=pytest.mark.xfail),
>             "reduced_gg",
>             "regular_gg_sfc",
>             "regular_gg_pl",
>             "regular_gg_ml",
>             pytest.param("regular_gg_ml_g2", marks=pytest.mark.xfail),
>             "regular_ll_sfc",
>             pytest.param("regular_ll_msl", marks=pytest.mark.xfail),
>             "scanning_mode_64",
>             pytest.param("spherical_harmonics", marks=pytest.mark.xfail),
>             "t_analysis_and_fc_0",
>         ],
>     )
>     def test_canonical_dataset_to_grib(grib_name: str, tmpdir: py.path.local) 
> -> None:
>         grib_path = os.path.join(SAMPLE_DATA_FOLDER, grib_name + ".grib")
>         out_path = str(tmpdir.join(grib_name + ".grib"))
>     
>         res = xarray_store.open_dataset(grib_path)
>     
>         with pytest.warns(FutureWarning):
>             xarray_to_grib.canonical_dataset_to_grib(res, out_path)
> >       reread = xarray_store.open_dataset(out_path)
> 
> tests/test_50_sample_data.py:93: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> cfgrib/xarray_store.py:39: in open_dataset
>     return xr.open_dataset(path, **kwargs)  # type: ignore
> /usr/lib/python3/dist-packages/xarray/backends/api.py:541: in open_dataset
>     backend_ds = backend.open_dataset(
> cfgrib/xarray_plugin.py:109: in open_dataset
>     store = CfGribDataStore(
> cfgrib/xarray_plugin.py:40: in __init__
>     self.ds = opener(filename, **backend_kwargs)
> cfgrib/dataset.py:780: in open_file
>     return open_from_index(index, read_keys, time_dims, extra_coords, 
> **kwargs)
> cfgrib/dataset.py:722: in open_from_index
>     dimensions, variables, attributes, encoding = build_dataset_components(
> cfgrib/dataset.py:649: in build_dataset_components
>     dims, data_var, coord_vars = build_variable_components(
> cfgrib/dataset.py:525: in build_variable_components
>     geo_dims, geo_shape, geo_coord_vars = build_geography_coordinates(first, 
> encode_cf, errors)
> cfgrib/dataset.py:388: in build_geography_coordinates
>     latitudes = np.array(first["distinctLatitudes"], ndmin=1)
> cfgrib/messages.py:246: in __getitem__
>     return self.context[item]
> cfgrib/messages.py:168: in __getitem__
>     return self.message_get(key, key_type=key_type)
> cfgrib/messages.py:130: in message_get
>     if eccodes.codes_get_size(self.codes_id, item) > 1:
> /usr/lib/python3/dist-packages/gribapi/gribapi.py:599: in grib_get_size
>     GRIB_CHECK(err)
> /usr/lib/python3/dist-packages/gribapi/gribapi.py:230: in GRIB_CHECK
>     errors.raise_grib_error(errid)
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> _ 
> 
> errid = -16
> 
>     def raise_grib_error(errid):
>         """
>         Raise the GribInternalError corresponding to ``errid``.
>         """
> >       raise ERROR_MAP[errid](errid)
> E       gribapi.errors.GeocalculusError: Problem with calculation of 
> geographic attributes
> 
> /usr/lib/python3/dist-packages/gribapi/errors.py:382: GeocalculusError
> ----------------------------- Captured stderr call 
> -----------------------------
> ECCODES ERROR   :  Failed to find index for latitude=87.864
> ECCODES ERROR   :  Geoiterator factory: Error instantiating iterator gaussian 
> (Problem with calculation of geographic attributes)
> ECCODES ERROR   :  latitudes: Unable to create iterator
> =============================== warnings summary 
> ===============================
> .pybuild/cpython3_3.11_cfgrib/build/tests/test_20_cfcoords.py::test_coord_translator
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cfgrib/build/cf2cdm/cfcoords.py:80: 
> UserWarning: rename 'level' to 'level' does not create an index anymore. Try 
> using swap_dims instead or use set_index after rename to create an indexed 
> coordinate.
>     data = data.rename({match: out_name})
> 
> .pybuild/cpython3_3.11_cfgrib/build/tests/test_20_cfcoords.py::test_translate_coords
> .pybuild/cpython3_3.11_cfgrib/build/tests/test_20_cfcoords.py::test_translate_coords_errors
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cfgrib/build/cf2cdm/cfcoords.py:80: 
> UserWarning: rename 'step' to 'step' does not create an index anymore. Try 
> using swap_dims instead or use set_index after rename to create an indexed 
> coordinate.
>     data = data.rename({match: out_name})
> 
> .pybuild/cpython3_3.11_cfgrib/build/tests/test_50_datamodels.py::test_ecmwf
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cfgrib/build/cf2cdm/cfcoords.py:80: 
> UserWarning: rename 'latitude' to 'latitude' does not create an index 
> anymore. Try using swap_dims instead or use set_index after rename to create 
> an indexed coordinate.
>     data = data.rename({match: out_name})
> 
> .pybuild/cpython3_3.11_cfgrib/build/tests/test_50_datamodels.py::test_ecmwf
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cfgrib/build/cf2cdm/cfcoords.py:80: 
> UserWarning: rename 'longitude' to 'longitude' does not create an index 
> anymore. Try using swap_dims instead or use set_index after rename to create 
> an indexed coordinate.
>     data = data.rename({match: out_name})
> 
> .pybuild/cpython3_3.11_cfgrib/build/tests/test_50_datamodels.py::test_ecmwf
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cfgrib/build/cf2cdm/cfcoords.py:80: 
> UserWarning: rename 'time' to 'time' does not create an index anymore. Try 
> using swap_dims instead or use set_index after rename to create an indexed 
> coordinate.
>     data = data.rename({match: out_name})
> 
> .pybuild/cpython3_3.11_cfgrib/build/tests/test_50_datamodels.py::test_ecmwf
>   /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cfgrib/build/cf2cdm/cfcoords.py:80: 
> UserWarning: rename 'number' to 'number' does not create an index anymore. 
> Try using swap_dims instead or use set_index after rename to create an 
> indexed coordinate.
>     data = data.rename({match: out_name})
> 
> -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
> =========================== short test summary info 
> ============================
> FAILED 
> tests/test_50_sample_data.py::test_canonical_dataset_to_grib[regular_gg_sfc]
> FAILED 
> tests/test_50_sample_data.py::test_canonical_dataset_to_grib[regular_gg_pl]
> == 2 failed, 107 passed, 1 skipped, 3 xfailed, 5 xpassed, 7 warnings in 8.79s 
> ==
> E: pybuild pybuild:388: test: plugin distutils failed with: exit code=1: cd 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cfgrib/build; python3.11 -m pytest 
> tests
> make[1]: *** [debian/rules:21: override_dh_auto_test] Error 13


The full build log is available from:
http://qa-logs.debian.net/2023/03/23/cfgrib_0.9.10.3-1_testing.log

All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20230323;users=lu...@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20230323&fusertaguser=lu...@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.

Reply via email to