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.