Source: sphinx-argparse
Version: 0.2.5-1
Severity: serious
Justification: FTBFS
Tags: bookworm sid ftbfs
User: lu...@debian.org
Usertags: ftbfs-20211220 ftbfs-bookworm

Hi,

During a rebuild of all packages in sid, your package failed to build
on amd64.


Relevant part (hopefully):
>  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:237: python3.10 setup.py config 
> running config
> I: pybuild base:237: python3.9 setup.py config 
> running config
>    dh_auto_build -O--buildsystem=pybuild
> I: pybuild base:237: /usr/bin/python3.10 setup.py build 
> running build
> running build_py
> creating 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_sphinx-argparse/build/sphinxarg
> copying sphinxarg/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_sphinx-argparse/build/sphinxarg
> copying sphinxarg/parser.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_sphinx-argparse/build/sphinxarg
> copying sphinxarg/markdown.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_sphinx-argparse/build/sphinxarg
> copying sphinxarg/ext.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_sphinx-argparse/build/sphinxarg
> I: pybuild base:237: /usr/bin/python3 setup.py build 
> running build
> running build_py
> creating 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_sphinx-argparse/build/sphinxarg
> copying sphinxarg/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_sphinx-argparse/build/sphinxarg
> copying sphinxarg/parser.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_sphinx-argparse/build/sphinxarg
> copying sphinxarg/markdown.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_sphinx-argparse/build/sphinxarg
> copying sphinxarg/ext.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_sphinx-argparse/build/sphinxarg
>    dh_auto_test -O--buildsystem=pybuild
> I: pybuild base:237: cd 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_sphinx-argparse/build; python3.10 -m 
> pytest -v
> ============================= test session starts 
> ==============================
> platform linux -- Python 3.10.1, pytest-6.2.5, py-1.10.0, pluggy-0.13.0 -- 
> /usr/bin/python3.10
> cachedir: .pytest_cache
> rootdir: /<<PKGBUILDDIR>>
> collecting ... collected 16 items
> 
> test/test_parser.py::test_parse_options PASSED                           [  
> 6%]
> test/test_parser.py::test_parse_default PASSED                           [ 
> 12%]
> test/test_parser.py::test_parse_arg_choices PASSED                       [ 
> 18%]
> test/test_parser.py::test_parse_opt_choices PASSED                       [ 
> 25%]
> test/test_parser.py::test_parse_default_skip_default PASSED              [ 
> 31%]
> test/test_parser.py::test_parse_positional PASSED                        [ 
> 37%]
> test/test_parser.py::test_parse_description PASSED                       [ 
> 43%]
> test/test_parser.py::test_parse_nested FAILED                            [ 
> 50%]
> test/test_parser.py::test_parse_nested_with_alias FAILED                 [ 
> 56%]
> test/test_parser.py::test_aliased_traversal PASSED                       [ 
> 62%]
> test/test_parser.py::test_parse_nested_traversal PASSED                  [ 
> 68%]
> test/test_parser.py::test_fill_in_default_prog PASSED                    [ 
> 75%]
> test/test_parser.py::test_fill_in_description_epilog PASSED              [ 
> 81%]
> test/test_parser.py::test_string_quoting PASSED                          [ 
> 87%]
> test/test_parser.py::test_parse_groups FAILED                            [ 
> 93%]
> test/test_parser.py::test_action_groups_with_subcommands FAILED          
> [100%]
> 
> =================================== FAILURES 
> ===================================
> ______________________________ test_parse_nested 
> _______________________________
> 
>     def test_parse_nested():
>         parser = argparse.ArgumentParser(prog='test_parse_nested')
>         parser.add_argument('foo', default=False, help='foo help')
>         parser.add_argument('bar', default=False)
>     
>         subparsers = parser.add_subparsers()
>     
>         subparser = subparsers.add_parser('install', help='install help')
>         subparser.add_argument('ref', type=str, help='foo1 help')
>         subparser.add_argument('--upgrade', action='store_true', 
> default=False, help='foo2 help')
>     
>         data = parse_parser(parser)
>     
>         assert data['action_groups'][0]['options'] == [
>             {
>                 'name': ['foo'],
>                 'help': 'foo help',
>                 'default': False
>             }, {
>                 'name': ['bar'],
>                 'help': '',
>                 'default': False
>             }
>         ]
>     
> >       assert data['children'] == [
>             {
>                 'name': 'install',
>                 'help': 'install help',
>                 'usage': 'usage: test_parse_nested install [-h] [--upgrade] 
> ref',
>                 'bare_usage': 'test_parse_nested install [-h] [--upgrade] 
> ref',
>                 'action_groups': [
>                     {
>                         'title': 'Positional Arguments',
>                         'description': None,
>                         'options': [
>                             {
>                                 'name': ['ref'],
>                                 'help': 'foo1 help',
>                                 'default': None
>                             }
>                         ]
>                     },
>                     {
>                         'description': None,
>                         'title': 'Named Arguments',
>                         'options': [
>                             {
>                                 'name': ['--upgrade'],
>                                 'default': False,
>                                 'help': 'foo2 help'
>                             }
>                         ]
>                     }
>                 ]
>             }
>         ]
> E       AssertionError: assert [{'action_gro...nstall', ...}] == 
> [{'action_gro...nstall', ...}]
> E         At index 0 diff: {'name': 'install', 'help': 'install help', 
> 'usage': 'usage: test_parse_nested install [-h] [--upgrade] ref', 
> 'bare_usage': 'test_parse_nested install [-h] [--upgrade] ref', 
> 'action_groups': [{'title': 'Positional Arguments', 'description': None, 
> 'options': [{'name': ['ref'], 'default': None, 'help': 'foo1 help'}]}, 
> {'title': 'options', 'description': None, 'options': [{'name': ['--upgrade'], 
> 'default': False, 'help': 'foo2 help'}]}]} != {'name': 'install', 'help': 
> 'install help', 'usage': 'usage: test_parse_nested install [-h] [--upgrade] 
> ref', 'bare_u...
> E         
> E         ...Full output truncated (21 lines hidden), use '-vv' to show
> 
> test/test_parser.py:157: AssertionError
> _________________________ test_parse_nested_with_alias 
> _________________________
> 
>     def test_parse_nested_with_alias():
>         parser = argparse.ArgumentParser(prog='test_parse_nested_with_alias')
>         parser.add_argument('foo', default=False, help='foo help')
>         parser.add_argument('bar', default=False)
>     
>         subparsers = parser.add_subparsers()
>     
>         subparser = subparsers.add_parser('install', aliases=['i'], 
> help='install help')
>         subparser.add_argument('ref', type=str, help='foo1 help')
>         subparser.add_argument('--upgrade', action='store_true', 
> default=False, help='foo2 help')
>     
>         data = parse_parser(parser)
>     
>         assert data['action_groups'][0]['options'] == [
>             {
>                 'name': ['foo'],
>                 'help': 'foo help',
>                 'default': False
>             }, {
>                 'name': ['bar'],
>                 'help': '',
>                 'default': False
>             }
>         ]
>     
> >       assert data['children'] == [
>             {
>                 'name': 'install (i)',
>                 'identifier': 'install',
>                 'help': 'install help',
>                 'usage': 'usage: test_parse_nested_with_alias install [-h] 
> [--upgrade] ref',
>                 'bare_usage': 'test_parse_nested_with_alias install [-h] 
> [--upgrade] ref',
>                 'action_groups': [
>                     {
>                         'title': 'Positional Arguments',
>                         'description': None,
>                         'options': [
>                             {
>                                 'name': ['ref'],
>                                 'help': 'foo1 help',
>                                 'default': None
>                             }
>                         ]
>                     },
>                     {
>                         'description': None,
>                         'title': 'Named Arguments',
>                         'options': [
>                             {
>                                 'name': ['--upgrade'],
>                                 'default': False,
>                                 'help': 'foo2 help'
>                             }
>                         ]
>                     }
>                 ]
>             }
>         ]
> E       AssertionError: assert [{'action_gro...nstall', ...}] == 
> [{'action_gro...nstall', ...}]
> E         At index 0 diff: {'name': 'install (i)', 'help': 'install help', 
> 'usage': 'usage: test_parse_nested_with_alias install [-h] [--upgrade] ref', 
> 'bare_usage': 'test_parse_nested_with_alias install [-h] [--upgrade] ref', 
> 'identifier': 'install', 'action_groups': [{'title': 'Positional Arguments', 
> 'description': None, 'options': [{'name': ['ref'], 'default': None, 'help': 
> 'foo1 help'}]}, {'title': 'options', 'description': None, 'options': 
> [{'name': ['--upgrade'], 'default': False, 'help': 'foo2 help'}]}]} != 
> {'name': 'install (i)', 'identifier': 'install', 'help': 'install ...
> E         
> E         ...Full output truncated (22 lines hidden), use '-vv' to show
> 
> test/test_parser.py:217: AssertionError
> ______________________________ test_parse_groups 
> _______________________________
> 
>     def test_parse_groups():
>         parser = argparse.ArgumentParser()
>         parser.add_argument('--foo', action='store_true', default=False, 
> help='foo help')
>         parser.add_argument('--bar', action='store_true', default=False)
>         optional = parser.add_argument_group('Group 1')
>         optional.add_argument("--option1", help='option #1')
>         optional.add_argument("--option2", help='option #2')
>     
>         data = parse_parser(parser)
> >       assert data['action_groups'] == [
>             {
>                 'description': None,
>                 'options': [
>                     {'default': False, 'help': 'foo help', 'name': ['--foo']},
>                     {'default': False, 'help': '', 'name': ['--bar']}],
>                 'title': 'Named Arguments'},
>             {
>                 'description': None,
>                 'options': [
>                     {'default': None, 'help': 'option #1', 'name': 
> ['--option1']},
>                     {'default': None, 'help': 'option #2', 'name': 
> ['--option2']}],
>                 'title': 'Group 1'
>             }
>         ]
> E       AssertionError: assert [{'descriptio...': 'Group 1'}] == 
> [{'descriptio...': 'Group 1'}]
> E         At index 0 diff: {'title': 'options', 'description': None, 
> 'options': [{'name': ['--foo'], 'default': False, 'help': 'foo help'}, 
> {'name': ['--bar'], 'default': False, 'help': ''}]} != {'description': None, 
> 'options': [{'default': False, 'help': 'foo help', 'name': ['--foo']}, 
> {'default': False, 'help': '', 'name': ['--bar']}], 'title': 'Named 
> Arguments'}
> E         Full diff:
> E           [
> E            {'description': None,
> E             'options': [{'default': False, 'help': 'foo help', 'name': 
> ['--foo']},
> E                         {'default': False, 'help': '', 'name': ['--bar']}],
> E         -   'title': 'Named Arguments'},...
> E         
> E         ...Full output truncated (7 lines hidden), use '-vv' to show
> 
> test/test_parser.py:388: AssertionError
> _____________________ test_action_groups_with_subcommands 
> ______________________
> 
>     def test_action_groups_with_subcommands():
>         """
>         This is a somewhat overly complicated example incorporating both 
> action
>         groups (with optional AND positional arguments) and subcommands (again
>         with both optional and positional arguments)
>         """
>         parser = argparse.ArgumentParser('foo')
>         subparsers = parser.add_subparsers()
>         parserA = subparsers.add_parser('A', help='A subparser')
>         parserA.add_argument('baz', type=int, help='An integer')
>         parserB = subparsers.add_parser('B', help='B subparser')
>         parserB.add_argument('--barg', choices='XYZ', help='A list of 
> choices')
>     
>         parser.add_argument('--foo', help='foo help')
>         parser.add_argument('foo2', metavar='foo2 metavar', help='foo2 help')
>         grp1 = parser.add_argument_group('bar options')
>         grp1.add_argument('--bar', help='bar help')
>         grp1.add_argument('quux', help='quux help')
>         grp2 = parser.add_argument_group('bla options')
>         grp2.add_argument('--blah', help='blah help')
>         grp2.add_argument('sniggly', help='sniggly help')
>     
>         data = parse_parser(parser)
>     
> >       assert data['action_groups'] == [
>             {'options': [{'default': None, 'name': ['foo2 metavar'], 'help': 
> 'foo2 help'}], 'description': None, 'title': 'Positional Arguments'},
>             {'options': [{'default': None, 'name': ['--foo'], 'help': 'foo 
> help'}], 'description': None, 'title': 'Named Arguments'},
>             {'options': [{'default': None, 'name': ['--bar'], 'help': 'bar 
> help'}, {'default': None, 'name': ['quux'], 'help': 'quux help'}], 
> 'description': None, 'title': 'bar options'},
>             {'options': [{'default': None, 'name': ['--blah'], 'help': 'blah 
> help'}, {'default': None, 'name': ['sniggly'], 'help': 'sniggly help'}], 
> 'description': None, 'title': 'bla options'}
>         ]
> E       AssertionError: assert [{'descriptio...bla options'}] == 
> [{'descriptio...bla options'}]
> E         At index 1 diff: {'title': 'options', 'description': None, 
> 'options': [{'name': ['--foo'], 'default': None, 'help': 'foo help'}]} != 
> {'options': [{'default': None, 'name': ['--foo'], 'help': 'foo help'}], 
> 'description': None, 'title': 'Named Arguments'}
> E         Full diff:
> E           [
> E            {'description': None,
> E             'options': [{'default': None, 'help': 'foo2 help', 'name': 
> ['foo2 metavar']}],
> E             'title': 'Positional Arguments'},
> E            {'description': None,...
> E         
> E         ...Full output truncated (13 lines hidden), use '-vv' to show
> 
> test/test_parser.py:429: AssertionError
> =============================== warnings summary 
> ===============================
> sphinxarg/parser.py:13
>   
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_sphinx-argparse/build/sphinxarg/parser.py:13:
>  DeprecationWarning: invalid escape sequence '\s'
>     path = re.split('\s+', path)
> 
> -- Docs: https://docs.pytest.org/en/stable/warnings.html
> =========================== short test summary info 
> ============================
> FAILED test/test_parser.py::test_parse_nested - AssertionError: assert 
> [{'act...
> FAILED test/test_parser.py::test_parse_nested_with_alias - AssertionError: 
> as...
> FAILED test/test_parser.py::test_parse_groups - AssertionError: assert 
> [{'des...
> FAILED test/test_parser.py::test_action_groups_with_subcommands - 
> AssertionEr...
> =================== 4 failed, 12 passed, 1 warning in 0.07s 
> ====================
> E: pybuild pybuild:355: test: plugin distutils failed with: exit code=1: cd 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_sphinx-argparse/build; python3.10 -m 
> pytest -v
> I: pybuild base:237: cd 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_sphinx-argparse/build; python3.9 -m 
> pytest -v
> ============================= test session starts 
> ==============================
> platform linux -- Python 3.9.9, pytest-6.2.5, py-1.10.0, pluggy-0.13.0 -- 
> /usr/bin/python3.9
> cachedir: .pytest_cache
> rootdir: /<<PKGBUILDDIR>>
> collecting ... collected 16 items
> 
> test/test_parser.py::test_parse_options PASSED                           [  
> 6%]
> test/test_parser.py::test_parse_default PASSED                           [ 
> 12%]
> test/test_parser.py::test_parse_arg_choices PASSED                       [ 
> 18%]
> test/test_parser.py::test_parse_opt_choices PASSED                       [ 
> 25%]
> test/test_parser.py::test_parse_default_skip_default PASSED              [ 
> 31%]
> test/test_parser.py::test_parse_positional PASSED                        [ 
> 37%]
> test/test_parser.py::test_parse_description PASSED                       [ 
> 43%]
> test/test_parser.py::test_parse_nested PASSED                            [ 
> 50%]
> test/test_parser.py::test_parse_nested_with_alias PASSED                 [ 
> 56%]
> test/test_parser.py::test_aliased_traversal PASSED                       [ 
> 62%]
> test/test_parser.py::test_parse_nested_traversal PASSED                  [ 
> 68%]
> test/test_parser.py::test_fill_in_default_prog PASSED                    [ 
> 75%]
> test/test_parser.py::test_fill_in_description_epilog PASSED              [ 
> 81%]
> test/test_parser.py::test_string_quoting PASSED                          [ 
> 87%]
> test/test_parser.py::test_parse_groups PASSED                            [ 
> 93%]
> test/test_parser.py::test_action_groups_with_subcommands PASSED          
> [100%]
> 
> =============================== warnings summary 
> ===============================
> sphinxarg/parser.py:13
>   
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_sphinx-argparse/build/sphinxarg/parser.py:13:
>  DeprecationWarning: invalid escape sequence \s
>     path = re.split('\s+', path)
> 
> -- Docs: https://docs.pytest.org/en/stable/warnings.html
> ======================== 16 passed, 1 warning in 0.04s 
> =========================
> dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.10 
> 3.9" returned exit code 13


The full build log is available from:
http://qa-logs.debian.net/2021/12/20/sphinx-argparse_0.2.5-1_unstable.log

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 marking 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.

Reply via email to