Source: python-formencode
Version: 2.1.0-2
Severity: normal
User: debian-pyt...@lists.debian.org
Usertags: python3.13
https://github.com/formencode/formencode/issues/175

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

Log snippet:

Traceback:
/usr/lib/python3.13/importlib/__init__.py:88: in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
../../../tests/test_htmlgen.py:3: in <module>
    from formencode.htmlgen import html
formencode/__init__.py:18: in <module>
    from formencode import validators
formencode/validators.py:8: in <module>
    import cgi
E   ModuleNotFoundError: No module named 'cgi'
__________________ ERROR collecting tests/test_htmlrename.py ___________________
ImportError while importing test module 
'/<<PKGBUILDDIR>>/tests/test_htmlrename.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_htmlrename.py:1: in <module>
    from formencode.htmlrename import rename, add_prefix
formencode/__init__.py:18: in <module>
    from formencode import validators
formencode/validators.py:8: in <module>
    import cgi
E   ModuleNotFoundError: No module named 'cgi'
_____________________ ERROR collecting tests/test_i18n.py ______________________
ImportError while importing test module '/<<PKGBUILDDIR>>/tests/test_i18n.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_i18n.py:1: in <module>
    import formencode
formencode/__init__.py:18: in <module>
    from formencode import validators
formencode/validators.py:8: in <module>
    import cgi
E   ModuleNotFoundError: No module named 'cgi'
____________________ ERROR collecting tests/test_schema.py _____________________
ImportError while importing test module '/<<PKGBUILDDIR>>/tests/test_schema.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_schema.py:5: in <module>
    from formencode import Invalid, Validator, compound, foreach, validators
formencode/__init__.py:18: in <module>
    from formencode import validators
formencode/validators.py:8: in <module>
    import cgi
E   ModuleNotFoundError: No module named 'cgi'
__________________ ERROR collecting tests/test_subclassing.py __________________
ImportError while importing test module 
'/<<PKGBUILDDIR>>/tests/test_subclassing.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_subclassing.py:5: in <module>
    from formencode.validators import Int
formencode/__init__.py:18: in <module>
    from formencode import validators
formencode/validators.py:8: in <module>
    import cgi
E   ModuleNotFoundError: No module named 'cgi'
________________ ERROR collecting tests/test_subclassing_old.py ________________
ImportError while importing test module 
'/<<PKGBUILDDIR>>/tests/test_subclassing_old.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_subclassing_old.py:6: in <module>
    from formencode.validators import Int
formencode/__init__.py:18: in <module>
    from formencode import validators
formencode/validators.py:8: in <module>
    import cgi
E   ModuleNotFoundError: No module named 'cgi'
__________________ ERROR collecting tests/test_validators.py ___________________
ImportError while importing test module 
'/<<PKGBUILDDIR>>/tests/test_validators.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_validators.py:5: in <module>
    from formencode import validators
formencode/__init__.py:18: in <module>
    from formencode import validators
formencode/validators.py:8: in <module>
    import cgi
E   ModuleNotFoundError: No module named 'cgi'
________________ ERROR collecting tests/test_variabledecode.py _________________
ImportError while importing test module 
'/<<PKGBUILDDIR>>/tests/test_variabledecode.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_variabledecode.py:3: in <module>
    from formencode.variabledecode import variable_decode, variable_encode
formencode/__init__.py:18: in <module>
    from formencode import validators
formencode/validators.py:8: in <module>
    import cgi
E   ModuleNotFoundError: No module named 'cgi'
=========================== short test summary info ============================
ERROR ../../../tests/test_cc.py
ERROR ../../../tests/test_compound.py
ERROR ../../../tests/test_context.py
ERROR ../../../tests/test_declarative.py
ERROR ../../../tests/test_doctest_xml_compare.py
ERROR ../../../tests/test_doctests.py
ERROR ../../../tests/test_email.py
ERROR ../../../tests/test_htmlfill.py
ERROR ../../../tests/test_htmlfill_control.py
ERROR ../../../tests/test_htmlgen.py
ERROR ../../../tests/test_htmlrename.py
ERROR ../../../tests/test_i18n.py
ERROR ../../../tests/test_schema.py
ERROR ../../../tests/test_subclassing.py
ERROR ../../../tests/test_subclassing_old.py
ERROR ../../../tests/test_validators.py
ERROR ../../../tests/test_variabledecode.py
!!!!!!!!!!!!!!!!!!! Interrupted: 17 errors during collection !!!!!!!!!!!!!!!!!!!
============================== 17 errors in 0.93s ==============================
E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=2: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_formencode/build; python3.13 -m pytest 
"{dir}"
I: pybuild base:311: cd 
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_formencode/build; python3.12 -m pytest 
"/<<PKGBUILDDIR>>"
============================= test session starts ==============================
platform linux -- Python 3.12.6, pytest-8.3.3, pluggy-1.5.0
rootdir: /<<PKGBUILDDIR>>
configfile: pytest.ini
plugins: typeguard-4.3.0
collected 267 items

../../../tests/test_cc.py ..                                             [  0%]
../../../tests/test_compound.py .................                        [  7%]
../../../tests/test_context.py ....                                      [  8%]
../../../tests/test_declarative.py ....                                  [ 10%]
../../../tests/test_doctest_xml_compare.py .                             [ 10%]
../../../tests/test_doctests.py .........                                [ 13%]
../../../tests/test_email.py ..                                          [ 14%]
../../../tests/test_htmlfill.py ........................................ [ 29%]
......                                                                   [ 31%]
../../../tests/test_htmlfill_control.py .......                          [ 34%]
../../../tests/test_htmlgen.py .......                                   [ 37%]
../../../tests/test_htmlrename.py .                                      [ 37%]
../../../tests/test_i18n.py ........................                     [ 46%]
../../../tests/test_schema.py .......................                    [ 55%]
../../../tests/test_subclassing.py ...............                       [ 60%]
../../../tests/test_subclassing_old.py ................                  [ 66%]
../../../tests/test_validators.py ...................................... [ 80%]
........................................                                 [ 95%]
../../../tests/test_variabledecode.py ...........                        [100%]

=============================== warnings summary ===============================
formencode/validators.py:8
  
/<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_formencode/build/formencode/validators.py:8:
 DeprecationWarning: 'cgi' is deprecated and slated for removal in Python 3.13
    import cgi

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
======================== 267 passed, 1 warning in 0.80s ========================
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.13 
3.12" --test-pytest returned exit code 13
make[1]: *** [debian/rules:16: override_dh_auto_test] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:7: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------
Build finished at 2024-09-19T01:52:00Z


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

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