Source: python-pybadges
Version: 3.0.0-1
Severity: normal
User: debian-pyt...@lists.debian.org
Usertags: python3.13
Forwarded: https://github.com/google/pybadges/issues/47

This package failed build from source when test-built against a version of
python3-defaults that includes 3.13 as a supported version.

To reproduce this issue, build against python3-defaults (python3-all-dev etc.)
from Debian experimental.

What's new in Python 3.13:
https://docs.python.org/3.13/whatsnew/3.13.html
imghdr was removed in 3.13.

Log snippet:

   dh_auto_test -O--buildsystem=pybuild
I: pybuild base:311: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_pybadges/build; 
python3.13 -m pytest tests
============================= test session starts ==============================
platform linux -- Python 3.13.0rc2, pytest-8.3.3, pluggy-1.5.0
rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_pybadges/build
plugins: typeguard-4.3.0
collected 0 items / 2 errors

==================================== ERRORS ====================================
__________ ERROR collecting tests/test_precalculated_text_measurer.py __________
ImportError while importing test module 
'/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_pybadges/build/tests/test_precalculated_text_measurer.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/usr/lib/python3.13/importlib/__init__.py:88: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
tests/test_precalculated_text_measurer.py:18: in <module>
    from pybadges import precalculated_text_measurer
pybadges/__init__.py:33: in <module>
    import imghdr
E   ModuleNotFoundError: No module named 'imghdr'
___________________ ERROR collecting tests/test_pybadges.py ____________________
ImportError while importing test module 
'/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_pybadges/build/tests/test_pybadges.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
/usr/lib/python3.13/importlib/__init__.py:88: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
tests/test_pybadges.py:27: in <module>
    import pybadges
pybadges/__init__.py:33: in <module>
    import imghdr
E   ModuleNotFoundError: No module named 'imghdr'
=============================== warnings summary ===============================
../../../../../../usr/lib/python3/dist-packages/xmldiff/main.py:2
  /usr/lib/python3/dist-packages/xmldiff/main.py:2: DeprecationWarning: 
pkg_resources is deprecated as an API. See 
https://setuptools.pypa.io/en/latest/pkg_resources.html
    import pkg_resources

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========================== short test summary info ============================
ERROR tests/test_precalculated_text_measurer.py
ERROR tests/test_pybadges.py
!!!!!!!!!!!!!!!!!!! Interrupted: 2 errors during collection !!!!!!!!!!!!!!!!!!!!
========================= 1 warning, 2 errors in 0.17s =========================
E: pybuild pybuild:389: test: plugin distutils failed with: exit code=2: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_pybadges/build; python3.13 -m pytest 
tests
I: pybuild base:311: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pybadges/build; 
python3.12 -m pytest tests
============================= test session starts ==============================
platform linux -- Python 3.12.6, pytest-8.3.3, pluggy-1.5.0
rootdir: /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pybadges/build
plugins: typeguard-4.3.0
collected 16 items

tests/test_precalculated_text_measurer.py .....                          [ 31%]
tests/test_pybadges.py s....ss....                                       [100%]

=============================== warnings summary ===============================
pybadges/__init__.py:33
  
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pybadges/build/pybadges/__init__.py:33: 
DeprecationWarning: 'imghdr' is deprecated and slated for removal in Python 3.13
    import imghdr

pybadges/precalculated_text_measurer.py:21
  
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pybadges/build/pybadges/precalculated_text_measurer.py:21:
 DeprecationWarning: pkg_resources is deprecated as an API. See 
https://setuptools.pypa.io/en/latest/pkg_resources.html
    import pkg_resources

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
================== 13 passed, 3 skipped, 2 warnings in 0.23s ===================
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.13 
3.12" returned exit code 13
make: *** [debian/rules:10: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------
Build finished at 2024-09-19T06:17:30Z


If required, the full build log is available here (for the next 30 days):
https://debusine.debian.net/artifact/787638/

This bug has been filed at "normal" severity, as we haven't started the
transition to add 3.13 as a supported version, yet. This will be raised to RC
as soon as that happens, hopefully well before trixie.

Thanks,

Stefano

Reply via email to