Source: parso
Version: 0.8.1-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):
> make[1]: Entering directory '/<<PKGBUILDDIR>>'
> dh_auto_build -i
> I: pybuild base:237: /usr/bin/python3.10 setup.py build 
> running build
> running build_py
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso
> copying parso/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso
> copying parso/parser.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso
> copying parso/grammar.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso
> copying parso/cache.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso
> copying parso/tree.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso
> copying parso/file_io.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso
> copying parso/normalizer.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso
> copying parso/_compatibility.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso
> copying parso/utils.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/python
> copying parso/python/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/python
> copying parso/python/parser.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/python
> copying parso/python/errors.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/python
> copying parso/python/tokenize.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/python
> copying parso/python/pep8.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/python
> copying parso/python/tree.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/python
> copying parso/python/prefix.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/python
> copying parso/python/diff.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/python
> copying parso/python/token.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/python
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/pgen2
> copying parso/pgen2/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/pgen2
> copying parso/pgen2/grammar_parser.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/pgen2
> copying parso/pgen2/generator.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/pgen2
> running egg_info
> writing parso.egg-info/PKG-INFO
> writing dependency_links to parso.egg-info/dependency_links.txt
> writing requirements to parso.egg-info/requires.txt
> writing top-level names to parso.egg-info/top_level.txt
> reading manifest file 'parso.egg-info/SOURCES.txt'
> reading manifest template 'MANIFEST.in'
> warning: no previously-included files matching '*.pyc' found under directory 
> '*'
> adding license file 'LICENSE.txt'
> adding license file 'AUTHORS.txt'
> writing manifest file 'parso.egg-info/SOURCES.txt'
> copying parso/python/grammar39.txt -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/python
> copying parso/python/grammar38.txt -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/python
> copying parso/python/grammar36.txt -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/python
> copying parso/python/grammar310.txt -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/python
> copying parso/python/grammar37.txt -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build/parso/python
> I: pybuild base:237: /usr/bin/python3 setup.py build 
> running build
> running build_py
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso
> copying parso/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso
> copying parso/parser.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso
> copying parso/grammar.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso
> copying parso/cache.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso
> copying parso/tree.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso
> copying parso/file_io.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso
> copying parso/normalizer.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso
> copying parso/_compatibility.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso
> copying parso/utils.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/python
> copying parso/python/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/python
> copying parso/python/parser.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/python
> copying parso/python/errors.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/python
> copying parso/python/tokenize.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/python
> copying parso/python/pep8.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/python
> copying parso/python/tree.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/python
> copying parso/python/prefix.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/python
> copying parso/python/diff.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/python
> copying parso/python/token.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/python
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/pgen2
> copying parso/pgen2/__init__.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/pgen2
> copying parso/pgen2/grammar_parser.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/pgen2
> copying parso/pgen2/generator.py -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/pgen2
> running egg_info
> writing parso.egg-info/PKG-INFO
> writing dependency_links to parso.egg-info/dependency_links.txt
> writing requirements to parso.egg-info/requires.txt
> writing top-level names to parso.egg-info/top_level.txt
> reading manifest file 'parso.egg-info/SOURCES.txt'
> reading manifest template 'MANIFEST.in'
> warning: no previously-included files matching '*.pyc' found under directory 
> '*'
> adding license file 'LICENSE.txt'
> adding license file 'AUTHORS.txt'
> writing manifest file 'parso.egg-info/SOURCES.txt'
> copying parso/python/grammar39.txt -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/python
> copying parso/python/grammar38.txt -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/python
> copying parso/python/grammar36.txt -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/python
> copying parso/python/grammar310.txt -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/python
> copying parso/python/grammar37.txt -> 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build/parso/python
> cd docs && \
> PYTHONPATH=/<<PKGBUILDDIR>> http_proxy='http://127.0.0.1:9/' 
> https_proxy='https://127.0.0.1:9/' \
> sphinx-build -N -E -T -b html . /<<PKGBUILDDIR>>/.pybuild/docs/html/
> Running Sphinx v4.3.2
> making output directory... done
> loading intersphinx inventory from https://docs.python.org/3/objects.inv...
> WARNING: failed to reach any of the inventories with the following issues:
> intersphinx inventory 'https://docs.python.org/3/objects.inv' not fetchable 
> due to <class 'requests.exceptions.ProxyError'>: 
> HTTPSConnectionPool(host='docs.python.org', port=443): Max retries exceeded 
> with url: /3/objects.inv (Caused by ProxyError('Cannot connect to proxy.', 
> NewConnectionError('<urllib3.connection.HTTPSConnection object at 
> 0x7f1cfa267b20>: Failed to establish a new connection: [Errno 111] Connection 
> refused')))
> building [mo]: targets for 0 po files that are out of date
> building [html]: targets for 6 source files that are out of date
> updating environment: [new config] 6 added, 0 changed, 0 removed
> reading sources... [ 16%] docs/development
> reading sources... [ 33%] docs/installation
> reading sources... [ 50%] docs/parser-tree
> reading sources... [ 66%] docs/usage
> reading sources... [ 83%] global
> reading sources... [100%] index
> 
> looking for now-outdated files... none found
> pickling environment... done
> checking consistency... done
> preparing documents... done
> writing output... [ 16%] docs/development
> writing output... [ 33%] docs/installation
> writing output... [ 50%] docs/parser-tree
> writing output... [ 66%] docs/usage
> writing output... [ 83%] global
> writing output... [100%] index
> 
> generating indices... genindex py-modindex done
> highlighting module code... [ 16%] parso
> highlighting module code... [ 33%] parso.grammar
> highlighting module code... [ 50%] parso.normalizer
> highlighting module code... [ 66%] parso.python.tree
> highlighting module code... [ 83%] parso.tree
> highlighting module code... [100%] parso.utils
> 
> writing additional pages... search done
> copying static files... done
> copying extra files... done
> dumping search index in English (code: en)... done
> dumping object inventory... done
> build succeeded, 1 warning.
> 
> The HTML pages are in ../.pybuild/docs/html.
> rm -rf /<<PKGBUILDDIR>>/.pybuild/docs/html/.doctrees
> make[1]: Leaving directory '/<<PKGBUILDDIR>>'
>    dh_auto_test -O--buildsystem=pybuild
> I: pybuild base:237: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build; 
> python3.10 -m pytest test
> ============================= test session starts 
> ==============================
> platform linux -- Python 3.10.1, pytest-6.2.5, py-1.10.0, pluggy-0.13.0
> rootdir: /<<PKGBUILDDIR>>, configfile: pytest.ini
> collected 1245 items
> 
> test/test_cache.py .........                                             [  
> 0%]
> test/test_diff_parser.py ............................................... [  
> 4%]
> ...................................                                      [  
> 7%]
> test/test_error_recovery.py .............                                [  
> 8%]
> test/test_file_python_errors.py .....                                    [  
> 8%]
> test/test_fstring.py ................................................... [ 
> 12%]
> ..................                                                       [ 
> 14%]
> test/test_get_code.py .............                                      [ 
> 15%]
> test/test_grammar.py .                                                   [ 
> 15%]
> test/test_load_grammar.py ...........                                    [ 
> 16%]
> test/test_normalizer_issues_files.py .............................       [ 
> 18%]
> test/test_old_fast_parser.py ...............                             [ 
> 19%]
> test/test_param_splitting.py .......                                     [ 
> 20%]
> test/test_parser.py .................................................... [ 
> 24%]
> ........................................................................ [ 
> 30%]
> ..................                                                       [ 
> 31%]
> test/test_parser_tree.py ............................................... [ 
> 35%]
> ......................                                                   [ 
> 37%]
> test/test_pep8.py ...                                                    [ 
> 37%]
> test/test_pgen2.py ..................................................... [ 
> 41%]
> ........................................................................ [ 
> 47%]
> ........................................................................ [ 
> 53%]
> ........................................................................ [ 
> 59%]
> ..                                                                       [ 
> 59%]
> test/test_prefix.py .....................                                [ 
> 61%]
> test/test_python_errors.py ......................................FF..... [ 
> 64%]
> ...F........FFF....FFF..F.FFFFFFFFFFFFF.FFFF...F......F......FF......... [ 
> 70%]
> .......FFFF.......FF........................................F........... [ 
> 76%]
> ............FF........F...................F............................. [ 
> 82%]
> .................................................................        [ 
> 87%]
> test/test_tokenize.py .................................................. [ 
> 91%]
> ........................................................................ [ 
> 97%]
> ......                                                                   [ 
> 97%]
> test/test_utils.py ...............................                       
> [100%]
> 
> =================================== FAILURES 
> ===================================
> ____________________ test_python_exception_matches[{} += 1] 
> ____________________
> 
> code = '{} += 1'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert "SyntaxError: 'dict display' is an illegal expression for 
> augmented assignment" in ["SyntaxError: 'dict literal' is an illegal 
> expression for augmented assignment"]
> 
> test/test_python_errors.py:41: AssertionError
> __________________ test_python_exception_matches[{a:b} += 1] 
> ___________________
> 
> code = '{a:b} += 1'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert "SyntaxError: 'dict display' is an illegal expression for 
> augmented assignment" in ["SyntaxError: 'dict literal' is an illegal 
> expression for augmented assignment"]
> 
> test/test_python_errors.py:41: AssertionError
> ___________________ test_python_exception_matches[... += 1] 
> ____________________
> 
> code = '... += 1'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert "SyntaxError: 'Ellipsis' is an illegal expression for 
> augmented assignment" in ["SyntaxError: 'ellipsis' is an illegal expression 
> for augmented assignment"]
> 
> test/test_python_errors.py:41: AssertionError
> __________________ test_python_exception_matches[a + b += 1] 
> ___________________
> 
> code = 'a + b += 1'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert "SyntaxError: 'operator' is an illegal expression for 
> augmented assignment" in ["SyntaxError: 'expression' is an illegal expression 
> for augmented assignment"]
> 
> test/test_python_errors.py:41: AssertionError
> ____________________ test_python_exception_matches[+a += 1] 
> ____________________
> 
> code = '+a += 1'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert "SyntaxError: 'operator' is an illegal expression for 
> augmented assignment" in ["SyntaxError: 'expression' is an illegal expression 
> for augmented assignment"]
> 
> test/test_python_errors.py:41: AssertionError
> _________________ test_python_exception_matches[a and b += 1] 
> __________________
> 
> code = 'a and b += 1'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert "SyntaxError: 'operator' is an illegal expression for 
> augmented assignment" in ["SyntaxError: 'expression' is an illegal expression 
> for augmented assignment"]
> 
> test/test_python_errors.py:41: AssertionError
> ______________ test_python_exception_matches[[x for x in y] = 1] 
> _______________
> 
> code = '[x for x in y] = 1'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to list comprehension' in 
> ["SyntaxError: cannot assign to list comprehension here. Maybe you meant '==' 
> instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> ______________ test_python_exception_matches[{x for x in y} = 1] 
> _______________
> 
> code = '{x for x in y} = 1'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to set comprehension' in 
> ["SyntaxError: cannot assign to set comprehension here. Maybe you meant '==' 
> instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> _____________ test_python_exception_matches[{x:x for x in y} = 1] 
> ______________
> 
> code = '{x:x for x in y} = 1'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to dict comprehension' in 
> ["SyntaxError: cannot assign to dict comprehension here. Maybe you meant '==' 
> instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> ____________________ test_python_exception_matches[... = 1] 
> ____________________
> 
> code = '... = 1'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to Ellipsis' in ["SyntaxError: 
> cannot assign to ellipsis here. Maybe you meant '==' instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> __________________ test_python_exception_matches[{a, b} = 1] 
> ___________________
> 
> code = '{a, b} = 1'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to set display' in ["SyntaxError: 
> cannot assign to set display here. Maybe you meant '==' instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> __________________ test_python_exception_matches[{a: b} = 1] 
> ___________________
> 
> code = '{a: b} = 1'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to dict display' in ["SyntaxError: 
> cannot assign to dict literal here. Maybe you meant '==' instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> _____________________ test_python_exception_matches[1 = 1] 
> _____________________
> 
> code = '1 = 1'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to literal' in ["SyntaxError: 
> cannot assign to literal here. Maybe you meant '==' instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> ____________________ test_python_exception_matches["" = 1] 
> _____________________
> 
> code = '"" = 1'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to literal' in ["SyntaxError: 
> cannot assign to literal here. Maybe you meant '==' instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> ___________________ test_python_exception_matches[b"" = 10] 
> ____________________
> 
> code = 'b"" = 1'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to literal' in ["SyntaxError: 
> cannot assign to literal here. Maybe you meant '==' instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> ___________________ test_python_exception_matches[b"" = 11] 
> ____________________
> 
> code = 'b"" = 1'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to literal' in ["SyntaxError: 
> cannot assign to literal here. Maybe you meant '==' instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> ___________________ test_python_exception_matches["" "" = 1] 
> ___________________
> 
> code = '"" "" = 1'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to literal' in ["SyntaxError: 
> cannot assign to literal here. Maybe you meant '==' instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> ___________________ test_python_exception_matches[1 | 1 = 3] 
> ___________________
> 
> code = '1 | 1 = 3'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to operator' in ["SyntaxError: 
> cannot assign to expression here. Maybe you meant '==' instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> ___________________ test_python_exception_matches[1**1 = 3] 
> ____________________
> 
> code = '1**1 = 3'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to operator' in ["SyntaxError: 
> cannot assign to expression here. Maybe you meant '==' instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> ____________________ test_python_exception_matches[~ 1 = 3] 
> ____________________
> 
> code = '~ 1 = 3'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to operator' in ["SyntaxError: 
> cannot assign to expression here. Maybe you meant '==' instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> ___________________ test_python_exception_matches[not 1 = 3] 
> ___________________
> 
> code = 'not 1 = 3'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       AssertionError: assert 'SyntaxError: cannot assign to operator' in 
> ['SyntaxError: cannot assign to expression']
> 
> test/test_python_errors.py:41: AssertionError
> __________________ test_python_exception_matches[1 and 1 = 3] 
> __________________
> 
> code = '1 and 1 = 3'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       AssertionError: assert 'SyntaxError: cannot assign to operator' in 
> ['SyntaxError: cannot assign to expression']
> 
> test/test_python_errors.py:41: AssertionError
> ___________ test_python_exception_matches[def foo(): (yield 1) = 3] 
> ____________
> 
> code = 'def foo(): (yield 1) = 3'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to yield expression' in 
> ["SyntaxError: cannot assign to yield expression here. Maybe you meant '==' 
> instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> _________ test_python_exception_matches[async def foo(): await x = 3] 
> __________
> 
> code = 'async def foo(): await x = 3'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to await expression' in 
> ["SyntaxError: cannot assign to await expression here. Maybe you meant '==' 
> instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> ______________ test_python_exception_matches[(a if a else a) = a] 
> ______________
> 
> code = '(a if a else a) = a'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to conditional expression' in 
> ["SyntaxError: cannot assign to conditional expression here. Maybe you meant 
> '==' instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> ___________________ test_python_exception_matches[a, 1 = x] 
> ____________________
> 
> code = 'a, 1 = x'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to literal' in ["SyntaxError: 
> cannot assign to literal here. Maybe you meant '==' instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> ___________________ test_python_exception_matches[foo() = 1] 
> ___________________
> 
> code = 'foo() = 1'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: cannot assign to function call' in 
> ["SyntaxError: cannot assign to function call here. Maybe you meant '==' 
> instead of '='?"]
> 
> test/test_python_errors.py:41: AssertionError
> ____________ test_python_exception_matches[for (not 1) in []: pass] 
> ____________
> 
> code = 'for (not 1) in []: pass'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       AssertionError: assert 'SyntaxError: cannot assign to operator' in 
> ['SyntaxError: cannot assign to expression']
> 
> test/test_python_errors.py:41: AssertionError
> _____________________ test_python_exception_matches[u"\\"] 
> _____________________
> 
> code = 'u"\\"'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       AssertionError: assert 'SyntaxError: EOL while scanning string 
> literal' in ['SyntaxError: unterminated string literal (detected at line 1)']
> 
> test/test_python_errors.py:41: AssertionError
> _____________________ test_python_exception_matches[b"\\"] 
> _____________________
> 
> code = 'b"\\"'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       AssertionError: assert 'SyntaxError: EOL while scanning string 
> literal' in ['SyntaxError: unterminated string literal (detected at line 1)']
> 
> test/test_python_errors.py:41: AssertionError
> ____________________ test_python_exception_matches[b"\xe4"] 
> ____________________
> 
> code = 'b"รค"'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       AssertionError: assert 'SyntaxError: bytes can only contain ASCII 
> literal characters.' in ['SyntaxError: bytes can only contain ASCII literal 
> characters']
> 
> test/test_python_errors.py:41: AssertionError
> ______________________ test_python_exception_matches["""] 
> ______________________
> 
> code = '"""'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       AssertionError: assert 'SyntaxError: EOF while scanning triple-quoted 
> string literal' in ['SyntaxError: unterminated triple-quoted string literal 
> (detected at line 1)']
> 
> test/test_python_errors.py:41: AssertionError
> _______________________ test_python_exception_matches["] 
> _______________________
> 
> code = '"'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       AssertionError: assert 'SyntaxError: EOL while scanning string 
> literal' in ['SyntaxError: unterminated string literal (detected at line 1)']
> 
> test/test_python_errors.py:41: AssertionError
> ______________________ test_python_exception_matches['''] 
> ______________________
> 
> code = "'''"
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       AssertionError: assert 'SyntaxError: EOF while scanning triple-quoted 
> string literal' in ['SyntaxError: unterminated triple-quoted string literal 
> (detected at line 1)']
> 
> test/test_python_errors.py:41: AssertionError
> _______________________ test_python_exception_matches['] 
> _______________________
> 
> code = "'"
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       AssertionError: assert 'SyntaxError: EOL while scanning string 
> literal' in ['SyntaxError: unterminated string literal (detected at line 1)']
> 
> test/test_python_errors.py:41: AssertionError
> __________________ test_python_exception_matches[if 1:\nfoo] 
> ___________________
> 
> code = 'if 1:\nfoo'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'IndentationError: expected an indented block' in 
> ["IndentationError: expected an indented block after 'if' statement on line 
> 1"]
> 
> test/test_python_errors.py:41: AssertionError
> ___ test_python_exception_matches[if 1: blubb\nif 1:\npass\nTrue and False] 
> ____
> 
> code = 'if 1: blubb\nif 1:\npass\nTrue and False'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'IndentationError: expected an indented block' in 
> ["IndentationError: expected an indented block after 'if' statement on line 
> 2"]
> 
> test/test_python_errors.py:41: AssertionError
> _____ test_python_exception_matches[class X(base for base in bases): pass] 
> _____
> 
> code = 'class X(base for base in bases): pass'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       assert 'SyntaxError: invalid syntax' in ["SyntaxError: expected ':'"]
> 
> test/test_python_errors.py:41: AssertionError
> ______________ test_python_exception_matches[({a: b} := {1: 2})] 
> _______________
> 
> code = '({a: b} := {1: 2})'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       AssertionError: assert 'SyntaxError: cannot use assignment 
> expressions with dict display' in ['SyntaxError: cannot use assignment 
> expressions with dict literal']
> 
> test/test_python_errors.py:41: AssertionError
> _________________ test_python_exception_matches[(a + b := 1)] 
> __________________
> 
> code = '(a + b := 1)'
> 
>     @pytest.mark.parametrize('code', FAILING_EXAMPLES)
>     def test_python_exception_matches(code):
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         actual = None
>         if errors:
>             error, = errors
>             actual = error.message
> >       assert actual in wanted
> E       AssertionError: assert 'SyntaxError: cannot use assignment 
> expressions with operator' in ['SyntaxError: cannot use assignment 
> expressions with expression']
> 
> test/test_python_errors.py:41: AssertionError
> ___________________________ test_non_async_in_async 
> ____________________________
> 
>     def test_non_async_in_async():
>         """
>         This example doesn't work with FAILING_EXAMPLES, because the line 
> numbers
>         are not always the same / incorrect in Python 3.8.
>         """
>         # Raises multiple errors in previous versions.
>         code = 'async def foo():\n def nofoo():[x async for x in []]'
>         wanted, line_nr = _get_actual_exception(code)
>     
>         errors = _get_error_list(code)
>         if errors:
>             error, = errors
>             actual = error.message
>         assert actual in wanted
>         if sys.version_info[:2] < (3, 8):
>             assert line_nr == error.start_pos[0]
>         else:
> >           assert line_nr == 0  # For whatever reason this is zero in Python 
> > 3.8+
> E           assert 2 == 0
> 
> test/test_python_errors.py:63: AssertionError
> _____________________ test_default_except_error_postition 
> ______________________
> 
>     def test_default_except_error_postition():
>         # For this error the position seemed to be one line off, but that 
> doesn't
>         # really matter.
>         code = 'try: pass\nexcept: pass\nexcept X: pass'
>         wanted, line_nr = _get_actual_exception(code)
>         error, = _get_error_list(code)
>         assert error.message in wanted
> >       assert line_nr != error.start_pos[0]
> E       assert 2 != 2
> 
> test/test_python_errors.py:149: AssertionError
> =========================== short test summary info 
> ============================
> FAILED test/test_python_errors.py::test_python_exception_matches[{} += 1] - 
> a...
> FAILED test/test_python_errors.py::test_python_exception_matches[{a:b} += 1]
> FAILED test/test_python_errors.py::test_python_exception_matches[... += 1] - 
> ...
> FAILED test/test_python_errors.py::test_python_exception_matches[a + b += 1]
> FAILED test/test_python_errors.py::test_python_exception_matches[+a += 1] - 
> a...
> FAILED test/test_python_errors.py::test_python_exception_matches[a and b += 1]
> FAILED test/test_python_errors.py::test_python_exception_matches[[x for x in 
> y] = 1]
> FAILED test/test_python_errors.py::test_python_exception_matches[{x for x in 
> y} = 1]
> FAILED test/test_python_errors.py::test_python_exception_matches[{x:x for x 
> in y} = 1]
> FAILED test/test_python_errors.py::test_python_exception_matches[... = 1] - 
> a...
> FAILED test/test_python_errors.py::test_python_exception_matches[{a, b} = 1]
> FAILED test/test_python_errors.py::test_python_exception_matches[{a: b} = 1]
> FAILED test/test_python_errors.py::test_python_exception_matches[1 = 1] - 
> ass...
> FAILED test/test_python_errors.py::test_python_exception_matches["" = 1] - 
> as...
> FAILED test/test_python_errors.py::test_python_exception_matches[b"" = 10] - 
> ...
> FAILED test/test_python_errors.py::test_python_exception_matches[b"" = 11] - 
> ...
> FAILED test/test_python_errors.py::test_python_exception_matches["" "" = 1]
> FAILED test/test_python_errors.py::test_python_exception_matches[1 | 1 = 3]
> FAILED test/test_python_errors.py::test_python_exception_matches[1**1 = 3] - 
> ...
> FAILED test/test_python_errors.py::test_python_exception_matches[~ 1 = 3] - 
> a...
> FAILED test/test_python_errors.py::test_python_exception_matches[not 1 = 3]
> FAILED test/test_python_errors.py::test_python_exception_matches[1 and 1 = 3]
> FAILED test/test_python_errors.py::test_python_exception_matches[def foo(): 
> (yield 1) = 3]
> FAILED test/test_python_errors.py::test_python_exception_matches[async def 
> foo(): await x = 3]
> FAILED test/test_python_errors.py::test_python_exception_matches[(a if a else 
> a) = a]
> FAILED test/test_python_errors.py::test_python_exception_matches[a, 1 = x] - 
> ...
> FAILED test/test_python_errors.py::test_python_exception_matches[foo() = 1]
> FAILED test/test_python_errors.py::test_python_exception_matches[for (not 1) 
> in []: pass]
> FAILED test/test_python_errors.py::test_python_exception_matches[u"\\"] - 
> Ass...
> FAILED test/test_python_errors.py::test_python_exception_matches[b"\\"] - 
> Ass...
> FAILED test/test_python_errors.py::test_python_exception_matches[b"\xe4"] - 
> A...
> FAILED test/test_python_errors.py::test_python_exception_matches["""] - 
> Asser...
> FAILED test/test_python_errors.py::test_python_exception_matches["] - 
> Asserti...
> FAILED test/test_python_errors.py::test_python_exception_matches['''] - 
> Asser...
> FAILED test/test_python_errors.py::test_python_exception_matches['] - 
> Asserti...
> FAILED test/test_python_errors.py::test_python_exception_matches[if 1:\nfoo]
> FAILED test/test_python_errors.py::test_python_exception_matches[if 1: 
> blubb\nif 1:\npass\nTrue and False]
> FAILED test/test_python_errors.py::test_python_exception_matches[class X(base 
> for base in bases): pass]
> FAILED test/test_python_errors.py::test_python_exception_matches[({a: b} := 
> {1: 2})]
> FAILED test/test_python_errors.py::test_python_exception_matches[(a + b := 1)]
> FAILED test/test_python_errors.py::test_non_async_in_async - assert 2 == 0
> FAILED test/test_python_errors.py::test_default_except_error_postition - 
> asse...
> ======================= 42 failed, 1203 passed in 4.74s 
> ========================
> E: pybuild pybuild:355: test: plugin distutils failed with: exit code=1: cd 
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.10_parso/build; python3.10 -m pytest test
> I: pybuild base:237: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_parso/build; 
> python3.9 -m pytest test
> ============================= test session starts 
> ==============================
> platform linux -- Python 3.9.9, pytest-6.2.5, py-1.10.0, pluggy-0.13.0
> rootdir: /<<PKGBUILDDIR>>, configfile: pytest.ini
> collected 1245 items
> 
> test/test_cache.py .........                                             [  
> 0%]
> test/test_diff_parser.py ............................................... [  
> 4%]
> ...................................                                      [  
> 7%]
> test/test_error_recovery.py .............                                [  
> 8%]
> test/test_file_python_errors.py .....                                    [  
> 8%]
> test/test_fstring.py ................................................... [ 
> 12%]
> ..................                                                       [ 
> 14%]
> test/test_get_code.py .............                                      [ 
> 15%]
> test/test_grammar.py .                                                   [ 
> 15%]
> test/test_load_grammar.py ...........                                    [ 
> 16%]
> test/test_normalizer_issues_files.py .............................       [ 
> 18%]
> test/test_old_fast_parser.py ...............                             [ 
> 19%]
> test/test_param_splitting.py .......                                     [ 
> 20%]
> test/test_parser.py .................................................... [ 
> 24%]
> ........................................................................ [ 
> 30%]
> ..................                                                       [ 
> 31%]
> test/test_parser_tree.py ............................................... [ 
> 35%]
> ......................                                                   [ 
> 37%]
> test/test_pep8.py ...                                                    [ 
> 37%]
> test/test_pgen2.py ..................................................... [ 
> 41%]
> ........................................................................ [ 
> 47%]
> ........................................................................ [ 
> 53%]
> ........................................................................ [ 
> 59%]
> ..                                                                       [ 
> 59%]
> test/test_prefix.py .....................                                [ 
> 61%]
> test/test_python_errors.py ............................................. [ 
> 64%]
> ........................................................................ [ 
> 70%]
> ........................................................................ [ 
> 76%]
> ........................................................................ [ 
> 82%]
> .................................................................        [ 
> 87%]
> test/test_tokenize.py .................................................. [ 
> 91%]
> ........................................................................ [ 
> 97%]
> ......                                                                   [ 
> 97%]
> test/test_utils.py ...............................                       
> [100%]
> 
> ============================= 1245 passed in 4.75s 
> =============================
> 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/parso_0.8.1-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