This seems to be caused by the version change of python3-pyparsing
fom 3.0.9-1 in bookworm to 3.1.0-1 in trixie/sid.
At first sight it looks like that this minor version change in pyparsing
has caused some backward incompatibility.

I'll have a look in the next few days at what changed and try to patch
cumin to be compatible with the newer version while maintaining the
existing backward compatibility with pyparsing up to 2.2.0.

On Wed, Jul 26, 2023 at 10:31 PM Lucas Nussbaum <lu...@debian.org> wrote:

> Source: cumin
> Version: 4.2.0-1
> Severity: serious
> Justification: FTBFS
> Tags: trixie sid ftbfs
> User: lu...@debian.org
> Usertags: ftbfs-20230726 ftbfs-trixie
>
> Hi,
>
> During a rebuild of all packages in sid, your package failed to build
> on amd64.
>
>
> Relevant part (hopefully):
> >  debian/rules build
> > dh build --with python3 --buildsystem=pybuild
> >    dh_update_autotools_config -O--buildsystem=pybuild
> >    dh_autoreconf -O--buildsystem=pybuild
> >    dh_auto_configure -O--buildsystem=pybuild
> > I: pybuild base:240: python3.11 setup.py config
> > /usr/lib/python3/dist-packages/setuptools/__init__.py:84:
> _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are
> deprecated.
> > !!
> >
> >
>  
> ********************************************************************************
> >         Requirements should be satisfied by a PEP 517 installer.
> >         If you are using pip, you can try `pip install --use-pep517`.
> >
>  
> ********************************************************************************
> >
> > !!
> >   dist.fetch_build_eggs(dist.setup_requires)
> > WARNING: The wheel package is not available.
> > running config
> >    dh_auto_build -O--buildsystem=pybuild
> > I: pybuild base:240: /usr/bin/python3 setup.py build
> > /usr/lib/python3/dist-packages/setuptools/__init__.py:84:
> _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are
> deprecated.
> > !!
> >
> >
>  
> ********************************************************************************
> >         Requirements should be satisfied by a PEP 517 installer.
> >         If you are using pip, you can try `pip install --use-pep517`.
> >
>  
> ********************************************************************************
> >
> > !!
> >   dist.fetch_build_eggs(dist.setup_requires)
> > WARNING: The wheel package is not available.
> > running build
> > running build_py
> > creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cumin/build/cumin
> > copying cumin/__init__.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cumin/build/cumin
> > copying cumin/cli.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cumin/build/cumin
> > copying cumin/transport.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cumin/build/cumin
> > copying cumin/grammar.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cumin/build/cumin
> > copying cumin/color.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cumin/build/cumin
> > copying cumin/query.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cumin/build/cumin
> > creating
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cumin/build/cumin/transports
> > copying cumin/transports/clustershell.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cumin/build/cumin/transports
> > copying cumin/transports/__init__.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cumin/build/cumin/transports
> > creating
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cumin/build/cumin/backends
> > copying cumin/backends/direct.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cumin/build/cumin/backends
> > copying cumin/backends/knownhosts.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cumin/build/cumin/backends
> > copying cumin/backends/__init__.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cumin/build/cumin/backends
> > copying cumin/backends/openstack.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cumin/build/cumin/backends
> > copying cumin/backends/puppetdb.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cumin/build/cumin/backends
> >    dh_auto_test -O--buildsystem=pybuild
> > I: pybuild base:240: cd
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cumin/build; python3.11 -m pytest
> /<<PKGBUILDDIR>>/cumin/tests/unit
> > ============================= test session starts
> ==============================
> > platform linux -- Python 3.11.4, pytest-7.4.0, pluggy-1.2.0
> > rootdir: /<<PKGBUILDDIR>>
> > configfile: pytest.ini
> > plugins: cov-4.1.0, requests-mock-1.9.3
> > collected 416 items
> >
> > ../../../cumin/tests/unit/test_backends.py .
>  [  0%]
> > ../../../cumin/tests/unit/test_cli.py ..............................
>  [  7%]
> > ../../../cumin/tests/unit/test_color.py .........
> [  9%]
> > ../../../cumin/tests/unit/test_grammar.py ...........
> [ 12%]
> > ../../../cumin/tests/unit/test_init.py .............................
>  [ 19%]
> > ../../../cumin/tests/unit/test_query.py ................
>  [ 23%]
> > ../../../cumin/tests/unit/test_transport.py ....
>  [ 24%]
> > ../../../cumin/tests/unit/backends/test_direct.py ...
> [ 24%]
> > ../../../cumin/tests/unit/backends/test_grammars.py ......F.
>  [ 26%]
> > ../../../cumin/tests/unit/backends/test_knownhosts.py ..................
> [ 31%]
> > ........
>  [ 32%]
> > ../../../cumin/tests/unit/backends/test_openstack.py ...........
>  [ 35%]
> > ../../../cumin/tests/unit/backends/test_puppetdb.py ....................
> [ 40%]
> > ........................................................................
> [ 57%]
> > ...
> [ 58%]
> > ../../../cumin/tests/unit/transports/test_clustershell.py ..............
> [ 61%]
> > ...............................
> [ 69%]
> > ../../../cumin/tests/unit/transports/test_init.py ......................
> [ 74%]
> > ........................................................................
> [ 91%]
> > ..................................
>  [100%]
> >
> > =================================== FAILURES
> ===================================
> > _______________________ test_invalid_grammars[openstack]
> _______________________
> >
> > backend_name = 'openstack'
> >
> >     @pytest.mark.parametrize('backend_name', BACKENDS)
> >     def test_invalid_grammars(backend_name):
> >         """Run quick pyparsing test over invalid grammar strings for
> each backend that has the appropriate fixture."""
> >         try:
> >             backend =
> importlib.import_module('cumin.backends.{backend}'.format(backend=backend_name))
> >         except ImportError:
> >             return  # Backend not available
> >
> >         results = backend.grammar().runTests(
> >             get_fixture(os.path.join(BASE_PATH,
> '{backend}_invalid.txt'.format(backend=backend_name)), as_string=True),
> >             failureTests=True)
> > >       assert results[0]
> > E       assert False
> >
> > ../../../cumin/tests/unit/backends/test_grammars.py:40: AssertionError
> > ----------------------------- Captured stdout call
> -----------------------------
> >
> > # Invalid grammars
> > * key:value
> > * key:value
> >   ^
> > ParseException: Expected end of text, found 'key'  (at char 2), (line:1,
> col:3)
> > FAIL: Expected end of text, found 'key'  (at char 2), (line:1, col:3)
> >
> > key:value key
> > key:value key
> >           ^
> > ParseException: Expected end of text, found 'key'  (at char 10),
> (line:1, col:11)
> > FAIL: Expected end of text, found 'key'  (at char 10), (line:1, col:11)
> >
> > key:value :value
> > key:value :value
> >           ^
> > ParseException: Expected end of text, found ':'  (at char 10), (line:1,
> col:11)
> > FAIL: Expected end of text, found ':'  (at char 10), (line:1, col:11)
> >
> > "key":value
> > "key":value
> > ^
> > ParseException: Expected {Group:('*') |
> {Group:(Combine:({W:(-.0-9_a-z){2,...} ':' {quoted string using single or
> double quotes | W:(!-'*-z|~)}}))}...}, found '"'  (at char 0), (line:1,
> col:1)
> > FAIL: Expected {Group:('*') | {Group:(Combine:({W:(-.0-9_a-z){2,...} ':'
> {quoted string using single or double quotes | W:(!-'*-z|~)}}))}...}, found
> '"'  (at char 0), (line:1, col:1)
> >
> > key%:value
> > key%:value
> >    ^
> > ParseException: , found '%'  (at char 3), (line:1, col:4)
> > FAIL: , found '%'  (at char 3), (line:1, col:4)
> >
> > A:value
> > A:value
> > ^
> > ParseException: Expected {Group:('*') |
> {Group:(Combine:({W:(-.0-9_a-z){2,...} ':' {quoted string using single or
> double quotes | W:(!-'*-z|~)}}))}...}, found 'A'  (at char 0), (line:1,
> col:1)
> > FAIL: Expected {Group:('*') | {Group:(Combine:({W:(-.0-9_a-z){2,...} ':'
> {quoted string using single or double quotes | W:(!-'*-z|~)}}))}...}, found
> 'A'  (at char 0), (line:1, col:1)
> >
> > a:value
> > [['a:value']]
> > [0]:
> >   ['a:value']
> >   - key: 'a'
> >   - value: 'value'
> >
> > KEY:value
> > KEY:value
> > ^
> > ParseException: Expected {Group:('*') |
> {Group:(Combine:({W:(-.0-9_a-z){2,...} ':' {quoted string using single or
> double quotes | W:(!-'*-z|~)}}))}...}, found 'KEY'  (at char 0), (line:1,
> col:1)
> > FAIL: Expected {Group:('*') | {Group:(Combine:({W:(-.0-9_a-z){2,...} ':'
> {quoted string using single or double quotes | W:(!-'*-z|~)}}))}...}, found
> 'KEY'  (at char 0), (line:1, col:1)
> >
> > Key:value
> > Key:value
> > ^
> > ParseException: Expected {Group:('*') |
> {Group:(Combine:({W:(-.0-9_a-z){2,...} ':' {quoted string using single or
> double quotes | W:(!-'*-z|~)}}))}...}, found 'Key'  (at char 0), (line:1,
> col:1)
> > FAIL: Expected {Group:('*') | {Group:(Combine:({W:(-.0-9_a-z){2,...} ':'
> {quoted string using single or double quotes | W:(!-'*-z|~)}}))}...}, found
> 'Key'  (at char 0), (line:1, col:1)
> >
> > kEy:value
> > kEy:value
> >  ^
> > ParseException: , found 'Ey'  (at char 1), (line:1, col:2)
> > FAIL: , found 'Ey'  (at char 1), (line:1, col:2)
> > =============================== warnings summary
> ===============================
> > ../../../cumin/__init__.py:9
> >   /<<PKGBUILDDIR>>/cumin/__init__.py:9: DeprecationWarning:
> pkg_resources is deprecated as an API. See
> https://setuptools.pypa.io/en/latest/pkg_resources.html
> >     from pkg_resources import DistributionNotFound, get_distribution
> >
> > -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
> > =========================== short test summary info
> ============================
> > FAILED
> ../../../cumin/tests/unit/backends/test_grammars.py::test_invalid_grammars[openstack]
> > =================== 1 failed, 415 passed, 1 warning in 1.91s
> ===================
> > E: pybuild pybuild:388: test: plugin distutils failed with: exit code=1:
> cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_cumin/build; python3.11 -m
> pytest {dir}/cumin/tests/unit
> > dh_auto_test: error: pybuild --test -i python{version} -p 3.11 returned
> exit code 13
>
>
> The full build log is available from:
> http://qa-logs.debian.net/2023/07/26/cumin_4.2.0-1_unstable.log
>
> All bugs filed during this archive rebuild are listed at:
>
> https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20230726;users=lu...@debian.org
> or:
>
> https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20230726&fusertaguser=lu...@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results
>
> 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 mark 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