Source: pyannotate
Version: 1.2.0-2
Severity: serious
Justification: FTBFS
Tags: trixie sid ftbfs
User: [email protected]
Usertags: ftbfs-20231212 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:310: python3.12 setup.py config
> running config
> I: pybuild base:310: python3.11 setup.py config
> running config
> dh_auto_build -O--buildsystem=pybuild
> I: pybuild base:310: /usr/bin/python3.12 setup.py build
> running build
> running build_py
> creating
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_runtime
> copying pyannotate_runtime/__init__.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_runtime
> copying pyannotate_runtime/collect_types.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_runtime
> creating
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_tools
> copying pyannotate_tools/__init__.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_tools
> creating
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_tools/annotations
> copying pyannotate_tools/annotations/__init__.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_tools/annotations
> copying pyannotate_tools/annotations/main.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_tools/annotations
> copying pyannotate_tools/annotations/parse.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_tools/annotations
> copying pyannotate_tools/annotations/__main__.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_tools/annotations
> copying pyannotate_tools/annotations/types.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_tools/annotations
> copying pyannotate_tools/annotations/infer.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_tools/annotations
> creating
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_tools/fixes
> copying pyannotate_tools/fixes/__init__.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_tools/fixes
> copying pyannotate_tools/fixes/fix_annotate.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_tools/fixes
> copying pyannotate_tools/fixes/fix_annotate_json.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_tools/fixes
> I: pybuild base:310: /usr/bin/python3 setup.py build
> running build
> running build_py
> creating
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_pyannotate/build/pyannotate_runtime
> copying pyannotate_runtime/__init__.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_pyannotate/build/pyannotate_runtime
> copying pyannotate_runtime/collect_types.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_pyannotate/build/pyannotate_runtime
> creating
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_pyannotate/build/pyannotate_tools
> copying pyannotate_tools/__init__.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_pyannotate/build/pyannotate_tools
> creating
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_pyannotate/build/pyannotate_tools/annotations
> copying pyannotate_tools/annotations/__init__.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_pyannotate/build/pyannotate_tools/annotations
> copying pyannotate_tools/annotations/main.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_pyannotate/build/pyannotate_tools/annotations
> copying pyannotate_tools/annotations/parse.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_pyannotate/build/pyannotate_tools/annotations
> copying pyannotate_tools/annotations/__main__.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_pyannotate/build/pyannotate_tools/annotations
> copying pyannotate_tools/annotations/types.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_pyannotate/build/pyannotate_tools/annotations
> copying pyannotate_tools/annotations/infer.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_pyannotate/build/pyannotate_tools/annotations
> creating
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_pyannotate/build/pyannotate_tools/fixes
> copying pyannotate_tools/fixes/__init__.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_pyannotate/build/pyannotate_tools/fixes
> copying pyannotate_tools/fixes/fix_annotate.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_pyannotate/build/pyannotate_tools/fixes
> copying pyannotate_tools/fixes/fix_annotate_json.py ->
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_pyannotate/build/pyannotate_tools/fixes
> dh_auto_test -O--buildsystem=pybuild
> I: pybuild base:310: cd
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build; python3.12 -m
> pytest tests
> ============================= test session starts
> ==============================
> platform linux -- Python 3.12.1, pytest-7.4.3, pluggy-1.3.0
> rootdir: /<<PKGBUILDDIR>>
> collected 6 items
>
> tests/integration_test.py ..FFFF
> [100%]
>
> =================================== FAILURES
> ===================================
> _________________________ IntegrationTest.test_package
> _________________________
>
> self = <integration_test.IntegrationTest testMethod=test_package>
>
> def test_package(self):
> os.makedirs('foo')
> with open('foo/__init__.py', 'w') as f:
> pass
> with open('foo/gcd.py', 'w') as f:
> f.write(example)
> with open('driver.py', 'w') as f:
> f.write('from foo.gcd import main\n')
> f.write(driver)
> subprocess.check_call([sys.executable, 'driver.py'])
> output = subprocess.check_output([sys.executable, '-m',
> 'pyannotate_tools.annotations', 'foo/gcd.py'])
> lines = output.splitlines()
> > assert b'+ # type: () -> None' in lines
> E AssertionError: assert b'+ # type: () -> None' in [b'---
> foo/gcd.py\t(original)', b'+++ foo/gcd.py\t(refactored)', b'@@ -1,9 +1,12
> @@', b'+from mypy_extensions import NoReturn', b' ', b' def main():', ...]
>
> tests/integration_test.py:101: AssertionError
> ----------------------------- Captured stdout call
> -----------------------------
> 5
> 3
> ----------------------------- Captured stderr call
> -----------------------------
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_tools/annotations/__main__.py:9:
> DeprecationWarning: lib2to3 package is deprecated and may not be able to
> parse Python 3.10+
> from lib2to3.main import StdoutRefactoringTool
> Refactored foo/gcd.py
> Files that need to be modified:
> foo/gcd.py
> NOTE: this was a dry run; use -w to write files
> _________________________ IntegrationTest.test_simple
> __________________________
>
> self = <integration_test.IntegrationTest testMethod=test_simple>
>
> def test_simple(self):
> with open('gcd.py', 'w') as f:
> f.write(example)
> with open('driver.py', 'w') as f:
> f.write('from gcd import main\n')
> f.write(driver)
> subprocess.check_call([sys.executable, 'driver.py'])
> output = subprocess.check_output([sys.executable, '-m',
> 'pyannotate_tools.annotations', 'gcd.py'])
> lines = output.splitlines()
> > assert b'+ # type: () -> None' in lines
> E AssertionError: assert b'+ # type: () -> None' in [b'---
> gcd.py\t(original)', b'+++ gcd.py\t(refactored)', b'@@ -1,9 +1,12 @@',
> b'+from mypy_extensions import NoReturn', b' ', b' def main():', ...]
>
> tests/integration_test.py:65: AssertionError
> ----------------------------- Captured stdout call
> -----------------------------
> 5
> 3
> ----------------------------- Captured stderr call
> -----------------------------
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_tools/annotations/__main__.py:9:
> DeprecationWarning: lib2to3 package is deprecated and may not be able to
> parse Python 3.10+
> from lib2to3.main import StdoutRefactoringTool
> Refactored gcd.py
> Files that need to be modified:
> gcd.py
> NOTE: this was a dry run; use -w to write files
> _________________________ IntegrationTest.test_subdir
> __________________________
>
> self = <integration_test.IntegrationTest testMethod=test_subdir>
>
> def test_subdir(self):
> os.makedirs('foo')
> with open('foo/gcd.py', 'w') as f:
> f.write(example)
> with open('driver.py', 'w') as f:
> f.write('import sys\n')
> f.write('sys.path.insert(0, "foo")\n')
> f.write('from gcd import main\n')
> f.write(driver)
> subprocess.check_call([sys.executable, 'driver.py'])
> output = subprocess.check_output([sys.executable, '-m',
> 'pyannotate_tools.annotations',
> # Construct platform-correct
> pathname:
> os.path.join('foo', 'gcd.py')])
> lines = output.splitlines()
> > assert b'+ # type: () -> None' in lines
> E AssertionError: assert b'+ # type: () -> None' in [b'---
> foo/gcd.py\t(original)', b'+++ foo/gcd.py\t(refactored)', b'@@ -1,9 +1,12
> @@', b'+from mypy_extensions import NoReturn', b' ', b' def main():', ...]
>
> tests/integration_test.py:118: AssertionError
> ----------------------------- Captured stdout call
> -----------------------------
> 5
> 3
> ----------------------------- Captured stderr call
> -----------------------------
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_tools/annotations/__main__.py:9:
> DeprecationWarning: lib2to3 package is deprecated and may not be able to
> parse Python 3.10+
> from lib2to3.main import StdoutRefactoringTool
> Refactored foo/gcd.py
> Files that need to be modified:
> foo/gcd.py
> NOTE: this was a dry run; use -w to write files
> _____________________ IntegrationTest.test_subdir_w_class
> ______________________
>
> self = <integration_test.IntegrationTest testMethod=test_subdir_w_class>
>
> def test_subdir_w_class(self):
> os.makedirs('foo')
> with open('foo/bar.py', 'w') as f:
> f.write(class_example)
> with open('driver.py', 'w') as f:
> f.write('import sys\n')
> f.write('sys.path.insert(0, "foo")\n')
> f.write('from bar import main\n')
> f.write(driver)
> subprocess.check_call([sys.executable, 'driver.py'])
> output = subprocess.check_output([sys.executable, '-m',
> 'pyannotate_tools.annotations',
> # Construct platform-correct
> pathname:
> os.path.join('foo', 'bar.py')])
> lines = output.splitlines()
> print(b'\n'.join(lines).decode())
> > assert b'+ # type: () -> None' in lines
> E AssertionError: assert b'+ # type: () -> None' in [b'---
> foo/bar.py\t(original)', b'+++ foo/bar.py\t(refactored)', b'@@ -1,9 +1,12
> @@', b'+from mypy_extensions import NoReturn', b' ', b' class A(object):
> pass', ...]
>
> tests/integration_test.py:136: AssertionError
> ----------------------------- Captured stdout call
> -----------------------------
> --- foo/bar.py (original)
> +++ foo/bar.py (refactored)
> @@ -1,9 +1,12 @@
> +from mypy_extensions import NoReturn
>
> class A(object): pass
>
> def f(x):
> + # type: (A) -> A
> return x
>
> def main():
> + # type: () -> NoReturn
> f(A())
> f(A())
> ----------------------------- Captured stderr call
> -----------------------------
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build/pyannotate_tools/annotations/__main__.py:9:
> DeprecationWarning: lib2to3 package is deprecated and may not be able to
> parse Python 3.10+
> from lib2to3.main import StdoutRefactoringTool
> Refactored foo/bar.py
> Files that need to be modified:
> foo/bar.py
> NOTE: this was a dry run; use -w to write files
> =========================== short test summary info
> ============================
> FAILED tests/integration_test.py::IntegrationTest::test_package -
> AssertionEr...
> FAILED tests/integration_test.py::IntegrationTest::test_simple -
> AssertionErr...
> FAILED tests/integration_test.py::IntegrationTest::test_subdir -
> AssertionErr...
> FAILED tests/integration_test.py::IntegrationTest::test_subdir_w_class -
> Asse...
> ========================= 4 failed, 2 passed in 1.25s
> ==========================
> E: pybuild pybuild:395: test: plugin distutils failed with: exit code=1: cd
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.12_pyannotate/build; python3.12 -m
> pytest tests
> I: pybuild base:310: cd
> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.11_pyannotate/build; python3.11 -m
> pytest tests
> ============================= test session starts
> ==============================
> platform linux -- Python 3.11.7, pytest-7.4.3, pluggy-1.3.0
> rootdir: /<<PKGBUILDDIR>>
> collected 6 items
>
> tests/integration_test.py ......
> [100%]
>
> ============================== 6 passed in 0.94s
> ===============================
> dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.12
> 3.11" returned exit code 13
The full build log is available from:
http://qa-logs.debian.net/2023/12/12/pyannotate_1.2.0-2_unstable.log
All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20231212;[email protected]
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20231212&[email protected]&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.