[Debian-astro-maintainers] Bug#1078611: astropy: will FTBFS during trixie support period

Santiago Vila sanvila at debian.org
Tue Aug 13 19:06:01 BST 2024


Package: src:astropy
Version: 6.1.2-1
User: debian-qa at lists.debian.org
Usertags: ftbfs-during-trixie-support-period
Tags: ftbfs

Dear maintainer:

During a rebuild of all packages in unstable in the year 2028, your package failed to build:

--------------------------------------------------------------------------------
[...]
  debian/rules binary
dh binary --with python3,sphinxdoc --buildsystem=pybuild
    dh_update_autotools_config -O--buildsystem=pybuild
    dh_autoreconf -O--buildsystem=pybuild
    dh_auto_configure -O--buildsystem=pybuild
I: pybuild base:311: python3.12 setup.py config
running config
    dh_auto_build -O--buildsystem=pybuild
I: pybuild base:311: /usr/bin/python3 setup.py build
running build
running build_py
creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/astropy
copying astropy/logger.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build/astropy

[... snipped ...]

astropy/units/structured.py .                                            [ 78%]
astropy/units/tests/test_aliases.py ......................               [ 78%]
astropy/units/tests/test_deprecated.py ..                                [ 78%]
astropy/units/tests/test_equivalencies.py .............................. [ 79%]
................................................                         [ 79%]
astropy/units/tests/test_format.py ..................................... [ 79%]
........................................................................ [ 79%]
........................................................................ [ 79%]
........................................................................ [ 80%]
........................................................................ [ 80%]
........................................................................ [ 80%]
........................................................................ [ 80%]
........................................................................ [ 81%]
........................................................................ [ 81%]
........................................................................ [ 81%]
........................................................................ [ 81%]
...........................................................              [ 82%]
astropy/units/tests/test_logarithmic.py ................................ [ 82%]
........................................................................ [ 82%]
........................................................................ [ 82%]
.................................................                        [ 82%]
astropy/units/tests/test_photometric.py ..                               [ 82%]
astropy/units/tests/test_physical.py ................................... [ 82%]
........................................................................ [ 83%]
........................................................................ [ 83%]
.....................................                                    [ 83%]
astropy/units/tests/test_quantity.py ................................... [ 83%]
..x....................................................................  [ 83%]
astropy/units/tests/test_quantity_annotations.py ....................... [ 84%]
............                                                             [ 84%]
astropy/units/tests/test_quantity_array_methods.py ..................... [ 84%]
.........................................................s               [ 84%]
astropy/units/tests/test_quantity_decorator.py ......................... [ 84%]
........................................................................ [ 84%]
........................................................................ [ 84%]
........................................................................ [ 85%]
........................................................................ [ 85%]
........................................................................ [ 85%]
........................................................................ [ 85%]
........................................................................ [ 86%]
........................................                                 [ 86%]
astropy/units/tests/test_quantity_erfa_ufuncs.py ......x................ [ 86%]
..................                                                       [ 86%]
astropy/units/tests/test_quantity_helpers.py ....                        [ 86%]
astropy/units/tests/test_quantity_info.py .................              [ 86%]
astropy/units/tests/test_quantity_non_ufuncs.py ........................ [ 86%]
........................................................s......s........ [ 86%]
s....................................................................... [ 87%]
...............................s........................................ [ 87%]
...................................................................s...s [ 87%]
..s.......s.......................s...........................s......... [ 87%]
...............ss...........s...s..s.......s.......................s.... [ 88%]
.......................s........................ss.                      [ 88%]
astropy/units/tests/test_quantity_typing.py .....                        [ 88%]
astropy/units/tests/test_quantity_ufuncs.py ssss..s..................... [ 88%]
.................s...................................................... [ 88%]
........................................................................ [ 88%]
........................................................................ [ 89%]
........................................................................ [ 89%]
......................................................................   [ 89%]
astropy/units/tests/test_structured.py ................................. [ 89%]
.....................................                                    [ 89%]
astropy/units/tests/test_units.py ...................................... [ 90%]
........................................................................ [ 90%]
........................................................................ [ 90%]
........................................................................ [ 90%]
...................................                                      [ 90%]
astropy/units/tests/test_utils.py ..                                     [ 90%]
astropy/utils/data.py ....                                               [ 90%]
astropy/utils/data_info.py ..                                            [ 90%]
astropy/utils/decorators.py .....                                        [ 90%]
astropy/utils/iers/iers.py ..                                            [ 90%]
astropy/utils/iers/tests/test_iers.py ......sEEEEsssssss....             [ 91%]
astropy/utils/iers/tests/test_leap_second.py ...s.....s..ss..s..ss...... [ 91%]
.......                                                                  [ 91%]
astropy/utils/introspection.py ..                                        [ 91%]
astropy/utils/masked/tests/test_containers.py .............              [ 91%]
astropy/utils/masked/tests/test_function_helpers.py .................... [ 91%]
......s.........................................................s....... [ 91%]
.......................................ss............................... [ 91%]
.......s......................................ssss.............x.......x [ 91%]
.....s...ss.s.s.....s...................s....s....s.s......s...ss.s.s... [ 92%]
..s...................s....s....s.s.                                     [ 92%]
astropy/utils/masked/tests/test_functions.py ........................... [ 92%]
........................................................................ [ 92%]
........................................................................ [ 92%]
....................................                                     [ 93%]
astropy/utils/masked/tests/test_masked.py .............................. [ 93%]
........................................................................ [ 93%]
........................................................................ [ 93%]
........................................................................ [ 93%]
........................................................................ [ 94%]
........................................................................ [ 94%]
........................................................................ [ 94%]
........................................................................ [ 94%]
.....................................................................    [ 95%]
astropy/utils/masked/tests/test_table.py ..................              [ 95%]
astropy/utils/metadata/core.py .                                         [ 95%]
astropy/utils/metadata/merge.py ..                                       [ 95%]
astropy/utils/metadata/tests/test_metadata.py .......................... [ 95%]
......................                                                   [ 95%]
astropy/utils/misc.py .                                                  [ 95%]
astropy/utils/tests/test_codegen.py .                                    [ 95%]
astropy/utils/tests/test_collections.py .........                        [ 95%]
astropy/utils/tests/test_console.py ............................         [ 95%]
astropy/utils/tests/test_data.py ......s................sss.s......s...s [ 95%]
.s..............s.....s.s............................................... [ 95%]
..................s...s.........                                         [ 96%]
astropy/utils/tests/test_data_info.py ................                   [ 96%]
astropy/utils/tests/test_decorators.py .................ss........       [ 96%]
astropy/utils/tests/test_diff.py ...................                     [ 96%]
astropy/utils/tests/test_introspection.py ......                         [ 96%]
astropy/utils/tests/test_misc.py ..s....s..                              [ 96%]
astropy/utils/tests/test_parsing.py .                                    [ 96%]
astropy/utils/tests/test_shapes.py ..                                    [ 96%]
astropy/utils/tests/test_state.py .                                      [ 96%]
astropy/utils/tests/test_xml.py .........s                               [ 96%]
astropy/utils/xml/tests/test_iterparse.py .                              [ 96%]
astropy/utils/xml/writer.py s                                            [ 96%]
astropy/visualization/scripts/tests/test_fits2bitmap.py ........         [ 96%]
astropy/visualization/tests/test_histogram.py ....                       [ 96%]
astropy/visualization/tests/test_interval.py ........................... [ 96%]
.                                                                        [ 96%]
astropy/visualization/tests/test_lupton_rgb.py ..........s..s.           [ 96%]
astropy/visualization/tests/test_norm.py s.............................. [ 96%]
.                                                                        [ 96%]
astropy/visualization/tests/test_stretch.py ............................ [ 96%]
........................................................................ [ 97%]
...................                                                      [ 97%]
astropy/visualization/tests/test_time.py ............................... [ 97%]
.................                                                        [ 97%]
astropy/visualization/tests/test_units.py ........                       [ 97%]
astropy/visualization/time.py .                                          [ 97%]
astropy/visualization/wcsaxes/tests/test_coordinate_helpers.py ......... [ 97%]
.                                                                        [ 97%]
astropy/visualization/wcsaxes/tests/test_display_world_coordinates.py .. [ 97%]
..                                                                       [ 97%]
astropy/visualization/wcsaxes/tests/test_formatter_locator.py .......... [ 97%]
........................................................................ [ 97%]
............................................                             [ 97%]
astropy/visualization/wcsaxes/tests/test_frame.py ssss.                  [ 97%]
astropy/visualization/wcsaxes/tests/test_grid_paths.py ...               [ 97%]
astropy/visualization/wcsaxes/tests/test_images.py sssssssssssssssssssss [ 97%]
sssssssssssssssssssssssss                                                [ 97%]
astropy/visualization/wcsaxes/tests/test_misc.py ....................sss [ 98%]
.....x......                                                             [ 98%]
astropy/visualization/wcsaxes/tests/test_transform_coord_meta.py sss     [ 98%]
astropy/visualization/wcsaxes/tests/test_utils.py ....                   [ 98%]
astropy/visualization/wcsaxes/tests/test_wcsapi.py ....................s [ 98%]
s                                                                        [ 98%]
astropy/wcs/tests/test_auxprm.py .....                                   [ 98%]
astropy/wcs/tests/test_celprm.py ..........                              [ 98%]
astropy/wcs/tests/test_pickle.py .........                               [ 98%]
astropy/wcs/tests/test_prjprm.py .....................                   [ 98%]
astropy/wcs/tests/test_profiling.py .................................... [ 98%]
                                                                          [ 98%]
astropy/wcs/tests/test_tab.py .....                                      [ 98%]
astropy/wcs/tests/test_tabprm.py ..............                          [ 98%]
astropy/wcs/tests/test_utils.py ........................................ [ 98%]
..................................ss........                             [ 98%]
astropy/wcs/tests/test_wcs.py .......................................... [ 98%]
...................................                                      [ 99%]
astropy/wcs/tests/test_wcsprm.py ....................................... [ 99%]
.............................................................x.......... [ 99%]
...........................                                              [ 99%]
astropy/wcs/tests/test_wtbarr.py ..........                              [ 99%]
astropy/wcs/wcsapi/fitswcs.py .                                          [ 99%]
astropy/wcs/wcsapi/high_level_api.py .                                   [ 99%]
astropy/wcs/wcsapi/tests/test_fitswcs.py ................sssssss........ [ 99%]
...............................                                          [ 99%]
astropy/wcs/wcsapi/tests/test_high_level_api.py ......                   [ 99%]
astropy/wcs/wcsapi/tests/test_high_level_wcs_wrapper.py ..               [ 99%]
astropy/wcs/wcsapi/tests/test_low_level_api.py .                         [ 99%]
astropy/wcs/wcsapi/tests/test_utils.py ....                              [ 99%]
astropy/wcs/wcsapi/wrappers/tests/test_sliced_wcs.py ................... [ 99%]
......................                                                   [100%]

==================================== ERRORS ====================================
______ ERROR at setup of TestIERS_Auto.test_interpolate_error_formatting _______

self = <class 'astropy.utils.iers.tests.test_iers.TestIERS_Auto'>

     def setup_class(self):
         """Set up useful data for the tests."""
         self.N = 40
         self.ame = 30.0
         self.iers_a_file_1 = get_pkg_data_filename(
             os.path.join("data", "finals2000A-2016-02-30-test")
         )
         self.iers_a_file_2 = get_pkg_data_filename(
             os.path.join("data", "finals2000A-2016-04-30-test")
         )
         self.iers_a_url_1 = Path(self.iers_a_file_1).as_uri()
         self.iers_a_url_2 = Path(self.iers_a_file_2).as_uri()
>       self.t = Time.now() + TimeDelta(10, format="jd") * np.arange(self.N)

astropy/utils/iers/tests/test_iers.py:262:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
astropy/time/core.py:2778: in __add__
     out._set_scale(self.scale)
astropy/time/core.py:831: in _set_scale
     jd1, jd2 = conv_func(*args)
/usr/lib/python3/dist-packages/erfa/core.py:16910: in taiutc
     check_errwarn(c_retval, 'taiutc')
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

statcodes = array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
        1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], dtype=int32)
func_name = 'taiutc'

     def check_errwarn(statcodes, func_name):
         if not np.any(statcodes):
             return
         # Remap any errors into warnings in the STATUS_CODES_REMAP dict.
         if func_name in STATUS_CODES_REMAP:
             for before, after in STATUS_CODES_REMAP[func_name].items():
                 statcodes[statcodes == before] = after
                 STATUS_CODES[func_name][after] = STATUS_CODES[func_name][before]
     
         # Use non-zero to be able to index (need >=1-D for this to work).
         # Conveniently, this also gets rid of any masked elements.
         statcodes = np.atleast_1d(statcodes)
         erridx = (statcodes < 0).nonzero()
         if erridx[0].size > 0:
             # Errors present - only report the errors.
             errcodes, counts = np.unique(statcodes[erridx], return_counts=True)
             elsemsg = STATUS_CODES[func_name].get('else', None)
             msgs = [STATUS_CODES[func_name].get(e, elsemsg or f'Return code {e}')
                     for e in errcodes]
             emsg = ', '.join([f'{c} of "{msg}"' for c, msg in zip(counts, msgs)])
             raise ErfaError(f'ERFA function "{func_name}" yielded {emsg}')
     
         warnidx = (statcodes > 0).nonzero()
         if warnidx[0].size > 0:
             warncodes, counts = np.unique(statcodes[warnidx], return_counts=True)
             elsemsg = STATUS_CODES[func_name].get('else', None)
             msgs = [STATUS_CODES[func_name].get(w, elsemsg or f'Return code {w}')
                     for w in warncodes]
             wmsg = ', '.join([f'{c} of "{msg}"' for c, msg in zip(counts, msgs)])
>           warn(f'ERFA function "{func_name}" yielded {wmsg}', ErfaWarning)
E           erfa.core.ErfaWarning: ERFA function "taiutc" yielded 19 of "dubious year (Note 4)"

/usr/lib/python3/dist-packages/erfa/core.py:133: ErfaWarning
____________ ERROR at setup of TestIERS_Auto.test_auto_max_age_none ____________

self = <class 'astropy.utils.iers.tests.test_iers.TestIERS_Auto'>

     def setup_class(self):
         """Set up useful data for the tests."""
         self.N = 40
         self.ame = 30.0
         self.iers_a_file_1 = get_pkg_data_filename(
             os.path.join("data", "finals2000A-2016-02-30-test")
         )
         self.iers_a_file_2 = get_pkg_data_filename(
             os.path.join("data", "finals2000A-2016-04-30-test")
         )
         self.iers_a_url_1 = Path(self.iers_a_file_1).as_uri()
         self.iers_a_url_2 = Path(self.iers_a_file_2).as_uri()
>       self.t = Time.now() + TimeDelta(10, format="jd") * np.arange(self.N)

astropy/utils/iers/tests/test_iers.py:262:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
astropy/time/core.py:2778: in __add__
     out._set_scale(self.scale)
astropy/time/core.py:831: in _set_scale
     jd1, jd2 = conv_func(*args)
/usr/lib/python3/dist-packages/erfa/core.py:16910: in taiutc
     check_errwarn(c_retval, 'taiutc')
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

statcodes = array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
        1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], dtype=int32)
func_name = 'taiutc'

     def check_errwarn(statcodes, func_name):
         if not np.any(statcodes):
             return
         # Remap any errors into warnings in the STATUS_CODES_REMAP dict.
         if func_name in STATUS_CODES_REMAP:
             for before, after in STATUS_CODES_REMAP[func_name].items():
                 statcodes[statcodes == before] = after
                 STATUS_CODES[func_name][after] = STATUS_CODES[func_name][before]
     
         # Use non-zero to be able to index (need >=1-D for this to work).
         # Conveniently, this also gets rid of any masked elements.
         statcodes = np.atleast_1d(statcodes)
         erridx = (statcodes < 0).nonzero()
         if erridx[0].size > 0:
             # Errors present - only report the errors.
             errcodes, counts = np.unique(statcodes[erridx], return_counts=True)
             elsemsg = STATUS_CODES[func_name].get('else', None)
             msgs = [STATUS_CODES[func_name].get(e, elsemsg or f'Return code {e}')
                     for e in errcodes]
             emsg = ', '.join([f'{c} of "{msg}"' for c, msg in zip(counts, msgs)])
             raise ErfaError(f'ERFA function "{func_name}" yielded {emsg}')
     
         warnidx = (statcodes > 0).nonzero()
         if warnidx[0].size > 0:
             warncodes, counts = np.unique(statcodes[warnidx], return_counts=True)
             elsemsg = STATUS_CODES[func_name].get('else', None)
             msgs = [STATUS_CODES[func_name].get(w, elsemsg or f'Return code {w}')
                     for w in warncodes]
             wmsg = ', '.join([f'{c} of "{msg}"' for c, msg in zip(counts, msgs)])
>           warn(f'ERFA function "{func_name}" yielded {wmsg}', ErfaWarning)
E           erfa.core.ErfaWarning: ERFA function "taiutc" yielded 19 of "dubious year (Note 4)"

/usr/lib/python3/dist-packages/erfa/core.py:133: ErfaWarning
__________ ERROR at setup of TestIERS_Auto.test_auto_max_age_minimum ___________

self = <class 'astropy.utils.iers.tests.test_iers.TestIERS_Auto'>

     def setup_class(self):
         """Set up useful data for the tests."""
         self.N = 40
         self.ame = 30.0
         self.iers_a_file_1 = get_pkg_data_filename(
             os.path.join("data", "finals2000A-2016-02-30-test")
         )
         self.iers_a_file_2 = get_pkg_data_filename(
             os.path.join("data", "finals2000A-2016-04-30-test")
         )
         self.iers_a_url_1 = Path(self.iers_a_file_1).as_uri()
         self.iers_a_url_2 = Path(self.iers_a_file_2).as_uri()
>       self.t = Time.now() + TimeDelta(10, format="jd") * np.arange(self.N)

astropy/utils/iers/tests/test_iers.py:262:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
astropy/time/core.py:2778: in __add__
     out._set_scale(self.scale)
astropy/time/core.py:831: in _set_scale
     jd1, jd2 = conv_func(*args)
/usr/lib/python3/dist-packages/erfa/core.py:16910: in taiutc
     check_errwarn(c_retval, 'taiutc')
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

statcodes = array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
        1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], dtype=int32)
func_name = 'taiutc'

     def check_errwarn(statcodes, func_name):
         if not np.any(statcodes):
             return
         # Remap any errors into warnings in the STATUS_CODES_REMAP dict.
         if func_name in STATUS_CODES_REMAP:
             for before, after in STATUS_CODES_REMAP[func_name].items():
                 statcodes[statcodes == before] = after
                 STATUS_CODES[func_name][after] = STATUS_CODES[func_name][before]
     
         # Use non-zero to be able to index (need >=1-D for this to work).
         # Conveniently, this also gets rid of any masked elements.
         statcodes = np.atleast_1d(statcodes)
         erridx = (statcodes < 0).nonzero()
         if erridx[0].size > 0:
             # Errors present - only report the errors.
             errcodes, counts = np.unique(statcodes[erridx], return_counts=True)
             elsemsg = STATUS_CODES[func_name].get('else', None)
             msgs = [STATUS_CODES[func_name].get(e, elsemsg or f'Return code {e}')
                     for e in errcodes]
             emsg = ', '.join([f'{c} of "{msg}"' for c, msg in zip(counts, msgs)])
             raise ErfaError(f'ERFA function "{func_name}" yielded {emsg}')
     
         warnidx = (statcodes > 0).nonzero()
         if warnidx[0].size > 0:
             warncodes, counts = np.unique(statcodes[warnidx], return_counts=True)
             elsemsg = STATUS_CODES[func_name].get('else', None)
             msgs = [STATUS_CODES[func_name].get(w, elsemsg or f'Return code {w}')
                     for w in warncodes]
             wmsg = ', '.join([f'{c} of "{msg}"' for c, msg in zip(counts, msgs)])
>           warn(f'ERFA function "{func_name}" yielded {wmsg}', ErfaWarning)
E           erfa.core.ErfaWarning: ERFA function "taiutc" yielded 19 of "dubious year (Note 4)"

/usr/lib/python3/dist-packages/erfa/core.py:133: ErfaWarning
____________ ERROR at setup of TestIERS_Auto.test_no_auto_download _____________

self = <class 'astropy.utils.iers.tests.test_iers.TestIERS_Auto'>

     def setup_class(self):
         """Set up useful data for the tests."""
         self.N = 40
         self.ame = 30.0
         self.iers_a_file_1 = get_pkg_data_filename(
             os.path.join("data", "finals2000A-2016-02-30-test")
         )
         self.iers_a_file_2 = get_pkg_data_filename(
             os.path.join("data", "finals2000A-2016-04-30-test")
         )
         self.iers_a_url_1 = Path(self.iers_a_file_1).as_uri()
         self.iers_a_url_2 = Path(self.iers_a_file_2).as_uri()
>       self.t = Time.now() + TimeDelta(10, format="jd") * np.arange(self.N)

astropy/utils/iers/tests/test_iers.py:262:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
astropy/time/core.py:2778: in __add__
     out._set_scale(self.scale)
astropy/time/core.py:831: in _set_scale
     jd1, jd2 = conv_func(*args)
/usr/lib/python3/dist-packages/erfa/core.py:16910: in taiutc
     check_errwarn(c_retval, 'taiutc')
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

statcodes = array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
        1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], dtype=int32)
func_name = 'taiutc'

     def check_errwarn(statcodes, func_name):
         if not np.any(statcodes):
             return
         # Remap any errors into warnings in the STATUS_CODES_REMAP dict.
         if func_name in STATUS_CODES_REMAP:
             for before, after in STATUS_CODES_REMAP[func_name].items():
                 statcodes[statcodes == before] = after
                 STATUS_CODES[func_name][after] = STATUS_CODES[func_name][before]
     
         # Use non-zero to be able to index (need >=1-D for this to work).
         # Conveniently, this also gets rid of any masked elements.
         statcodes = np.atleast_1d(statcodes)
         erridx = (statcodes < 0).nonzero()
         if erridx[0].size > 0:
             # Errors present - only report the errors.
             errcodes, counts = np.unique(statcodes[erridx], return_counts=True)
             elsemsg = STATUS_CODES[func_name].get('else', None)
             msgs = [STATUS_CODES[func_name].get(e, elsemsg or f'Return code {e}')
                     for e in errcodes]
             emsg = ', '.join([f'{c} of "{msg}"' for c, msg in zip(counts, msgs)])
             raise ErfaError(f'ERFA function "{func_name}" yielded {emsg}')
     
         warnidx = (statcodes > 0).nonzero()
         if warnidx[0].size > 0:
             warncodes, counts = np.unique(statcodes[warnidx], return_counts=True)
             elsemsg = STATUS_CODES[func_name].get('else', None)
             msgs = [STATUS_CODES[func_name].get(w, elsemsg or f'Return code {w}')
                     for w in warncodes]
             wmsg = ', '.join([f'{c} of "{msg}"' for c, msg in zip(counts, msgs)])
>           warn(f'ERFA function "{func_name}" yielded {wmsg}', ErfaWarning)
E           erfa.core.ErfaWarning: ERFA function "taiutc" yielded 19 of "dubious year (Note 4)"

/usr/lib/python3/dist-packages/erfa/core.py:133: ErfaWarning
=================================== FAILURES ===================================
_________________ TestTimeUT1SpecificIERSTable.test_ut1_iers_A _________________

self = <astropy.time.tests.test_ut1.TestTimeUT1SpecificIERSTable object at 0x7efce0a9eb40>

     @pytest.mark.skipif(not HAS_IERS_A, reason="requires IERS_A")
     def test_ut1_iers_A(self):
>       do_ut1_prediction_tst(iers.IERS_A)

astropy/time/tests/test_ut1.py:145:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

iers_type = <class 'astropy.utils.iers.iers.IERS_A'>

     def do_ut1_prediction_tst(iers_type):
         tnow = Time.now()
         iers_tab = iers_type.open()
         tnow.delta_ut1_utc, status = iers_tab.ut1_utc(tnow, return_status=True)
>       assert status == iers.FROM_IERS_A_PREDICTION
E       assert -2 == 2
E        +  where 2 = iers.FROM_IERS_A_PREDICTION

astropy/time/tests/test_ut1.py:27: AssertionError
=========================== short test summary info ============================
FAILED astropy/time/tests/test_ut1.py::TestTimeUT1SpecificIERSTable::test_ut1_iers_A
ERROR astropy/utils/iers/tests/test_iers.py::TestIERS_Auto::test_interpolate_error_formatting
ERROR astropy/utils/iers/tests/test_iers.py::TestIERS_Auto::test_auto_max_age_none
ERROR astropy/utils/iers/tests/test_iers.py::TestIERS_Auto::test_auto_max_age_minimum
ERROR astropy/utils/iers/tests/test_iers.py::TestIERS_Auto::test_no_auto_download
= 1 failed, 28082 passed, 359 skipped, 70 deselected, 231 xfailed, 201 xpassed, 4 errors in 228.91s (0:03:48) =
E: pybuild pybuild:389: test: plugin distutils failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12/build; python3.12 -m pytest --astropy-header --color=no -m "not hypothesis"
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.12 returned exit code 13
make[1]: *** [debian/rules:56: override_dh_auto_test] Error 255
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:30: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------

The above is just how the build ends and not necessarily the most relevant part.
If required, the full build log is available here:

https://people.debian.org/~sanvila/build-logs/ftbfs-future/

About the archive rebuild: This is an effort to keep trixie free from FTBFS bugs
during its lifetime as a supported distribution, as explained here:

https://lists.debian.org/debian-devel/2024/05/msg00414.html

(While they are not yet, please note that the bugs will be RC for trixie)

The build was made using sbuild and a reduced chroot with only
build-essential packages.

If you could not reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and affects, so that this is still visible in the BTS web
page for this package.

Thanks.



More information about the Debian-astro-maintainers mailing list