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