Source: python-django
Version: 3:4.2.16-1
Severity: normal
User: [email protected]
Usertags: python3.13
Forwarded: https://code.djangoproject.com/ticket/34900

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:

#23426 - RunSQL should fail when a list of statements with an incorrect ... ok
test_separate_database_and_state 
(migrations.test_operations.OperationTests.test_separate_database_and_state)
Tests the SeparateDatabaseAndState operation. ... ok
test_separate_database_and_state2 
(migrations.test_operations.OperationTests.test_separate_database_and_state2)
A complex SeparateDatabaseAndState operation: Multiple operations both ... ok
test_smallfield_autofield_foreignfield_growth 
(migrations.test_operations.OperationTests.test_smallfield_autofield_foreignfield_growth)
A field may be migrated from SmallAutoField to AutoField. ... ok
test_smallfield_bigautofield_foreignfield_growth 
(migrations.test_operations.OperationTests.test_smallfield_bigautofield_foreignfield_growth)
A field may be migrated from SmallAutoField to BigAutoField. ... ok

======================================================================
FAIL: test_help_default_options_with_custom_arguments 
(admin_scripts.tests.CommandTypes.test_help_default_options_with_custom_arguments)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python3.13/unittest/case.py", line 58, in testPartExecutor
    yield
  File "/usr/lib/python3.13/unittest/case.py", line 651, in run
    self._callTestMethod(testMethod)
    
  File "/usr/lib/python3.13/unittest/case.py", line 606, in _callTestMethod
    if method() is not None:
    ^^^^^^^^^^^^^^^
  File "/<<PKGBUILDDIR>>/tests/admin_scripts/tests.py", line 1903, in 
test_help_default_options_with_custom_arguments
    self.assertOutput(out, "--option_a OPTION_A, -a OPTION_A")
    ^^^^^^^^^^^^^^^
  File "/<<PKGBUILDDIR>>/tests/admin_scripts/tests.py", line 182, in 
assertOutput
    self.assertIn(
    ^^^^^^^^^^^
  File "/usr/lib/python3.13/unittest/case.py", line 1174, in assertIn
    self.fail(self._formatMessage(msg, standardMsg))
    ^^^^^^^^^^^
  File "/usr/lib/python3.13/unittest/case.py", line 732, in fail
    raise self.failureException(msg)
    ^^^^^^^^^^^^^^^
AssertionError: '--option_a OPTION_A, -a OPTION_A' not found in 'usage: 
manage.py base_command [-h] [--option_a OPTION_A] [--option_b OPTION_B]\n       
                       [--option_c OPTION_C] [--version] [-v {0,1,2,3}]\n       
                       [--settings SETTINGS] [--pythonpath PYTHONPATH]\n        
                      [--traceback] [--no-color] [--force-color]\n              
                [args ...]\n\nTest basic commands\n\npositional arguments:\n  
args\n\noptions:\n  -h, --help            show this help message and exit\n  
--option_a, -a OPTION_A\n  --option_b, -b OPTION_B\n  --option_c, -c OPTION_C\n 
 --version             Show program\'s version number and exit.\n  -v, 
--verbosity {0,1,2,3}\n                        Verbosity level; 0=minimal 
output, 1=normal output,\n                        2=verbose output, 3=very 
verbose output\n  --settings SETTINGS   The Python path to a settings module, 
e.g.\n                        "myproject.settings.main". If this isn\'t 
provided, the\n                        DJANGO_SETTINGS_MODULE environment 
variable will be\n                        used.\n  --pythonpath PYTHONPATH\n    
                    A directory to add to the Python path, e.g.\n               
         "/home/djangoprojects/myproject".\n  --traceback           Raise on 
CommandError exceptions.\n  --no-color            Don\'t colorize the command 
output.\n  --force-color         Force colorization of the command output.\n' : 
'--option_a OPTION_A, -a OPTION_A' does not match actual output text 'usage: 
manage.py base_command [-h] [--option_a OPTION_A] [--option_b OPTION_B]
                              [--option_c OPTION_C] [--version] [-v {0,1,2,3}]
                              [--settings SETTINGS] [--pythonpath PYTHONPATH]
                              [--traceback] [--no-color] [--force-color]
                              [args ...]

Test basic commands

positional arguments:
  args

options:
  -h, --help            show this help message and exit
  --option_a, -a OPTION_A
  --option_b, -b OPTION_B
  --option_c, -c OPTION_C
  --version             Show program's version number and exit.
  -v, --verbosity {0,1,2,3}
                        Verbosity level; 0=minimal output, 1=normal output,
                        2=verbose output, 3=very verbose output
  --settings SETTINGS   The Python path to a settings module, e.g.
                        "myproject.settings.main". If this isn't provided, the
                        DJANGO_SETTINGS_MODULE environment variable will be
                        used.
  --pythonpath PYTHONPATH
                        A directory to add to the Python path, e.g.
                        "/home/djangoprojects/myproject".
  --traceback           Raise on CommandError exceptions.
  --no-color            Don't colorize the command output.
  --force-color         Force colorization of the command output.
'

----------------------------------------------------------------------
Ran 16338 tests in 51.215s

FAILED (failures=1, skipped=1294, expected failures=5)
Destroying test database for alias 'default' 
('file:memorydb_default?mode=memory&cache=shared')...
Destroying test database for alias 'default' 
('file:memorydb_default?mode=memory&cache=shared')...
Destroying test database for alias 'default' 
('file:memorydb_default?mode=memory&cache=shared')...
Destroying test database for alias 'default' 
('file:memorydb_default?mode=memory&cache=shared')...
Destroying test database for alias 'default' 
('file:memorydb_default?mode=memory&cache=shared')...
Destroying test database for alias 'default' 
('file:memorydb_default?mode=memory&cache=shared')...
Destroying test database for alias 'default' 
('file:memorydb_default?mode=memory&cache=shared')...
Destroying test database for alias 'default' 
('file:memorydb_default?mode=memory&cache=shared')...
Destroying test database for alias 'default' 
('file:memorydb_default?mode=memory&cache=shared')...
Destroying test database for alias 'default' 
('file:memorydb_default?mode=memory&cache=shared')...
Destroying test database for alias 'default' 
('file:memorydb_default?mode=memory&cache=shared')...
Destroying test database for alias 'default' 
('file:memorydb_default?mode=memory&cache=shared')...
Destroying test database for alias 'default' 
('file:memorydb_default?mode=memory&cache=shared')...
Destroying test database for alias 'default' 
('file:memorydb_default?mode=memory&cache=shared')...
Destroying test database for alias 'default' 
('file:memorydb_default?mode=memory&cache=shared')...
Destroying test database for alias 'default' 
('file:memorydb_default?mode=memory&cache=shared')...
Destroying test database for alias 'default' 
('file:memorydb_default?mode=memory&cache=shared')...
Destroying test database for alias 'other' 
('file:memorydb_other?mode=memory&cache=shared')...
Destroying test database for alias 'other' 
('file:memorydb_other?mode=memory&cache=shared')...
Destroying test database for alias 'other' 
('file:memorydb_other?mode=memory&cache=shared')...
Destroying test database for alias 'other' 
('file:memorydb_other?mode=memory&cache=shared')...
Destroying test database for alias 'other' 
('file:memorydb_other?mode=memory&cache=shared')...
Destroying test database for alias 'other' 
('file:memorydb_other?mode=memory&cache=shared')...
Destroying test database for alias 'other' 
('file:memorydb_other?mode=memory&cache=shared')...
Destroying test database for alias 'other' 
('file:memorydb_other?mode=memory&cache=shared')...
Destroying test database for alias 'other' 
('file:memorydb_other?mode=memory&cache=shared')...
Destroying test database for alias 'other' 
('file:memorydb_other?mode=memory&cache=shared')...
Destroying test database for alias 'other' 
('file:memorydb_other?mode=memory&cache=shared')...
Destroying test database for alias 'other' 
('file:memorydb_other?mode=memory&cache=shared')...
Destroying test database for alias 'other' 
('file:memorydb_other?mode=memory&cache=shared')...
Destroying test database for alias 'other' 
('file:memorydb_other?mode=memory&cache=shared')...
Destroying test database for alias 'other' 
('file:memorydb_other?mode=memory&cache=shared')...
Destroying test database for alias 'other' 
('file:memorydb_other?mode=memory&cache=shared')...
Destroying test database for alias 'other' 
('file:memorydb_other?mode=memory&cache=shared')...
make[1]: *** [debian/rules:23: override_dh_auto_test] Error 1
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:9: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------
Build finished at 2024-09-19T00:36:38Z


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

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