[Python-apps-team] Bug#973165: pyflakes: FTBFS: dh_auto_test: error: pybuild --test --test-nose -i python{version} -p "3.9 3.8" returned exit code 13

Lucas Nussbaum lucas at debian.org
Tue Oct 27 17:19:41 GMT 2020


Source: pyflakes
Version: 2.2.0-1
Severity: serious
Justification: FTBFS on amd64
Tags: bullseye sid ftbfs
Usertags: ftbfs-20201027 ftbfs-bullseye

Hi,

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

Relevant part (hopefully):
> dpkg-buildpackage
> -----------------
> 
> Command: dpkg-buildpackage -us -uc -sa -rfakeroot
> dpkg-buildpackage: info: source package pyflakes
> dpkg-buildpackage: info: source version 2.2.0-1
> dpkg-buildpackage: info: source distribution unstable
> dpkg-buildpackage: info: source changed by Ondřej Nový <onovy at debian.org>
>  dpkg-source --before-build .
> dpkg-buildpackage: info: host architecture amd64
>  debian/rules clean
> dh clean --with python3 --buildsystem=pybuild
>    dh_auto_clean -O--buildsystem=pybuild
> I: pybuild base:217: python3.9 setup.py clean 
> running clean
> removing '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build' (and everything under it)
> 'build/bdist.linux-x86_64' does not exist -- can't clean it
> 'build/scripts-3.9' does not exist -- can't clean it
> I: pybuild base:217: python3.8 setup.py clean 
> running clean
> removing '/<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build' (and everything under it)
> 'build/bdist.linux-x86_64' does not exist -- can't clean it
> 'build/scripts-3.8' does not exist -- can't clean it
>    dh_autoreconf_clean -O--buildsystem=pybuild
>    dh_clean -O--buildsystem=pybuild
>  dpkg-source -b .
> dpkg-source: info: using source format '3.0 (quilt)'
> dpkg-source: info: building pyflakes using existing ./pyflakes_2.2.0.orig.tar.gz
> dpkg-source: info: building pyflakes in pyflakes_2.2.0-1.debian.tar.xz
> dpkg-source: info: building pyflakes in pyflakes_2.2.0-1.dsc
>  debian/rules binary
> dh binary --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:217: python3.9 setup.py config 
> running config
> I: pybuild base:217: python3.8 setup.py config 
> running config
>    dh_auto_build -O--buildsystem=pybuild
> I: pybuild base:217: /usr/bin/python3.9 setup.py build 
> running build
> running build_py
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes
> copying pyflakes/api.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes
> copying pyflakes/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes
> copying pyflakes/__main__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes
> copying pyflakes/messages.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes
> copying pyflakes/checker.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes
> copying pyflakes/reporter.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/scripts
> copying pyflakes/scripts/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/scripts
> copying pyflakes/scripts/pyflakes.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/scripts
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test
> copying pyflakes/test/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_api.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_doctests.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_checker.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test
> copying pyflakes/test/harness.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_other.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_builtin.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_undefined_names.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_imports.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_is_literal.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_return_with_arguments_inside_generator.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_type_annotations.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_dict.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_code_segment.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test
> I: pybuild base:217: /usr/bin/python3 setup.py build 
> running build
> running build_py
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes
> copying pyflakes/api.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes
> copying pyflakes/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes
> copying pyflakes/__main__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes
> copying pyflakes/messages.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes
> copying pyflakes/checker.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes
> copying pyflakes/reporter.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes/scripts
> copying pyflakes/scripts/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes/scripts
> copying pyflakes/scripts/pyflakes.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes/scripts
> creating /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes/test
> copying pyflakes/test/__init__.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_api.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_doctests.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_checker.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes/test
> copying pyflakes/test/harness.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_other.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_builtin.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_undefined_names.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_imports.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_is_literal.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_return_with_arguments_inside_generator.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_type_annotations.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_dict.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes/test
> copying pyflakes/test/test_code_segment.py -> /<<PKGBUILDDIR>>/.pybuild/cpython3_3.8_pyflakes/build/pyflakes/test
>    dh_auto_test -O--buildsystem=pybuild
> I: pybuild pybuild:284: mkdir -p /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/bin && ln -s /<<PKGBUILDDIR>>/bin/pyflakes /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/bin/pyflakes
> I: pybuild base:217: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build; python3.9 -m nose -v 
> Source files with Windows CR LF line endings are parsed successfully. ... ok
> L{checkPath} handles non-existing files. ... ok
> L{checkRecursive} descends into each directory, finding Python files ... ok
> If source file declares the correct encoding, no error is reported. ... ok
> The error reported for source files which end prematurely causing a ... ok
> The error reported for source files which end prematurely causing a ... ok
> The invalid escape syntax raises ValueError in Python 2 ... FAIL
> test_legacyScript (pyflakes.test.test_api.CheckTests) ... ok
> If a source file contains bytes which cannot be decoded, this is ... ok
> If a source file contains bytes which cannot be decoded, this is ... ok
> Source which doesn't end with a newline shouldn't cause any ... ok
> Source which includes a syntax error which results in the raised ... ok
> Source which has a non-default argument following a default argument ... FAIL
> Source which has a non-keyword argument after a keyword argument should ... FAIL
> If the source file is not readable, this is reported on standard ... ok
> If the source file has a pyflakes warning, this is reported as a ... ok
> When pyflakes finds errors with the files it's given, (if they don't ... ok
> When pyflakes finds errors with the files it's given, (if they don't ... ok
> When a Python source file has warnings, the return code is non-zero ... ok
> When a Python source file is all good, the return code is zero and no ... ok
> If no arguments are passed to C{pyflakes} then it reads from stdin. ... ok
> There are no Python files in an empty directory. ... ok
> If one of the paths given to L{iterSourceCode} is not a directory but ... ok
> L{iterSourceCode} can be given multiple directories.  It will recurse ... ok
> Files that are not Python source files are not included. ... ok
> If the Python files are hidden deep down in child directories, we will ... ok
> Find Python files that don't end with `.py`, but contain a Python ... ok
> If the directory contains one Python file, C{iterSourceCode} will find ... ok
> When pyflakes finds errors with the files it's given, (if they don't ... ok
> When pyflakes finds errors with the files it's given, (if they don't ... ok
> When a Python source file has warnings, the return code is non-zero ... ok
> When a Python source file is all good, the return code is zero and no ... ok
> If no arguments are passed to C{pyflakes} then it reads from stdin. ... ok
> C{flake} reports a code warning from Pyflakes.  It is exactly the ... ok
> If there's a multi-line syntax error, then we only report the last ... ok
> C{syntaxError} reports that there was a syntax error in the source ... ok
> C{syntaxError} doesn't include a caret pointing to the error if ... ok
> C{unexpectedError} reports an error processing a source file. ... ok
> test_builtin_in_comprehension (pyflakes.test.test_builtin.TestBuiltins) ... SKIP: not an UnboundLocalError in Python 3
> test_builtin_unbound_local (pyflakes.test.test_builtin.TestBuiltins) ... ok
> test_global_shadowing_builtin (pyflakes.test.test_builtin.TestBuiltins) ... ok
> Test that the function works for binary source ... ok
> Test that type comments for function arguments are all attributed to ... ok
> Test that when two typeable nodes are present on a line, the last ... ok
> Test that a non-type comment is ignored ... ok
> Test that the function works for text source ... ok
> Test that a type comment before something typeable is ignored. ... ok
> test_type_comment_starts_with_word_ignore (pyflakes.test.test_checker.CollectTypeCommentsTests) ... ok
> test_type_comment_with_extra_still_collected (pyflakes.test.test_checker.CollectTypeCommentsTests) ... ok
> test_type_comment_without_whitespace (pyflakes.test.test_checker.CollectTypeCommentsTests) ... ok
> Test that `# type: ignore` comments are not collected. ... ok
> Test that `# type: ignore` comments with more content are also not ... ok
> Test that when two typeable nodes are present on a line, the last ... ok
> Test that the typeable node types are collected ... ok
> Test that the PEP 492 node types are collected ... ok
> Test the common pitfall of missing `generic_visit` in visitors by ... ok
> test_class_segment (pyflakes.test.test_code_segment.TestCodeSegments) ... ok
> test_function_segment (pyflakes.test.test_code_segment.TestCodeSegments) ... ok
> test_scope_async_function (pyflakes.test.test_code_segment.TestCodeSegments) ... ok
> test_scope_class (pyflakes.test.test_code_segment.TestCodeSegments) ... ok
> test_scope_function (pyflakes.test.test_code_segment.TestCodeSegments) ... ok
> These do look like different values, but when it comes to their use as ... ok
> test_duplicate_keys (pyflakes.test.test_dict.Test) ... ok
> test_duplicate_keys_bools (pyflakes.test.test_dict.Test) ... ok
> test_duplicate_keys_bools_false (pyflakes.test.test_dict.Test) ... ok
> test_duplicate_keys_bytes_vs_unicode_py2 (pyflakes.test.test_dict.Test) ... SKIP: bytes and strings with same 'value' are equal in python2
> test_duplicate_keys_bytes_vs_unicode_py3 (pyflakes.test.test_dict.Test) ... ok
> test_duplicate_keys_in_function (pyflakes.test.test_dict.Test) ... ok
> test_duplicate_keys_in_lambda (pyflakes.test.test_dict.Test) ... ok
> test_duplicate_keys_ints (pyflakes.test.test_dict.Test) ... ok
> test_duplicate_keys_none (pyflakes.test.test_dict.Test) ... ok
> test_duplicate_keys_tuples (pyflakes.test.test_dict.Test) ... ok
> test_duplicate_keys_tuples_int_and_float (pyflakes.test.test_dict.Test) ... ok
> test_duplicate_values_bytes_vs_unicode_py2 (pyflakes.test.test_dict.Test) ... SKIP: bytes and strings with same 'value' are equal in python2
> test_duplicate_values_bytes_vs_unicode_py3 (pyflakes.test.test_dict.Test) ... ok
> test_duplicate_variable_keys (pyflakes.test.test_dict.Test) ... ok
> test_duplicate_variable_values (pyflakes.test.test_dict.Test) ... ok
> test_duplicate_variable_values_same_value (pyflakes.test.test_dict.Test) ... ok
> test_multiple_duplicate_keys (pyflakes.test.test_dict.Test) ... ok
> test_no_duplicate_key_error_same_value (pyflakes.test.test_dict.Test) ... ok
> test_no_duplicate_key_errors (pyflakes.test.test_dict.Test) ... ok
> test_no_duplicate_key_errors_bool_or_none (pyflakes.test.test_dict.Test) ... ok
> test_no_duplicate_key_errors_func_call (pyflakes.test.test_dict.Test) ... ok
> test_no_duplicate_key_errors_instance_attributes (pyflakes.test.test_dict.Test) ... ok
> test_no_duplicate_key_errors_ints (pyflakes.test.test_dict.Test) ... ok
> test_no_duplicate_key_errors_tuples (pyflakes.test.test_dict.Test) ... ok
> test_no_duplicate_key_errors_vars (pyflakes.test.test_dict.Test) ... ok
> test_no_duplicate_keys_tuples_same_first_element (pyflakes.test.test_dict.Test) ... ok
> test_doctestCanReferToClass (pyflakes.test.test_doctests.Test) ... ok
> test_doctestCanReferToFunction (pyflakes.test.test_doctests.Test) ... ok
> test_globalUnderscoreInDoctest (pyflakes.test.test_doctests.Test) ... ok
> Check that global in doctest does not pollute module scope. ... ok
> test_global_undefined (pyflakes.test.test_doctests.Test) ... ok
> Doctest module does not process doctest in nested functions. ... ok
> test_importBeforeAndInDoctest (pyflakes.test.test_doctests.Test) ... SKIP: todo
> test_importBeforeDoctest (pyflakes.test.test_doctests.Test) ... ok
> test_importInDoctestAndAfter (pyflakes.test.test_doctests.Test) ... ok
> Doctest may not access class scope. ... ok
> test_indentationErrorInDoctest (pyflakes.test.test_doctests.Test) ... ok
> Doctest within nested class are processed. ... ok
> Check that nested doctests are ignored. ... ok
> test_noOffsetSyntaxErrorInDoctest (pyflakes.test.test_doctests.Test) ... ok
> test_offsetAfterDoctests (pyflakes.test.test_doctests.Test) ... ok
> test_offsetInDoctests (pyflakes.test.test_doctests.Test) ... ok
> test_offsetInLambdasInDoctests (pyflakes.test.test_doctests.Test) ... ok
> test_offsetWithMultiLineArgs (pyflakes.test.test_doctests.Test) ... ok
> Check that a doctest is given a DoctestScope. ... ok
> test_singleUnderscoreInDoctest (pyflakes.test.test_doctests.Test) ... ok
> test_syntaxErrorInDoctest (pyflakes.test.test_doctests.Test) ... ok
> test_aliasedImport (pyflakes.test.test_doctests.TestImports) ... ok
> Imported aliases can shadow the source of the import. ... ok
> test_assignRHSFirst (pyflakes.test.test_doctests.TestImports) ... ok
> Binding an import to a declared global should not cause it to be ... ok
> If two different submodules of a package are imported, no duplicate ... ok
> If a submodule of a package is imported twice, an unused import warning ... ok
> test_functionNamesAreBoundNow (pyflakes.test.test_doctests.TestImports) ... ok
> test_functionsRunLater (pyflakes.test.test_doctests.TestImports) ... ok
> __future__ is special. ... ok
> __future__ imports must come before anything else. ... ok
> Importing '*' from __future__ fails. ... ok
> Importing undefined names from __future__ fails. ... ok
> __future__ is special, but names are injected in the namespace. ... ok
> test_ignoreNonImportRedefinitions (pyflakes.test.test_doctests.TestImports) ... ok
> Test that import within class is a locally scoped attribute. ... ok
> Use of import * at module level is reported. ... ok
> All star imports are marked as used by an undefined variable. ... SKIP: import * below module level is an error on Python 3
> Use of import * from a relative import is reported. ... ok
> Method named 'foo' with default args referring to module named 'foo'. ... ok
> Imports in class scope can be used through self. ... ok
> test_importingForImportError (pyflakes.test.test_doctests.TestImports) ... SKIP: todo
> import * is only allowed at module level. ... ok
> test_methodsDontUseClassScope (pyflakes.test.test_doctests.TestImports) ... ok
> test_nestedClassAndFunctionScope (pyflakes.test.test_doctests.TestImports) ... ok
> test_nestedFunctionsNestScope (pyflakes.test.test_doctests.TestImports) ... ok
> test_newAssignment (pyflakes.test.test_doctests.TestImports) ... ok
> test_nonGlobalDoesNotRedefine (pyflakes.test.test_doctests.TestImports) ... ok
> test_notUsedInNestedScope (pyflakes.test.test_doctests.TestImports) ... ok
> If a dotted name is imported and used, no warning is reported. ... ok
> Test that a global import which is redefined locally, ... ok
> test_redefinedByClass (pyflakes.test.test_doctests.TestImports) ... ok
> test_redefinedByExcept (pyflakes.test.test_doctests.TestImports) ... ok
> test_redefinedByFor (pyflakes.test.test_doctests.TestImports) ... ok
> test_redefinedByFunction (pyflakes.test.test_doctests.TestImports) ... ok
> test_redefinedByListComp (pyflakes.test.test_doctests.TestImports) ... SKIP: in Python 3 list comprehensions execute in a separate scope
> If an imported name is redefined by a class statement which also uses ... ok
> Test that importing a module twice within an if ... ok
> Test that importing a module twice in if ... ok
> Test that shadowing a global with a class attribute does not produce a ... ok
> Test that shadowing a global name with a nested function definition ... ok
> Test that shadowing a global name with a nested function definition ... ok
> Test that importing a module twice in a try block ... ok
> test_redefinedTryElse (pyflakes.test.test_doctests.TestImports) ... ok
> Test that importing a module twice in a try ... ok
> test_redefinedTryExceptElse (pyflakes.test.test_doctests.TestImports) ... ok
> test_redefinedTryExceptElseFinally (pyflakes.test.test_doctests.TestImports) ... ok
> test_redefinedTryExceptFinally (pyflakes.test.test_doctests.TestImports) ... ok
> test_redefinedTryExceptMulti (pyflakes.test.test_doctests.TestImports) ... ok
> Test that importing a module twice using a nested ... ok
> test_redefinedWhileUnused (pyflakes.test.test_doctests.TestImports) ... ok
> Test that shadowing a global name with a for loop variable generates a ... ok
> Test that shadowing a global name with a for loop variable nested in a ... ok
> test_shadowedByLambda (pyflakes.test.test_doctests.TestImports) ... ok
> test_shadowedByParameter (pyflakes.test.test_doctests.TestImports) ... ok
> test_tryingMultipleImports (pyflakes.test.test_doctests.TestImports) ... ok
> test_unusedImport (pyflakes.test.test_doctests.TestImports) ... ok
> test_unusedImport_relative (pyflakes.test.test_doctests.TestImports) ... ok
> test_unusedInNestedScope (pyflakes.test.test_doctests.TestImports) ... ok
> If a dotted name is imported and not used, an unused import warning is ... ok
> When a package and its submodule are imported, only report once. ... ok
> A 'global' statement shadowing a used import should not cause it to be ... ok
> test_usedImport (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedImport_relative (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInAssert (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInAssignment (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInAttributeAssign (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInBackquote (pyflakes.test.test_doctests.TestImports) ... SKIP: deprecated syntax
> test_usedInCall (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInClass (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInClassBase (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInDict (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInElifConditional (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInElse (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInExcept (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInExec (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInFor (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInForElse (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInFunction (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInGetattr (pyflakes.test.test_doctests.TestImports) ... ok
> A 'global' statement shadowing an unused import should not prevent it ... ok
> test_usedInIfBody (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInIfConditional (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInKeywordArg (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInLambda (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInList (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInListComp (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInLogic (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInOperators (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInParameterDefault (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInRaise (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInReturn (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInSlice (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInSliceObj (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInSubscript (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInTry (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInTryFinally (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInTuple (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInWhile (pyflakes.test.test_doctests.TestImports) ... ok
> test_usedInYield (pyflakes.test.test_doctests.TestImports) ... ok
> Usage of package marks submodule imports as used. ... ok
> Usage of package by alias marks submodule imports as used. ... ok
> Augmented assignment of attributes is supported. ... ok
> test_breakInsideLoop (pyflakes.test.test_doctests.TestOther) ... ok
> test_breakOutsideLoop (pyflakes.test.test_doctests.TestOther) ... ok
> Test that shadowing a function definition in a class suite with a ... ok
> If a class name is used in the body of that class's definition and ... ok
> If a class name is used in the body of that class's definition and ... ok
> If a class is redefined as a function, a warning is emitted. ... ok
> If a class is defined twice in the same module, a warning is emitted. ... ok
> If a return is used inside a class, a warning is emitted. ... ok
> If a yield is used inside a class, a warning is emitted. ... ok
> If a yield from is used inside a class, a warning is emitted. ... ok
> If a defined name is used on either side of any of the six comparison ... ok
> If a defined name is used on either side of a containment test, no ... ok
> test_continueInFinally (pyflakes.test.test_doctests.TestOther) ... SKIP: Python <= 3.8 only
> test_continueInsideLoop (pyflakes.test.test_doctests.TestOther) ... ok
> test_continueOutsideLoop (pyflakes.test.test_doctests.TestOther) ... ok
> A default except block should be last. ... ok
> test_defaultExceptNotLast (pyflakes.test.test_doctests.TestOther) ... ok
> If a variable is re-assigned to without being used, no warning is ... SKIP: todo: Too hard to make this warn but other cases stay silent
> If a variable is re-assigned within a conditional, no warning is ... ok
> If a variable is re-assigned to after being used, no warning is ... ok
> test_duplicateArgs (pyflakes.test.test_doctests.TestOther) ... ok
> Ellipsis in a slice is supported. ... ok
> Extended slices are supported. ... ok
> Test that shadowing a function definition with a decorated version of ... ok
> If a function is redefined as a class, a warning is emitted. ... ok
> Test to traverse ARG and ARGUMENT handler ... ok
> test_function_arguments_python3 (pyflakes.test.test_doctests.TestOther) ... ok
> A 'global' can be declared in one scope and reused in another. ... ok
> If a defined name is used on either side of an identity test, no ... ok
> test_localReferencedBeforeAssignment (pyflakes.test.test_doctests.TestOther) ... ok
> break and continue statements are supported. ... ok
> test_modernProperty (pyflakes.test.test_doctests.TestOther) ... ok
> If a return is used at the module level, a warning is emitted. ... ok
> If a yield is used at the module level, a warning is emitted. ... ok
> If a yield from is used at the module level, a warning is emitted. ... ok
> Test that shadowing a function definition in a class suite with another ... ok
> Test that shadowing a variable in a list comprehension in ... SKIP: in Python 3 list comprehensions execute in a separate scope
> Test that shadowing a function definition with another one raises a ... ok
> Test that shadowing a function definition twice in an if ... ok
> Test that shadowing a variable in a list comprehension in ... ok
> Test that shadowing a function definition within an if block ... ok
> Test that reusing a variable in a dict comprehension does not raise ... ok
> Test that reusing a variable in a generator does not raise ... ok
> Test that shadowing a variable in a list comprehension raises ... SKIP: in Python 3 list comprehensions execute in a separate scope
> Test that reusing a variable in a set comprehension does not raise ... ok
> Test that shadowing a function definition twice in try ... ok
> Test that shadowing a function definition within a try block ... ok
> Test that shadowing a function definition named with underscore doesn't ... ok
> Test that shadowing an underscore importation raises a warning. ... ok
> SyntaxErrors (not encoded in the ast) surrounding Python 3 extended ... ok
> Python 3 extended iterable unpacking ... ok
> Don't die on unary +. ... ok
> If a name in the base list of a class definition is undefined, a ... ok
> Augmented assignment of a variable is supported. ... ok
> Undefined annotations. ... ok
> Free variables in nested classes must bind at class creation. ... ok
> C{WindowsError} is sometimes a builtin name, so no warning is emitted ... ok
> test_builtins (pyflakes.test.test_doctests.TestUndefinedNames) ... ok
> Star and double-star arg names are defined. ... ok
> Star names in unpack are defined. ... ok
> "global" can make an otherwise undefined name in another function ... ok
> "global" can accept multiple names. ... ok
> Defined name referenced from a lambda function within a dict/set ... ok
> Defined name referenced from a lambda function within a generator ... ok
> Defined name for generator expressions and dict/set comprehension. ... ok
> Defined name for nested generator expressions in a class. ... ok
> Using the loop variable of a generator expression results in no ... ok
> test_definedInListComp (pyflakes.test.test_doctests.TestUndefinedNames) ... ok
> Del deletes bindings. ... ok
> Ignores conditional bindings deletion. ... ok
> Ignored conditional bindings deletion even if they are nested in other ... ok
> The exception name can be deleted in the except: block. ... ok
> Del a global binding from a function. ... ok
> Del an undefined name. ... ok
> Ignore bindings deletion if called inside the body of a while ... ok
> Ignore bindings deletions if node is part of while's test, even when ... ok
> Ignore bindings deletion if called inside the body of a while ... ok
> Test that referencing a local name in a nested scope that shadows a ... ok
> `__class__` is defined in class scope under Python 3, but is not ... ok
> test_functionsNeedGlobalScope (pyflakes.test.test_doctests.TestUndefinedNames) ... ok
> Global names are available from nested scopes. ... ok
> Can't find undefined names with import *. ... ok
> A global statement in the global scope is ignored. ... ok
> A global statement does not prevent other names being undefined. ... ok
> If a name defined in an enclosing scope is shadowed by a local variable ... ok
> Keyword-only arg names are defined. ... ok
> Typo in kwonly name. ... ok
> Test that referencing a local name that shadows a global, before it is ... ok
> Test that referencing a local name in a nested scope that shadows a ... ok
> Test that referencing a local name in a nested scope that shadows a ... ok
> A local import * still allows undefined names to be found ... SKIP: obsolete syntax
> Use of the C{__builtins__} magic global should not emit an undefined ... ok
> Use of the C{__file__} magic global should not emit an undefined name ... ok
> Use of the C{__name__} magic global should not emit an undefined name ... ok
> Use of the C{__path__} magic global should not emit an undefined name ... ok
> Use of the C{__module__} magic builtin should not emit an undefined ... ok
> test_metaClassUndefined (pyflakes.test.test_doctests.TestUndefinedNames) ... ok
> Use of the C{__annotations__} in module scope should not emit ... ok
> Locals declared in except: blocks can be used after the block. ... ok
> Nested classes can access enclosing scope. ... ok
> test_undefined (pyflakes.test.test_doctests.TestUndefinedNames) ... ok
> test_undefinedAugmentedAssignment (pyflakes.test.test_doctests.TestUndefinedNames) ... ok
> Exception names can't be used after the except: block. ... ok
> Exception names obscure globals, can't be used after. ... SKIP: error reporting disabled due to false positives below
> Exception names obscure globals, can't be used after. ... SKIP: error reporting disabled due to false positives below
> Exception names obscure globals, can't be used after. Unless. ... ok
> Exception names obscure globals, can't be used after. Unless. ... ok
> Exception names obscure locals, can't be used after. ... SKIP: error reporting disabled due to false positives below
> Exception names are unbound after the `except:` block. ... ok
> Exception names obscure locals, can't be used after. Unless. ... ok
> Exception names obscure locals, can't be used after. Unless. ... ok
> Undefined name referenced from a lambda function within a generator ... ok
> Undefined name referenced from a lambda function within a dict/set ... ok
> The loop variables of generator expressions nested together are ... ok
> test_undefinedInListComp (pyflakes.test.test_doctests.TestUndefinedNames) ... ok
> The loop variable is defined after the expression is computed. ... ok
> Some compatibility code checks explicitly for NameError. ... ok
> Unpacked function parameters create bindings. ... SKIP: obsolete syntax
> Star names in unpack are unused if RHS is a tuple/list literal. ... ok
> An unused global statement does not define the name. ... SKIP: todo
> Star names in unpack are used if RHS is not a tuple/list literal. ... ok
> test_aliasedImport (pyflakes.test.test_imports.Test) ... ok
> Imported aliases can shadow the source of the import. ... ok
> test_assignRHSFirst (pyflakes.test.test_imports.Test) ... ok
> Binding an import to a declared global should not cause it to be ... ok
> If two different submodules of a package are imported, no duplicate ... ok
> If a submodule of a package is imported twice, an unused import warning ... ok
> test_functionNamesAreBoundNow (pyflakes.test.test_imports.Test) ... ok
> test_functionsRunLater (pyflakes.test.test_imports.Test) ... ok
> __future__ is special. ... ok
> __future__ imports must come before anything else. ... ok
> Importing '*' from __future__ fails. ... ok
> Importing undefined names from __future__ fails. ... ok
> __future__ is special, but names are injected in the namespace. ... ok
> test_ignoreNonImportRedefinitions (pyflakes.test.test_imports.Test) ... ok
> Test that import within class is a locally scoped attribute. ... ok
> Use of import * at module level is reported. ... ok
> All star imports are marked as used by an undefined variable. ... SKIP: import * below module level is an error on Python 3
> Use of import * from a relative import is reported. ... ok
> Method named 'foo' with default args referring to module named 'foo'. ... ok
> Imports in class scope can be used through self. ... ok
> test_importingForImportError (pyflakes.test.test_imports.Test) ... SKIP: todo
> import * is only allowed at module level. ... ok
> test_methodsDontUseClassScope (pyflakes.test.test_imports.Test) ... ok
> test_nestedClassAndFunctionScope (pyflakes.test.test_imports.Test) ... ok
> test_nestedFunctionsNestScope (pyflakes.test.test_imports.Test) ... ok
> test_newAssignment (pyflakes.test.test_imports.Test) ... ok
> test_nonGlobalDoesNotRedefine (pyflakes.test.test_imports.Test) ... ok
> test_notUsedInNestedScope (pyflakes.test.test_imports.Test) ... ok
> If a dotted name is imported and used, no warning is reported. ... ok
> Test that a global import which is redefined locally, ... ok
> test_redefinedByClass (pyflakes.test.test_imports.Test) ... ok
> test_redefinedByExcept (pyflakes.test.test_imports.Test) ... ok
> test_redefinedByFor (pyflakes.test.test_imports.Test) ... ok
> test_redefinedByFunction (pyflakes.test.test_imports.Test) ... ok
> test_redefinedByListComp (pyflakes.test.test_imports.Test) ... SKIP: in Python 3 list comprehensions execute in a separate scope
> If an imported name is redefined by a class statement which also uses ... ok
> Test that importing a module twice within an if ... ok
> Test that importing a module twice in if ... ok
> Test that shadowing a global with a class attribute does not produce a ... ok
> Test that shadowing a global name with a nested function definition ... ok
> Test that shadowing a global name with a nested function definition ... ok
> Test that importing a module twice in a try block ... ok
> test_redefinedTryElse (pyflakes.test.test_imports.Test) ... ok
> Test that importing a module twice in a try ... ok
> test_redefinedTryExceptElse (pyflakes.test.test_imports.Test) ... ok
> test_redefinedTryExceptElseFinally (pyflakes.test.test_imports.Test) ... ok
> test_redefinedTryExceptFinally (pyflakes.test.test_imports.Test) ... ok
> test_redefinedTryExceptMulti (pyflakes.test.test_imports.Test) ... ok
> Test that importing a module twice using a nested ... ok
> test_redefinedWhileUnused (pyflakes.test.test_imports.Test) ... ok
> Test that shadowing a global name with a for loop variable generates a ... ok
> Test that shadowing a global name with a for loop variable nested in a ... ok
> test_shadowedByLambda (pyflakes.test.test_imports.Test) ... ok
> test_shadowedByParameter (pyflakes.test.test_imports.Test) ... ok
> test_tryingMultipleImports (pyflakes.test.test_imports.Test) ... ok
> test_unusedImport (pyflakes.test.test_imports.Test) ... ok
> test_unusedImport_relative (pyflakes.test.test_imports.Test) ... ok
> test_unusedInNestedScope (pyflakes.test.test_imports.Test) ... ok
> If a dotted name is imported and not used, an unused import warning is ... ok
> When a package and its submodule are imported, only report once. ... ok
> A 'global' statement shadowing a used import should not cause it to be ... ok
> test_usedImport (pyflakes.test.test_imports.Test) ... ok
> test_usedImport_relative (pyflakes.test.test_imports.Test) ... ok
> test_usedInAssert (pyflakes.test.test_imports.Test) ... ok
> test_usedInAssignment (pyflakes.test.test_imports.Test) ... ok
> test_usedInAttributeAssign (pyflakes.test.test_imports.Test) ... ok
> test_usedInBackquote (pyflakes.test.test_imports.Test) ... SKIP: deprecated syntax
> test_usedInCall (pyflakes.test.test_imports.Test) ... ok
> test_usedInClass (pyflakes.test.test_imports.Test) ... ok
> test_usedInClassBase (pyflakes.test.test_imports.Test) ... ok
> test_usedInDict (pyflakes.test.test_imports.Test) ... ok
> test_usedInElifConditional (pyflakes.test.test_imports.Test) ... ok
> test_usedInElse (pyflakes.test.test_imports.Test) ... ok
> test_usedInExcept (pyflakes.test.test_imports.Test) ... ok
> test_usedInExec (pyflakes.test.test_imports.Test) ... ok
> test_usedInFor (pyflakes.test.test_imports.Test) ... ok
> test_usedInForElse (pyflakes.test.test_imports.Test) ... ok
> test_usedInFunction (pyflakes.test.test_imports.Test) ... ok
> test_usedInGetattr (pyflakes.test.test_imports.Test) ... ok
> A 'global' statement shadowing an unused import should not prevent it ... ok
> test_usedInIfBody (pyflakes.test.test_imports.Test) ... ok
> test_usedInIfConditional (pyflakes.test.test_imports.Test) ... ok
> test_usedInKeywordArg (pyflakes.test.test_imports.Test) ... ok
> test_usedInLambda (pyflakes.test.test_imports.Test) ... ok
> test_usedInList (pyflakes.test.test_imports.Test) ... ok
> test_usedInListComp (pyflakes.test.test_imports.Test) ... ok
> test_usedInLogic (pyflakes.test.test_imports.Test) ... ok
> test_usedInOperators (pyflakes.test.test_imports.Test) ... ok
> test_usedInParameterDefault (pyflakes.test.test_imports.Test) ... ok
> test_usedInRaise (pyflakes.test.test_imports.Test) ... ok
> test_usedInReturn (pyflakes.test.test_imports.Test) ... ok
> test_usedInSlice (pyflakes.test.test_imports.Test) ... ok
> test_usedInSliceObj (pyflakes.test.test_imports.Test) ... ok
> test_usedInSubscript (pyflakes.test.test_imports.Test) ... ok
> test_usedInTry (pyflakes.test.test_imports.Test) ... ok
> test_usedInTryFinally (pyflakes.test.test_imports.Test) ... ok
> test_usedInTuple (pyflakes.test.test_imports.Test) ... ok
> test_usedInWhile (pyflakes.test.test_imports.Test) ... ok
> test_usedInYield (pyflakes.test.test_imports.Test) ... ok
> Usage of package marks submodule imports as used. ... ok
> Usage of package by alias marks submodule imports as used. ... ok
> test_import_as (pyflakes.test.test_imports.TestImportationObject) ... ok
> test_import_basic (pyflakes.test.test_imports.TestImportationObject) ... ok
> test_import_submodule (pyflakes.test.test_imports.TestImportationObject) ... ok
> test_import_submodule_as (pyflakes.test.test_imports.TestImportationObject) ... ok
> test_import_submodule_as_source_name (pyflakes.test.test_imports.TestImportationObject) ... ok
> test_importfrom_future (pyflakes.test.test_imports.TestImportationObject) ... ok
> test_importfrom_member (pyflakes.test.test_imports.TestImportationObject) ... ok
> test_importfrom_member_as (pyflakes.test.test_imports.TestImportationObject) ... ok
> test_importfrom_relative (pyflakes.test.test_imports.TestImportationObject) ... ok
> test_importfrom_relative_parent (pyflakes.test.test_imports.TestImportationObject) ... ok
> test_importfrom_relative_with_module (pyflakes.test.test_imports.TestImportationObject) ... ok
> test_importfrom_relative_with_module_as (pyflakes.test.test_imports.TestImportationObject) ... ok
> test_importfrom_star (pyflakes.test.test_imports.TestImportationObject) ... ok
> test_importfrom_star_relative (pyflakes.test.test_imports.TestImportationObject) ... ok
> test_importfrom_submodule_member (pyflakes.test.test_imports.TestImportationObject) ... ok
> test_importfrom_submodule_member_as (pyflakes.test.test_imports.TestImportationObject) ... ok
> The magic underscore var should be reported as unused when used as an ... ok
> test_all_mixed_attributes_and_strings (pyflakes.test.test_imports.TestSpecialAll) ... ok
> test_all_with_attributes (pyflakes.test.test_imports.TestSpecialAll) ... ok
> test_all_with_attributes_added (pyflakes.test.test_imports.TestSpecialAll) ... ok
> test_all_with_names (pyflakes.test.test_imports.TestSpecialAll) ... ok
> The C{__all__} variable is defined incrementally. ... ok
> The C{__all__} variable is defined through list concatenation. ... ok
> An C{__all__} definition in a class does not suppress unused import warnings. ... ok
> An C{__all__} definition does not suppress unused import warnings in a ... ok
> Report undefined if import * is used ... ok
> Report unused import when not needed to satisfy __all__. ... ok
> Re-using a global name as the loop variable for a generator ... ok
> If C{__all__} includes a name which is not bound, a warning is emitted. ... ok
> Using an imported name as a class decorator results in no warnings, ... ok
> Using a global name in a decorator statement results in no warnings, ... ok
> Using a global in a generator expression results in no warnings. ... ok
> If a name is imported and unused but is named in C{__all__}, no warning ... ok
> test_chained_operators_is_str (pyflakes.test.test_is_literal.Test) ... ok
> test_chained_operators_is_str_end (pyflakes.test.test_is_literal.Test) ... ok
> test_chained_operators_is_true (pyflakes.test.test_is_literal.Test) ... ok
> test_chained_operators_is_true_end (pyflakes.test.test_is_literal.Test) ... ok
> test_is_bytes (pyflakes.test.test_is_literal.Test) ... ok
> test_is_false (pyflakes.test.test_is_literal.Test) ... ok
> test_is_int (pyflakes.test.test_is_literal.Test) ... ok
> test_is_not_bytes (pyflakes.test.test_is_literal.Test) ... ok
> test_is_not_false (pyflakes.test.test_is_literal.Test) ... ok
> test_is_not_int (pyflakes.test.test_is_literal.Test) ... ok
> test_is_not_str (pyflakes.test.test_is_literal.Test) ... ok
> test_is_not_true (pyflakes.test.test_is_literal.Test) ... ok
> test_is_not_unicode (pyflakes.test.test_is_literal.Test) ... ok
> test_is_str (pyflakes.test.test_is_literal.Test) ... ok
> test_is_true (pyflakes.test.test_is_literal.Test) ... ok
> test_is_tuple_constant (pyflakes.test.test_is_literal.Test) ... ok
> test_is_tuple_constant_containing_constants (pyflakes.test.test_is_literal.Test) ... ok
> test_is_tuple_containing_variables_ok (pyflakes.test.test_is_literal.Test) ... ok
> test_is_unicode (pyflakes.test.test_is_literal.Test) ... ok
> test_left_is_bytes (pyflakes.test.test_is_literal.Test) ... ok
> test_left_is_false (pyflakes.test.test_is_literal.Test) ... ok
> test_left_is_int (pyflakes.test.test_is_literal.Test) ... ok
> test_left_is_not_bytes (pyflakes.test.test_is_literal.Test) ... ok
> test_left_is_not_false (pyflakes.test.test_is_literal.Test) ... ok
> test_left_is_not_int (pyflakes.test.test_is_literal.Test) ... ok
> test_left_is_not_str (pyflakes.test.test_is_literal.Test) ... ok
> test_left_is_not_true (pyflakes.test.test_is_literal.Test) ... ok
> test_left_is_not_unicode (pyflakes.test.test_is_literal.Test) ... ok
> test_left_is_str (pyflakes.test.test_is_literal.Test) ... ok
> test_left_is_true (pyflakes.test.test_is_literal.Test) ... ok
> test_left_is_unicode (pyflakes.test.test_is_literal.Test) ... ok
> Augmented assignment of attributes is supported. ... ok
> test_breakInsideLoop (pyflakes.test.test_other.Test) ... ok
> test_breakOutsideLoop (pyflakes.test.test_other.Test) ... ok
> Test that shadowing a function definition in a class suite with a ... ok
> If a class name is used in the body of that class's definition and ... ok
> If a class name is used in the body of that class's definition and ... ok
> If a class is redefined as a function, a warning is emitted. ... ok
> If a class is defined twice in the same module, a warning is emitted. ... ok
> If a return is used inside a class, a warning is emitted. ... ok
> If a yield is used inside a class, a warning is emitted. ... ok
> If a yield from is used inside a class, a warning is emitted. ... ok
> If a defined name is used on either side of any of the six comparison ... ok
> If a defined name is used on either side of a containment test, no ... ok
> test_continueInFinally (pyflakes.test.test_other.Test) ... SKIP: Python <= 3.8 only
> test_continueInsideLoop (pyflakes.test.test_other.Test) ... ok
> test_continueOutsideLoop (pyflakes.test.test_other.Test) ... ok
> A default except block should be last. ... ok
> test_defaultExceptNotLast (pyflakes.test.test_other.Test) ... ok
> If a variable is re-assigned to without being used, no warning is ... SKIP: todo: Too hard to make this warn but other cases stay silent
> If a variable is re-assigned within a conditional, no warning is ... ok
> If a variable is re-assigned to after being used, no warning is ... ok
> test_duplicateArgs (pyflakes.test.test_other.Test) ... ok
> Ellipsis in a slice is supported. ... ok
> Extended slices are supported. ... ok
> Test that shadowing a function definition with a decorated version of ... ok
> If a function is redefined as a class, a warning is emitted. ... ok
> Test to traverse ARG and ARGUMENT handler ... ok
> test_function_arguments_python3 (pyflakes.test.test_other.Test) ... ok
> A 'global' can be declared in one scope and reused in another. ... ok
> If a defined name is used on either side of an identity test, no ... ok
> test_localReferencedBeforeAssignment (pyflakes.test.test_other.Test) ... ok
> break and continue statements are supported. ... ok
> test_modernProperty (pyflakes.test.test_other.Test) ... ok
> If a return is used at the module level, a warning is emitted. ... ok
> If a yield is used at the module level, a warning is emitted. ... ok
> If a yield from is used at the module level, a warning is emitted. ... ok
> Test that shadowing a function definition in a class suite with another ... ok
> Test that shadowing a variable in a list comprehension in ... SKIP: in Python 3 list comprehensions execute in a separate scope
> Test that shadowing a function definition with another one raises a ... ok
> Test that shadowing a function definition twice in an if ... ok
> Test that shadowing a variable in a list comprehension in ... ok
> Test that shadowing a function definition within an if block ... ok
> Test that reusing a variable in a dict comprehension does not raise ... ok
> Test that reusing a variable in a generator does not raise ... ok
> Test that shadowing a variable in a list comprehension raises ... SKIP: in Python 3 list comprehensions execute in a separate scope
> Test that reusing a variable in a set comprehension does not raise ... ok
> Test that shadowing a function definition twice in try ... ok
> Test that shadowing a function definition within a try block ... ok
> Test that shadowing a function definition named with underscore doesn't ... ok
> Test that shadowing an underscore importation raises a warning. ... ok
> SyntaxErrors (not encoded in the ast) surrounding Python 3 extended ... ok
> Python 3 extended iterable unpacking ... ok
> Don't die on unary +. ... ok
> If a name in the base list of a class definition is undefined, a ... ok
> Augmented assignment of a variable is supported. ... ok
> test_asyncDef (pyflakes.test.test_other.TestAsyncStatements) ... ok
> test_asyncDefAwait (pyflakes.test.test_other.TestAsyncStatements) ... ok
> test_asyncDefUndefined (pyflakes.test.test_other.TestAsyncStatements) ... ok
> test_asyncFor (pyflakes.test.test_other.TestAsyncStatements) ... ok
> test_asyncForUnderscoreLoopVar (pyflakes.test.test_other.TestAsyncStatements) ... ok
> test_asyncWith (pyflakes.test.test_other.TestAsyncStatements) ... ok
> test_asyncWithItem (pyflakes.test.test_other.TestAsyncStatements) ... ok
> test_continueInAsyncForFinally (pyflakes.test.test_other.TestAsyncStatements) ... SKIP: Python <= 3.8 only
> test_formatstring (pyflakes.test.test_other.TestAsyncStatements) ... ok
> test_loopControlInAsyncFor (pyflakes.test.test_other.TestAsyncStatements) ... ok
> test_loopControlInAsyncForElse (pyflakes.test.test_other.TestAsyncStatements) ... ok
> test_matmul (pyflakes.test.test_other.TestAsyncStatements) ... ok
> test_raise_notimplemented (pyflakes.test.test_other.TestAsyncStatements) ... ok
> test_invalid_print_when_imported_from_future (pyflakes.test.test_other.TestIncompatiblePrintOperator) ... ok
> test_print_as_condition_test (pyflakes.test.test_other.TestIncompatiblePrintOperator) ... ok
> A valid assignment, tested for catching false positives. ... ok
> test_print_in_lambda (pyflakes.test.test_other.TestIncompatiblePrintOperator) ... ok
> test_print_returned_in_function (pyflakes.test.test_other.TestIncompatiblePrintOperator) ... ok
> test_valid_print (pyflakes.test.test_other.TestIncompatiblePrintOperator) ... ok
> test_f_string_without_placeholders (pyflakes.test.test_other.TestStringFormatting) ... ok
> test_invalid_dot_format_calls (pyflakes.test.test_other.TestStringFormatting) ... ok
> test_invalid_percent_format_calls (pyflakes.test.test_other.TestStringFormatting) ... ok
> test_ok_percent_format_cannot_determine_element_count (pyflakes.test.test_other.TestStringFormatting) ... ok
> An assert of a static value is not an error. ... ok
> An assert of a non-empty tuple is always True. ... ok
> An assert of an empty tuple is always False. ... ok
> An assert with a message is not an error. ... ok
> An assert without a message is not an error. ... ok
> Don't warn when a variable in a for loop is assigned to but not used. ... ok
> Don't warn when a variable in a list comprehension is ... ok
> Assigning to a global and then not using that global is perfectly ... ok
> Assigning to a member of another object and then not using that member ... ok
> Assigning to a nonlocal and then not using that binding is perfectly ... ok
> Test PEP 572 assignment expressions are treated as usage / write. ... ok
> Don't warn when a variable assignment occurs lexically after its use. ... ok
> Consider a function that is called on the right part of an ... ok
> Don't warn when the assignment is used in an inner function. ... ok
> Dict comprehensions are properly handled. ... ok
> Don't warn when the assignment is used in an inner function, even if ... ok
> Don't issue false warning when an unnamed exception is used. ... ok
> Don't issue false warning when an unnamed exception is used. ... ok
> test_exceptionUnusedInExcept (pyflakes.test.test_other.TestUnusedAssignment) ... ok
> test_exceptionUnusedInExceptInFunction (pyflakes.test.test_other.TestUnusedAssignment) ... ok
> test_exceptionUsedInExcept (pyflakes.test.test_other.TestUnusedAssignment) ... ok
> Test PEP 498 f-strings are treated as a usage. ... ok
> Don't warn when a variable in a generator expression is ... ok
> Test C{if (foo,)} conditions. ... ok
> Test C{foo if bar else baz} statements. ... ok
> Don't warn when a variable included in list unpacking is unused. ... ok
> Set comprehensions are properly handled. ... ok
> Do not warn about unused local variable __tracebackhide__, which is ... ok
> Don't warn when a variable included in tuple unpacking is unused. It's ... ok
> Shadowing a used variable can still raise an UnusedVariable warning. ... SKIP: todo: Difficult because it doesn't apply in the context of a loop
> Don't warn when the magic "_" (underscore) variable is unused. ... ok
> Warn when a variable in a function is assigned a value that's never ... ok
> Using locals() it is perfectly valid to have unused variables ... ok
> Using locals() in wrong scope should not matter ... ok
> Shadowing a used variable cannot raise an UnusedVariable warning in the ... ok
> No warnings are emitted for using an attribute as the target of a ... ok
> If the target of a C{with} statement uses any or all of the valid forms ... ok
> No warnings are emitted for using any of the list of names defined by a ... ok
> A name defined in the body of a C{with} statement can be used after ... ok
> No warnings are emitted for using inside or after a nameless C{with} ... ok
> No warnings are emitted for using a name defined by a C{with} statement ... ok
> A redefined name warning is emitted if a name bound by an import is ... ok
> An undefined name warning is emitted if the name first defined by a ... ok
> No warnings are emitted for using a subscript as the target of a ... ok
> An undefined name warning is emitted if the subscript used as the ... ok
> No warnings are emitted for using any of the tuple of names defined by ... ok
> A redefined name warning is emitted if a name bound by an import is ... ok
> An undefined name warning is emitted if a name first defined by the ... ok
> An undefined name warning is emitted if a name in the I{test} ... ok
> An undefined name warning is emitted if a name is used inside the ... ok
> Test C{yield from} statement ... ok
> test_return (pyflakes.test.test_return_with_arguments_inside_generator.Test) ... SKIP: new in Python 3.3
> test_returnNone (pyflakes.test.test_return_with_arguments_inside_generator.Test) ... SKIP: new in Python 3.3
> test_returnYieldExpression (pyflakes.test.test_return_with_arguments_inside_generator.Test) ... SKIP: new in Python 3.3
> test_annotated_async_def (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_deferred_twice_annotation (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> err on the side of false-negatives for types named Literal ... ok
> test_literal_type_typing (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_literal_type_typing_extensions (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_literal_union_type_typing (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_nested_partially_quoted_type_assignment (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> regression test for @typing.overload detection bug in 2.1.0 ... ok
> test_overload_in_class (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_overload_with_multiple_decorators (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_partial_string_annotations_with_future_annotations (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_partially_quoted_type_annotation (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_partially_quoted_type_assignment (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_positional_only_argument_annotations (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_postponed_annotations (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_quoted_type_cast (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_quoted_type_cast_renamed_import (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_return_annotation_is_class_scope_variable (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_return_annotation_is_function_body_variable (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_typeCommentsAdditionalComment (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_typeCommentsAssignedToPreviousNode (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_typeCommentsFullSignature (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_typeCommentsFullSignatureWithDocstring (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_typeCommentsInvalidDoesNotMarkAsUsed (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_typeCommentsMarkImportsAsUsed (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_typeCommentsNoWhitespaceAnnotation (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_typeCommentsStarArgs (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_typeCommentsSyntaxError (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_typeCommentsSyntaxErrorCorrectLine (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_typeIgnore (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_typeIgnoreBogus (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_typeIgnoreBogusUnicode (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> test_type_cast_literal_str_to_str (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> Allow intentional redefinitions via @typing_extensions.overload ... ok
> Allow intentional redefinitions via @typing.overload ... ok
> Allow intentional redefinitions via @typing.overload (async) ... ok
> test_variable_annotations (pyflakes.test.test_type_annotations.TestTypeAnnotations) ... ok
> A Name node with an unrecognized context results in a RuntimeError being ... ok
> Undefined annotations. ... ok
> Free variables in nested classes must bind at class creation. ... ok
> C{WindowsError} is sometimes a builtin name, so no warning is emitted ... ok
> test_builtins (pyflakes.test.test_undefined_names.Test) ... ok
> Star and double-star arg names are defined. ... ok
> Star names in unpack are defined. ... ok
> "global" can make an otherwise undefined name in another function ... ok
> "global" can accept multiple names. ... ok
> Defined name referenced from a lambda function within a dict/set ... ok
> Defined name referenced from a lambda function within a generator ... ok
> Defined name for generator expressions and dict/set comprehension. ... ok
> Defined name for nested generator expressions in a class. ... ok
> Using the loop variable of a generator expression results in no ... ok
> test_definedInListComp (pyflakes.test.test_undefined_names.Test) ... ok
> Del deletes bindings. ... ok
> Ignores conditional bindings deletion. ... ok
> Ignored conditional bindings deletion even if they are nested in other ... ok
> The exception name can be deleted in the except: block. ... ok
> Del a global binding from a function. ... ok
> Del an undefined name. ... ok
> Ignore bindings deletion if called inside the body of a while ... ok
> Ignore bindings deletions if node is part of while's test, even when ... ok
> Ignore bindings deletion if called inside the body of a while ... ok
> Test that referencing a local name in a nested scope that shadows a ... ok
> `__class__` is defined in class scope under Python 3, but is not ... ok
> test_functionsNeedGlobalScope (pyflakes.test.test_undefined_names.Test) ... ok
> Global names are available from nested scopes. ... ok
> Can't find undefined names with import *. ... ok
> A global statement in the global scope is ignored. ... ok
> A global statement does not prevent other names being undefined. ... ok
> If a name defined in an enclosing scope is shadowed by a local variable ... ok
> Keyword-only arg names are defined. ... ok
> Typo in kwonly name. ... ok
> Test that referencing a local name that shadows a global, before it is ... ok
> Test that referencing a local name in a nested scope that shadows a ... ok
> Test that referencing a local name in a nested scope that shadows a ... ok
> A local import * still allows undefined names to be found ... SKIP: obsolete syntax
> Use of the C{__builtins__} magic global should not emit an undefined ... ok
> Use of the C{__file__} magic global should not emit an undefined name ... ok
> Use of the C{__name__} magic global should not emit an undefined name ... ok
> Use of the C{__path__} magic global should not emit an undefined name ... ok
> Use of the C{__module__} magic builtin should not emit an undefined ... ok
> test_metaClassUndefined (pyflakes.test.test_undefined_names.Test) ... ok
> Use of the C{__annotations__} in module scope should not emit ... ok
> Locals declared in except: blocks can be used after the block. ... ok
> Nested classes can access enclosing scope. ... ok
> test_undefined (pyflakes.test.test_undefined_names.Test) ... ok
> test_undefinedAugmentedAssignment (pyflakes.test.test_undefined_names.Test) ... ok
> Exception names can't be used after the except: block. ... ok
> Exception names obscure globals, can't be used after. ... SKIP: error reporting disabled due to false positives below
> Exception names obscure globals, can't be used after. ... SKIP: error reporting disabled due to false positives below
> Exception names obscure globals, can't be used after. Unless. ... ok
> Exception names obscure globals, can't be used after. Unless. ... ok
> Exception names obscure locals, can't be used after. ... SKIP: error reporting disabled due to false positives below
> Exception names are unbound after the `except:` block. ... ok
> Exception names obscure locals, can't be used after. Unless. ... ok
> Exception names obscure locals, can't be used after. Unless. ... ok
> Undefined name referenced from a lambda function within a generator ... ok
> Undefined name referenced from a lambda function within a dict/set ... ok
> The loop variables of generator expressions nested together are ... ok
> test_undefinedInListComp (pyflakes.test.test_undefined_names.Test) ... ok
> The loop variable is defined after the expression is computed. ... ok
> Some compatibility code checks explicitly for NameError. ... ok
> Unpacked function parameters create bindings. ... SKIP: obsolete syntax
> Star names in unpack are unused if RHS is a tuple/list literal. ... ok
> An unused global statement does not define the name. ... SKIP: todo
> Star names in unpack are used if RHS is not a tuple/list literal. ... ok
> 
> ======================================================================
> FAIL: The invalid escape syntax raises ValueError in Python 2
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test/test_api.py", line 597, in test_invalidEscape
>     self.assertHasErrors(
>   File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test/test_api.py", line 379, in assertHasErrors
>     self.assertEqual(
> AssertionError: Tuples differ: (1, "[14 chars]zs:1:13: (unicode error) 'unicodeescape' codec[88 chars]^\n") != (1, "[14 chars]zs:1:7: (unicode error) 'unicodeescape' codec [81 chars]^\n")
> 
> First differing element 1:
> "/tmp/tmp8fa4iwzs:1:13: (unicode error) 'unicodeescape' codec[87 chars] ^\n"
> "/tmp/tmp8fa4iwzs:1:7: (unicode error) 'unicodeescape' codec [80 chars] ^\n"
> 
>   (1,
> -  "/tmp/tmp8fa4iwzs:1:13: (unicode error) 'unicodeescape' codec can't decode "
> ?                      ^^
> 
> +  "/tmp/tmp8fa4iwzs:1:7: (unicode error) 'unicodeescape' codec can't decode "
> ?                      ^
> 
>    'bytes in position 0-1: truncated \\xXX escape\n'
>    "foo = '\\xyz'\n"
> -  '            ^\n')
> ?   ------
> 
> +  '      ^\n')
> 
> ======================================================================
> FAIL: Source which has a non-default argument following a default argument
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test/test_api.py", line 526, in test_nonDefaultFollowsDefaultSyntaxError
>     self.assertHasErrors(
>   File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test/test_api.py", line 379, in assertHasErrors
>     self.assertEqual(
> AssertionError: Tuples differ: (1, '[14 chars]5_:1:21: non-default argument follows default [54 chars]^\n') != (1, '[14 chars]5_:1:9: non-default argument follows default a[41 chars]^\n')
> 
> First differing element 1:
> '/tmp/tmpqi79675_:1:21: non-default argument follows default [53 chars] ^\n'
> '/tmp/tmpqi79675_:1:9: non-default argument follows default a[40 chars] ^\n'
> 
>   (1,
> -  '/tmp/tmpqi79675_:1:21: non-default argument follows default argument\n'
> ?                      ^^
> 
> +  '/tmp/tmpqi79675_:1:9: non-default argument follows default argument\n'
> ?                      ^
> 
>    'def foo(bar=baz, bax):\n'
> -  '                    ^\n')
> +  '        ^\n')
> 
> ======================================================================
> FAIL: Source which has a non-keyword argument after a keyword argument should
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test/test_api.py", line 560, in test_nonKeywordAfterKeywordSyntaxError
>     self.assertHasErrors(
>   File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build/pyflakes/test/test_api.py", line 379, in assertHasErrors
>     self.assertEqual(
> AssertionError: Tuples differ: (1, '[15 chars]b:1:17: positional argument follows keyword ar[43 chars]^\n') != (1, '[15 chars]b:1:14: positional argument follows keyword ar[40 chars]^\n')
> 
> First differing element 1:
> '/tmp/tmpe8hky9_b:1:17: positional argument follows keyword ar[42 chars] ^\n'
> '/tmp/tmpe8hky9_b:1:14: positional argument follows keyword ar[39 chars] ^\n'
> 
>   (1,
> -  '/tmp/tmpe8hky9_b:1:17: positional argument follows keyword argument\n'
> ?                       ^
> 
> +  '/tmp/tmpe8hky9_b:1:14: positional argument follows keyword argument\n'
> ?                       ^
> 
>    'foo(bar=baz, bax)\n'
> -  '                ^\n')
> ?   ---
> 
> +  '             ^\n')
> 
> ----------------------------------------------------------------------
> Ran 734 tests in 1.084s
> 
> FAILED (SKIP=37, failures=3)
> E: pybuild pybuild:352: test: plugin distutils failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.9_pyflakes/build; python3.9 -m nose -v 
> dh_auto_test: error: pybuild --test --test-nose -i python{version} -p "3.9 3.8" returned exit code 13

The full build log is available from:
   http://qa-logs.debian.net/2020/10/27/pyflakes_2.2.0-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