[Python-apps-team] Bug#954634: vulture: FTBFS: dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.8 returned exit code 13

Lucas Nussbaum lucas at debian.org
Sun Mar 22 08:26:13 GMT 2020


Source: vulture
Version: 0.21-1.1
Severity: serious
Justification: FTBFS on amd64
Tags: bullseye sid ftbfs
Usertags: ftbfs-20200321 ftbfs-bullseye

Hi,

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

Relevant part (hopefully):
> make[1]: Entering directory '/<<PKGBUILDDIR>>'
> PYBUILD_SYSTEM=custom PYBUILD_TEST_ARGS="{interpreter} -m pytest -v -x" dh_auto_test
> I: pybuild base:217: python3.8 -m pytest -v -x
> ============================= test session starts ==============================
> platform linux -- Python 3.8.2, pytest-4.6.9, py-1.8.1, pluggy-0.13.0 -- /usr/bin/python3.8
> cachedir: .pytest_cache
> rootdir: /<<PKGBUILDDIR>>, inifile: setup.cfg
> collecting ... collected 91 items
> 
> tests/test_errors.py::test_syntax_error PASSED                           [  1%]
> tests/test_format_strings.py::test_old_format_string PASSED              [  2%]
> tests/test_format_strings.py::test_new_format_string PASSED              [  3%]
> tests/test_imports.py::test_import_star PASSED                           [  4%]
> tests/test_imports.py::test_import_from_future PASSED                    [  5%]
> tests/test_imports.py::test_double_import PASSED                         [  6%]
> tests/test_imports.py::test_attribute_access PASSED                      [  7%]
> tests/test_imports.py::test_nested_import PASSED                         [  8%]
> tests/test_imports.py::test_definitions PASSED                           [  9%]
> tests/test_imports.py::test_use_original PASSED                          [ 10%]
> tests/test_imports.py::test_import_original PASSED                       [ 12%]
> tests/test_imports.py::test_import_original_use_original PASSED          [ 13%]
> tests/test_imports.py::test_import_original_use_alias PASSED             [ 14%]
> tests/test_imports.py::test_import_alias PASSED                          [ 15%]
> tests/test_imports.py::test_import_alias_use_original PASSED             [ 16%]
> tests/test_imports.py::test_import_alias_use_alias PASSED                [ 17%]
> tests/test_scavenging.py::test_function_object1 PASSED                   [ 18%]
> tests/test_scavenging.py::test_function_object2 PASSED                   [ 19%]
> tests/test_scavenging.py::test_function1 PASSED                          [ 20%]
> tests/test_scavenging.py::test_function2 PASSED                          [ 21%]
> tests/test_scavenging.py::test_function3 PASSED                          [ 23%]
> tests/test_scavenging.py::test_function_and_method1 PASSED               [ 24%]
> tests/test_scavenging.py::test_attribute1 PASSED                         [ 25%]
> tests/test_scavenging.py::test_ignored_attributes PASSED                 [ 26%]
> tests/test_scavenging.py::test_callback1 PASSED                          [ 27%]
> tests/test_scavenging.py::test_class1 PASSED                             [ 28%]
> tests/test_scavenging.py::test_class2 PASSED                             [ 29%]
> tests/test_scavenging.py::test_class3 PASSED                             [ 30%]
> tests/test_scavenging.py::test_class4 PASSED                             [ 31%]
> tests/test_scavenging.py::test_class5 PASSED                             [ 32%]
> tests/test_scavenging.py::test_class6 PASSED                             [ 34%]
> tests/test_scavenging.py::test_class7 PASSED                             [ 35%]
> tests/test_scavenging.py::test_method1 PASSED                            [ 36%]
> tests/test_scavenging.py::test_token_types PASSED                        [ 37%]
> tests/test_scavenging.py::test_variable1 PASSED                          [ 38%]
> tests/test_scavenging.py::test_variable2 PASSED                          [ 39%]
> tests/test_scavenging.py::test_variable3 PASSED                          [ 40%]
> tests/test_scavenging.py::test_variable4 PASSED                          [ 41%]
> tests/test_scavenging.py::test_variable5 PASSED                          [ 42%]
> tests/test_scavenging.py::test_ignored_variables PASSED                  [ 43%]
> tests/test_scavenging.py::test_prop1 PASSED                              [ 45%]
> tests/test_scavenging.py::test_prop2 PASSED                              [ 46%]
> tests/test_scavenging.py::test_object_attribute PASSED                   [ 47%]
> tests/test_scavenging.py::test_function_names_in_test_file PASSED        [ 48%]
> tests/test_scavenging.py::test_function_names_in_normal_file PASSED      [ 49%]
> tests/test_scavenging.py::test_global_attribute PASSED                   [ 50%]
> tests/test_scavenging.py::test_boolean PASSED                            [ 51%]
> tests/test_scavenging.py::test_builtin_types PASSED                      [ 52%]
> tests/test_scavenging.py::test_unused_args PASSED                        [ 53%]
> tests/test_scavenging.py::test_unused_kwargs PASSED                      [ 54%]
> tests/test_scavenging.py::test_unused_kwargs_with_odd_name PASSED        [ 56%]
> tests/test_scavenging.py::test_unused_vararg PASSED                      [ 57%]
> tests/test_scavenging.py::test_encoding1 PASSED                          [ 58%]
> tests/test_scavenging.py::test_encoding2 PASSED                          [ 59%]
> tests/test_scavenging.py::test_multiple_definition PASSED                [ 60%]
> tests/test_script.py::test_script_with_explicit_whitelist PASSED         [ 61%]
> tests/test_script.py::test_script_with_implicit_whitelist PASSED         [ 62%]
> tests/test_script.py::test_script_without_whitelist PASSED               [ 63%]
> tests/test_script.py::test_exclude PASSED                                [ 64%]
> tests/test_script.py::test_missing_file PASSED                           [ 65%]
> tests/test_script.py::test_dir PASSED                                    [ 67%]
> tests/test_script.py::test_whitelist_with_python PASSED                  [ 68%]
> tests/test_script.py::test_pyc PASSED                                    [ 69%]
> tests/test_script.py::test_version PASSED                                [ 70%]
> tests/test_script.py::test_module PASSED                                 [ 71%]
> tests/test_size.py::test_size_basic PASSED                               [ 72%]
> tests/test_size.py::test_size_class PASSED                               [ 73%]
> tests/test_size.py::test_size_if_else FAILED                             [ 74%]
> 
> =================================== FAILURES ===================================
> ______________________________ test_size_if_else _______________________________
> 
>     def test_size_if_else():
>         example = """
>     @identity
>     class Foo(object):
>         @identity
>         @identity
>         def bar(self):
>             if "a" == "b":
>                 pass
>             elif "b" == "c":
>                 pass
>             else:
>                 pass
>     """
> >       check_size(example, 11)
> 
> tests/test_size.py:66: 
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
> 
> example = '\n at identity\nclass Foo(object):\n    @identity\n    @identity\n    def bar(self):\n        if "a" == "b":\n            pass\n        elif "b" == "c":\n            pass\n        else:\n            pass\n'
> size = 11
> 
>     def check_size(example, size):
>         tree = ast.parse(example)
>         for node in tree.body:
>             if isinstance(node, ast.ClassDef) and node.name == 'Foo':
> >               assert count_lines(node) == size
> E               assert 10 == 11
> E                 -10
> E                 +11
> 
> tests/test_size.py:21: AssertionError
> =============================== warnings summary ===============================
> tests/test_format_strings.py::test_old_format_string
> tests/test_format_strings.py::test_new_format_string
> tests/test_imports.py::test_nested_import
> tests/test_scavenging.py::test_builtin_types
>   /<<PKGBUILDDIR>>/vulture/core.py:392: PendingDeprecationWarning: visit_Str is deprecated; add visit_Constant
>     visitor(node)
> 
> -- Docs: https://docs.pytest.org/en/latest/warnings.html
> =============== 1 failed, 67 passed, 4 warnings in 0.77 seconds ================
> E: pybuild pybuild:352: test: plugin custom failed with: exit code=1: python3.8 -m pytest -v -x
> dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.8 returned exit code 13

The full build log is available from:
   http://qa-logs.debian.net/2020/03/21/vulture_0.21-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!

About the archive rebuild: The rebuild was done on EC2 VM instances from
Amazon Web Services, using a clean, minimal and up-to-date chroot. Every
failed build was retried once to eliminate random failures.



More information about the Python-apps-team mailing list