Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 800347 Details for
Bug 865931
dev-python/pytest-flake8-1.1.1 fails tests (MUSL)
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
build.log
build.log (text/plain), 368.78 KB, created by
Agostino Sarubbo
on 2022-08-21 14:43:29 UTC
(
hide
)
Description:
build.log
Filename:
MIME Type:
Creator:
Agostino Sarubbo
Created:
2022-08-21 14:43:29 UTC
Size:
368.78 KB
patch
obsolete
> * Package: dev-python/pytest-flake8-1.1.1 > * Repository: gentoo > * Maintainer: python@gentoo.org titanofold@gentoo.org > * USE: abi_x86_64 amd64 elibc_musl kernel_linux python_targets_python3_10 python_targets_python3_8 python_targets_python3_9 test userland_GNU > * FEATURES: network-sandbox preserve-libs sandbox test userpriv usersandbox > > >@@@@@ PLEASE PAY ATTENTION HERE!!! @@@@@ >This information may help you to understand if this is a duplicate or if this bug exists after you pushed a fix; >This ebuild was merged at the following commit: >https://github.com/gentoo-mirror/gentoo/commit/e24ba34f601012e415da04c5831f666483e3817d (Sun Aug 21 02:47:01 UTC 2022) >@@@@@ END @@@@@ > > > >################## ># emerge --info: # >################## >Portage 3.0.34 (python 3.10.6-final-0, default/linux/amd64/17.0/musl/hardened, gcc-12.2.0, musl-1.2.3, 5.10.133-gentoo x86_64) >================================================================= >System uname: Linux-5.10.133-gentoo-x86_64-Intel-R-_Xeon-R-_CPU_E5-2650_v4_@_2.20GHz-with-libc >KiB Mem: 264024340 total, 27575608 free >KiB Swap: 0 total, 0 free >Timestamp of repository gentoo: Sun, 21 Aug 2022 02:47:00 +0000 >sh bash 5.1_p16-r1 >ld GNU ld (Gentoo 2.38 p4) 2.38 >app-misc/pax-utils: 1.3.5::gentoo >app-shells/bash: 5.1_p16-r1::gentoo >dev-lang/perl: 5.36.0::gentoo >dev-lang/python: 3.8.13_p6::gentoo, 3.9.13_p4::gentoo, 3.10.6_p2::gentoo, 3.11.0_rc1::gentoo >dev-util/cmake: 3.24.1::gentoo >dev-util/meson: 0.63.1::gentoo >sys-apps/baselayout: 2.8-r2::gentoo >sys-apps/openrc: 0.45.2::gentoo >sys-apps/sandbox: 2.29::gentoo >sys-devel/autoconf: 2.71-r1::gentoo >sys-devel/automake: 1.16.5::gentoo >sys-devel/binutils: 2.38-r2::gentoo >sys-devel/binutils-config: 5.4.1::gentoo >sys-devel/gcc: 12.2.0::gentoo >sys-devel/gcc-config: 2.5-r1::gentoo >sys-devel/libtool: 2.4.7::gentoo >sys-devel/make: 4.3::gentoo >sys-kernel/linux-headers: 5.19::gentoo (virtual/os-headers) >sys-libs/musl: 1.2.3::gentoo >Repositories: > >gentoo > location: /usr/portage > sync-type: rsync > sync-uri: rsync://rsync.gentoo.org/gentoo-portage > priority: -1000 > sync-rsync-verify-metamanifest: yes > sync-rsync-verify-jobs: 1 > sync-rsync-extra-opts: > sync-rsync-verify-max-age: 24 > >ACCEPT_KEYWORDS="amd64 ~amd64" >ACCEPT_LICENSE="* MIT" >CBUILD="x86_64-gentoo-linux-musl" >CFLAGS="-O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0" >CHOST="x86_64-gentoo-linux-musl" >CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt" >CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" >CXXFLAGS="-O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0" >DISTDIR="/var/tmp/portage/dev-python/pytest-flake8-1.1.1/distdir" >EMERGE_DEFAULT_OPTS="--with-bdeps=y -1 -k -b" >ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR" >FCFLAGS="-O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0" >FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg buildpkg-live config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms sign split-log strict test unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" >FFLAGS="-O2 -pipe -march=x86-64 -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0" >GENTOO_MIRRORS="http://mirror.leaseweb.com/gentoo/ http://ftp.snt.utwente.nl/pub/os/linux/gentoo/ http://ftp.belnet.be/pub/rsync.gentoo.org/gentoo/ http://distfiles.gentoo.org" >INSTALL_MASK="charset.alias /usr/share/locale/locale.alias" >LANG="C.UTF8" >LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0" >MAKEOPTS="-j4" >PKGDIR="/root/tbci/binpkg" >PORTAGE_CONFIGROOT="/" >PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git" >PORTAGE_TMPDIR="/var/tmp" >SHELL="/bin/bash" >USE="acl amd64 bzip2 crypt elogind hardened iconv ipv6 jumbo-build libglvnd libtirpc native-symlinks ncurses nls nptl openmp pam pcre pie readline seccomp split-usr ssl ssp test unicode xattr xtpax zlib" ABI_X86="64" ELIBC="musl" KERNEL="linux" PYTHON_TARGETS="python3_8 python3_9 python3_10" USERLAND="GNU" >Unset: ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, LC_ALL, LD, LEX, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS > > > > > >############################## ># emerge history (qlop -mv): # >############################## >2022-08-21T03:59:02 >>> dev-python/pluggy-1.0.0-r2 >2022-08-21T03:59:01 >>> dev-python/iniconfig-1.1.1-r1 >2022-08-21T03:59:03 >>> dev-python/py-1.11.0-r1 >2022-08-21T03:59:04 >>> dev-python/zope-interface-5.4.0-r2 >2022-08-21T03:59:06 >>> dev-python/pycodestyle-2.9.1 >2022-08-21T03:59:05 >>> dev-python/pyflakes-2.5.0 >2022-08-21T03:59:31 >>> dev-python/attrs-22.1.0 >2022-08-21T03:59:40 >>> dev-python/flake8-5.0.4 >2022-08-21T03:59:48 >>> dev-python/pytest-7.1.2 >2022-08-21T03:59:53 >>> dev-python/mccabe-0.7.0 > > > > >####################################### ># installed packages (qlist -ICvUSS): # >####################################### >acct-group/audio-0-r1:0 >acct-group/cdrom-0-r1:0 >acct-group/dialout-0-r1:0 >acct-group/disk-0-r1:0 >acct-group/input-0-r1:0 >acct-group/kmem-0-r1:0 >acct-group/kvm-0-r1:0 >acct-group/lp-0-r1:0 >acct-group/man-0-r1:0 >acct-group/messagebus-0-r1:0 >acct-group/portage-0:0 >acct-group/render-0-r1:0 >acct-group/sgx-0:0 >acct-group/sshd-0-r1:0 >acct-group/tape-0-r1:0 >acct-group/tty-0-r1:0 >acct-group/video-0-r1:0 >acct-user/man-1-r1:0 >acct-user/messagebus-0-r1:0 >acct-user/portage-0:0 >acct-user/sshd-0-r1:0 >app-admin/eselect-1.4.20:0 -doc -emacs -vim-syntax >app-admin/perl-cleaner-2.30:0 >app-arch/bzip2-1.0.8-r1:0/1 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 split-usr -static -static-libs -verify-sig >app-arch/gzip-1.12:0 -pic -static -verify-sig >app-arch/libarchive-3.6.1:0/13 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 acl -blake2 bzip2 e2fsprogs -expat iconv -lz4 lzma -lzo -nettle -static-libs -verify-sig xattr -zstd >app-arch/tar-1.34:0 acl -minimal nls -selinux -verify-sig xattr >app-arch/unzip-6.0_p26:0 bzip2 -natspec unicode >app-arch/xz-utils-5.2.6:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 extra-filters nls split-usr -static-libs -verify-sig >app-arch/zstd-1.5.2-r1:0/1 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -lz4 split-usr -static-libs threads >app-crypt/gnupg-2.3.7-r1:0 bzip2 -doc -ldap nls readline -selinux smartcard ssl -test tofu -tools -tpm -usb -user-socket -verify-sig -wks-server >app-crypt/gpgme-1.18.0:1/11.6.15.1 -common-lisp cxx -python python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -qt5 -static-libs -test -verify-sig >app-crypt/libb2-0.98.1-r3:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -native-cflags openmp -static-libs >app-crypt/libmd-1.0.4:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 >app-crypt/pinentry-1.2.0-r1:0 -caps -efl -emacs -gnome-keyring -gtk ncurses -qt5 >app-crypt/rhash-1.4.3:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -debug nls ssl -static-libs >app-editors/nano-6.4:0 -debug -justify -magic -minimal ncurses nls spell split-usr -static unicode >app-eselect/eselect-fontconfig-20220403:0 >app-eselect/eselect-iptables-20220320:0 >app-eselect/eselect-lib-bin-symlink-0.1.1-r1:0 >app-eselect/eselect-pinentry-0.7.2:0 >app-misc/c_rehash-1.7-r1:0 >app-misc/ca-certificates-20211016.3.80:0 -cacert >app-misc/editor-wrapper-4-r1:0 >app-misc/mime-types-2.1.53:0 -nginx >app-misc/pax-utils-1.3.5:0 -caps man -python python_single_target_python3_10 -python_single_target_python3_11 -python_single_target_python3_8 -python_single_target_python3_9 seccomp -test >app-misc/tmux-3.3a:0 -debug -selinux -systemd -utempter -vim-syntax >app-portage/eix-0.36.4:0 -debug -doc nls -sqlite >app-portage/elt-patches-20211104:0 >app-portage/gemato-16.2:0 gpg -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test -tools >app-portage/gentoolkit-0.6.1-r3:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >app-portage/portage-utils-0.94.1:0 nls openmp qmanifest qtegrity -static >app-shells/bash-5.1_p16-r1:0 -afs -bashlogger -examples -mem-scramble net nls -plugins readline -verify-sig >app-shells/bash-completion-2.11:0 eselect -test >app-shells/gentoo-bashcomp-20190211-r1:0 >app-shells/push-3.4:0 >app-shells/quoter-4.2:0 >app-text/ansifilter-2.18:0 -qt5 >app-text/build-docbook-catalog-2.3-r1:0 >app-text/docbook-xml-dtd-4.5-r2:4.5 >app-text/docbook-xml-dtd-4.4-r3:4.4 >app-text/docbook-xml-dtd-4.2-r3:4.2 >app-text/docbook-xml-dtd-4.1.2-r7:4.1.2 >app-text/docbook-xsl-stylesheets-1.79.1-r3:0 -ruby >app-text/manpager-1:0 >app-text/sgml-common-0.6.3-r7:0 >app-text/xmlto-0.0.28-r8:0 -latex text >dev-db/sqlite-3.39.2:3 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -debug -doc -icu readline -secure-delete -static-libs -tcl -test -tools >dev-lang/perl-5.36.0:0/5.36 -berkdb -debug -doc -gdbm ithreads -minimal -quadmath >dev-lang/python-3.11.0_rc1:3.11 -bluetooth -build ensurepip -examples gdbm hardened -libedit -lto ncurses -pgo readline sqlite ssl -test -tk -verify-sig >dev-lang/python-3.10.6_p2:3.10 -bluetooth -build ensurepip -examples gdbm hardened -libedit -lto ncurses -pgo readline sqlite ssl -test -tk -verify-sig xml >dev-lang/python-3.9.13_p4:3.9 -bluetooth -build ensurepip -examples gdbm hardened -lto ncurses -pgo readline sqlite ssl -test -tk -verify-sig xml >dev-lang/python-3.8.13_p6:3.8 -bluetooth -build ensurepip -examples gdbm hardened -lto ncurses -pgo readline sqlite ssl -test -tk -verify-sig -wininst xml >dev-lang/python-exec-2.4.9:2 native-symlinks python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-lang/python-exec-conf-2.4.6:2 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 >dev-lang/tcl-8.6.12:0/8.6 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -debug threads >dev-libs/boehm-gc-8.0.6:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -cxx large -static-libs threads >dev-libs/elfutils-0.187:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 bzip2 -lzma nls -static-libs -test -threads utils -valgrind -verify-sig -zstd >dev-libs/expat-2.4.8:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -examples -static-libs unicode >dev-libs/glib-2.72.3:2 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -dbus -debug elf -fam -gtk-doc mime -selinux -static-libs -sysprof -systemtap -test -utils xattr >dev-libs/gmp-6.2.1-r2:0/10.4 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 asm cxx -doc -pic -static-libs >dev-libs/gobject-introspection-1.72.0:0 -doctool -gtk-doc python_single_target_python3_10 -python_single_target_python3_8 -python_single_target_python3_9 -test >dev-libs/gobject-introspection-common-1.72.0:0 >dev-libs/isl-0.24-r2:0/23 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -static-libs >dev-libs/jsoncpp-1.9.5:0/25 -doc -test >dev-libs/libassuan-2.5.5:0 >dev-libs/libatomic_ops-7.6.12:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 >dev-libs/libbsd-0.11.6:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -static-libs -verify-sig >dev-libs/libevent-2.1.12:0/2.1-7 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 clock-gettime -debug -malloc-replacement ssl -static-libs -test threads -verbose-debug >dev-libs/libffi-3.4.2-r2:0/8 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -debug -exec-static-trampoline -experimental-loong -pax-kernel -static-libs -test >dev-libs/libgcrypt-1.10.1-r1:0/20 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 asm -cpu_flags_arm_aes -cpu_flags_arm_neon -cpu_flags_arm_sha1 -cpu_flags_arm_sha2 -cpu_flags_ppc_altivec -cpu_flags_ppc_vsx2 -cpu_flags_ppc_vsx3 cpu_flags_x86_aes cpu_flags_x86_avx cpu_flags_x86_avx2 -cpu_flags_x86_padlock -cpu_flags_x86_sha cpu_flags_x86_sse4_1 -doc -static-libs -verify-sig >dev-libs/libgpg-error-1.45:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -common-lisp nls -static-libs -test >dev-libs/libksba-1.6.0:0 -static-libs >dev-libs/libltdl-2.4.7:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -static-libs >dev-libs/libpcre-8.45-r1:3 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 bzip2 cxx -jit -libedit pcre16 pcre32 readline split-usr -static-libs unicode zlib >dev-libs/libpcre2-10.40:0/3 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 bzip2 -jit -libedit pcre16 pcre32 readline split-usr -static-libs unicode -verify-sig zlib >dev-libs/libpipeline-1.5.6:0 -test >dev-libs/libtasn1-4.18.0:0/6 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -static-libs -test -valgrind >dev-libs/libunistring-1.0:0/2 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -doc -static-libs >dev-libs/libuv-1.44.2:0/1 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 >dev-libs/libxml2-2.10.0-r1:2 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -debug -examples ftp -icu -lzma python python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 readline -static-libs -test >dev-libs/libxslt-1.1.36:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 crypt -debug -examples -python python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -static-libs >dev-libs/lzo-2.10:2 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -examples split-usr -static-libs >dev-libs/mpc-1.2.1:0/3 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -static-libs >dev-libs/mpfr-4.1.0_p13-r1:0/6 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -static-libs >dev-libs/nettle-3.8.1:0/8-6 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 asm -cpu_flags_arm_aes -cpu_flags_arm_neon -cpu_flags_arm_sha1 -cpu_flags_arm_sha2 -cpu_flags_ppc_altivec cpu_flags_x86_aes cpu_flags_x86_pclmul -cpu_flags_x86_sha -doc gmp -static-libs -verify-sig >dev-libs/npth-1.6-r1:0 -test >dev-libs/openssl-1.1.1q:0/1.1 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 asm cpu_flags_x86_sse2 -rfc3779 -sctp -sslv3 -static-libs -test -tls-compression -tls-heartbeat -vanilla -verify-sig -verify-sig -weak-ssl-ciphers >dev-libs/popt-1.18:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 nls -static-libs >dev-perl/Devel-CheckLib-1.140.0:0 -test >dev-perl/Encode-Locale-1.50.0-r1:0 -test >dev-perl/File-BaseDir-0.90.0:0 -test >dev-perl/File-DesktopEntry-0.220.0-r1:0 -test >dev-perl/File-Listing-6.150.0:0 -test -test >dev-perl/File-MimeInfo-0.300.0:0 -test >dev-perl/HTML-Parser-3.760.0:0 -test >dev-perl/HTML-Tagset-3.200.0-r2:0 >dev-perl/HTTP-Cookies-6.100.0:0 -test >dev-perl/HTTP-Date-6.50.0:0 >dev-perl/HTTP-Message-6.330.0:0 -test -test >dev-perl/HTTP-Negotiate-6.10.0-r2:0 -test >dev-perl/IO-HTML-1.4.0:0 -test >dev-perl/IO-Socket-INET6-2.720.0-r2:0 -test >dev-perl/IO-Socket-SSL-2.74.0:0 -examples -idn -test >dev-perl/IPC-System-Simple-1.300.0:0 -test >dev-perl/libwww-perl-6.600.0-r1:0 ssl -test >dev-perl/Locale-gettext-1.70.0-r1:0 -test >dev-perl/LWP-MediaTypes-6.40.0:0 -test >dev-perl/LWP-Protocol-https-6.100.0:0 -test >dev-perl/Module-Build-0.423.100:0 -test >dev-perl/Mozilla-CA-20999999-r1:0 -test >dev-perl/Net-HTTP-6.210.0:0 -minimal -test >dev-perl/Net-SSLeay-1.920.0:0 -examples -examples -minimal -test >dev-perl/Socket6-0.290.0:0 -test >dev-perl/Sub-Name-0.260.0:0 -suggested -test >dev-perl/TimeDate-2.330.0-r1:0 -test >dev-perl/Try-Tiny-0.310.0:0 -minimal -test >dev-perl/URI-5.110.0:0 -test >dev-perl/WWW-RobotRules-6.20.0-r2:0 -test >dev-perl/XML-Parser-2.460.0-r2:0 >dev-python/appdirs-1.4.4-r2:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 >dev-python/attrs-22.1.0:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/certifi-3021.3.16-r2:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/charset_normalizer-2.1.1:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/ensurepip-pip-22.2.2:0 >dev-python/ensurepip-setuptools-65.1.0:0 >dev-python/ensurepip-wheels-100:0 >dev-python/flake8-5.0.4:0 -doc -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/flit_core-3.7.1:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/gpep517-9:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/idna-3.3-r1:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/importlib_metadata-4.12.0:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/importlib_resources-5.9.0:0 -python_targets_pypy3 python_targets_python3_8 -test >dev-python/iniconfig-1.1.1-r1:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/installer-0.5.1-r1:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/jaraco-context-4.1.2:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/jaraco-functools-3.5.1:0 -doc -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/jaraco-text-3.8.1:0 -doc -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/jinja-3.1.2:0 -doc -examples -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/markupsafe-2.1.1:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/mccabe-0.7.0:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/more-itertools-8.14.0:0 -doc -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/nspektr-0.4.0:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/ordered-set-4.1.0:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/packaging-21.3-r2:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/pluggy-1.0.0-r2:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/py-1.11.0-r1:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/pycodestyle-2.9.1:0 -doc -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 >dev-python/pyflakes-2.5.0:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/pyparsing-3.0.9:0 -examples -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/pypax-0.9.5-r1:0 -ptpax python_targets_python3_10 python_targets_python3_8 python_targets_python3_9 xtpax >dev-python/PySocks-1.7.1-r2:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 >dev-python/pytest-7.1.2:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/requests-2.28.1:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -socks5 -test >dev-python/setuptools-65.1.0:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/setuptools_scm-7.0.5:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/six-1.16.0-r1:0 -doc -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/tomli-2.0.1-r1:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/typing-extensions-4.3.0:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 >dev-python/urllib3-1.26.11:0 -brotli -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/wheel-0.37.1-r1:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/zipp-3.8.1:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-python/zope-interface-5.4.0-r2:0 -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-util/checkbashisms-2.22.2:0 >dev-util/cmake-3.24.1:0 -doc -emacs ncurses -qt5 -test -test -verify-sig >dev-util/desktop-file-utils-0.26-r2:0 -emacs >dev-util/glib-utils-2.72.3:0 python_single_target_python3_10 -python_single_target_python3_11 -python_single_target_python3_8 -python_single_target_python3_9 >dev-util/gperf-3.1:0 >dev-util/gtk-doc-am-1.33.2:0 >dev-util/intltool-0.51.0-r3:0 >dev-util/meson-0.63.1:0 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -test >dev-util/meson-format-array-0:0 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 >dev-util/ninja-1.11.0:0 -doc -emacs -test -vim-syntax >dev-util/pkgconf-1.8.0-r1:0/3 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -test >dev-util/re2c-2.2:0 -debug -test >dev-vcs/git-2.37.2:0 blksha1 -cgi curl -cvs -doc -gnome-keyring gpg -highlight iconv -mediawiki -mediawiki-experimental nls pcre -perforce -perl -ppcsha1 python_single_target_python3_10 -python_single_target_python3_8 -python_single_target_python3_9 safe-directory -selinux -subversion -test threads -tk webdav -xinetd >media-fonts/liberation-fonts-2.1.5:0 -X -X -fontforge >media-gfx/graphite2-1.3.14_p20210810-r1:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -perl -test >media-libs/fontconfig-2.14.0-r1:1.0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -doc -static-libs -test >media-libs/freetype-2.12.1:2 -X -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 adobe-cff -brotli bzip2 cleartype-hinting -debug -doc -fontforge harfbuzz -infinality png -static-libs -svg -utils >media-libs/harfbuzz-5.1.0:0/4.0.0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 cairo -debug -doc -experimental glib graphite -icu introspection -test truetype >media-libs/libpng-1.6.37-r2:0/16 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -apng -cpu_flags_arm_neon cpu_flags_x86_sse -static-libs >net-dns/libidn2-2.3.3:0/2 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -static-libs -verify-sig >net-firewall/iptables-1.8.8-r4:0/1.8.3 -conntrack -netlink -nftables -pcap split-usr -static-libs >net-libs/gnutls-3.7.7:0/30.30 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -brotli cxx -dane -doc -examples -guile idn nls openssl -pkcs11 seccomp -sslv2 -sslv3 -static-libs -test -test-full tls-heartbeat -tools -valgrind -verify-sig zlib -zstd >net-libs/libmnl-1.0.5:0/0.2.0 -examples -verify-sig >net-libs/nghttp2-1.48.0:0/1.14 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -cxx -debug -hpack-tools -jemalloc -static-libs -test threads -utils -xml >net-misc/curl-7.84.0:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -adns -alt-svc -brotli -curl_ssl_gnutls -curl_ssl_mbedtls -curl_ssl_nss curl_ssl_openssl ftp -gnutls -gopher -hsts http2 -idn imap ipv6 -kerberos -ldap -mbedtls -nghttp3 -nss openssl pop3 progress-meter -quiche -rtmp -samba smtp -ssh ssl -sslv3 -static-libs -telnet -test tftp -threads -verify-sig -zstd >net-misc/dhcpcd-9.4.1:0 -debug embedded ipv6 -privsep udev >net-misc/iputils-20211215:0 arping -caps -clockdiff -doc filecaps -idn nls -rarpd -rdisc -static -test -tracepath >net-misc/netifrc-0.7.3-r1:0 dhcp >net-misc/openssh-9.0_p1-r2:0 -X -X509 -abi_mips_n32 -audit -debug -hpn -kerberos -ldns -libedit -livecd pam pie -sctp -security-key -selinux ssl -static -test -verify-sig -xmss >net-misc/rsync-3.2.5-r1:0 acl -examples iconv -lz4 python_single_target_python3_10 -python_single_target_python3_8 -python_single_target_python3_9 ssl -stunnel -system-zlib -verify-sig xattr -xxhash -zstd >net-misc/wget-1.21.3-r1:0 -cookie-check -debug -gnutls -idn ipv6 -metalink nls -ntlm pcre ssl -static -test -uuid -verify-sig zlib >perl-core/Compress-Raw-Zlib-2.202.0:0 >perl-core/File-Temp-0.231.100:0 >sec-keys/openpgp-keys-gentoo-release-20220101:0 -test >sys-apps/acl-2.3.1-r1:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 nls split-usr -static-libs >sys-apps/attr-2.5.1-r2:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -debug nls split-usr -static-libs >sys-apps/baselayout-2.8-r2:0 -build split-usr >sys-apps/coreutils-9.1-r1:0 acl -caps -gmp -hostname -kill -multicall nls -selinux split-usr -static -test -vanilla -verify-sig xattr >sys-apps/dbus-1.14.0-r4:0 -X -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -debug -doc elogind -selinux -static-libs -systemd -test -test >sys-apps/debianutils-5.7:0 installkernel -static >sys-apps/diffutils-3.8:0 nls -static -verify-sig >sys-apps/elfix-0.9.5:0 -ptpax xtpax >sys-apps/file-5.42:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 bzip2 -lzma -python python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 -seccomp -static-libs -verify-sig zlib >sys-apps/findutils-4.9.0:0 nls -selinux -static -test -verify-sig >sys-apps/gawk-5.1.1-r2:0 -mpfr nls readline -verify-sig >sys-apps/gentoo-functions-0.17:0 >sys-apps/grep-3.7:0 nls pcre -static -verify-sig >sys-apps/groff-1.22.4:0 -X -examples -uchardet >sys-apps/help2man-1.49.2:0 nls >sys-apps/install-xattr-0.8:0 >sys-apps/iproute2-5.19.0-r2:0 -atm -berkdb -bpf -caps -elf iptables -libbsd -minimal -nfs -selinux split-usr >sys-apps/kbd-2.5.1:0 nls pam -test >sys-apps/kmod-30:0 -debug -doc lzma -pkcs7 -python python_targets_python3_10 python_targets_python3_8 python_targets_python3_9 -static-libs tools zlib zstd >sys-apps/less-590:0 pcre unicode >sys-apps/man-db-2.10.2-r1:0 manpager -nls seccomp -selinux -static-libs zlib >sys-apps/miscfiles-1.5-r4:0 -minimal >sys-apps/net-tools-2.10:0 arp hostname ipv6 -nis nls -plipconfig -selinux -slattach -static >sys-apps/openrc-0.45.2:0 -audit -bash -debug ncurses netifrc -newnet pam -selinux -sysv-utils unicode >sys-apps/portage-3.0.34:0 -apidoc -build -doc -gentoo-dev ipc native-extensions -python_targets_pypy3 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 rsync-verify -selinux -test xattr >sys-apps/sandbox-2.29:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 nnp >sys-apps/sed-4.8:0 acl nls -selinux -static -verify-sig >sys-apps/shadow-4.12.2:0/4 acl -audit -bcrypt -cracklib nls pam -selinux -skey split-usr -su -verify-sig xattr >sys-apps/systemd-utils-251.4:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 acl -boot kmod -selinux split-usr -sysusers -test tmpfiles udev >sys-apps/sysvinit-3.04:0 -ibm -nls -selinux -static -verify-sig >sys-apps/texinfo-6.8:0 nls standalone -static >sys-apps/util-linux-2.38.1:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -audit -build -caps cramfs -cryptsetup -fdformat hardlink -kill logger -magic ncurses nls pam -python python_targets_python3_10 python_targets_python3_8 python_targets_python3_9 readline -rtas -selinux -slang split-usr -static-libs su suid -systemd -test -tty-helpers -udev unicode -verify-sig >sys-apps/which-2.21:0 >sys-auth/elogind-246.10-r2:0 acl -audit cgroup-hybrid -debug -doc pam -policykit -selinux -test >sys-auth/pambase-20220214:0 -caps -debug elogind -gnome-keyring -homed -minimal -mktemp nullok -pam_krb5 -pam_ssh passwdqc -pwhistory -pwquality -securetty -selinux sha512 -systemd -yescrypt >sys-auth/passwdqc-2.0.2-r1:0 >sys-devel/autoconf-2.71-r1:2.71 -emacs >sys-devel/autoconf-archive-2022.02.11:0 >sys-devel/autoconf-wrapper-20220130:0 >sys-devel/automake-1.16.5:1.16 -test >sys-devel/automake-wrapper-11-r1:0 >sys-devel/binutils-2.38-r2:2.38 -cet -default-gold -doc -emacs gold -multitarget nls -pgo plugins -static-libs -test -vanilla >sys-devel/binutils-config-5.4.1:0 native-symlinks >sys-devel/bison-3.8.2:0 -examples nls -static -test -verify-sig >sys-devel/flex-2.6.4-r2:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 nls -static -test >sys-devel/gcc-12.2.0:12 -ada -cet -custom-cflags cxx -d -debug -doc -fixed-point -fortran -go graphite hardened -jit -libssp lto -multilib -nls nptl -objc -objc++ -objc-gc openmp -pch -pgo pie -sanitize ssp -systemtap -test -valgrind -vanilla -vtv -zstd >sys-devel/gcc-config-2.5-r1:0 cc-wrappers native-symlinks >sys-devel/gettext-0.21-r3:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 acl -cvs cxx -doc -emacs -git -java -java ncurses -nls openmp -static-libs -verify-sig >sys-devel/gnuconfig-20220508:0 >sys-devel/libtool-2.4.7:2 -vanilla >sys-devel/m4-1.4.19:0 -examples nls -verify-sig >sys-devel/make-4.3:0 -guile nls -static -verify-sig >sys-devel/patch-2.7.6-r4:0 -static -test -verify-sig xattr >sys-fs/e2fsprogs-1.46.5-r1:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -cron -fuse -lto -nls split-usr -static-libs -test threads tools >sys-fs/udev-init-scripts-35:0 >sys-kernel/installkernel-gentoo-5:0 -grub >sys-kernel/linux-headers-5.19:0 -headers-only >sys-libs/argp-standalone-1.5.0:0 -static-libs >sys-libs/binutils-libs-2.38-r2:0/2.38 -64-bit-bfd -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -cet -multitarget nls -static-libs >sys-libs/fts-standalone-1.2.7:0 -static-libs >sys-libs/gdbm-1.23:0/6 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 berkdb nls readline -static-libs -verify-sig >sys-libs/libcap-2.65:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 pam split-usr -static-libs -tools >sys-libs/libseccomp-2.5.4:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -experimental-loong -python python_targets_python3_10 python_targets_python3_8 python_targets_python3_9 -static-libs -test >sys-libs/musl-1.2.3:0 -headers-only -verify-sig >sys-libs/ncurses-6.3_p20220423:0/6 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -ada cxx -debug -doc -gpm -minimal -profile split-usr -static-libs -test tinfo -trace -verify-sig >sys-libs/obstack-standalone-1.2.3:0 -static-libs >sys-libs/pam-1.5.2-r1:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -audit -berkdb -debug -filecaps -nis -selinux >sys-libs/readline-8.1_p2:0/8 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 split-usr -static-libs unicode -utils -verify-sig >sys-libs/zlib-1.2.12-r3:0/1 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 minizip split-usr -static-libs -verify-sig >sys-process/procps-3.3.17-r1:0/8 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 elogind kill -modern-top ncurses nls -selinux split-usr -static-libs -systemd -test unicode >sys-process/psmisc-23.4-r1:0 -X ipv6 nls -selinux >virtual/acl-0-r2:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -static-libs >virtual/awk-1:0 >virtual/dev-manager-0-r2:0 >virtual/editor-0-r3:0 >virtual/libc-1-r1:0 >virtual/libcrypt-1-r1:0/1 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -static-libs >virtual/libelf-3-r1:0/1 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 >virtual/libiconv-0-r2:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 >virtual/libintl-0-r2:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 >virtual/libudev-232-r7:0/1 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -systemd >virtual/man-0-r4:0 >virtual/os-headers-0-r2:0 >virtual/package-manager-1:0 >virtual/pager-0-r1:0 >virtual/perl-Carp-1.520.0-r2:0 >virtual/perl-Compress-Raw-Bzip2-2.103.0-r2:0 >virtual/perl-Compress-Raw-Zlib-2.202.0:0 >virtual/perl-CPAN-2.330.0:0 >virtual/perl-CPAN-Meta-2.150.10-r6:0 >virtual/perl-CPAN-Meta-Requirements-2.140.0-r8:0 >virtual/perl-CPAN-Meta-YAML-0.18.0-r8:0 >virtual/perl-Data-Dumper-2.184.0:0 >virtual/perl-Digest-MD5-2.580.0-r1:0 >virtual/perl-Encode-3.170.0:0 >virtual/perl-Exporter-5.770.0:0 >virtual/perl-ExtUtils-CBuilder-0.280.236-r1:0 >virtual/perl-ExtUtils-Install-2.200.0-r1:0 >virtual/perl-ExtUtils-MakeMaker-7.640.0:0 >virtual/perl-ExtUtils-Manifest-1.730.0-r1:0 >virtual/perl-ExtUtils-ParseXS-3.450.0:0 >virtual/perl-File-Path-2.180.0-r1:0 >virtual/perl-File-Spec-3.840.0:0 >virtual/perl-File-Temp-0.231.100:0 >virtual/perl-Getopt-Long-2.520.0-r1:0 >virtual/perl-IO-1.500.0:0 >virtual/perl-IO-Compress-2.106.0:0 >virtual/perl-IO-Socket-IP-0.410.0-r1:0 >virtual/perl-JSON-PP-4.70.0:0 >virtual/perl-libnet-3.140.0:0 ssl >virtual/perl-MIME-Base64-3.160.0-r1:0 >virtual/perl-Module-Metadata-1.0.37-r2:0 >virtual/perl-parent-0.238.0-r2:0 >virtual/perl-Parse-CPAN-Meta-2.150.10-r6:0 >virtual/perl-Perl-OSType-1.10.0-r6:0 >virtual/perl-podlators-4.140.0-r3:0 >virtual/perl-Scalar-List-Utils-1.620.0:0 >virtual/perl-Test-Harness-3.440.0:0 >virtual/perl-Text-ParseWords-3.310.0:0 >virtual/perl-Time-Local-1.300.0-r1:0 >virtual/perl-version-0.992.900:0 >virtual/perl-XSLoader-0.310.0:0 >virtual/pkgconfig-2-r1:0 >virtual/service-manager-1:0 >virtual/ssh-0-r1:0 -minimal >virtual/tmpfiles-0-r3:0 >virtual/ttf-fonts-1-r1:0 >virtual/udev-217-r5:0 >virtual/w3m-1:0 >virtual/yacc-0:0 >www-client/pybugz-0.13-r2:0 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 >www-client/w3m-0.5.3_p20220429:0 -X -fbcon -gdk-pixbuf -gpm -imlib l10n_ja -lynxkeymap nls -nntp ssl unicode -xface >x11-apps/xprop-1.2.5:0 >x11-apps/xset-1.2.4-r1:0 >x11-base/xcb-proto-1.15.2:0 python_targets_python3_10 -python_targets_python3_11 python_targets_python3_8 python_targets_python3_9 >x11-base/xorg-proto-2022.2:0 -test >x11-libs/cairo-1.16.0-r5:0 -X -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -aqua -debug -gles2-only glib -opengl -static-libs svg -utils -valgrind >x11-libs/libICE-1.0.10-r1:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 ipv6 >x11-libs/libSM-1.2.3-r1:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -doc ipv6 uuid >x11-libs/libX11-1.8.1:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -doc -test >x11-libs/libXau-1.0.9-r1:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -doc >x11-libs/libxcb-1.15-r1:0/1.12 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -doc -doc -selinux -test xkb >x11-libs/libXdmcp-1.1.3-r1:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -doc >x11-libs/libXext-1.3.4:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -doc >x11-libs/libXmu-1.1.3:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -doc ipv6 >x11-libs/libXt-1.2.1:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -doc -test >x11-libs/pixman-0.40.0:0 -abi_mips_n32 -abi_mips_n64 -abi_mips_o32 -abi_s390_32 -abi_s390_64 -abi_x86_32 abi_x86_64 -abi_x86_x32 -cpu_flags_arm_iwmmxt -cpu_flags_arm_iwmmxt2 -cpu_flags_arm_neon -cpu_flags_ppc_altivec cpu_flags_x86_mmxext cpu_flags_x86_sse2 cpu_flags_x86_ssse3 -loongson2f -static-libs -test >x11-libs/xtrans-1.4.0:0 -doc >x11-misc/compose-tables-1.8.1:0 >x11-misc/shared-mime-info-2.2:0 -test >x11-misc/xdg-utils-1.1.3_p20210805:0 -dbus -doc -gnome > > >####################### ># build.log # >####################### >>>> Unpacking source... >>>> Unpacking pytest-flake8-1.1.1.tar.gz to /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work >>>> Source unpacked in /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work >>>> Preparing source in /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1 ... > * Build system packages: > * dev-python/gpep517 : 9 > * dev-python/installer : 0.5.1-r1 > * dev-python/setuptools : 65.1.0 > * dev-python/setuptools_scm : 7.0.5 > * dev-python/wheel : 0.37.1-r1 >>>> Source prepared. >>>> Configuring source in /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1 ... >>>> Source configured. >>>> Compiling source in /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1 ... > * python3_8: running distutils-r1_run_phase distutils-r1_python_compile > * Building the wheel for pytest-flake8-1.1.1 via setuptools.build_meta:__legacy__ >gpep517 build-wheel --backend setuptools.build_meta:__legacy__ --output-fd 3 --wheel-dir /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_8/wheel >2022-08-21 04:00:13,261 gpep517 INFO Building wheel via backend setuptools.build_meta:__legacy__ >running bdist_wheel >running build >running build_py >creating build >creating build/lib >copying pytest_flake8.py -> build/lib >warning: build_py: byte-compiling is disabled, skipping. > >installing to build/bdist.linux-x86_64/wheel >running install >running install_lib >creating build/bdist.linux-x86_64 >creating build/bdist.linux-x86_64/wheel >copying build/lib/pytest_flake8.py -> build/bdist.linux-x86_64/wheel >warning: install_lib: byte-compiling is disabled, skipping. > >running install_egg_info >running egg_info >writing pytest_flake8.egg-info/PKG-INFO >writing dependency_links to pytest_flake8.egg-info/dependency_links.txt >writing entry points to pytest_flake8.egg-info/entry_points.txt >writing requirements to pytest_flake8.egg-info/requires.txt >writing top-level names to pytest_flake8.egg-info/top_level.txt >2022-08-21 04:00:13,544 setuptools_scm.file_finder_git ERROR listing git files failed - pretending there aren't any >reading manifest file 'pytest_flake8.egg-info/SOURCES.txt' >reading manifest template 'MANIFEST.in' >warning: no directories found matching 'doc' >warning: no directories found matching 'test_flake8.py' >adding license file 'LICENSE' >writing manifest file 'pytest_flake8.egg-info/SOURCES.txt' >Copying pytest_flake8.egg-info to build/bdist.linux-x86_64/wheel/pytest_flake8-1.1.1-py3.8.egg-info >running install_scripts >adding license file "LICENSE" (matched pattern "LICEN[CS]E*") >creating build/bdist.linux-x86_64/wheel/pytest_flake8-1.1.1.dist-info/WHEEL >creating '/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_8/wheel/tmp02t_3xna/pytest_flake8-1.1.1-py2.py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it >adding 'pytest_flake8.py' >adding 'pytest_flake8-1.1.1.dist-info/LICENSE' >adding 'pytest_flake8-1.1.1.dist-info/METADATA' >adding 'pytest_flake8-1.1.1.dist-info/WHEEL' >adding 'pytest_flake8-1.1.1.dist-info/entry_points.txt' >adding 'pytest_flake8-1.1.1.dist-info/top_level.txt' >adding 'pytest_flake8-1.1.1.dist-info/RECORD' >removing build/bdist.linux-x86_64/wheel >2022-08-21 04:00:13,600 gpep517 INFO The backend produced /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_8/wheel/pytest_flake8-1.1.1-py2.py3-none-any.whl > * Installing pytest_flake8-1.1.1-py2.py3-none-any.whl to /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_8/install >gpep517 install-wheel --destdir=/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_8/install --interpreter=/usr/bin/python3.8 --prefix=/usr --optimize=all /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_8/wheel/pytest_flake8-1.1.1-py2.py3-none-any.whl >2022-08-21 04:00:14,036 gpep517 INFO Installing /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_8/wheel/pytest_flake8-1.1.1-py2.py3-none-any.whl into /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_8/install >2022-08-21 04:00:14,062 gpep517 INFO Installation complete > * python3_9: running distutils-r1_run_phase distutils-r1_python_compile > * Building the wheel for pytest-flake8-1.1.1 via setuptools.build_meta:__legacy__ >gpep517 build-wheel --backend setuptools.build_meta:__legacy__ --output-fd 3 --wheel-dir /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_9/wheel >2022-08-21 04:00:14,975 gpep517 INFO Building wheel via backend setuptools.build_meta:__legacy__ >running bdist_wheel >running build >running build_py >creating build >creating build/lib >copying pytest_flake8.py -> build/lib >warning: build_py: byte-compiling is disabled, skipping. > >installing to build/bdist.linux-x86_64/wheel >running install >running install_lib >creating build/bdist.linux-x86_64 >creating build/bdist.linux-x86_64/wheel >copying build/lib/pytest_flake8.py -> build/bdist.linux-x86_64/wheel >warning: install_lib: byte-compiling is disabled, skipping. > >running install_egg_info >running egg_info >writing pytest_flake8.egg-info/PKG-INFO >writing dependency_links to pytest_flake8.egg-info/dependency_links.txt >writing entry points to pytest_flake8.egg-info/entry_points.txt >writing requirements to pytest_flake8.egg-info/requires.txt >writing top-level names to pytest_flake8.egg-info/top_level.txt >2022-08-21 04:00:15,225 setuptools_scm.file_finder_git ERROR listing git files failed - pretending there aren't any >reading manifest file 'pytest_flake8.egg-info/SOURCES.txt' >reading manifest template 'MANIFEST.in' >warning: no directories found matching 'doc' >warning: no directories found matching 'test_flake8.py' >adding license file 'LICENSE' >writing manifest file 'pytest_flake8.egg-info/SOURCES.txt' >Copying pytest_flake8.egg-info to build/bdist.linux-x86_64/wheel/pytest_flake8-1.1.1-py3.9.egg-info >running install_scripts >adding license file "LICENSE" (matched pattern "LICEN[CS]E*") >creating build/bdist.linux-x86_64/wheel/pytest_flake8-1.1.1.dist-info/WHEEL >creating '/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_9/wheel/tmpmqf0b7_y/pytest_flake8-1.1.1-py2.py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it >adding 'pytest_flake8.py' >adding 'pytest_flake8-1.1.1.dist-info/LICENSE' >adding 'pytest_flake8-1.1.1.dist-info/METADATA' >adding 'pytest_flake8-1.1.1.dist-info/WHEEL' >adding 'pytest_flake8-1.1.1.dist-info/entry_points.txt' >adding 'pytest_flake8-1.1.1.dist-info/top_level.txt' >adding 'pytest_flake8-1.1.1.dist-info/RECORD' >removing build/bdist.linux-x86_64/wheel >2022-08-21 04:00:15,282 gpep517 INFO The backend produced /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_9/wheel/pytest_flake8-1.1.1-py2.py3-none-any.whl > * Installing pytest_flake8-1.1.1-py2.py3-none-any.whl to /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_9/install >gpep517 install-wheel --destdir=/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_9/install --interpreter=/usr/bin/python3.9 --prefix=/usr --optimize=all /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_9/wheel/pytest_flake8-1.1.1-py2.py3-none-any.whl >2022-08-21 04:00:15,680 gpep517 INFO Installing /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_9/wheel/pytest_flake8-1.1.1-py2.py3-none-any.whl into /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_9/install >2022-08-21 04:00:15,696 gpep517 INFO Installation complete > * python3_10: running distutils-r1_run_phase distutils-r1_python_compile > * Building the wheel for pytest-flake8-1.1.1 via setuptools.build_meta:__legacy__ >gpep517 build-wheel --backend setuptools.build_meta:__legacy__ --output-fd 3 --wheel-dir /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_10/wheel >2022-08-21 04:00:16,585 gpep517 INFO Building wheel via backend setuptools.build_meta:__legacy__ >running bdist_wheel >running build >running build_py >creating build >creating build/lib >copying pytest_flake8.py -> build/lib >warning: build_py: byte-compiling is disabled, skipping. > >installing to build/bdist.linux-x86_64/wheel >running install >running install_lib >creating build/bdist.linux-x86_64 >creating build/bdist.linux-x86_64/wheel >copying build/lib/pytest_flake8.py -> build/bdist.linux-x86_64/wheel >warning: install_lib: byte-compiling is disabled, skipping. > >running install_egg_info >running egg_info >writing pytest_flake8.egg-info/PKG-INFO >writing dependency_links to pytest_flake8.egg-info/dependency_links.txt >writing entry points to pytest_flake8.egg-info/entry_points.txt >writing requirements to pytest_flake8.egg-info/requires.txt >writing top-level names to pytest_flake8.egg-info/top_level.txt >2022-08-21 04:00:16,784 setuptools_scm.file_finder_git ERROR listing git files failed - pretending there aren't any >reading manifest file 'pytest_flake8.egg-info/SOURCES.txt' >reading manifest template 'MANIFEST.in' >warning: no directories found matching 'doc' >warning: no directories found matching 'test_flake8.py' >adding license file 'LICENSE' >writing manifest file 'pytest_flake8.egg-info/SOURCES.txt' >Copying pytest_flake8.egg-info to build/bdist.linux-x86_64/wheel/pytest_flake8-1.1.1-py3.10.egg-info >running install_scripts >adding license file "LICENSE" (matched pattern "LICEN[CS]E*") >creating build/bdist.linux-x86_64/wheel/pytest_flake8-1.1.1.dist-info/WHEEL >creating '/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_10/wheel/tmpooxm28bs/pytest_flake8-1.1.1-py2.py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it >adding 'pytest_flake8.py' >adding 'pytest_flake8-1.1.1.dist-info/LICENSE' >adding 'pytest_flake8-1.1.1.dist-info/METADATA' >adding 'pytest_flake8-1.1.1.dist-info/WHEEL' >adding 'pytest_flake8-1.1.1.dist-info/entry_points.txt' >adding 'pytest_flake8-1.1.1.dist-info/top_level.txt' >adding 'pytest_flake8-1.1.1.dist-info/RECORD' >removing build/bdist.linux-x86_64/wheel >2022-08-21 04:00:16,844 gpep517 INFO The backend produced /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_10/wheel/pytest_flake8-1.1.1-py2.py3-none-any.whl > * Installing pytest_flake8-1.1.1-py2.py3-none-any.whl to /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_10/install >gpep517 install-wheel --destdir=/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_10/install --interpreter=/usr/bin/python3.10 --prefix=/usr --optimize=all /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_10/wheel/pytest_flake8-1.1.1-py2.py3-none-any.whl >2022-08-21 04:00:17,401 gpep517 INFO Installing /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_10/wheel/pytest_flake8-1.1.1-py2.py3-none-any.whl into /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_10/install >2022-08-21 04:00:17,423 gpep517 INFO Installation complete >>>> Source compiled. >>>> Test phase: dev-python/pytest-flake8-1.1.1 > * python3_8: running distutils-r1_run_phase python_test >python3.8 -m pytest -vv -ra -l -Wdefault --color=no -o console_output_style=count -p no:cov -p no:flake8 -p no:flakes -p no:pylint -p no:markdown -p no:sugar -p flake8 >============================= test session starts ============================== >platform linux -- Python 3.8.13, pytest-7.1.2, pluggy-1.0.0 -- /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_8/install/usr/bin/python3.8 >cachedir: .pytest_cache >rootdir: /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1, configfile: tox.ini >plugins: flake8-1.1.1 >collecting ... collected 16 items > >pytest_flake8.py::flake-8::FLAKE8 FAILED [ 1/16] >setup.py::flake-8::FLAKE8 FAILED [ 2/16] >test_flake8.py::flake-8::FLAKE8 FAILED [ 3/16] >test_flake8.py::test_version PASSED [ 4/16] >test_flake8.py::TestIgnores::test_ignores PASSED [ 5/16] >test_flake8.py::TestIgnores::test_default_flake8_ignores FAILED [ 6/16] >test_flake8.py::TestIgnores::test_ignores_all FAILED [ 7/16] >test_flake8.py::TestIgnores::test_w293w292 FAILED [ 8/16] >test_flake8.py::TestIgnores::test_mtime_caching FAILED [ 9/16] >test_flake8.py::test_extensions PASSED [10/16] >test_flake8.py::test_ok_verbose FAILED [11/16] >test_flake8.py::test_keyword_match FAILED [12/16] >test_flake8.py::test_run_on_init_file FAILED [13/16] >test_flake8.py::test_unicode_error PASSED [14/16] >test_flake8.py::test_strict XFAIL (flake8 is not properly registered as a marker) [15/16] >test_flake8.py::test_junit_classname FAILED [16/16] > >=================================== FAILURES =================================== >_________________________________ FLAKE8-check _________________________________ > >cls = <class '_pytest.runner.CallInfo'> >func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe265001790> >when = 'call' >reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>) > > @classmethod > def from_call( > cls, > func: "Callable[[], TResult]", > when: "Literal['collect', 'setup', 'call', 'teardown']", > reraise: Optional[ > Union[Type[BaseException], Tuple[Type[BaseException], ...]] > ] = None, > ) -> "CallInfo[TResult]": > """Call func, wrapping the result in a CallInfo. > > :param func: > The function to call. Called without arguments. > :param when: > The phase in which the function is called. > :param reraise: > Exception or exceptions that shall propagate if raised by the > function, instead of being wrapped in the CallInfo. > """ > excinfo = None > start = timing.time() > precise_start = timing.perf_counter() > try: >> result: Optional[TResult] = func() > >cls = <class '_pytest.runner.CallInfo'> >duration = 0.001126683782786131 >excinfo = <ExceptionInfo AttributeError("module 'flake8.options.config' has no attribute 'ConfigFileFinder'") tblen=11> >func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe265001790> >precise_start = 1881828.086742347 >precise_stop = 1881828.087869031 >reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>) >result = None >start = 1661054419.1689618 >stop = 1661054419.17009 >when = 'call' > >/usr/lib/python3.8/site-packages/_pytest/runner.py:338: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ) > >ihook = <_HookCaller 'pytest_runtest_call'> >item = <Flake8Item flake-8> >kwds = {} > >/usr/lib/python3.8/site-packages/_pytest/runner.py:259: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_HookCaller 'pytest_runtest_call'>, args = () >kwargs = {'item': <Flake8Item flake-8>}, argname = 'item', firstresult = False > > def __call__(self, *args, **kwargs): > if args: > raise TypeError("hook calling supports only keyword arguments") > assert not self.is_historic() > > # This is written to avoid expensive operations when not needed. > if self.spec: > for argname in self.spec.argnames: > if argname not in kwargs: > notincall = tuple(set(self.spec.argnames) - kwargs.keys()) > warnings.warn( > "Argument(s) {} which are declared in the hookspec " > "can not be found in this hook call".format(notincall), > stacklevel=2, > ) > break > > firstresult = self.spec.opts.get("firstresult") > else: > firstresult = False > >> return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult) > >argname = 'item' >args = () >firstresult = False >kwargs = {'item': <Flake8Item flake-8>} >self = <_HookCaller 'pytest_runtest_call'> > >/usr/lib/python3.8/site-packages/pluggy/_hooks.py:265: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_pytest.config.PytestPluginManager object at 0x7fe266048be0> >hook_name = 'pytest_runtest_call' >methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _hookexec(self, hook_name, methods, kwargs, firstresult): > # called from all hookcaller instances. > # enable_tracing will set its own wrapping function at self._inner_hookexec >> return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > >firstresult = False >hook_name = 'pytest_runtest_call' >kwargs = {'item': <Flake8Item flake-8>} >methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner.py'>>, > <HookImpl plugin_name='skipping', plugin=<module '_pytest.skipping' from '/usr/lib/python3.8/site-packages/_pytest/skipping.py'>>, > <HookImpl plugin_name='capturemanager', plugin=<CaptureManager _method='fd' _global_capturing=<MultiCapture out=<FDCapture 1 oldfd=5 _state='suspended' tmpfile=<_io.TextIOWrapper name="<_io.FileIO name=6 mode='rb+' closefd=True>" mode='r+' encoding='utf-8'>> err=<FDCapture 2 oldfd=7 _state='suspended' tmpfile=<_io.TextIOWrapper name="<_io.FileIO name=8 mode='rb+' closefd=True>" mode='r+' encoding='utf-8'>> in_=<FDCapture 0 oldfd=3 _state='started' tmpfile=<_io.TextIOWrapper name='/dev/null' mode='r' encoding='UTF-8'>> _state='suspended' _in_suspended=False> _capture_fixture=None>>, > <HookImpl plugin_name='logging-plugin', plugin=<_pytest.logging.LoggingPlugin object at 0x7fe264f46a60>>, > <HookImpl plugin_name='unraisableexception', plugin=<module '_pytest.unraisableexception' from '/usr/lib/python3.8/site-packages/_pytest/unraisableexception.py'>>, > <HookImpl plugin_name='threadexception', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >self = <_pytest.config.PytestPluginManager object at 0x7fe266048be0> > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:80: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: > res = hook_impl.function(*args) > if res is not None: > results.append(res) > if firstresult: # halt further impl calls > break > except BaseException: > excinfo = sys.exc_info() > finally: > if firstresult: # first result hooks return a single value > outcome = _Result(results[0] if results else None, excinfo) > else: > outcome = _Result(results, excinfo) > > # run all wrapper post-yield blocks > for gen in reversed(teardowns): > try: > gen.send(outcome) > _raise_wrapfail(gen, "has second yield") > except StopIteration: > pass > >> return outcome.get_result() > >__tracebackhide__ = True >args = [<Flake8Item flake-8>] >caller_kwargs = {'item': <Flake8Item flake-8>} >excinfo = (<class 'AttributeError'>, > AttributeError("module 'flake8.options.config' has no attribute 'ConfigFileFinder'"), > <traceback object at 0x7fe265141880>) >firstresult = False >gen = <generator object pytest_runtest_call at 0x7fe264f3fcf0> >hook_impl = <HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner.py'>> >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner.py'>>, > <HookImpl plugin_name='skipping', plugin=<module '_pytest.skipping' from '/usr/lib/python3.8/site-packages/_pytest/skipping.py'>>, > <HookImpl plugin_name='capturemanager', plugin=<CaptureManager _method='fd' _global_capturing=<MultiCapture out=<FDCapture 1 oldfd=5 _state='suspended' tmpfile=<_io.TextIOWrapper name="<_io.FileIO name=6 mode='rb+' closefd=True>" mode='r+' encoding='utf-8'>> err=<FDCapture 2 oldfd=7 _state='suspended' tmpfile=<_io.TextIOWrapper name="<_io.FileIO name=8 mode='rb+' closefd=True>" mode='r+' encoding='utf-8'>> in_=<FDCapture 0 oldfd=3 _state='started' tmpfile=<_io.TextIOWrapper name='/dev/null' mode='r' encoding='UTF-8'>> _state='suspended' _in_suspended=False> _capture_fixture=None>>, > <HookImpl plugin_name='logging-plugin', plugin=<_pytest.logging.LoggingPlugin object at 0x7fe264f46a60>>, > <HookImpl plugin_name='unraisableexception', plugin=<module '_pytest.unraisableexception' from '/usr/lib/python3.8/site-packages/_pytest/unraisableexception.py'>>, > <HookImpl plugin_name='threadexception', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >hook_name = 'pytest_runtest_call' >outcome = <pluggy._result._Result object at 0x7fe264e66760> >results = [] >teardowns = [<generator object pytest_runtest_call at 0x7fe264f3fcf0>, > <generator object pytest_runtest_call at 0x7fe264f3fe40>, > <generator object LoggingPlugin.pytest_runtest_call at 0x7fe264f3fc10>, > <generator object CaptureManager.pytest_runtest_call at 0x7fe264f3feb0>, > <generator object pytest_runtest_call at 0x7fe264e4e040>] > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264e66760> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >__tracebackhide__ = True >ex = (<class 'AttributeError'>, > AttributeError("module 'flake8.options.config' has no attribute 'ConfigFileFinder'"), > <traceback object at 0x7fe265141880>) >self = <pluggy._result._Result object at 0x7fe264e66760> > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: >> res = hook_impl.function(*args) > >__tracebackhide__ = True >args = [<Flake8Item flake-8>] >caller_kwargs = {'item': <Flake8Item flake-8>} >excinfo = (<class 'AttributeError'>, > AttributeError("module 'flake8.options.config' has no attribute 'ConfigFileFinder'"), > <traceback object at 0x7fe265141880>) >firstresult = False >gen = <generator object pytest_runtest_call at 0x7fe264f3fcf0> >hook_impl = <HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner.py'>> >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner.py'>>, > <HookImpl plugin_name='skipping', plugin=<module '_pytest.skipping' from '/usr/lib/python3.8/site-packages/_pytest/skipping.py'>>, > <HookImpl plugin_name='capturemanager', plugin=<CaptureManager _method='fd' _global_capturing=<MultiCapture out=<FDCapture 1 oldfd=5 _state='suspended' tmpfile=<_io.TextIOWrapper name="<_io.FileIO name=6 mode='rb+' closefd=True>" mode='r+' encoding='utf-8'>> err=<FDCapture 2 oldfd=7 _state='suspended' tmpfile=<_io.TextIOWrapper name="<_io.FileIO name=8 mode='rb+' closefd=True>" mode='r+' encoding='utf-8'>> in_=<FDCapture 0 oldfd=3 _state='started' tmpfile=<_io.TextIOWrapper name='/dev/null' mode='r' encoding='UTF-8'>> _state='suspended' _in_suspended=False> _capture_fixture=None>>, > <HookImpl plugin_name='logging-plugin', plugin=<_pytest.logging.LoggingPlugin object at 0x7fe264f46a60>>, > <HookImpl plugin_name='unraisableexception', plugin=<module '_pytest.unraisableexception' from '/usr/lib/python3.8/site-packages/_pytest/unraisableexception.py'>>, > <HookImpl plugin_name='threadexception', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >hook_name = 'pytest_runtest_call' >outcome = <pluggy._result._Result object at 0x7fe264e66760> >results = [] >teardowns = [<generator object pytest_runtest_call at 0x7fe264f3fcf0>, > <generator object pytest_runtest_call at 0x7fe264f3fe40>, > <generator object LoggingPlugin.pytest_runtest_call at 0x7fe264f3fc10>, > <generator object CaptureManager.pytest_runtest_call at 0x7fe264f3feb0>, > <generator object pytest_runtest_call at 0x7fe264e4e040>] > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:39: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: > item.runtest() > except Exception as e: > # Store trace info to allow postmortem debugging > sys.last_type = type(e) > sys.last_value = e > assert e.__traceback__ is not None > # Skip *this* frame > sys.last_traceback = e.__traceback__.tb_next >> raise e > >item = <Flake8Item flake-8> > >/usr/lib/python3.8/site-packages/_pytest/runner.py:174: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: >> item.runtest() > >item = <Flake8Item flake-8> > >/usr/lib/python3.8/site-packages/_pytest/runner.py:166: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <Flake8Item flake-8> > > def runtest(self): > with BytesIO() as bo, TextIOWrapper(bo, encoding='utf-8') as to, \ > BytesIO() as be, TextIOWrapper(be, encoding='utf-8') as te, \ > redirect_stdout(to), redirect_stderr(te): >> found_errors = check_file( > self.fspath, > self.flake8ignore, > self.maxlength, > self.maxdoclength, > self.maxcomplexity, > self.showsource, > self.statistics > ) > >be = <_io.BytesIO object at 0x7fe264e5ea40> >bo = <_io.BytesIO object at 0x7fe264e5e9f0> >self = <Flake8Item flake-8> >te = <_io.TextIOWrapper encoding='utf-8'> >to = <_io.TextIOWrapper encoding='utf-8'> > >pytest_flake8.py:136: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1/pytest_flake8.py') >flake8ignore = [], maxlength = '', maxdoclenght = '', maxcomplexity = '' >showsource = [], statistics = [] > > def check_file(path, flake8ignore, maxlength, maxdoclenght, maxcomplexity, > showsource, statistics): > """Run flake8 over a single file, and return the number of failures.""" > args = [] > if maxlength: > args += ['--max-line-length', maxlength] > if maxdoclenght: > args += ['--max-doc-length', maxdoclenght] > if maxcomplexity: > args += ['--max-complexity', maxcomplexity] > if showsource: > args += ['--show-source'] > if statistics: > args += ['--statistics'] > app = application.Application() > prelim_opts, remaining_args = app.parse_preliminary_options(args) >> config_finder = config.ConfigFileFinder( > app.program, > prelim_opts.append_config, > config_file=prelim_opts.config, > ignore_config_files=prelim_opts.isolated, > ) >E AttributeError: module 'flake8.options.config' has no attribute 'ConfigFileFinder' > >app = <flake8.main.application.Application object at 0x7fe264e66340> >args = [] >flake8ignore = [] >maxcomplexity = '' >maxdoclenght = '' >maxlength = '' >path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1/pytest_flake8.py') >prelim_opts = Namespace(append_config=[], config=None, enable_extensions=None, isolated=False, output_file=None, require_plugins=None, verbose=0) >remaining_args = [] >showsource = [] >statistics = [] > >pytest_flake8.py:217: AttributeError >_________________________________ FLAKE8-check _________________________________ > >cls = <class '_pytest.runner.CallInfo'> >func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe264ebb9d0> >when = 'call' >reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>) > > @classmethod > def from_call( > cls, > func: "Callable[[], TResult]", > when: "Literal['collect', 'setup', 'call', 'teardown']", > reraise: Optional[ > Union[Type[BaseException], Tuple[Type[BaseException], ...]] > ] = None, > ) -> "CallInfo[TResult]": > """Call func, wrapping the result in a CallInfo. > > :param func: > The function to call. Called without arguments. > :param when: > The phase in which the function is called. > :param reraise: > Exception or exceptions that shall propagate if raised by the > function, instead of being wrapped in the CallInfo. > """ > excinfo = None > start = timing.time() > precise_start = timing.perf_counter() > try: >> result: Optional[TResult] = func() > >cls = <class '_pytest.runner.CallInfo'> >duration = 0.0009003172162920237 >excinfo = <ExceptionInfo AttributeError("module 'flake8.options.config' has no attribute 'ConfigFileFinder'") tblen=11> >func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe264ebb9d0> >precise_start = 1881828.192280118 >precise_stop = 1881828.193180435 >reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>) >result = None >start = 1661054419.2744997 >stop = 1661054419.275401 >when = 'call' > >/usr/lib/python3.8/site-packages/_pytest/runner.py:338: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ) > >ihook = <_HookCaller 'pytest_runtest_call'> >item = <Flake8Item flake-8> >kwds = {} > >/usr/lib/python3.8/site-packages/_pytest/runner.py:259: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_HookCaller 'pytest_runtest_call'>, args = () >kwargs = {'item': <Flake8Item flake-8>}, argname = 'item', firstresult = False > > def __call__(self, *args, **kwargs): > if args: > raise TypeError("hook calling supports only keyword arguments") > assert not self.is_historic() > > # This is written to avoid expensive operations when not needed. > if self.spec: > for argname in self.spec.argnames: > if argname not in kwargs: > notincall = tuple(set(self.spec.argnames) - kwargs.keys()) > warnings.warn( > "Argument(s) {} which are declared in the hookspec " > "can not be found in this hook call".format(notincall), > stacklevel=2, > ) > break > > firstresult = self.spec.opts.get("firstresult") > else: > firstresult = False > >> return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult) > >argname = 'item' >args = () >firstresult = False >kwargs = {'item': <Flake8Item flake-8>} >self = <_HookCaller 'pytest_runtest_call'> > >/usr/lib/python3.8/site-packages/pluggy/_hooks.py:265: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_pytest.config.PytestPluginManager object at 0x7fe266048be0> >hook_name = 'pytest_runtest_call' >methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _hookexec(self, hook_name, methods, kwargs, firstresult): > # called from all hookcaller instances. > # enable_tracing will set its own wrapping function at self._inner_hookexec >> return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > >firstresult = False >hook_name = 'pytest_runtest_call' >kwargs = {'item': <Flake8Item flake-8>} >methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner.py'>>, > <HookImpl plugin_name='skipping', plugin=<module '_pytest.skipping' from '/usr/lib/python3.8/site-packages/_pytest/skipping.py'>>, > <HookImpl plugin_name='capturemanager', plugin=<CaptureManager _method='fd' _global_capturing=<MultiCapture out=<FDCapture 1 oldfd=5 _state='suspended' tmpfile=<_io.TextIOWrapper name="<_io.FileIO name=6 mode='rb+' closefd=True>" mode='r+' encoding='utf-8'>> err=<FDCapture 2 oldfd=7 _state='suspended' tmpfile=<_io.TextIOWrapper name="<_io.FileIO name=8 mode='rb+' closefd=True>" mode='r+' encoding='utf-8'>> in_=<FDCapture 0 oldfd=3 _state='started' tmpfile=<_io.TextIOWrapper name='/dev/null' mode='r' encoding='UTF-8'>> _state='suspended' _in_suspended=False> _capture_fixture=None>>, > <HookImpl plugin_name='logging-plugin', plugin=<_pytest.logging.LoggingPlugin object at 0x7fe264f46a60>>, > <HookImpl plugin_name='unraisableexception', plugin=<module '_pytest.unraisableexception' from '/usr/lib/python3.8/site-packages/_pytest/unraisableexception.py'>>, > <HookImpl plugin_name='threadexception', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >self = <_pytest.config.PytestPluginManager object at 0x7fe266048be0> > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:80: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: > res = hook_impl.function(*args) > if res is not None: > results.append(res) > if firstresult: # halt further impl calls > break > except BaseException: > excinfo = sys.exc_info() > finally: > if firstresult: # first result hooks return a single value > outcome = _Result(results[0] if results else None, excinfo) > else: > outcome = _Result(results, excinfo) > > # run all wrapper post-yield blocks > for gen in reversed(teardowns): > try: > gen.send(outcome) > _raise_wrapfail(gen, "has second yield") > except StopIteration: > pass > >> return outcome.get_result() > >__tracebackhide__ = True >args = [<Flake8Item flake-8>] >caller_kwargs = {'item': <Flake8Item flake-8>} >excinfo = (<class 'AttributeError'>, > AttributeError("module 'flake8.options.config' has no attribute 'ConfigFileFinder'"), > <traceback object at 0x7fe264c6d500>) >firstresult = False >gen = <generator object pytest_runtest_call at 0x7fe264c67200> >hook_impl = <HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner.py'>> >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner.py'>>, > <HookImpl plugin_name='skipping', plugin=<module '_pytest.skipping' from '/usr/lib/python3.8/site-packages/_pytest/skipping.py'>>, > <HookImpl plugin_name='capturemanager', plugin=<CaptureManager _method='fd' _global_capturing=<MultiCapture out=<FDCapture 1 oldfd=5 _state='suspended' tmpfile=<_io.TextIOWrapper name="<_io.FileIO name=6 mode='rb+' closefd=True>" mode='r+' encoding='utf-8'>> err=<FDCapture 2 oldfd=7 _state='suspended' tmpfile=<_io.TextIOWrapper name="<_io.FileIO name=8 mode='rb+' closefd=True>" mode='r+' encoding='utf-8'>> in_=<FDCapture 0 oldfd=3 _state='started' tmpfile=<_io.TextIOWrapper name='/dev/null' mode='r' encoding='UTF-8'>> _state='suspended' _in_suspended=False> _capture_fixture=None>>, > <HookImpl plugin_name='logging-plugin', plugin=<_pytest.logging.LoggingPlugin object at 0x7fe264f46a60>>, > <HookImpl plugin_name='unraisableexception', plugin=<module '_pytest.unraisableexception' from '/usr/lib/python3.8/site-packages/_pytest/unraisableexception.py'>>, > <HookImpl plugin_name='threadexception', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >hook_name = 'pytest_runtest_call' >outcome = <pluggy._result._Result object at 0x7fe264c74e80> >results = [] >teardowns = [<generator object pytest_runtest_call at 0x7fe264c67200>, > <generator object pytest_runtest_call at 0x7fe264ccdf20>, > <generator object LoggingPlugin.pytest_runtest_call at 0x7fe264ccd430>, > <generator object CaptureManager.pytest_runtest_call at 0x7fe264ccdeb0>, > <generator object pytest_runtest_call at 0x7fe264e6ae40>] > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264c74e80> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >__tracebackhide__ = True >ex = (<class 'AttributeError'>, > AttributeError("module 'flake8.options.config' has no attribute 'ConfigFileFinder'"), > <traceback object at 0x7fe264c6d500>) >self = <pluggy._result._Result object at 0x7fe264c74e80> > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: >> res = hook_impl.function(*args) > >__tracebackhide__ = True >args = [<Flake8Item flake-8>] >caller_kwargs = {'item': <Flake8Item flake-8>} >excinfo = (<class 'AttributeError'>, > AttributeError("module 'flake8.options.config' has no attribute 'ConfigFileFinder'"), > <traceback object at 0x7fe264c6d500>) >firstresult = False >gen = <generator object pytest_runtest_call at 0x7fe264c67200> >hook_impl = <HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner.py'>> >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner.py'>>, > <HookImpl plugin_name='skipping', plugin=<module '_pytest.skipping' from '/usr/lib/python3.8/site-packages/_pytest/skipping.py'>>, > <HookImpl plugin_name='capturemanager', plugin=<CaptureManager _method='fd' _global_capturing=<MultiCapture out=<FDCapture 1 oldfd=5 _state='suspended' tmpfile=<_io.TextIOWrapper name="<_io.FileIO name=6 mode='rb+' closefd=True>" mode='r+' encoding='utf-8'>> err=<FDCapture 2 oldfd=7 _state='suspended' tmpfile=<_io.TextIOWrapper name="<_io.FileIO name=8 mode='rb+' closefd=True>" mode='r+' encoding='utf-8'>> in_=<FDCapture 0 oldfd=3 _state='started' tmpfile=<_io.TextIOWrapper name='/dev/null' mode='r' encoding='UTF-8'>> _state='suspended' _in_suspended=False> _capture_fixture=None>>, > <HookImpl plugin_name='logging-plugin', plugin=<_pytest.logging.LoggingPlugin object at 0x7fe264f46a60>>, > <HookImpl plugin_name='unraisableexception', plugin=<module '_pytest.unraisableexception' from '/usr/lib/python3.8/site-packages/_pytest/unraisableexception.py'>>, > <HookImpl plugin_name='threadexception', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >hook_name = 'pytest_runtest_call' >outcome = <pluggy._result._Result object at 0x7fe264c74e80> >results = [] >teardowns = [<generator object pytest_runtest_call at 0x7fe264c67200>, > <generator object pytest_runtest_call at 0x7fe264ccdf20>, > <generator object LoggingPlugin.pytest_runtest_call at 0x7fe264ccd430>, > <generator object CaptureManager.pytest_runtest_call at 0x7fe264ccdeb0>, > <generator object pytest_runtest_call at 0x7fe264e6ae40>] > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:39: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: > item.runtest() > except Exception as e: > # Store trace info to allow postmortem debugging > sys.last_type = type(e) > sys.last_value = e > assert e.__traceback__ is not None > # Skip *this* frame > sys.last_traceback = e.__traceback__.tb_next >> raise e > >item = <Flake8Item flake-8> > >/usr/lib/python3.8/site-packages/_pytest/runner.py:174: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: >> item.runtest() > >item = <Flake8Item flake-8> > >/usr/lib/python3.8/site-packages/_pytest/runner.py:166: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <Flake8Item flake-8> > > def runtest(self): > with BytesIO() as bo, TextIOWrapper(bo, encoding='utf-8') as to, \ > BytesIO() as be, TextIOWrapper(be, encoding='utf-8') as te, \ > redirect_stdout(to), redirect_stderr(te): >> found_errors = check_file( > self.fspath, > self.flake8ignore, > self.maxlength, > self.maxdoclength, > self.maxcomplexity, > self.showsource, > self.statistics > ) > >be = <_io.BytesIO object at 0x7fe264e5e310> >bo = <_io.BytesIO object at 0x7fe264e5e270> >self = <Flake8Item flake-8> >te = <_io.TextIOWrapper encoding='utf-8'> >to = <_io.TextIOWrapper encoding='utf-8'> > >pytest_flake8.py:136: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1/setup.py') >flake8ignore = [], maxlength = '', maxdoclenght = '', maxcomplexity = '' >showsource = [], statistics = [] > > def check_file(path, flake8ignore, maxlength, maxdoclenght, maxcomplexity, > showsource, statistics): > """Run flake8 over a single file, and return the number of failures.""" > args = [] > if maxlength: > args += ['--max-line-length', maxlength] > if maxdoclenght: > args += ['--max-doc-length', maxdoclenght] > if maxcomplexity: > args += ['--max-complexity', maxcomplexity] > if showsource: > args += ['--show-source'] > if statistics: > args += ['--statistics'] > app = application.Application() > prelim_opts, remaining_args = app.parse_preliminary_options(args) >> config_finder = config.ConfigFileFinder( > app.program, > prelim_opts.append_config, > config_file=prelim_opts.config, > ignore_config_files=prelim_opts.isolated, > ) >E AttributeError: module 'flake8.options.config' has no attribute 'ConfigFileFinder' > >app = <flake8.main.application.Application object at 0x7fe264c74520> >args = [] >flake8ignore = [] >maxcomplexity = '' >maxdoclenght = '' >maxlength = '' >path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1/setup.py') >prelim_opts = Namespace(append_config=[], config=None, enable_extensions=None, isolated=False, output_file=None, require_plugins=None, verbose=0) >remaining_args = [] >showsource = [] >statistics = [] > >pytest_flake8.py:217: AttributeError >_________________________________ FLAKE8-check _________________________________ > >cls = <class '_pytest.runner.CallInfo'> >func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe264e32e50> >when = 'call' >reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>) > > @classmethod > def from_call( > cls, > func: "Callable[[], TResult]", > when: "Literal['collect', 'setup', 'call', 'teardown']", > reraise: Optional[ > Union[Type[BaseException], Tuple[Type[BaseException], ...]] > ] = None, > ) -> "CallInfo[TResult]": > """Call func, wrapping the result in a CallInfo. > > :param func: > The function to call. Called without arguments. > :param when: > The phase in which the function is called. > :param reraise: > Exception or exceptions that shall propagate if raised by the > function, instead of being wrapped in the CallInfo. > """ > excinfo = None > start = timing.time() > precise_start = timing.perf_counter() > try: >> result: Optional[TResult] = func() > >cls = <class '_pytest.runner.CallInfo'> >duration = 0.0009265090338885784 >excinfo = <ExceptionInfo AttributeError("module 'flake8.options.config' has no attribute 'ConfigFileFinder'") tblen=11> >func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe264e32e50> >precise_start = 1881828.267296195 >precise_stop = 1881828.268222704 >reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>) >result = None >start = 1661054419.3495157 >stop = 1661054419.3504436 >when = 'call' > >/usr/lib/python3.8/site-packages/_pytest/runner.py:338: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ) > >ihook = <_HookCaller 'pytest_runtest_call'> >item = <Flake8Item flake-8> >kwds = {} > >/usr/lib/python3.8/site-packages/_pytest/runner.py:259: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_HookCaller 'pytest_runtest_call'>, args = () >kwargs = {'item': <Flake8Item flake-8>}, argname = 'item', firstresult = False > > def __call__(self, *args, **kwargs): > if args: > raise TypeError("hook calling supports only keyword arguments") > assert not self.is_historic() > > # This is written to avoid expensive operations when not needed. > if self.spec: > for argname in self.spec.argnames: > if argname not in kwargs: > notincall = tuple(set(self.spec.argnames) - kwargs.keys()) > warnings.warn( > "Argument(s) {} which are declared in the hookspec " > "can not be found in this hook call".format(notincall), > stacklevel=2, > ) > break > > firstresult = self.spec.opts.get("firstresult") > else: > firstresult = False > >> return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult) > >argname = 'item' >args = () >firstresult = False >kwargs = {'item': <Flake8Item flake-8>} >self = <_HookCaller 'pytest_runtest_call'> > >/usr/lib/python3.8/site-packages/pluggy/_hooks.py:265: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_pytest.config.PytestPluginManager object at 0x7fe266048be0> >hook_name = 'pytest_runtest_call' >methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _hookexec(self, hook_name, methods, kwargs, firstresult): > # called from all hookcaller instances. > # enable_tracing will set its own wrapping function at self._inner_hookexec >> return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > >firstresult = False >hook_name = 'pytest_runtest_call' >kwargs = {'item': <Flake8Item flake-8>} >methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner.py'>>, > <HookImpl plugin_name='skipping', plugin=<module '_pytest.skipping' from '/usr/lib/python3.8/site-packages/_pytest/skipping.py'>>, > <HookImpl plugin_name='capturemanager', plugin=<CaptureManager _method='fd' _global_capturing=<MultiCapture out=<FDCapture 1 oldfd=5 _state='suspended' tmpfile=<_io.TextIOWrapper name="<_io.FileIO name=6 mode='rb+' closefd=True>" mode='r+' encoding='utf-8'>> err=<FDCapture 2 oldfd=7 _state='suspended' tmpfile=<_io.TextIOWrapper name="<_io.FileIO name=8 mode='rb+' closefd=True>" mode='r+' encoding='utf-8'>> in_=<FDCapture 0 oldfd=3 _state='started' tmpfile=<_io.TextIOWrapper name='/dev/null' mode='r' encoding='UTF-8'>> _state='suspended' _in_suspended=False> _capture_fixture=None>>, > <HookImpl plugin_name='logging-plugin', plugin=<_pytest.logging.LoggingPlugin object at 0x7fe264f46a60>>, > <HookImpl plugin_name='unraisableexception', plugin=<module '_pytest.unraisableexception' from '/usr/lib/python3.8/site-packages/_pytest/unraisableexception.py'>>, > <HookImpl plugin_name='threadexception', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >self = <_pytest.config.PytestPluginManager object at 0x7fe266048be0> > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:80: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: > res = hook_impl.function(*args) > if res is not None: > results.append(res) > if firstresult: # halt further impl calls > break > except BaseException: > excinfo = sys.exc_info() > finally: > if firstresult: # first result hooks return a single value > outcome = _Result(results[0] if results else None, excinfo) > else: > outcome = _Result(results, excinfo) > > # run all wrapper post-yield blocks > for gen in reversed(teardowns): > try: > gen.send(outcome) > _raise_wrapfail(gen, "has second yield") > except StopIteration: > pass > >> return outcome.get_result() > >__tracebackhide__ = True >args = [<Flake8Item flake-8>] >caller_kwargs = {'item': <Flake8Item flake-8>} >excinfo = (<class 'AttributeError'>, > AttributeError("module 'flake8.options.config' has no attribute 'ConfigFileFinder'"), > <traceback object at 0x7fe264d4aac0>) >firstresult = False >gen = <generator object pytest_runtest_call at 0x7fe264dd93c0> >hook_impl = <HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner.py'>> >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner.py'>>, > <HookImpl plugin_name='skipping', plugin=<module '_pytest.skipping' from '/usr/lib/python3.8/site-packages/_pytest/skipping.py'>>, > <HookImpl plugin_name='capturemanager', plugin=<CaptureManager _method='fd' _global_capturing=<MultiCapture out=<FDCapture 1 oldfd=5 _state='suspended' tmpfile=<_io.TextIOWrapper name="<_io.FileIO name=6 mode='rb+' closefd=True>" mode='r+' encoding='utf-8'>> err=<FDCapture 2 oldfd=7 _state='suspended' tmpfile=<_io.TextIOWrapper name="<_io.FileIO name=8 mode='rb+' closefd=True>" mode='r+' encoding='utf-8'>> in_=<FDCapture 0 oldfd=3 _state='started' tmpfile=<_io.TextIOWrapper name='/dev/null' mode='r' encoding='UTF-8'>> _state='suspended' _in_suspended=False> _capture_fixture=None>>, > <HookImpl plugin_name='logging-plugin', plugin=<_pytest.logging.LoggingPlugin object at 0x7fe264f46a60>>, > <HookImpl plugin_name='unraisableexception', plugin=<module '_pytest.unraisableexception' from '/usr/lib/python3.8/site-packages/_pytest/unraisableexception.py'>>, > <HookImpl plugin_name='threadexception', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >hook_name = 'pytest_runtest_call' >outcome = <pluggy._result._Result object at 0x7fe264c11430> >results = [] >teardowns = [<generator object pytest_runtest_call at 0x7fe264dd93c0>, > <generator object pytest_runtest_call at 0x7fe264dd9660>, > <generator object LoggingPlugin.pytest_runtest_call at 0x7fe264dd9350>, > <generator object CaptureManager.pytest_runtest_call at 0x7fe264dd96d0>, > <generator object pytest_runtest_call at 0x7fe264dd9e40>] > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264c11430> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >__tracebackhide__ = True >ex = (<class 'AttributeError'>, > AttributeError("module 'flake8.options.config' has no attribute 'ConfigFileFinder'"), > <traceback object at 0x7fe264d4aac0>) >self = <pluggy._result._Result object at 0x7fe264c11430> > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: >> res = hook_impl.function(*args) > >__tracebackhide__ = True >args = [<Flake8Item flake-8>] >caller_kwargs = {'item': <Flake8Item flake-8>} >excinfo = (<class 'AttributeError'>, > AttributeError("module 'flake8.options.config' has no attribute 'ConfigFileFinder'"), > <traceback object at 0x7fe264d4aac0>) >firstresult = False >gen = <generator object pytest_runtest_call at 0x7fe264dd93c0> >hook_impl = <HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner.py'>> >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner.py'>>, > <HookImpl plugin_name='skipping', plugin=<module '_pytest.skipping' from '/usr/lib/python3.8/site-packages/_pytest/skipping.py'>>, > <HookImpl plugin_name='capturemanager', plugin=<CaptureManager _method='fd' _global_capturing=<MultiCapture out=<FDCapture 1 oldfd=5 _state='suspended' tmpfile=<_io.TextIOWrapper name="<_io.FileIO name=6 mode='rb+' closefd=True>" mode='r+' encoding='utf-8'>> err=<FDCapture 2 oldfd=7 _state='suspended' tmpfile=<_io.TextIOWrapper name="<_io.FileIO name=8 mode='rb+' closefd=True>" mode='r+' encoding='utf-8'>> in_=<FDCapture 0 oldfd=3 _state='started' tmpfile=<_io.TextIOWrapper name='/dev/null' mode='r' encoding='UTF-8'>> _state='suspended' _in_suspended=False> _capture_fixture=None>>, > <HookImpl plugin_name='logging-plugin', plugin=<_pytest.logging.LoggingPlugin object at 0x7fe264f46a60>>, > <HookImpl plugin_name='unraisableexception', plugin=<module '_pytest.unraisableexception' from '/usr/lib/python3.8/site-packages/_pytest/unraisableexception.py'>>, > <HookImpl plugin_name='threadexception', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >hook_name = 'pytest_runtest_call' >outcome = <pluggy._result._Result object at 0x7fe264c11430> >results = [] >teardowns = [<generator object pytest_runtest_call at 0x7fe264dd93c0>, > <generator object pytest_runtest_call at 0x7fe264dd9660>, > <generator object LoggingPlugin.pytest_runtest_call at 0x7fe264dd9350>, > <generator object CaptureManager.pytest_runtest_call at 0x7fe264dd96d0>, > <generator object pytest_runtest_call at 0x7fe264dd9e40>] > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:39: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: > item.runtest() > except Exception as e: > # Store trace info to allow postmortem debugging > sys.last_type = type(e) > sys.last_value = e > assert e.__traceback__ is not None > # Skip *this* frame > sys.last_traceback = e.__traceback__.tb_next >> raise e > >item = <Flake8Item flake-8> > >/usr/lib/python3.8/site-packages/_pytest/runner.py:174: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: >> item.runtest() > >item = <Flake8Item flake-8> > >/usr/lib/python3.8/site-packages/_pytest/runner.py:166: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <Flake8Item flake-8> > > def runtest(self): > with BytesIO() as bo, TextIOWrapper(bo, encoding='utf-8') as to, \ > BytesIO() as be, TextIOWrapper(be, encoding='utf-8') as te, \ > redirect_stdout(to), redirect_stderr(te): >> found_errors = check_file( > self.fspath, > self.flake8ignore, > self.maxlength, > self.maxdoclength, > self.maxcomplexity, > self.showsource, > self.statistics > ) > >be = <_io.BytesIO object at 0x7fe264e37130> >bo = <_io.BytesIO object at 0x7fe264e5eae0> >self = <Flake8Item flake-8> >te = <_io.TextIOWrapper encoding='utf-8'> >to = <_io.TextIOWrapper encoding='utf-8'> > >pytest_flake8.py:136: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1/test_flake8.py') >flake8ignore = [], maxlength = '', maxdoclenght = '', maxcomplexity = '' >showsource = [], statistics = [] > > def check_file(path, flake8ignore, maxlength, maxdoclenght, maxcomplexity, > showsource, statistics): > """Run flake8 over a single file, and return the number of failures.""" > args = [] > if maxlength: > args += ['--max-line-length', maxlength] > if maxdoclenght: > args += ['--max-doc-length', maxdoclenght] > if maxcomplexity: > args += ['--max-complexity', maxcomplexity] > if showsource: > args += ['--show-source'] > if statistics: > args += ['--statistics'] > app = application.Application() > prelim_opts, remaining_args = app.parse_preliminary_options(args) >> config_finder = config.ConfigFileFinder( > app.program, > prelim_opts.append_config, > config_file=prelim_opts.config, > ignore_config_files=prelim_opts.isolated, > ) >E AttributeError: module 'flake8.options.config' has no attribute 'ConfigFileFinder' > >app = <flake8.main.application.Application object at 0x7fe264c11760> >args = [] >flake8ignore = [] >maxcomplexity = '' >maxdoclenght = '' >maxlength = '' >path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1/test_flake8.py') >prelim_opts = Namespace(append_config=[], config=None, enable_extensions=None, isolated=False, output_file=None, require_plugins=None, verbose=0) >remaining_args = [] >showsource = [] >statistics = [] > >pytest_flake8.py:217: AttributeError >___________________ TestIgnores.test_default_flake8_ignores ____________________ > >self = <test_flake8.TestIgnores object at 0x7fe264e66dc0> >testdir = <Testdir local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_default_flake8_ignores0')> > > def test_default_flake8_ignores(self, testdir): > testdir.makeini(""" > [pytest] > markers = flake8 > > [flake8] > ignore = E203 > *.py E300 > tests/*.py ALL E203 # something > """) > testdir.tmpdir.ensure("xy.py") > testdir.tmpdir.ensure("tests/hello.py") > result = testdir.runpytest("--flake8", "-s") >> result.assert_outcomes(passed=2) >E AssertionError: assert {'errors': 0,\n 'failed': 2,\n 'passed': 0,\n 'skipped': 0,\n 'xfailed': 0,\n 'xpassed': 0} == {'errors': 0,\n 'failed': 0,\n 'passed': 2,\n 'skipped': 0,\n 'xfailed': 0,\n 'xpassed': 0} >E Common items: >E {'errors': 0, 'skipped': 0, 'xfailed': 0, 'xpassed': 0} >E Differing items: >E {'passed': 0} != {'passed': 2} >E {'failed': 2} != {'failed': 0} >E Full diff: >E { >E 'errors': 0, >E - 'failed': 0, >E ? ^ >E + 'failed': 2, >E ? ^ >E - 'passed': 2, >E ? ^ >E + 'passed': 0, >E ? ^ >E 'skipped': 0, >E 'xfailed': 0, >E 'xpassed': 0, >E } > >result = <RunResult ret=ExitCode.TESTS_FAILED len(stdout.lines)=694 len(stderr.lines)=0 duration=0.25s> >self = <test_flake8.TestIgnores object at 0x7fe264e66dc0> >testdir = <Testdir local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_default_flake8_ignores0')> > >/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1/test_flake8.py:53: AssertionError >----------------------------- Captured stdout call ----------------------------- >============================= test session starts ============================== >platform linux -- Python 3.8.13, pytest-7.1.2, pluggy-1.0.0 >rootdir: /var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_default_flake8_ignores0, configfile: tox.ini >plugins: flake8-1.1.1 >collected 2 items > >xy.py F >tests/hello.py F > >=================================== FAILURES =================================== >_________________________________ FLAKE8-check _________________________________ > >cls = <class '_pytest.runner.CallInfo'> >func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe264deea60> >when = 'call' >reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>) > > @classmethod > def from_call( > cls, > func: "Callable[[], TResult]", > when: "Literal['collect', 'setup', 'call', 'teardown']", > reraise: Optional[ > Union[Type[BaseException], Tuple[Type[BaseException], ...]] > ] = None, > ) -> "CallInfo[TResult]": > """Call func, wrapping the result in a CallInfo. > > :param func: > The function to call. Called without arguments. > :param when: > The phase in which the function is called. > :param reraise: > Exception or exceptions that shall propagate if raised by the > function, instead of being wrapped in the CallInfo. > """ > excinfo = None > start = timing.time() > precise_start = timing.perf_counter() > try: >> result: Optional[TResult] = func() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:338: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ) > >/usr/lib/python3.8/site-packages/_pytest/runner.py:259: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_HookCaller 'pytest_runtest_call'>, args = () >kwargs = {'item': <Flake8Item flake-8>}, argname = 'item', firstresult = False > > def __call__(self, *args, **kwargs): > if args: > raise TypeError("hook calling supports only keyword arguments") > assert not self.is_historic() > > # This is written to avoid expensive operations when not needed. > if self.spec: > for argname in self.spec.argnames: > if argname not in kwargs: > notincall = tuple(set(self.spec.argnames) - kwargs.keys()) > warnings.warn( > "Argument(s) {} which are declared in the hookspec " > "can not be found in this hook call".format(notincall), > stacklevel=2, > ) > break > > firstresult = self.spec.opts.get("firstresult") > else: > firstresult = False > >> return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_hooks.py:265: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_pytest.config.PytestPluginManager object at 0x7fe264cf36d0> >hook_name = 'pytest_runtest_call' >methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _hookexec(self, hook_name, methods, kwargs, firstresult): > # called from all hookcaller instances. > # enable_tracing will set its own wrapping function at self._inner_hookexec >> return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:80: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def traced_hookexec(hook_name, hook_impls, kwargs, firstresult): > before(hook_name, hook_impls, kwargs) > outcome = _Result.from_call( > lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > after(outcome, hook_name, hook_impls, kwargs) >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:327: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264ec3880> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >cls = <class 'pluggy._result._Result'> >func = <function PluginManager.add_hookcall_monitoring.<locals>.traced_hookexec.<locals>.<lambda> at 0x7fe264deeaf0> > > @classmethod > def from_call(cls, func): > __tracebackhide__ = True > result = excinfo = None > try: >> result = func() > >/usr/lib/python3.8/site-packages/pluggy/_result.py:33: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:324: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: > res = hook_impl.function(*args) > if res is not None: > results.append(res) > if firstresult: # halt further impl calls > break > except BaseException: > excinfo = sys.exc_info() > finally: > if firstresult: # first result hooks return a single value > outcome = _Result(results[0] if results else None, excinfo) > else: > outcome = _Result(results, excinfo) > > # run all wrapper post-yield blocks > for gen in reversed(teardowns): > try: > gen.send(outcome) > _raise_wrapfail(gen, "has second yield") > except StopIteration: > pass > >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264ec38e0> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: >> res = hook_impl.function(*args) > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:39: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: > item.runtest() > except Exception as e: > # Store trace info to allow postmortem debugging > sys.last_type = type(e) > sys.last_value = e > assert e.__traceback__ is not None > # Skip *this* frame > sys.last_traceback = e.__traceback__.tb_next >> raise e > >/usr/lib/python3.8/site-packages/_pytest/runner.py:174: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: >> item.runtest() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:166: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <Flake8Item flake-8> > > def runtest(self): > with BytesIO() as bo, TextIOWrapper(bo, encoding='utf-8') as to, \ > BytesIO() as be, TextIOWrapper(be, encoding='utf-8') as te, \ > redirect_stdout(to), redirect_stderr(te): >> found_errors = check_file( > self.fspath, > self.flake8ignore, > self.maxlength, > self.maxdoclength, > self.maxcomplexity, > self.showsource, > self.statistics > ) > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:136: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_default_flake8_ignores0/xy.py') >flake8ignore = [], maxlength = '', maxdoclenght = '', maxcomplexity = '' >showsource = [], statistics = [] > > def check_file(path, flake8ignore, maxlength, maxdoclenght, maxcomplexity, > showsource, statistics): > """Run flake8 over a single file, and return the number of failures.""" > args = [] > if maxlength: > args += ['--max-line-length', maxlength] > if maxdoclenght: > args += ['--max-doc-length', maxdoclenght] > if maxcomplexity: > args += ['--max-complexity', maxcomplexity] > if showsource: > args += ['--show-source'] > if statistics: > args += ['--statistics'] > app = application.Application() > prelim_opts, remaining_args = app.parse_preliminary_options(args) >> config_finder = config.ConfigFileFinder( > app.program, > prelim_opts.append_config, > config_file=prelim_opts.config, > ignore_config_files=prelim_opts.isolated, > ) >E AttributeError: module 'flake8.options.config' has no attribute 'ConfigFileFinder' > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:217: AttributeError >_________________________________ FLAKE8-check _________________________________ > >cls = <class '_pytest.runner.CallInfo'> >func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe264deeee0> >when = 'call' >reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>) > > @classmethod > def from_call( > cls, > func: "Callable[[], TResult]", > when: "Literal['collect', 'setup', 'call', 'teardown']", > reraise: Optional[ > Union[Type[BaseException], Tuple[Type[BaseException], ...]] > ] = None, > ) -> "CallInfo[TResult]": > """Call func, wrapping the result in a CallInfo. > > :param func: > The function to call. Called without arguments. > :param when: > The phase in which the function is called. > :param reraise: > Exception or exceptions that shall propagate if raised by the > function, instead of being wrapped in the CallInfo. > """ > excinfo = None > start = timing.time() > precise_start = timing.perf_counter() > try: >> result: Optional[TResult] = func() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:338: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ) > >/usr/lib/python3.8/site-packages/_pytest/runner.py:259: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_HookCaller 'pytest_runtest_call'>, args = () >kwargs = {'item': <Flake8Item flake-8>}, argname = 'item', firstresult = False > > def __call__(self, *args, **kwargs): > if args: > raise TypeError("hook calling supports only keyword arguments") > assert not self.is_historic() > > # This is written to avoid expensive operations when not needed. > if self.spec: > for argname in self.spec.argnames: > if argname not in kwargs: > notincall = tuple(set(self.spec.argnames) - kwargs.keys()) > warnings.warn( > "Argument(s) {} which are declared in the hookspec " > "can not be found in this hook call".format(notincall), > stacklevel=2, > ) > break > > firstresult = self.spec.opts.get("firstresult") > else: > firstresult = False > >> return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_hooks.py:265: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_pytest.config.PytestPluginManager object at 0x7fe264cf36d0> >hook_name = 'pytest_runtest_call' >methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _hookexec(self, hook_name, methods, kwargs, firstresult): > # called from all hookcaller instances. > # enable_tracing will set its own wrapping function at self._inner_hookexec >> return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:80: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def traced_hookexec(hook_name, hook_impls, kwargs, firstresult): > before(hook_name, hook_impls, kwargs) > outcome = _Result.from_call( > lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > after(outcome, hook_name, hook_impls, kwargs) >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:327: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264b4cbb0> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >cls = <class 'pluggy._result._Result'> >func = <function PluginManager.add_hookcall_monitoring.<locals>.traced_hookexec.<locals>.<lambda> at 0x7fe264deeb80> > > @classmethod > def from_call(cls, func): > __tracebackhide__ = True > result = excinfo = None > try: >> result = func() > >/usr/lib/python3.8/site-packages/pluggy/_result.py:33: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:324: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: > res = hook_impl.function(*args) > if res is not None: > results.append(res) > if firstresult: # halt further impl calls > break > except BaseException: > excinfo = sys.exc_info() > finally: > if firstresult: # first result hooks return a single value > outcome = _Result(results[0] if results else None, excinfo) > else: > outcome = _Result(results, excinfo) > > # run all wrapper post-yield blocks > for gen in reversed(teardowns): > try: > gen.send(outcome) > _raise_wrapfail(gen, "has second yield") > except StopIteration: > pass > >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264b4c940> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: >> res = hook_impl.function(*args) > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:39: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: > item.runtest() > except Exception as e: > # Store trace info to allow postmortem debugging > sys.last_type = type(e) > sys.last_value = e > assert e.__traceback__ is not None > # Skip *this* frame > sys.last_traceback = e.__traceback__.tb_next >> raise e > >/usr/lib/python3.8/site-packages/_pytest/runner.py:174: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: >> item.runtest() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:166: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <Flake8Item flake-8> > > def runtest(self): > with BytesIO() as bo, TextIOWrapper(bo, encoding='utf-8') as to, \ > BytesIO() as be, TextIOWrapper(be, encoding='utf-8') as te, \ > redirect_stdout(to), redirect_stderr(te): >> found_errors = check_file( > self.fspath, > self.flake8ignore, > self.maxlength, > self.maxdoclength, > self.maxcomplexity, > self.showsource, > self.statistics > ) > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:136: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_default_flake8_ignores0/tests/hello.py') >flake8ignore = [], maxlength = '', maxdoclenght = '', maxcomplexity = '' >showsource = [], statistics = [] > > def check_file(path, flake8ignore, maxlength, maxdoclenght, maxcomplexity, > showsource, statistics): > """Run flake8 over a single file, and return the number of failures.""" > args = [] > if maxlength: > args += ['--max-line-length', maxlength] > if maxdoclenght: > args += ['--max-doc-length', maxdoclenght] > if maxcomplexity: > args += ['--max-complexity', maxcomplexity] > if showsource: > args += ['--show-source'] > if statistics: > args += ['--statistics'] > app = application.Application() > prelim_opts, remaining_args = app.parse_preliminary_options(args) >> config_finder = config.ConfigFileFinder( > app.program, > prelim_opts.append_config, > config_file=prelim_opts.config, > ignore_config_files=prelim_opts.isolated, > ) >E AttributeError: module 'flake8.options.config' has no attribute 'ConfigFileFinder' > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:217: AttributeError >=========================== short test summary info ============================ >FAILED xy.py::flake-8::FLAKE8 - AttributeError: module 'flake8.options.config... >FAILED tests/hello.py::flake-8::FLAKE8 - AttributeError: module 'flake8.optio... >============================== 2 failed in 0.16s =============================== >_________________________ TestIgnores.test_ignores_all _________________________ > >self = <test_flake8.TestIgnores object at 0x7fe264e66c40> >testdir = <Testdir local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_ignores_all0')> > > def test_ignores_all(self, testdir): > """Verify success when all errors are ignored.""" > testdir.makeini(""" > [pytest] > markers = flake8 > flake8-ignore = E203 > *.py E300 > tests/*.py ALL E203 # something > """) > testdir.tmpdir.ensure("xy.py") > testdir.tmpdir.ensure("tests/hello.py") > result = testdir.runpytest("--flake8", "-s") >> result.assert_outcomes(passed=1) >E AssertionError: assert {'errors': 0,\n 'failed': 1,\n 'passed': 0,\n 'skipped': 0,\n 'xfailed': 0,\n 'xpassed': 0} == {'errors': 0,\n 'failed': 0,\n 'passed': 1,\n 'skipped': 0,\n 'xfailed': 0,\n 'xpassed': 0} >E Common items: >E {'errors': 0, 'skipped': 0, 'xfailed': 0, 'xpassed': 0} >E Differing items: >E {'passed': 0} != {'passed': 1} >E {'failed': 1} != {'failed': 0} >E Full diff: >E { >E 'errors': 0, >E - 'failed': 0, >E ? ^ >E + 'failed': 1, >E ? ^ >E - 'passed': 1, >E ? ^ >E + 'passed': 0, >E ? ^ >E 'skipped': 0, >E 'xfailed': 0, >E 'xpassed': 0, >E } > >result = <RunResult ret=ExitCode.TESTS_FAILED len(stdout.lines)=352 len(stderr.lines)=0 duration=0.15s> >self = <test_flake8.TestIgnores object at 0x7fe264e66c40> >testdir = <Testdir local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_ignores_all0')> > >/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1/test_flake8.py:72: AssertionError >----------------------------- Captured stdout call ----------------------------- >============================= test session starts ============================== >platform linux -- Python 3.8.13, pytest-7.1.2, pluggy-1.0.0 >rootdir: /var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_ignores_all0, configfile: tox.ini >plugins: flake8-1.1.1 >collected 1 item > >xy.py F > >=================================== FAILURES =================================== >_______________________ FLAKE8-check(ignoring E203 E300) _______________________ > >cls = <class '_pytest.runner.CallInfo'> >func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe264db88b0> >when = 'call' >reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>) > > @classmethod > def from_call( > cls, > func: "Callable[[], TResult]", > when: "Literal['collect', 'setup', 'call', 'teardown']", > reraise: Optional[ > Union[Type[BaseException], Tuple[Type[BaseException], ...]] > ] = None, > ) -> "CallInfo[TResult]": > """Call func, wrapping the result in a CallInfo. > > :param func: > The function to call. Called without arguments. > :param when: > The phase in which the function is called. > :param reraise: > Exception or exceptions that shall propagate if raised by the > function, instead of being wrapped in the CallInfo. > """ > excinfo = None > start = timing.time() > precise_start = timing.perf_counter() > try: >> result: Optional[TResult] = func() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:338: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ) > >/usr/lib/python3.8/site-packages/_pytest/runner.py:259: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_HookCaller 'pytest_runtest_call'>, args = () >kwargs = {'item': <Flake8Item flake-8>}, argname = 'item', firstresult = False > > def __call__(self, *args, **kwargs): > if args: > raise TypeError("hook calling supports only keyword arguments") > assert not self.is_historic() > > # This is written to avoid expensive operations when not needed. > if self.spec: > for argname in self.spec.argnames: > if argname not in kwargs: > notincall = tuple(set(self.spec.argnames) - kwargs.keys()) > warnings.warn( > "Argument(s) {} which are declared in the hookspec " > "can not be found in this hook call".format(notincall), > stacklevel=2, > ) > break > > firstresult = self.spec.opts.get("firstresult") > else: > firstresult = False > >> return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_hooks.py:265: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_pytest.config.PytestPluginManager object at 0x7fe264c2ac70> >hook_name = 'pytest_runtest_call' >methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _hookexec(self, hook_name, methods, kwargs, firstresult): > # called from all hookcaller instances. > # enable_tracing will set its own wrapping function at self._inner_hookexec >> return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:80: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def traced_hookexec(hook_name, hook_impls, kwargs, firstresult): > before(hook_name, hook_impls, kwargs) > outcome = _Result.from_call( > lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > after(outcome, hook_name, hook_impls, kwargs) >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:327: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264b50520> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >cls = <class 'pluggy._result._Result'> >func = <function PluginManager.add_hookcall_monitoring.<locals>.traced_hookexec.<locals>.<lambda> at 0x7fe264db8940> > > @classmethod > def from_call(cls, func): > __tracebackhide__ = True > result = excinfo = None > try: >> result = func() > >/usr/lib/python3.8/site-packages/pluggy/_result.py:33: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:324: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: > res = hook_impl.function(*args) > if res is not None: > results.append(res) > if firstresult: # halt further impl calls > break > except BaseException: > excinfo = sys.exc_info() > finally: > if firstresult: # first result hooks return a single value > outcome = _Result(results[0] if results else None, excinfo) > else: > outcome = _Result(results, excinfo) > > # run all wrapper post-yield blocks > for gen in reversed(teardowns): > try: > gen.send(outcome) > _raise_wrapfail(gen, "has second yield") > except StopIteration: > pass > >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264b50220> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: >> res = hook_impl.function(*args) > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:39: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: > item.runtest() > except Exception as e: > # Store trace info to allow postmortem debugging > sys.last_type = type(e) > sys.last_value = e > assert e.__traceback__ is not None > # Skip *this* frame > sys.last_traceback = e.__traceback__.tb_next >> raise e > >/usr/lib/python3.8/site-packages/_pytest/runner.py:174: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: >> item.runtest() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:166: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <Flake8Item flake-8> > > def runtest(self): > with BytesIO() as bo, TextIOWrapper(bo, encoding='utf-8') as to, \ > BytesIO() as be, TextIOWrapper(be, encoding='utf-8') as te, \ > redirect_stdout(to), redirect_stderr(te): >> found_errors = check_file( > self.fspath, > self.flake8ignore, > self.maxlength, > self.maxdoclength, > self.maxcomplexity, > self.showsource, > self.statistics > ) > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:136: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_ignores_all0/xy.py') >flake8ignore = ['E203', 'E300'], maxlength = '', maxdoclenght = '' >maxcomplexity = '', showsource = [], statistics = [] > > def check_file(path, flake8ignore, maxlength, maxdoclenght, maxcomplexity, > showsource, statistics): > """Run flake8 over a single file, and return the number of failures.""" > args = [] > if maxlength: > args += ['--max-line-length', maxlength] > if maxdoclenght: > args += ['--max-doc-length', maxdoclenght] > if maxcomplexity: > args += ['--max-complexity', maxcomplexity] > if showsource: > args += ['--show-source'] > if statistics: > args += ['--statistics'] > app = application.Application() > prelim_opts, remaining_args = app.parse_preliminary_options(args) >> config_finder = config.ConfigFileFinder( > app.program, > prelim_opts.append_config, > config_file=prelim_opts.config, > ignore_config_files=prelim_opts.isolated, > ) >E AttributeError: module 'flake8.options.config' has no attribute 'ConfigFileFinder' > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:217: AttributeError >=========================== short test summary info ============================ >FAILED xy.py::flake-8::FLAKE8 - AttributeError: module 'flake8.options.config... >============================== 1 failed in 0.08s =============================== >__________________________ TestIgnores.test_w293w292 ___________________________ > >self = <test_flake8.TestIgnores object at 0x7fe2650bcf40> >testdir = <Testdir local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_w293w2920')> >example = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_w293w2920/test_w293w292.py') > > def test_w293w292(self, testdir, example): > result = testdir.runpytest("--flake8", ) >> result.stdout.fnmatch_lines([ > # "*plugins*flake8*", > "*W293*", > "*W292*", > ]) >E Failed: nomatch: '*W293*' >E and: '============================= test session starts ==============================' >E and: 'platform linux -- Python 3.8.13, pytest-7.1.2, pluggy-1.0.0' >E and: 'rootdir: /var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_w293w2920' >E and: 'plugins: flake8-1.1.1' >E and: 'collected 1 item' >E and: '' >E and: 'test_w293w292.py F [100%]' >E and: '' >E and: '=================================== FAILURES ===================================' >E and: '_________________________________ FLAKE8-check _________________________________' >E and: '' >E and: "cls = <class '_pytest.runner.CallInfo'>" >E and: 'func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe264ce5670>' >E and: "when = 'call'" >E and: "reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)" >E and: '' >E and: ' @classmethod' >E and: ' def from_call(' >E and: ' cls,' >E and: ' func: "Callable[[], TResult]",' >E and: ' when: "Literal[\'collect\', \'setup\', \'call\', \'teardown\']",' >E and: ' reraise: Optional[' >E and: ' Union[Type[BaseException], Tuple[Type[BaseException], ...]]' >E and: ' ] = None,' >E and: ' ) -> "CallInfo[TResult]":' >E and: ' """Call func, wrapping the result in a CallInfo.' >E and: ' ' >E and: ' :param func:' >E and: ' The function to call. Called without arguments.' >E and: ' :param when:' >E and: ' The phase in which the function is called.' >E and: ' :param reraise:' >E and: ' Exception or exceptions that shall propagate if raised by the' >E and: ' function, instead of being wrapped in the CallInfo.' >E and: ' """' >E and: ' excinfo = None' >E and: ' start = timing.time()' >E and: ' precise_start = timing.perf_counter()' >E and: ' try:' >E and: '> result: Optional[TResult] = func()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/_pytest/runner.py:338: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: '> lambda: ihook(item=item, **kwds), when=when, reraise=reraise' >E and: ' )' >E and: '' >E and: '/usr/lib/python3.8/site-packages/_pytest/runner.py:259: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "self = <_HookCaller 'pytest_runtest_call'>, args = ()" >E and: "kwargs = {'item': <Flake8Item flake-8>}, argname = 'item', firstresult = False" >E and: '' >E and: ' def __call__(self, *args, **kwargs):' >E and: ' if args:' >E and: ' raise TypeError("hook calling supports only keyword arguments")' >E and: ' assert not self.is_historic()' >E and: ' ' >E and: ' # This is written to avoid expensive operations when not needed.' >E and: ' if self.spec:' >E and: ' for argname in self.spec.argnames:' >E and: ' if argname not in kwargs:' >E and: ' notincall = tuple(set(self.spec.argnames) - kwargs.keys())' >E and: ' warnings.warn(' >E and: ' "Argument(s) {} which are declared in the hookspec "' >E and: ' "can not be found in this hook call".format(notincall),' >E and: ' stacklevel=2,' >E and: ' )' >E and: ' break' >E and: ' ' >E and: ' firstresult = self.spec.opts.get("firstresult")' >E and: ' else:' >E and: ' firstresult = False' >E and: ' ' >E and: '> return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_hooks.py:265: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'self = <_pytest.config.PytestPluginManager object at 0x7fe264b42730>' >E and: "hook_name = 'pytest_runtest_call'" >E and: "methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]" >E and: "kwargs = {'item': <Flake8Item flake-8>}, firstresult = False" >E and: '' >E and: ' def _hookexec(self, hook_name, methods, kwargs, firstresult):' >E and: ' # called from all hookcaller instances.' >E and: ' # enable_tracing will set its own wrapping function at self._inner_hookexec' >E and: '> return self._inner_hookexec(hook_name, methods, kwargs, firstresult)' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_manager.py:80: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "hook_name = 'pytest_runtest_call'" >E and: "hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]" >E and: "kwargs = {'item': <Flake8Item flake-8>}, firstresult = False" >E and: '' >E and: ' def traced_hookexec(hook_name, hook_impls, kwargs, firstresult):' >E and: ' before(hook_name, hook_impls, kwargs)' >E and: ' outcome = _Result.from_call(' >E and: ' lambda: oldcall(hook_name, hook_impls, kwargs, firstresult)' >E and: ' )' >E and: ' after(outcome, hook_name, hook_impls, kwargs)' >E and: '> return outcome.get_result()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_manager.py:327: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'self = <pluggy._result._Result object at 0x7fe264c24880>' >E and: '' >E and: ' def get_result(self):' >E and: ' """Get the result(s) for this hook call.' >E and: ' ' >E and: ' If the hook was marked as a ``firstresult`` only a single value' >E and: ' will be returned otherwise a list of results.' >E and: ' """' >E and: ' __tracebackhide__ = True' >E and: ' if self._excinfo is None:' >E and: ' return self._result' >E and: ' else:' >E and: ' ex = self._excinfo' >E and: '> raise ex[1].with_traceback(ex[2])' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_result.py:60: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "cls = <class 'pluggy._result._Result'>" >E and: 'func = <function PluginManager.add_hookcall_monitoring.<locals>.traced_hookexec.<locals>.<lambda> at 0x7fe264db8040>' >E and: '' >E and: ' @classmethod' >E and: ' def from_call(cls, func):' >E and: ' __tracebackhide__ = True' >E and: ' result = excinfo = None' >E and: ' try:' >E and: '> result = func()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_result.py:33: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: '> lambda: oldcall(hook_name, hook_impls, kwargs, firstresult)' >E and: ' )' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_manager.py:324: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "hook_name = 'pytest_runtest_call'" >E and: "hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]" >E and: "caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False" >E and: '' >E and: ' def _multicall(hook_name, hook_impls, caller_kwargs, firstresult):' >E and: ' """Execute a call into multiple python functions/methods and return the' >E and: ' result(s).' >E and: ' ' >E and: ' ``caller_kwargs`` comes from _HookCaller.__call__().' >E and: ' """' >E and: ' __tracebackhide__ = True' >E and: ' results = []' >E and: ' excinfo = None' >E and: ' try: # run impl and wrapper setup functions in a loop' >E and: ' teardowns = []' >E and: ' try:' >E and: ' for hook_impl in reversed(hook_impls):' >E and: ' try:' >E and: ' args = [caller_kwargs[argname] for argname in hook_impl.argnames]' >E and: ' except KeyError:' >E and: ' for argname in hook_impl.argnames:' >E and: ' if argname not in caller_kwargs:' >E and: ' raise HookCallError(' >E and: ' f"hook call must provide argument {argname!r}"' >E and: ' )' >E and: ' ' >E and: ' if hook_impl.hookwrapper:' >E and: ' try:' >E and: ' gen = hook_impl.function(*args)' >E and: ' next(gen) # first yield' >E and: ' teardowns.append(gen)' >E and: ' except StopIteration:' >E and: ' _raise_wrapfail(gen, "did not yield")' >E and: ' else:' >E and: ' res = hook_impl.function(*args)' >E and: ' if res is not None:' >E and: ' results.append(res)' >E and: ' if firstresult: # halt further impl calls' >E and: ' break' >E and: ' except BaseException:' >E and: ' excinfo = sys.exc_info()' >E and: ' finally:' >E and: ' if firstresult: # first result hooks return a single value' >E and: ' outcome = _Result(results[0] if results else None, excinfo)' >E and: ' else:' >E and: ' outcome = _Result(results, excinfo)' >E and: ' ' >E and: ' # run all wrapper post-yield blocks' >E and: ' for gen in reversed(teardowns):' >E and: ' try:' >E and: ' gen.send(outcome)' >E and: ' _raise_wrapfail(gen, "has second yield")' >E and: ' except StopIteration:' >E and: ' pass' >E and: ' ' >E and: '> return outcome.get_result()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_callers.py:60: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'self = <pluggy._result._Result object at 0x7fe264c24130>' >E and: '' >E and: ' def get_result(self):' >E and: ' """Get the result(s) for this hook call.' >E and: ' ' >E and: ' If the hook was marked as a ``firstresult`` only a single value' >E and: ' will be returned otherwise a list of results.' >E and: ' """' >E and: ' __tracebackhide__ = True' >E and: ' if self._excinfo is None:' >E and: ' return self._result' >E and: ' else:' >E and: ' ex = self._excinfo' >E and: '> raise ex[1].with_traceback(ex[2])' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_result.py:60: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "hook_name = 'pytest_runtest_call'" >E and: "hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]" >E and: "caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False" >E and: '' >E and: ' def _multicall(hook_name, hook_impls, caller_kwargs, firstresult):' >E and: ' """Execute a call into multiple python functions/methods and return the' >E and: ' result(s).' >E and: ' ' >E and: ' ``caller_kwargs`` comes from _HookCaller.__call__().' >E and: ' """' >E and: ' __tracebackhide__ = True' >E and: ' results = []' >E and: ' excinfo = None' >E and: ' try: # run impl and wrapper setup functions in a loop' >E and: ' teardowns = []' >E and: ' try:' >E and: ' for hook_impl in reversed(hook_impls):' >E and: ' try:' >E and: ' args = [caller_kwargs[argname] for argname in hook_impl.argnames]' >E and: ' except KeyError:' >E and: ' for argname in hook_impl.argnames:' >E and: ' if argname not in caller_kwargs:' >E and: ' raise HookCallError(' >E and: ' f"hook call must provide argument {argname!r}"' >E and: ' )' >E and: ' ' >E and: ' if hook_impl.hookwrapper:' >E and: ' try:' >E and: ' gen = hook_impl.function(*args)' >E and: ' next(gen) # first yield' >E and: ' teardowns.append(gen)' >E and: ' except StopIteration:' >E and: ' _raise_wrapfail(gen, "did not yield")' >E and: ' else:' >E and: '> res = hook_impl.function(*args)' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_callers.py:39: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'item = <Flake8Item flake-8>' >E and: '' >E and: ' def pytest_runtest_call(item: Item) -> None:' >E and: ' _update_current_test_var(item, "call")' >E and: ' try:' >E and: ' del sys.last_type' >E and: ' del sys.last_value' >E and: ' del sys.last_traceback' >E and: ' except AttributeError:' >E and: ' pass' >E and: ' try:' >E and: ' item.runtest()' >E and: ' except Exception as e:' >E and: ' # Store trace info to allow postmortem debugging' >E and: ' sys.last_type = type(e)' >E and: ' sys.last_value = e' >E and: ' assert e.__traceback__ is not None' >E and: ' # Skip *this* frame' >E and: ' sys.last_traceback = e.__traceback__.tb_next' >E and: '> raise e' >E and: '' >E and: '/usr/lib/python3.8/site-packages/_pytest/runner.py:174: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'item = <Flake8Item flake-8>' >E and: '' >E and: ' def pytest_runtest_call(item: Item) -> None:' >E and: ' _update_current_test_var(item, "call")' >E and: ' try:' >E and: ' del sys.last_type' >E and: ' del sys.last_value' >E and: ' del sys.last_traceback' >E and: ' except AttributeError:' >E and: ' pass' >E and: ' try:' >E and: '> item.runtest()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/_pytest/runner.py:166: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'self = <Flake8Item flake-8>' >E and: '' >E and: ' def runtest(self):' >E and: " with BytesIO() as bo, TextIOWrapper(bo, encoding='utf-8') as to, \\" >E and: " BytesIO() as be, TextIOWrapper(be, encoding='utf-8') as te, \\" >E and: ' redirect_stdout(to), redirect_stderr(te):' >E and: '> found_errors = check_file(' >E and: ' self.fspath,' >E and: ' self.flake8ignore,' >E and: ' self.maxlength,' >E and: ' self.maxdoclength,' >E and: ' self.maxcomplexity,' >E and: ' self.showsource,' >E and: ' self.statistics' >E and: ' )' >E and: '' >E and: '../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:136: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_w293w2920/test_w293w292.py')" >E and: "flake8ignore = [], maxlength = '', maxdoclenght = '', maxcomplexity = ''" >E and: 'showsource = [], statistics = []' >E and: '' >E and: ' def check_file(path, flake8ignore, maxlength, maxdoclenght, maxcomplexity,' >E and: ' showsource, statistics):' >E and: ' """Run flake8 over a single file, and return the number of failures."""' >E and: ' args = []' >E and: ' if maxlength:' >E and: " args += ['--max-line-length', maxlength]" >E and: ' if maxdoclenght:' >E and: " args += ['--max-doc-length', maxdoclenght]" >E and: ' if maxcomplexity:' >E and: " args += ['--max-complexity', maxcomplexity]" >E and: ' if showsource:' >E and: " args += ['--show-source']" >E and: ' if statistics:' >E and: " args += ['--statistics']" >E and: ' app = application.Application()' >E and: ' prelim_opts, remaining_args = app.parse_preliminary_options(args)' >E and: '> config_finder = config.ConfigFileFinder(' >E and: ' app.program,' >E and: ' prelim_opts.append_config,' >E and: ' config_file=prelim_opts.config,' >E and: ' ignore_config_files=prelim_opts.isolated,' >E and: ' )' >E and: "E AttributeError: module 'flake8.options.config' has no attribute 'ConfigFileFinder'" >E and: '' >E and: '../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:217: AttributeError' >E and: '=========================== short test summary info ============================' >E and: "FAILED test_w293w292.py::flake-8::FLAKE8 - AttributeError: module 'flake8.opt..." >E and: '============================== 1 failed in 0.08s ===============================' >E remains unmatched: '*W293*' > >example = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_w293w2920/test_w293w292.py') >result = <RunResult ret=ExitCode.TESTS_FAILED len(stdout.lines)=352 len(stderr.lines)=0 duration=0.16s> >self = <test_flake8.TestIgnores object at 0x7fe2650bcf40> >testdir = <Testdir local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_w293w2920')> > >/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1/test_flake8.py:81: Failed >---------------------------- Captured stderr setup ----------------------------- >/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_w293w2920 >----------------------------- Captured stdout call ----------------------------- >============================= test session starts ============================== >platform linux -- Python 3.8.13, pytest-7.1.2, pluggy-1.0.0 >rootdir: /var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_w293w2920 >plugins: flake8-1.1.1 >collected 1 item > >test_w293w292.py F [100%] > >=================================== FAILURES =================================== >_________________________________ FLAKE8-check _________________________________ > >cls = <class '_pytest.runner.CallInfo'> >func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe264ce5670> >when = 'call' >reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>) > > @classmethod > def from_call( > cls, > func: "Callable[[], TResult]", > when: "Literal['collect', 'setup', 'call', 'teardown']", > reraise: Optional[ > Union[Type[BaseException], Tuple[Type[BaseException], ...]] > ] = None, > ) -> "CallInfo[TResult]": > """Call func, wrapping the result in a CallInfo. > > :param func: > The function to call. Called without arguments. > :param when: > The phase in which the function is called. > :param reraise: > Exception or exceptions that shall propagate if raised by the > function, instead of being wrapped in the CallInfo. > """ > excinfo = None > start = timing.time() > precise_start = timing.perf_counter() > try: >> result: Optional[TResult] = func() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:338: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ) > >/usr/lib/python3.8/site-packages/_pytest/runner.py:259: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_HookCaller 'pytest_runtest_call'>, args = () >kwargs = {'item': <Flake8Item flake-8>}, argname = 'item', firstresult = False > > def __call__(self, *args, **kwargs): > if args: > raise TypeError("hook calling supports only keyword arguments") > assert not self.is_historic() > > # This is written to avoid expensive operations when not needed. > if self.spec: > for argname in self.spec.argnames: > if argname not in kwargs: > notincall = tuple(set(self.spec.argnames) - kwargs.keys()) > warnings.warn( > "Argument(s) {} which are declared in the hookspec " > "can not be found in this hook call".format(notincall), > stacklevel=2, > ) > break > > firstresult = self.spec.opts.get("firstresult") > else: > firstresult = False > >> return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_hooks.py:265: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_pytest.config.PytestPluginManager object at 0x7fe264b42730> >hook_name = 'pytest_runtest_call' >methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _hookexec(self, hook_name, methods, kwargs, firstresult): > # called from all hookcaller instances. > # enable_tracing will set its own wrapping function at self._inner_hookexec >> return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:80: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def traced_hookexec(hook_name, hook_impls, kwargs, firstresult): > before(hook_name, hook_impls, kwargs) > outcome = _Result.from_call( > lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > after(outcome, hook_name, hook_impls, kwargs) >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:327: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264c24880> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >cls = <class 'pluggy._result._Result'> >func = <function PluginManager.add_hookcall_monitoring.<locals>.traced_hookexec.<locals>.<lambda> at 0x7fe264db8040> > > @classmethod > def from_call(cls, func): > __tracebackhide__ = True > result = excinfo = None > try: >> result = func() > >/usr/lib/python3.8/site-packages/pluggy/_result.py:33: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:324: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: > res = hook_impl.function(*args) > if res is not None: > results.append(res) > if firstresult: # halt further impl calls > break > except BaseException: > excinfo = sys.exc_info() > finally: > if firstresult: # first result hooks return a single value > outcome = _Result(results[0] if results else None, excinfo) > else: > outcome = _Result(results, excinfo) > > # run all wrapper post-yield blocks > for gen in reversed(teardowns): > try: > gen.send(outcome) > _raise_wrapfail(gen, "has second yield") > except StopIteration: > pass > >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264c24130> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: >> res = hook_impl.function(*args) > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:39: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: > item.runtest() > except Exception as e: > # Store trace info to allow postmortem debugging > sys.last_type = type(e) > sys.last_value = e > assert e.__traceback__ is not None > # Skip *this* frame > sys.last_traceback = e.__traceback__.tb_next >> raise e > >/usr/lib/python3.8/site-packages/_pytest/runner.py:174: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: >> item.runtest() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:166: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <Flake8Item flake-8> > > def runtest(self): > with BytesIO() as bo, TextIOWrapper(bo, encoding='utf-8') as to, \ > BytesIO() as be, TextIOWrapper(be, encoding='utf-8') as te, \ > redirect_stdout(to), redirect_stderr(te): >> found_errors = check_file( > self.fspath, > self.flake8ignore, > self.maxlength, > self.maxdoclength, > self.maxcomplexity, > self.showsource, > self.statistics > ) > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:136: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_w293w2920/test_w293w292.py') >flake8ignore = [], maxlength = '', maxdoclenght = '', maxcomplexity = '' >showsource = [], statistics = [] > > def check_file(path, flake8ignore, maxlength, maxdoclenght, maxcomplexity, > showsource, statistics): > """Run flake8 over a single file, and return the number of failures.""" > args = [] > if maxlength: > args += ['--max-line-length', maxlength] > if maxdoclenght: > args += ['--max-doc-length', maxdoclenght] > if maxcomplexity: > args += ['--max-complexity', maxcomplexity] > if showsource: > args += ['--show-source'] > if statistics: > args += ['--statistics'] > app = application.Application() > prelim_opts, remaining_args = app.parse_preliminary_options(args) >> config_finder = config.ConfigFileFinder( > app.program, > prelim_opts.append_config, > config_file=prelim_opts.config, > ignore_config_files=prelim_opts.isolated, > ) >E AttributeError: module 'flake8.options.config' has no attribute 'ConfigFileFinder' > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:217: AttributeError >=========================== short test summary info ============================ >FAILED test_w293w292.py::flake-8::FLAKE8 - AttributeError: module 'flake8.opt... >============================== 1 failed in 0.08s =============================== >________________________ TestIgnores.test_mtime_caching ________________________ > >self = <test_flake8.TestIgnores object at 0x7fe2650bc4c0> >testdir = <Testdir local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_mtime_caching0')> >example = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_mtime_caching0/test_mtime_caching.py') > > def test_mtime_caching(self, testdir, example): > testdir.tmpdir.ensure("hello.py") > result = testdir.runpytest("--flake8", ) >> result.stdout.fnmatch_lines([ > # "*plugins*flake8*", > "*W293*", > "*W292*", > ]) >E Failed: nomatch: '*W293*' >E and: '============================= test session starts ==============================' >E and: 'platform linux -- Python 3.8.13, pytest-7.1.2, pluggy-1.0.0' >E and: 'rootdir: /var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_mtime_caching0' >E and: 'plugins: flake8-1.1.1' >E and: 'collected 2 items' >E and: '' >E and: 'hello.py F [ 50%]' >E and: 'test_mtime_caching.py F [100%]' >E and: '' >E and: '=================================== FAILURES ===================================' >E and: '_________________________________ FLAKE8-check _________________________________' >E and: '' >E and: "cls = <class '_pytest.runner.CallInfo'>" >E and: 'func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe264cd6b80>' >E and: "when = 'call'" >E and: "reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)" >E and: '' >E and: ' @classmethod' >E and: ' def from_call(' >E and: ' cls,' >E and: ' func: "Callable[[], TResult]",' >E and: ' when: "Literal[\'collect\', \'setup\', \'call\', \'teardown\']",' >E and: ' reraise: Optional[' >E and: ' Union[Type[BaseException], Tuple[Type[BaseException], ...]]' >E and: ' ] = None,' >E and: ' ) -> "CallInfo[TResult]":' >E and: ' """Call func, wrapping the result in a CallInfo.' >E and: ' ' >E and: ' :param func:' >E and: ' The function to call. Called without arguments.' >E and: ' :param when:' >E and: ' The phase in which the function is called.' >E and: ' :param reraise:' >E and: ' Exception or exceptions that shall propagate if raised by the' >E and: ' function, instead of being wrapped in the CallInfo.' >E and: ' """' >E and: ' excinfo = None' >E and: ' start = timing.time()' >E and: ' precise_start = timing.perf_counter()' >E and: ' try:' >E and: '> result: Optional[TResult] = func()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/_pytest/runner.py:338: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: '> lambda: ihook(item=item, **kwds), when=when, reraise=reraise' >E and: ' )' >E and: '' >E and: '/usr/lib/python3.8/site-packages/_pytest/runner.py:259: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "self = <_HookCaller 'pytest_runtest_call'>, args = ()" >E and: "kwargs = {'item': <Flake8Item flake-8>}, argname = 'item', firstresult = False" >E and: '' >E and: ' def __call__(self, *args, **kwargs):' >E and: ' if args:' >E and: ' raise TypeError("hook calling supports only keyword arguments")' >E and: ' assert not self.is_historic()' >E and: ' ' >E and: ' # This is written to avoid expensive operations when not needed.' >E and: ' if self.spec:' >E and: ' for argname in self.spec.argnames:' >E and: ' if argname not in kwargs:' >E and: ' notincall = tuple(set(self.spec.argnames) - kwargs.keys())' >E and: ' warnings.warn(' >E and: ' "Argument(s) {} which are declared in the hookspec "' >E and: ' "can not be found in this hook call".format(notincall),' >E and: ' stacklevel=2,' >E and: ' )' >E and: ' break' >E and: ' ' >E and: ' firstresult = self.spec.opts.get("firstresult")' >E and: ' else:' >E and: ' firstresult = False' >E and: ' ' >E and: '> return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_hooks.py:265: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'self = <_pytest.config.PytestPluginManager object at 0x7fe264ac91c0>' >E and: "hook_name = 'pytest_runtest_call'" >E and: "methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]" >E and: "kwargs = {'item': <Flake8Item flake-8>}, firstresult = False" >E and: '' >E and: ' def _hookexec(self, hook_name, methods, kwargs, firstresult):' >E and: ' # called from all hookcaller instances.' >E and: ' # enable_tracing will set its own wrapping function at self._inner_hookexec' >E and: '> return self._inner_hookexec(hook_name, methods, kwargs, firstresult)' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_manager.py:80: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "hook_name = 'pytest_runtest_call'" >E and: "hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]" >E and: "kwargs = {'item': <Flake8Item flake-8>}, firstresult = False" >E and: '' >E and: ' def traced_hookexec(hook_name, hook_impls, kwargs, firstresult):' >E and: ' before(hook_name, hook_impls, kwargs)' >E and: ' outcome = _Result.from_call(' >E and: ' lambda: oldcall(hook_name, hook_impls, kwargs, firstresult)' >E and: ' )' >E and: ' after(outcome, hook_name, hook_impls, kwargs)' >E and: '> return outcome.get_result()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_manager.py:327: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'self = <pluggy._result._Result object at 0x7fe264cb0d90>' >E and: '' >E and: ' def get_result(self):' >E and: ' """Get the result(s) for this hook call.' >E and: ' ' >E and: ' If the hook was marked as a ``firstresult`` only a single value' >E and: ' will be returned otherwise a list of results.' >E and: ' """' >E and: ' __tracebackhide__ = True' >E and: ' if self._excinfo is None:' >E and: ' return self._result' >E and: ' else:' >E and: ' ex = self._excinfo' >E and: '> raise ex[1].with_traceback(ex[2])' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_result.py:60: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "cls = <class 'pluggy._result._Result'>" >E and: 'func = <function PluginManager.add_hookcall_monitoring.<locals>.traced_hookexec.<locals>.<lambda> at 0x7fe264cf63a0>' >E and: '' >E and: ' @classmethod' >E and: ' def from_call(cls, func):' >E and: ' __tracebackhide__ = True' >E and: ' result = excinfo = None' >E and: ' try:' >E and: '> result = func()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_result.py:33: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: '> lambda: oldcall(hook_name, hook_impls, kwargs, firstresult)' >E and: ' )' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_manager.py:324: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "hook_name = 'pytest_runtest_call'" >E and: "hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]" >E and: "caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False" >E and: '' >E and: ' def _multicall(hook_name, hook_impls, caller_kwargs, firstresult):' >E and: ' """Execute a call into multiple python functions/methods and return the' >E and: ' result(s).' >E and: ' ' >E and: ' ``caller_kwargs`` comes from _HookCaller.__call__().' >E and: ' """' >E and: ' __tracebackhide__ = True' >E and: ' results = []' >E and: ' excinfo = None' >E and: ' try: # run impl and wrapper setup functions in a loop' >E and: ' teardowns = []' >E and: ' try:' >E and: ' for hook_impl in reversed(hook_impls):' >E and: ' try:' >E and: ' args = [caller_kwargs[argname] for argname in hook_impl.argnames]' >E and: ' except KeyError:' >E and: ' for argname in hook_impl.argnames:' >E and: ' if argname not in caller_kwargs:' >E and: ' raise HookCallError(' >E and: ' f"hook call must provide argument {argname!r}"' >E and: ' )' >E and: ' ' >E and: ' if hook_impl.hookwrapper:' >E and: ' try:' >E and: ' gen = hook_impl.function(*args)' >E and: ' next(gen) # first yield' >E and: ' teardowns.append(gen)' >E and: ' except StopIteration:' >E and: ' _raise_wrapfail(gen, "did not yield")' >E and: ' else:' >E and: ' res = hook_impl.function(*args)' >E and: ' if res is not None:' >E and: ' results.append(res)' >E and: ' if firstresult: # halt further impl calls' >E and: ' break' >E and: ' except BaseException:' >E and: ' excinfo = sys.exc_info()' >E and: ' finally:' >E and: ' if firstresult: # first result hooks return a single value' >E and: ' outcome = _Result(results[0] if results else None, excinfo)' >E and: ' else:' >E and: ' outcome = _Result(results, excinfo)' >E and: ' ' >E and: ' # run all wrapper post-yield blocks' >E and: ' for gen in reversed(teardowns):' >E and: ' try:' >E and: ' gen.send(outcome)' >E and: ' _raise_wrapfail(gen, "has second yield")' >E and: ' except StopIteration:' >E and: ' pass' >E and: ' ' >E and: '> return outcome.get_result()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_callers.py:60: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'self = <pluggy._result._Result object at 0x7fe264cb0850>' >E and: '' >E and: ' def get_result(self):' >E and: ' """Get the result(s) for this hook call.' >E and: ' ' >E and: ' If the hook was marked as a ``firstresult`` only a single value' >E and: ' will be returned otherwise a list of results.' >E and: ' """' >E and: ' __tracebackhide__ = True' >E and: ' if self._excinfo is None:' >E and: ' return self._result' >E and: ' else:' >E and: ' ex = self._excinfo' >E and: '> raise ex[1].with_traceback(ex[2])' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_result.py:60: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "hook_name = 'pytest_runtest_call'" >E and: "hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]" >E and: "caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False" >E and: '' >E and: ' def _multicall(hook_name, hook_impls, caller_kwargs, firstresult):' >E and: ' """Execute a call into multiple python functions/methods and return the' >E and: ' result(s).' >E and: ' ' >E and: ' ``caller_kwargs`` comes from _HookCaller.__call__().' >E and: ' """' >E and: ' __tracebackhide__ = True' >E and: ' results = []' >E and: ' excinfo = None' >E and: ' try: # run impl and wrapper setup functions in a loop' >E and: ' teardowns = []' >E and: ' try:' >E and: ' for hook_impl in reversed(hook_impls):' >E and: ' try:' >E and: ' args = [caller_kwargs[argname] for argname in hook_impl.argnames]' >E and: ' except KeyError:' >E and: ' for argname in hook_impl.argnames:' >E and: ' if argname not in caller_kwargs:' >E and: ' raise HookCallError(' >E and: ' f"hook call must provide argument {argname!r}"' >E and: ' )' >E and: ' ' >E and: ' if hook_impl.hookwrapper:' >E and: ' try:' >E and: ' gen = hook_impl.function(*args)' >E and: ' next(gen) # first yield' >E and: ' teardowns.append(gen)' >E and: ' except StopIteration:' >E and: ' _raise_wrapfail(gen, "did not yield")' >E and: ' else:' >E and: '> res = hook_impl.function(*args)' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_callers.py:39: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'item = <Flake8Item flake-8>' >E and: '' >E and: ' def pytest_runtest_call(item: Item) -> None:' >E and: ' _update_current_test_var(item, "call")' >E and: ' try:' >E and: ' del sys.last_type' >E and: ' del sys.last_value' >E and: ' del sys.last_traceback' >E and: ' except AttributeError:' >E and: ' pass' >E and: ' try:' >E and: ' item.runtest()' >E and: ' except Exception as e:' >E and: ' # Store trace info to allow postmortem debugging' >E and: ' sys.last_type = type(e)' >E and: ' sys.last_value = e' >E and: ' assert e.__traceback__ is not None' >E and: ' # Skip *this* frame' >E and: ' sys.last_traceback = e.__traceback__.tb_next' >E and: '> raise e' >E and: '' >E and: '/usr/lib/python3.8/site-packages/_pytest/runner.py:174: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'item = <Flake8Item flake-8>' >E and: '' >E and: ' def pytest_runtest_call(item: Item) -> None:' >E and: ' _update_current_test_var(item, "call")' >E and: ' try:' >E and: ' del sys.last_type' >E and: ' del sys.last_value' >E and: ' del sys.last_traceback' >E and: ' except AttributeError:' >E and: ' pass' >E and: ' try:' >E and: '> item.runtest()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/_pytest/runner.py:166: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'self = <Flake8Item flake-8>' >E and: '' >E and: ' def runtest(self):' >E and: " with BytesIO() as bo, TextIOWrapper(bo, encoding='utf-8') as to, \\" >E and: " BytesIO() as be, TextIOWrapper(be, encoding='utf-8') as te, \\" >E and: ' redirect_stdout(to), redirect_stderr(te):' >E and: '> found_errors = check_file(' >E and: ' self.fspath,' >E and: ' self.flake8ignore,' >E and: ' self.maxlength,' >E and: ' self.maxdoclength,' >E and: ' self.maxcomplexity,' >E and: ' self.showsource,' >E and: ' self.statistics' >E and: ' )' >E and: '' >E and: '../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:136: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_mtime_caching0/hello.py')" >E and: "flake8ignore = [], maxlength = '', maxdoclenght = '', maxcomplexity = ''" >E and: 'showsource = [], statistics = []' >E and: '' >E and: ' def check_file(path, flake8ignore, maxlength, maxdoclenght, maxcomplexity,' >E and: ' showsource, statistics):' >E and: ' """Run flake8 over a single file, and return the number of failures."""' >E and: ' args = []' >E and: ' if maxlength:' >E and: " args += ['--max-line-length', maxlength]" >E and: ' if maxdoclenght:' >E and: " args += ['--max-doc-length', maxdoclenght]" >E and: ' if maxcomplexity:' >E and: " args += ['--max-complexity', maxcomplexity]" >E and: ' if showsource:' >E and: " args += ['--show-source']" >E and: ' if statistics:' >E and: " args += ['--statistics']" >E and: ' app = application.Application()' >E and: ' prelim_opts, remaining_args = app.parse_preliminary_options(args)' >E and: '> config_finder = config.ConfigFileFinder(' >E and: ' app.program,' >E and: ' prelim_opts.append_config,' >E and: ' config_file=prelim_opts.config,' >E and: ' ignore_config_files=prelim_opts.isolated,' >E and: ' )' >E and: "E AttributeError: module 'flake8.options.config' has no attribute 'ConfigFileFinder'" >E and: '' >E and: '../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:217: AttributeError' >E and: '_________________________________ FLAKE8-check _________________________________' >E and: '' >E and: "cls = <class '_pytest.runner.CallInfo'>" >E and: 'func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe264cf69d0>' >E and: "when = 'call'" >E and: "reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)" >E and: '' >E and: ' @classmethod' >E and: ' def from_call(' >E and: ' cls,' >E and: ' func: "Callable[[], TResult]",' >E and: ' when: "Literal[\'collect\', \'setup\', \'call\', \'teardown\']",' >E and: ' reraise: Optional[' >E and: ' Union[Type[BaseException], Tuple[Type[BaseException], ...]]' >E and: ' ] = None,' >E and: ' ) -> "CallInfo[TResult]":' >E and: ' """Call func, wrapping the result in a CallInfo.' >E and: ' ' >E and: ' :param func:' >E and: ' The function to call. Called without arguments.' >E and: ' :param when:' >E and: ' The phase in which the function is called.' >E and: ' :param reraise:' >E and: ' Exception or exceptions that shall propagate if raised by the' >E and: ' function, instead of being wrapped in the CallInfo.' >E and: ' """' >E and: ' excinfo = None' >E and: ' start = timing.time()' >E and: ' precise_start = timing.perf_counter()' >E and: ' try:' >E and: '> result: Optional[TResult] = func()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/_pytest/runner.py:338: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: '> lambda: ihook(item=item, **kwds), when=when, reraise=reraise' >E and: ' )' >E and: '' >E and: '/usr/lib/python3.8/site-packages/_pytest/runner.py:259: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "self = <_HookCaller 'pytest_runtest_call'>, args = ()" >E and: "kwargs = {'item': <Flake8Item flake-8>}, argname = 'item', firstresult = False" >E and: '' >E and: ' def __call__(self, *args, **kwargs):' >E and: ' if args:' >E and: ' raise TypeError("hook calling supports only keyword arguments")' >E and: ' assert not self.is_historic()' >E and: ' ' >E and: ' # This is written to avoid expensive operations when not needed.' >E and: ' if self.spec:' >E and: ' for argname in self.spec.argnames:' >E and: ' if argname not in kwargs:' >E and: ' notincall = tuple(set(self.spec.argnames) - kwargs.keys())' >E and: ' warnings.warn(' >E and: ' "Argument(s) {} which are declared in the hookspec "' >E and: ' "can not be found in this hook call".format(notincall),' >E and: ' stacklevel=2,' >E and: ' )' >E and: ' break' >E and: ' ' >E and: ' firstresult = self.spec.opts.get("firstresult")' >E and: ' else:' >E and: ' firstresult = False' >E and: ' ' >E and: '> return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_hooks.py:265: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'self = <_pytest.config.PytestPluginManager object at 0x7fe264ac91c0>' >E and: "hook_name = 'pytest_runtest_call'" >E and: "methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]" >E and: "kwargs = {'item': <Flake8Item flake-8>}, firstresult = False" >E and: '' >E and: ' def _hookexec(self, hook_name, methods, kwargs, firstresult):' >E and: ' # called from all hookcaller instances.' >E and: ' # enable_tracing will set its own wrapping function at self._inner_hookexec' >E and: '> return self._inner_hookexec(hook_name, methods, kwargs, firstresult)' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_manager.py:80: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "hook_name = 'pytest_runtest_call'" >E and: "hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]" >E and: "kwargs = {'item': <Flake8Item flake-8>}, firstresult = False" >E and: '' >E and: ' def traced_hookexec(hook_name, hook_impls, kwargs, firstresult):' >E and: ' before(hook_name, hook_impls, kwargs)' >E and: ' outcome = _Result.from_call(' >E and: ' lambda: oldcall(hook_name, hook_impls, kwargs, firstresult)' >E and: ' )' >E and: ' after(outcome, hook_name, hook_impls, kwargs)' >E and: '> return outcome.get_result()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_manager.py:327: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'self = <pluggy._result._Result object at 0x7fe264ad68e0>' >E and: '' >E and: ' def get_result(self):' >E and: ' """Get the result(s) for this hook call.' >E and: ' ' >E and: ' If the hook was marked as a ``firstresult`` only a single value' >E and: ' will be returned otherwise a list of results.' >E and: ' """' >E and: ' __tracebackhide__ = True' >E and: ' if self._excinfo is None:' >E and: ' return self._result' >E and: ' else:' >E and: ' ex = self._excinfo' >E and: '> raise ex[1].with_traceback(ex[2])' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_result.py:60: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "cls = <class 'pluggy._result._Result'>" >E and: 'func = <function PluginManager.add_hookcall_monitoring.<locals>.traced_hookexec.<locals>.<lambda> at 0x7fe264cf61f0>' >E and: '' >E and: ' @classmethod' >E and: ' def from_call(cls, func):' >E and: ' __tracebackhide__ = True' >E and: ' result = excinfo = None' >E and: ' try:' >E and: '> result = func()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_result.py:33: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: '> lambda: oldcall(hook_name, hook_impls, kwargs, firstresult)' >E and: ' )' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_manager.py:324: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "hook_name = 'pytest_runtest_call'" >E and: "hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]" >E and: "caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False" >E and: '' >E and: ' def _multicall(hook_name, hook_impls, caller_kwargs, firstresult):' >E and: ' """Execute a call into multiple python functions/methods and return the' >E and: ' result(s).' >E and: ' ' >E and: ' ``caller_kwargs`` comes from _HookCaller.__call__().' >E and: ' """' >E and: ' __tracebackhide__ = True' >E and: ' results = []' >E and: ' excinfo = None' >E and: ' try: # run impl and wrapper setup functions in a loop' >E and: ' teardowns = []' >E and: ' try:' >E and: ' for hook_impl in reversed(hook_impls):' >E and: ' try:' >E and: ' args = [caller_kwargs[argname] for argname in hook_impl.argnames]' >E and: ' except KeyError:' >E and: ' for argname in hook_impl.argnames:' >E and: ' if argname not in caller_kwargs:' >E and: ' raise HookCallError(' >E and: ' f"hook call must provide argument {argname!r}"' >E and: ' )' >E and: ' ' >E and: ' if hook_impl.hookwrapper:' >E and: ' try:' >E and: ' gen = hook_impl.function(*args)' >E and: ' next(gen) # first yield' >E and: ' teardowns.append(gen)' >E and: ' except StopIteration:' >E and: ' _raise_wrapfail(gen, "did not yield")' >E and: ' else:' >E and: ' res = hook_impl.function(*args)' >E and: ' if res is not None:' >E and: ' results.append(res)' >E and: ' if firstresult: # halt further impl calls' >E and: ' break' >E and: ' except BaseException:' >E and: ' excinfo = sys.exc_info()' >E and: ' finally:' >E and: ' if firstresult: # first result hooks return a single value' >E and: ' outcome = _Result(results[0] if results else None, excinfo)' >E and: ' else:' >E and: ' outcome = _Result(results, excinfo)' >E and: ' ' >E and: ' # run all wrapper post-yield blocks' >E and: ' for gen in reversed(teardowns):' >E and: ' try:' >E and: ' gen.send(outcome)' >E and: ' _raise_wrapfail(gen, "has second yield")' >E and: ' except StopIteration:' >E and: ' pass' >E and: ' ' >E and: '> return outcome.get_result()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_callers.py:60: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'self = <pluggy._result._Result object at 0x7fe264ad6490>' >E and: '' >E and: ' def get_result(self):' >E and: ' """Get the result(s) for this hook call.' >E and: ' ' >E and: ' If the hook was marked as a ``firstresult`` only a single value' >E and: ' will be returned otherwise a list of results.' >E and: ' """' >E and: ' __tracebackhide__ = True' >E and: ' if self._excinfo is None:' >E and: ' return self._result' >E and: ' else:' >E and: ' ex = self._excinfo' >E and: '> raise ex[1].with_traceback(ex[2])' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_result.py:60: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "hook_name = 'pytest_runtest_call'" >E and: "hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]" >E and: "caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False" >E and: '' >E and: ' def _multicall(hook_name, hook_impls, caller_kwargs, firstresult):' >E and: ' """Execute a call into multiple python functions/methods and return the' >E and: ' result(s).' >E and: ' ' >E and: ' ``caller_kwargs`` comes from _HookCaller.__call__().' >E and: ' """' >E and: ' __tracebackhide__ = True' >E and: ' results = []' >E and: ' excinfo = None' >E and: ' try: # run impl and wrapper setup functions in a loop' >E and: ' teardowns = []' >E and: ' try:' >E and: ' for hook_impl in reversed(hook_impls):' >E and: ' try:' >E and: ' args = [caller_kwargs[argname] for argname in hook_impl.argnames]' >E and: ' except KeyError:' >E and: ' for argname in hook_impl.argnames:' >E and: ' if argname not in caller_kwargs:' >E and: ' raise HookCallError(' >E and: ' f"hook call must provide argument {argname!r}"' >E and: ' )' >E and: ' ' >E and: ' if hook_impl.hookwrapper:' >E and: ' try:' >E and: ' gen = hook_impl.function(*args)' >E and: ' next(gen) # first yield' >E and: ' teardowns.append(gen)' >E and: ' except StopIteration:' >E and: ' _raise_wrapfail(gen, "did not yield")' >E and: ' else:' >E and: '> res = hook_impl.function(*args)' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_callers.py:39: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'item = <Flake8Item flake-8>' >E and: '' >E and: ' def pytest_runtest_call(item: Item) -> None:' >E and: ' _update_current_test_var(item, "call")' >E and: ' try:' >E and: ' del sys.last_type' >E and: ' del sys.last_value' >E and: ' del sys.last_traceback' >E and: ' except AttributeError:' >E and: ' pass' >E and: ' try:' >E and: ' item.runtest()' >E and: ' except Exception as e:' >E and: ' # Store trace info to allow postmortem debugging' >E and: ' sys.last_type = type(e)' >E and: ' sys.last_value = e' >E and: ' assert e.__traceback__ is not None' >E and: ' # Skip *this* frame' >E and: ' sys.last_traceback = e.__traceback__.tb_next' >E and: '> raise e' >E and: '' >E and: '/usr/lib/python3.8/site-packages/_pytest/runner.py:174: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'item = <Flake8Item flake-8>' >E and: '' >E and: ' def pytest_runtest_call(item: Item) -> None:' >E and: ' _update_current_test_var(item, "call")' >E and: ' try:' >E and: ' del sys.last_type' >E and: ' del sys.last_value' >E and: ' del sys.last_traceback' >E and: ' except AttributeError:' >E and: ' pass' >E and: ' try:' >E and: '> item.runtest()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/_pytest/runner.py:166: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'self = <Flake8Item flake-8>' >E and: '' >E and: ' def runtest(self):' >E and: " with BytesIO() as bo, TextIOWrapper(bo, encoding='utf-8') as to, \\" >E and: " BytesIO() as be, TextIOWrapper(be, encoding='utf-8') as te, \\" >E and: ' redirect_stdout(to), redirect_stderr(te):' >E and: '> found_errors = check_file(' >E and: ' self.fspath,' >E and: ' self.flake8ignore,' >E and: ' self.maxlength,' >E and: ' self.maxdoclength,' >E and: ' self.maxcomplexity,' >E and: ' self.showsource,' >E and: ' self.statistics' >E and: ' )' >E and: '' >E and: '../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:136: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_mtime_caching0/test_mtime_caching.py')" >E and: "flake8ignore = [], maxlength = '', maxdoclenght = '', maxcomplexity = ''" >E and: 'showsource = [], statistics = []' >E and: '' >E and: ' def check_file(path, flake8ignore, maxlength, maxdoclenght, maxcomplexity,' >E and: ' showsource, statistics):' >E and: ' """Run flake8 over a single file, and return the number of failures."""' >E and: ' args = []' >E and: ' if maxlength:' >E and: " args += ['--max-line-length', maxlength]" >E and: ' if maxdoclenght:' >E and: " args += ['--max-doc-length', maxdoclenght]" >E and: ' if maxcomplexity:' >E and: " args += ['--max-complexity', maxcomplexity]" >E and: ' if showsource:' >E and: " args += ['--show-source']" >E and: ' if statistics:' >E and: " args += ['--statistics']" >E and: ' app = application.Application()' >E and: ' prelim_opts, remaining_args = app.parse_preliminary_options(args)' >E and: '> config_finder = config.ConfigFileFinder(' >E and: ' app.program,' >E and: ' prelim_opts.append_config,' >E and: ' config_file=prelim_opts.config,' >E and: ' ignore_config_files=prelim_opts.isolated,' >E and: ' )' >E and: "E AttributeError: module 'flake8.options.config' has no attribute 'ConfigFileFinder'" >E and: '' >E and: '../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:217: AttributeError' >E and: '=========================== short test summary info ============================' >E and: "FAILED hello.py::flake-8::FLAKE8 - AttributeError: module 'flake8.options.con..." >E and: "FAILED test_mtime_caching.py::flake-8::FLAKE8 - AttributeError: module 'flake..." >E and: '============================== 2 failed in 0.15s ===============================' >E remains unmatched: '*W293*' > >example = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_mtime_caching0/test_mtime_caching.py') >result = <RunResult ret=ExitCode.TESTS_FAILED len(stdout.lines)=694 len(stderr.lines)=0 duration=0.23s> >self = <test_flake8.TestIgnores object at 0x7fe2650bc4c0> >testdir = <Testdir local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_mtime_caching0')> > >/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1/test_flake8.py:91: Failed >---------------------------- Captured stderr setup ----------------------------- >/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_mtime_caching0 >----------------------------- Captured stdout call ----------------------------- >============================= test session starts ============================== >platform linux -- Python 3.8.13, pytest-7.1.2, pluggy-1.0.0 >rootdir: /var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_mtime_caching0 >plugins: flake8-1.1.1 >collected 2 items > >hello.py F [ 50%] >test_mtime_caching.py F [100%] > >=================================== FAILURES =================================== >_________________________________ FLAKE8-check _________________________________ > >cls = <class '_pytest.runner.CallInfo'> >func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe264cd6b80> >when = 'call' >reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>) > > @classmethod > def from_call( > cls, > func: "Callable[[], TResult]", > when: "Literal['collect', 'setup', 'call', 'teardown']", > reraise: Optional[ > Union[Type[BaseException], Tuple[Type[BaseException], ...]] > ] = None, > ) -> "CallInfo[TResult]": > """Call func, wrapping the result in a CallInfo. > > :param func: > The function to call. Called without arguments. > :param when: > The phase in which the function is called. > :param reraise: > Exception or exceptions that shall propagate if raised by the > function, instead of being wrapped in the CallInfo. > """ > excinfo = None > start = timing.time() > precise_start = timing.perf_counter() > try: >> result: Optional[TResult] = func() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:338: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ) > >/usr/lib/python3.8/site-packages/_pytest/runner.py:259: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_HookCaller 'pytest_runtest_call'>, args = () >kwargs = {'item': <Flake8Item flake-8>}, argname = 'item', firstresult = False > > def __call__(self, *args, **kwargs): > if args: > raise TypeError("hook calling supports only keyword arguments") > assert not self.is_historic() > > # This is written to avoid expensive operations when not needed. > if self.spec: > for argname in self.spec.argnames: > if argname not in kwargs: > notincall = tuple(set(self.spec.argnames) - kwargs.keys()) > warnings.warn( > "Argument(s) {} which are declared in the hookspec " > "can not be found in this hook call".format(notincall), > stacklevel=2, > ) > break > > firstresult = self.spec.opts.get("firstresult") > else: > firstresult = False > >> return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_hooks.py:265: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_pytest.config.PytestPluginManager object at 0x7fe264ac91c0> >hook_name = 'pytest_runtest_call' >methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _hookexec(self, hook_name, methods, kwargs, firstresult): > # called from all hookcaller instances. > # enable_tracing will set its own wrapping function at self._inner_hookexec >> return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:80: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def traced_hookexec(hook_name, hook_impls, kwargs, firstresult): > before(hook_name, hook_impls, kwargs) > outcome = _Result.from_call( > lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > after(outcome, hook_name, hook_impls, kwargs) >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:327: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264cb0d90> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >cls = <class 'pluggy._result._Result'> >func = <function PluginManager.add_hookcall_monitoring.<locals>.traced_hookexec.<locals>.<lambda> at 0x7fe264cf63a0> > > @classmethod > def from_call(cls, func): > __tracebackhide__ = True > result = excinfo = None > try: >> result = func() > >/usr/lib/python3.8/site-packages/pluggy/_result.py:33: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:324: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: > res = hook_impl.function(*args) > if res is not None: > results.append(res) > if firstresult: # halt further impl calls > break > except BaseException: > excinfo = sys.exc_info() > finally: > if firstresult: # first result hooks return a single value > outcome = _Result(results[0] if results else None, excinfo) > else: > outcome = _Result(results, excinfo) > > # run all wrapper post-yield blocks > for gen in reversed(teardowns): > try: > gen.send(outcome) > _raise_wrapfail(gen, "has second yield") > except StopIteration: > pass > >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264cb0850> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: >> res = hook_impl.function(*args) > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:39: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: > item.runtest() > except Exception as e: > # Store trace info to allow postmortem debugging > sys.last_type = type(e) > sys.last_value = e > assert e.__traceback__ is not None > # Skip *this* frame > sys.last_traceback = e.__traceback__.tb_next >> raise e > >/usr/lib/python3.8/site-packages/_pytest/runner.py:174: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: >> item.runtest() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:166: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <Flake8Item flake-8> > > def runtest(self): > with BytesIO() as bo, TextIOWrapper(bo, encoding='utf-8') as to, \ > BytesIO() as be, TextIOWrapper(be, encoding='utf-8') as te, \ > redirect_stdout(to), redirect_stderr(te): >> found_errors = check_file( > self.fspath, > self.flake8ignore, > self.maxlength, > self.maxdoclength, > self.maxcomplexity, > self.showsource, > self.statistics > ) > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:136: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_mtime_caching0/hello.py') >flake8ignore = [], maxlength = '', maxdoclenght = '', maxcomplexity = '' >showsource = [], statistics = [] > > def check_file(path, flake8ignore, maxlength, maxdoclenght, maxcomplexity, > showsource, statistics): > """Run flake8 over a single file, and return the number of failures.""" > args = [] > if maxlength: > args += ['--max-line-length', maxlength] > if maxdoclenght: > args += ['--max-doc-length', maxdoclenght] > if maxcomplexity: > args += ['--max-complexity', maxcomplexity] > if showsource: > args += ['--show-source'] > if statistics: > args += ['--statistics'] > app = application.Application() > prelim_opts, remaining_args = app.parse_preliminary_options(args) >> config_finder = config.ConfigFileFinder( > app.program, > prelim_opts.append_config, > config_file=prelim_opts.config, > ignore_config_files=prelim_opts.isolated, > ) >E AttributeError: module 'flake8.options.config' has no attribute 'ConfigFileFinder' > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:217: AttributeError >_________________________________ FLAKE8-check _________________________________ > >cls = <class '_pytest.runner.CallInfo'> >func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe264cf69d0> >when = 'call' >reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>) > > @classmethod > def from_call( > cls, > func: "Callable[[], TResult]", > when: "Literal['collect', 'setup', 'call', 'teardown']", > reraise: Optional[ > Union[Type[BaseException], Tuple[Type[BaseException], ...]] > ] = None, > ) -> "CallInfo[TResult]": > """Call func, wrapping the result in a CallInfo. > > :param func: > The function to call. Called without arguments. > :param when: > The phase in which the function is called. > :param reraise: > Exception or exceptions that shall propagate if raised by the > function, instead of being wrapped in the CallInfo. > """ > excinfo = None > start = timing.time() > precise_start = timing.perf_counter() > try: >> result: Optional[TResult] = func() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:338: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ) > >/usr/lib/python3.8/site-packages/_pytest/runner.py:259: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_HookCaller 'pytest_runtest_call'>, args = () >kwargs = {'item': <Flake8Item flake-8>}, argname = 'item', firstresult = False > > def __call__(self, *args, **kwargs): > if args: > raise TypeError("hook calling supports only keyword arguments") > assert not self.is_historic() > > # This is written to avoid expensive operations when not needed. > if self.spec: > for argname in self.spec.argnames: > if argname not in kwargs: > notincall = tuple(set(self.spec.argnames) - kwargs.keys()) > warnings.warn( > "Argument(s) {} which are declared in the hookspec " > "can not be found in this hook call".format(notincall), > stacklevel=2, > ) > break > > firstresult = self.spec.opts.get("firstresult") > else: > firstresult = False > >> return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_hooks.py:265: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_pytest.config.PytestPluginManager object at 0x7fe264ac91c0> >hook_name = 'pytest_runtest_call' >methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _hookexec(self, hook_name, methods, kwargs, firstresult): > # called from all hookcaller instances. > # enable_tracing will set its own wrapping function at self._inner_hookexec >> return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:80: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def traced_hookexec(hook_name, hook_impls, kwargs, firstresult): > before(hook_name, hook_impls, kwargs) > outcome = _Result.from_call( > lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > after(outcome, hook_name, hook_impls, kwargs) >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:327: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264ad68e0> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >cls = <class 'pluggy._result._Result'> >func = <function PluginManager.add_hookcall_monitoring.<locals>.traced_hookexec.<locals>.<lambda> at 0x7fe264cf61f0> > > @classmethod > def from_call(cls, func): > __tracebackhide__ = True > result = excinfo = None > try: >> result = func() > >/usr/lib/python3.8/site-packages/pluggy/_result.py:33: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:324: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: > res = hook_impl.function(*args) > if res is not None: > results.append(res) > if firstresult: # halt further impl calls > break > except BaseException: > excinfo = sys.exc_info() > finally: > if firstresult: # first result hooks return a single value > outcome = _Result(results[0] if results else None, excinfo) > else: > outcome = _Result(results, excinfo) > > # run all wrapper post-yield blocks > for gen in reversed(teardowns): > try: > gen.send(outcome) > _raise_wrapfail(gen, "has second yield") > except StopIteration: > pass > >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264ad6490> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: >> res = hook_impl.function(*args) > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:39: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: > item.runtest() > except Exception as e: > # Store trace info to allow postmortem debugging > sys.last_type = type(e) > sys.last_value = e > assert e.__traceback__ is not None > # Skip *this* frame > sys.last_traceback = e.__traceback__.tb_next >> raise e > >/usr/lib/python3.8/site-packages/_pytest/runner.py:174: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: >> item.runtest() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:166: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <Flake8Item flake-8> > > def runtest(self): > with BytesIO() as bo, TextIOWrapper(bo, encoding='utf-8') as to, \ > BytesIO() as be, TextIOWrapper(be, encoding='utf-8') as te, \ > redirect_stdout(to), redirect_stderr(te): >> found_errors = check_file( > self.fspath, > self.flake8ignore, > self.maxlength, > self.maxdoclength, > self.maxcomplexity, > self.showsource, > self.statistics > ) > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:136: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_mtime_caching0/test_mtime_caching.py') >flake8ignore = [], maxlength = '', maxdoclenght = '', maxcomplexity = '' >showsource = [], statistics = [] > > def check_file(path, flake8ignore, maxlength, maxdoclenght, maxcomplexity, > showsource, statistics): > """Run flake8 over a single file, and return the number of failures.""" > args = [] > if maxlength: > args += ['--max-line-length', maxlength] > if maxdoclenght: > args += ['--max-doc-length', maxdoclenght] > if maxcomplexity: > args += ['--max-complexity', maxcomplexity] > if showsource: > args += ['--show-source'] > if statistics: > args += ['--statistics'] > app = application.Application() > prelim_opts, remaining_args = app.parse_preliminary_options(args) >> config_finder = config.ConfigFileFinder( > app.program, > prelim_opts.append_config, > config_file=prelim_opts.config, > ignore_config_files=prelim_opts.isolated, > ) >E AttributeError: module 'flake8.options.config' has no attribute 'ConfigFileFinder' > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:217: AttributeError >=========================== short test summary info ============================ >FAILED hello.py::flake-8::FLAKE8 - AttributeError: module 'flake8.options.con... >FAILED test_mtime_caching.py::flake-8::FLAKE8 - AttributeError: module 'flake... >============================== 2 failed in 0.15s =============================== >_______________________________ test_ok_verbose ________________________________ > >testdir = <Testdir local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_ok_verbose0')> > > def test_ok_verbose(testdir): > p = testdir.makepyfile(""" > class AClass: > pass > """) > p = p.write(p.read() + "\n") > result = testdir.runpytest("--flake8", "--verbose") > result.stdout.fnmatch_lines([ > "*test_ok_verbose*", > ]) >> result.assert_outcomes(passed=1) >E AssertionError: assert {'errors': 0,\n 'failed': 1,\n 'passed': 0,\n 'skipped': 0,\n 'xfailed': 0,\n 'xpassed': 0} == {'errors': 0,\n 'failed': 0,\n 'passed': 1,\n 'skipped': 0,\n 'xfailed': 0,\n 'xpassed': 0} >E Common items: >E {'errors': 0, 'skipped': 0, 'xfailed': 0, 'xpassed': 0} >E Differing items: >E {'passed': 0} != {'passed': 1} >E {'failed': 1} != {'failed': 0} >E Full diff: >E { >E 'errors': 0, >E - 'failed': 0, >E ? ^ >E + 'failed': 1, >E ? ^ >E - 'passed': 1, >E ? ^ >E + 'passed': 0, >E ? ^ >E 'skipped': 0, >E 'xfailed': 0, >E 'xpassed': 0, >E } > >p = None >result = <RunResult ret=ExitCode.TESTS_FAILED len(stdout.lines)=353 len(stderr.lines)=0 duration=0.16s> >testdir = <Testdir local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_ok_verbose0')> > >/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1/test_flake8.py:139: AssertionError >----------------------------- Captured stdout call ----------------------------- >============================= test session starts ============================== >platform linux -- Python 3.8.13, pytest-7.1.2, pluggy-1.0.0 -- /var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1-python3_8/install/usr/bin/python3.8 >cachedir: .pytest_cache >rootdir: /var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_ok_verbose0 >plugins: flake8-1.1.1 >collecting ... collected 1 item > >test_ok_verbose.py::flake-8::FLAKE8 FAILED [100%] > >=================================== FAILURES =================================== >_________________________________ FLAKE8-check _________________________________ > >cls = <class '_pytest.runner.CallInfo'> >func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe264cd64c0> >when = 'call' >reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>) > > @classmethod > def from_call( > cls, > func: "Callable[[], TResult]", > when: "Literal['collect', 'setup', 'call', 'teardown']", > reraise: Optional[ > Union[Type[BaseException], Tuple[Type[BaseException], ...]] > ] = None, > ) -> "CallInfo[TResult]": > """Call func, wrapping the result in a CallInfo. > > :param func: > The function to call. Called without arguments. > :param when: > The phase in which the function is called. > :param reraise: > Exception or exceptions that shall propagate if raised by the > function, instead of being wrapped in the CallInfo. > """ > excinfo = None > start = timing.time() > precise_start = timing.perf_counter() > try: >> result: Optional[TResult] = func() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:338: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ) > >/usr/lib/python3.8/site-packages/_pytest/runner.py:259: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_HookCaller 'pytest_runtest_call'>, args = () >kwargs = {'item': <Flake8Item flake-8>}, argname = 'item', firstresult = False > > def __call__(self, *args, **kwargs): > if args: > raise TypeError("hook calling supports only keyword arguments") > assert not self.is_historic() > > # This is written to avoid expensive operations when not needed. > if self.spec: > for argname in self.spec.argnames: > if argname not in kwargs: > notincall = tuple(set(self.spec.argnames) - kwargs.keys()) > warnings.warn( > "Argument(s) {} which are declared in the hookspec " > "can not be found in this hook call".format(notincall), > stacklevel=2, > ) > break > > firstresult = self.spec.opts.get("firstresult") > else: > firstresult = False > >> return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_hooks.py:265: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_pytest.config.PytestPluginManager object at 0x7fe264a3b3a0> >hook_name = 'pytest_runtest_call' >methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _hookexec(self, hook_name, methods, kwargs, firstresult): > # called from all hookcaller instances. > # enable_tracing will set its own wrapping function at self._inner_hookexec >> return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:80: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def traced_hookexec(hook_name, hook_impls, kwargs, firstresult): > before(hook_name, hook_impls, kwargs) > outcome = _Result.from_call( > lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > after(outcome, hook_name, hook_impls, kwargs) >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:327: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264a02880> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >cls = <class 'pluggy._result._Result'> >func = <function PluginManager.add_hookcall_monitoring.<locals>.traced_hookexec.<locals>.<lambda> at 0x7fe264d61d30> > > @classmethod > def from_call(cls, func): > __tracebackhide__ = True > result = excinfo = None > try: >> result = func() > >/usr/lib/python3.8/site-packages/pluggy/_result.py:33: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:324: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: > res = hook_impl.function(*args) > if res is not None: > results.append(res) > if firstresult: # halt further impl calls > break > except BaseException: > excinfo = sys.exc_info() > finally: > if firstresult: # first result hooks return a single value > outcome = _Result(results[0] if results else None, excinfo) > else: > outcome = _Result(results, excinfo) > > # run all wrapper post-yield blocks > for gen in reversed(teardowns): > try: > gen.send(outcome) > _raise_wrapfail(gen, "has second yield") > except StopIteration: > pass > >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264a02e50> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: >> res = hook_impl.function(*args) > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:39: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: > item.runtest() > except Exception as e: > # Store trace info to allow postmortem debugging > sys.last_type = type(e) > sys.last_value = e > assert e.__traceback__ is not None > # Skip *this* frame > sys.last_traceback = e.__traceback__.tb_next >> raise e > >/usr/lib/python3.8/site-packages/_pytest/runner.py:174: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: >> item.runtest() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:166: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <Flake8Item flake-8> > > def runtest(self): > with BytesIO() as bo, TextIOWrapper(bo, encoding='utf-8') as to, \ > BytesIO() as be, TextIOWrapper(be, encoding='utf-8') as te, \ > redirect_stdout(to), redirect_stderr(te): >> found_errors = check_file( > self.fspath, > self.flake8ignore, > self.maxlength, > self.maxdoclength, > self.maxcomplexity, > self.showsource, > self.statistics > ) > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:136: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_ok_verbose0/test_ok_verbose.py') >flake8ignore = [], maxlength = '', maxdoclenght = '', maxcomplexity = '' >showsource = [], statistics = [] > > def check_file(path, flake8ignore, maxlength, maxdoclenght, maxcomplexity, > showsource, statistics): > """Run flake8 over a single file, and return the number of failures.""" > args = [] > if maxlength: > args += ['--max-line-length', maxlength] > if maxdoclenght: > args += ['--max-doc-length', maxdoclenght] > if maxcomplexity: > args += ['--max-complexity', maxcomplexity] > if showsource: > args += ['--show-source'] > if statistics: > args += ['--statistics'] > app = application.Application() > prelim_opts, remaining_args = app.parse_preliminary_options(args) >> config_finder = config.ConfigFileFinder( > app.program, > prelim_opts.append_config, > config_file=prelim_opts.config, > ignore_config_files=prelim_opts.isolated, > ) >E AttributeError: module 'flake8.options.config' has no attribute 'ConfigFileFinder' > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:217: AttributeError >=========================== short test summary info ============================ >FAILED test_ok_verbose.py::flake-8::FLAKE8 - AttributeError: module 'flake8.o... >============================== 1 failed in 0.08s =============================== >______________________________ test_keyword_match ______________________________ > >testdir = <Testdir local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_keyword_match0')> > > def test_keyword_match(testdir): > testdir.makepyfile(""" > def test_hello(): > a=[ 1,123] > # > """) > result = testdir.runpytest("--flake8", "-mflake8") >> result.stdout.fnmatch_lines([ > "*E201*", > "*1 failed*", > ]) >E Failed: nomatch: '*E201*' >E and: '============================= test session starts ==============================' >E and: 'platform linux -- Python 3.8.13, pytest-7.1.2, pluggy-1.0.0' >E and: 'rootdir: /var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_keyword_match0' >E and: 'plugins: flake8-1.1.1' >E and: 'collected 2 items / 1 deselected / 1 selected' >E and: '' >E and: 'test_keyword_match.py F [100%]' >E and: '' >E and: '=================================== FAILURES ===================================' >E and: '_________________________________ FLAKE8-check _________________________________' >E and: '' >E and: "cls = <class '_pytest.runner.CallInfo'>" >E and: 'func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe264d61f70>' >E and: "when = 'call'" >E and: "reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>)" >E and: '' >E and: ' @classmethod' >E and: ' def from_call(' >E and: ' cls,' >E and: ' func: "Callable[[], TResult]",' >E and: ' when: "Literal[\'collect\', \'setup\', \'call\', \'teardown\']",' >E and: ' reraise: Optional[' >E and: ' Union[Type[BaseException], Tuple[Type[BaseException], ...]]' >E and: ' ] = None,' >E and: ' ) -> "CallInfo[TResult]":' >E and: ' """Call func, wrapping the result in a CallInfo.' >E and: ' ' >E and: ' :param func:' >E and: ' The function to call. Called without arguments.' >E and: ' :param when:' >E and: ' The phase in which the function is called.' >E and: ' :param reraise:' >E and: ' Exception or exceptions that shall propagate if raised by the' >E and: ' function, instead of being wrapped in the CallInfo.' >E and: ' """' >E and: ' excinfo = None' >E and: ' start = timing.time()' >E and: ' precise_start = timing.perf_counter()' >E and: ' try:' >E and: '> result: Optional[TResult] = func()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/_pytest/runner.py:338: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: '> lambda: ihook(item=item, **kwds), when=when, reraise=reraise' >E and: ' )' >E and: '' >E and: '/usr/lib/python3.8/site-packages/_pytest/runner.py:259: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "self = <_HookCaller 'pytest_runtest_call'>, args = ()" >E and: "kwargs = {'item': <Flake8Item flake-8>}, argname = 'item', firstresult = False" >E and: '' >E and: ' def __call__(self, *args, **kwargs):' >E and: ' if args:' >E and: ' raise TypeError("hook calling supports only keyword arguments")' >E and: ' assert not self.is_historic()' >E and: ' ' >E and: ' # This is written to avoid expensive operations when not needed.' >E and: ' if self.spec:' >E and: ' for argname in self.spec.argnames:' >E and: ' if argname not in kwargs:' >E and: ' notincall = tuple(set(self.spec.argnames) - kwargs.keys())' >E and: ' warnings.warn(' >E and: ' "Argument(s) {} which are declared in the hookspec "' >E and: ' "can not be found in this hook call".format(notincall),' >E and: ' stacklevel=2,' >E and: ' )' >E and: ' break' >E and: ' ' >E and: ' firstresult = self.spec.opts.get("firstresult")' >E and: ' else:' >E and: ' firstresult = False' >E and: ' ' >E and: '> return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult)' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_hooks.py:265: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'self = <_pytest.config.PytestPluginManager object at 0x7fe264920ca0>' >E and: "hook_name = 'pytest_runtest_call'" >E and: "methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]" >E and: "kwargs = {'item': <Flake8Item flake-8>}, firstresult = False" >E and: '' >E and: ' def _hookexec(self, hook_name, methods, kwargs, firstresult):' >E and: ' # called from all hookcaller instances.' >E and: ' # enable_tracing will set its own wrapping function at self._inner_hookexec' >E and: '> return self._inner_hookexec(hook_name, methods, kwargs, firstresult)' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_manager.py:80: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "hook_name = 'pytest_runtest_call'" >E and: "hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]" >E and: "kwargs = {'item': <Flake8Item flake-8>}, firstresult = False" >E and: '' >E and: ' def traced_hookexec(hook_name, hook_impls, kwargs, firstresult):' >E and: ' before(hook_name, hook_impls, kwargs)' >E and: ' outcome = _Result.from_call(' >E and: ' lambda: oldcall(hook_name, hook_impls, kwargs, firstresult)' >E and: ' )' >E and: ' after(outcome, hook_name, hook_impls, kwargs)' >E and: '> return outcome.get_result()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_manager.py:327: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'self = <pluggy._result._Result object at 0x7fe264b0cc70>' >E and: '' >E and: ' def get_result(self):' >E and: ' """Get the result(s) for this hook call.' >E and: ' ' >E and: ' If the hook was marked as a ``firstresult`` only a single value' >E and: ' will be returned otherwise a list of results.' >E and: ' """' >E and: ' __tracebackhide__ = True' >E and: ' if self._excinfo is None:' >E and: ' return self._result' >E and: ' else:' >E and: ' ex = self._excinfo' >E and: '> raise ex[1].with_traceback(ex[2])' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_result.py:60: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "cls = <class 'pluggy._result._Result'>" >E and: 'func = <function PluginManager.add_hookcall_monitoring.<locals>.traced_hookexec.<locals>.<lambda> at 0x7fe264abf4c0>' >E and: '' >E and: ' @classmethod' >E and: ' def from_call(cls, func):' >E and: ' __tracebackhide__ = True' >E and: ' result = excinfo = None' >E and: ' try:' >E and: '> result = func()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_result.py:33: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: '> lambda: oldcall(hook_name, hook_impls, kwargs, firstresult)' >E and: ' )' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_manager.py:324: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "hook_name = 'pytest_runtest_call'" >E and: "hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]" >E and: "caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False" >E and: '' >E and: ' def _multicall(hook_name, hook_impls, caller_kwargs, firstresult):' >E and: ' """Execute a call into multiple python functions/methods and return the' >E and: ' result(s).' >E and: ' ' >E and: ' ``caller_kwargs`` comes from _HookCaller.__call__().' >E and: ' """' >E and: ' __tracebackhide__ = True' >E and: ' results = []' >E and: ' excinfo = None' >E and: ' try: # run impl and wrapper setup functions in a loop' >E and: ' teardowns = []' >E and: ' try:' >E and: ' for hook_impl in reversed(hook_impls):' >E and: ' try:' >E and: ' args = [caller_kwargs[argname] for argname in hook_impl.argnames]' >E and: ' except KeyError:' >E and: ' for argname in hook_impl.argnames:' >E and: ' if argname not in caller_kwargs:' >E and: ' raise HookCallError(' >E and: ' f"hook call must provide argument {argname!r}"' >E and: ' )' >E and: ' ' >E and: ' if hook_impl.hookwrapper:' >E and: ' try:' >E and: ' gen = hook_impl.function(*args)' >E and: ' next(gen) # first yield' >E and: ' teardowns.append(gen)' >E and: ' except StopIteration:' >E and: ' _raise_wrapfail(gen, "did not yield")' >E and: ' else:' >E and: ' res = hook_impl.function(*args)' >E and: ' if res is not None:' >E and: ' results.append(res)' >E and: ' if firstresult: # halt further impl calls' >E and: ' break' >E and: ' except BaseException:' >E and: ' excinfo = sys.exc_info()' >E and: ' finally:' >E and: ' if firstresult: # first result hooks return a single value' >E and: ' outcome = _Result(results[0] if results else None, excinfo)' >E and: ' else:' >E and: ' outcome = _Result(results, excinfo)' >E and: ' ' >E and: ' # run all wrapper post-yield blocks' >E and: ' for gen in reversed(teardowns):' >E and: ' try:' >E and: ' gen.send(outcome)' >E and: ' _raise_wrapfail(gen, "has second yield")' >E and: ' except StopIteration:' >E and: ' pass' >E and: ' ' >E and: '> return outcome.get_result()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_callers.py:60: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'self = <pluggy._result._Result object at 0x7fe264b0c040>' >E and: '' >E and: ' def get_result(self):' >E and: ' """Get the result(s) for this hook call.' >E and: ' ' >E and: ' If the hook was marked as a ``firstresult`` only a single value' >E and: ' will be returned otherwise a list of results.' >E and: ' """' >E and: ' __tracebackhide__ = True' >E and: ' if self._excinfo is None:' >E and: ' return self._result' >E and: ' else:' >E and: ' ex = self._excinfo' >E and: '> raise ex[1].with_traceback(ex[2])' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_result.py:60: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "hook_name = 'pytest_runtest_call'" >E and: "hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]" >E and: "caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False" >E and: '' >E and: ' def _multicall(hook_name, hook_impls, caller_kwargs, firstresult):' >E and: ' """Execute a call into multiple python functions/methods and return the' >E and: ' result(s).' >E and: ' ' >E and: ' ``caller_kwargs`` comes from _HookCaller.__call__().' >E and: ' """' >E and: ' __tracebackhide__ = True' >E and: ' results = []' >E and: ' excinfo = None' >E and: ' try: # run impl and wrapper setup functions in a loop' >E and: ' teardowns = []' >E and: ' try:' >E and: ' for hook_impl in reversed(hook_impls):' >E and: ' try:' >E and: ' args = [caller_kwargs[argname] for argname in hook_impl.argnames]' >E and: ' except KeyError:' >E and: ' for argname in hook_impl.argnames:' >E and: ' if argname not in caller_kwargs:' >E and: ' raise HookCallError(' >E and: ' f"hook call must provide argument {argname!r}"' >E and: ' )' >E and: ' ' >E and: ' if hook_impl.hookwrapper:' >E and: ' try:' >E and: ' gen = hook_impl.function(*args)' >E and: ' next(gen) # first yield' >E and: ' teardowns.append(gen)' >E and: ' except StopIteration:' >E and: ' _raise_wrapfail(gen, "did not yield")' >E and: ' else:' >E and: '> res = hook_impl.function(*args)' >E and: '' >E and: '/usr/lib/python3.8/site-packages/pluggy/_callers.py:39: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'item = <Flake8Item flake-8>' >E and: '' >E and: ' def pytest_runtest_call(item: Item) -> None:' >E and: ' _update_current_test_var(item, "call")' >E and: ' try:' >E and: ' del sys.last_type' >E and: ' del sys.last_value' >E and: ' del sys.last_traceback' >E and: ' except AttributeError:' >E and: ' pass' >E and: ' try:' >E and: ' item.runtest()' >E and: ' except Exception as e:' >E and: ' # Store trace info to allow postmortem debugging' >E and: ' sys.last_type = type(e)' >E and: ' sys.last_value = e' >E and: ' assert e.__traceback__ is not None' >E and: ' # Skip *this* frame' >E and: ' sys.last_traceback = e.__traceback__.tb_next' >E and: '> raise e' >E and: '' >E and: '/usr/lib/python3.8/site-packages/_pytest/runner.py:174: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'item = <Flake8Item flake-8>' >E and: '' >E and: ' def pytest_runtest_call(item: Item) -> None:' >E and: ' _update_current_test_var(item, "call")' >E and: ' try:' >E and: ' del sys.last_type' >E and: ' del sys.last_value' >E and: ' del sys.last_traceback' >E and: ' except AttributeError:' >E and: ' pass' >E and: ' try:' >E and: '> item.runtest()' >E and: '' >E and: '/usr/lib/python3.8/site-packages/_pytest/runner.py:166: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: 'self = <Flake8Item flake-8>' >E and: '' >E and: ' def runtest(self):' >E and: " with BytesIO() as bo, TextIOWrapper(bo, encoding='utf-8') as to, \\" >E and: " BytesIO() as be, TextIOWrapper(be, encoding='utf-8') as te, \\" >E and: ' redirect_stdout(to), redirect_stderr(te):' >E and: '> found_errors = check_file(' >E and: ' self.fspath,' >E and: ' self.flake8ignore,' >E and: ' self.maxlength,' >E and: ' self.maxdoclength,' >E and: ' self.maxcomplexity,' >E and: ' self.showsource,' >E and: ' self.statistics' >E and: ' )' >E and: '' >E and: '../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:136: ' >E and: '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' >E and: '' >E and: "path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_keyword_match0/test_keyword_match.py')" >E and: "flake8ignore = [], maxlength = '', maxdoclenght = '', maxcomplexity = ''" >E and: 'showsource = [], statistics = []' >E and: '' >E and: ' def check_file(path, flake8ignore, maxlength, maxdoclenght, maxcomplexity,' >E and: ' showsource, statistics):' >E and: ' """Run flake8 over a single file, and return the number of failures."""' >E and: ' args = []' >E and: ' if maxlength:' >E and: " args += ['--max-line-length', maxlength]" >E and: ' if maxdoclenght:' >E and: " args += ['--max-doc-length', maxdoclenght]" >E and: ' if maxcomplexity:' >E and: " args += ['--max-complexity', maxcomplexity]" >E and: ' if showsource:' >E and: " args += ['--show-source']" >E and: ' if statistics:' >E and: " args += ['--statistics']" >E and: ' app = application.Application()' >E and: ' prelim_opts, remaining_args = app.parse_preliminary_options(args)' >E and: '> config_finder = config.ConfigFileFinder(' >E and: ' app.program,' >E and: ' prelim_opts.append_config,' >E and: ' config_file=prelim_opts.config,' >E and: ' ignore_config_files=prelim_opts.isolated,' >E and: ' )' >E and: "E AttributeError: module 'flake8.options.config' has no attribute 'ConfigFileFinder'" >E and: '' >E and: '../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:217: AttributeError' >E and: '=========================== short test summary info ============================' >E and: "FAILED test_keyword_match.py::flake-8::FLAKE8 - AttributeError: module 'flake..." >E and: '======================= 1 failed, 1 deselected in 0.08s ========================' >E remains unmatched: '*E201*' > >result = <RunResult ret=ExitCode.TESTS_FAILED len(stdout.lines)=352 len(stderr.lines)=0 duration=0.15s> >testdir = <Testdir local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_keyword_match0')> > >/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1/test_flake8.py:149: Failed >----------------------------- Captured stdout call ----------------------------- >============================= test session starts ============================== >platform linux -- Python 3.8.13, pytest-7.1.2, pluggy-1.0.0 >rootdir: /var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_keyword_match0 >plugins: flake8-1.1.1 >collected 2 items / 1 deselected / 1 selected > >test_keyword_match.py F [100%] > >=================================== FAILURES =================================== >_________________________________ FLAKE8-check _________________________________ > >cls = <class '_pytest.runner.CallInfo'> >func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe264d61f70> >when = 'call' >reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>) > > @classmethod > def from_call( > cls, > func: "Callable[[], TResult]", > when: "Literal['collect', 'setup', 'call', 'teardown']", > reraise: Optional[ > Union[Type[BaseException], Tuple[Type[BaseException], ...]] > ] = None, > ) -> "CallInfo[TResult]": > """Call func, wrapping the result in a CallInfo. > > :param func: > The function to call. Called without arguments. > :param when: > The phase in which the function is called. > :param reraise: > Exception or exceptions that shall propagate if raised by the > function, instead of being wrapped in the CallInfo. > """ > excinfo = None > start = timing.time() > precise_start = timing.perf_counter() > try: >> result: Optional[TResult] = func() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:338: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ) > >/usr/lib/python3.8/site-packages/_pytest/runner.py:259: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_HookCaller 'pytest_runtest_call'>, args = () >kwargs = {'item': <Flake8Item flake-8>}, argname = 'item', firstresult = False > > def __call__(self, *args, **kwargs): > if args: > raise TypeError("hook calling supports only keyword arguments") > assert not self.is_historic() > > # This is written to avoid expensive operations when not needed. > if self.spec: > for argname in self.spec.argnames: > if argname not in kwargs: > notincall = tuple(set(self.spec.argnames) - kwargs.keys()) > warnings.warn( > "Argument(s) {} which are declared in the hookspec " > "can not be found in this hook call".format(notincall), > stacklevel=2, > ) > break > > firstresult = self.spec.opts.get("firstresult") > else: > firstresult = False > >> return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_hooks.py:265: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_pytest.config.PytestPluginManager object at 0x7fe264920ca0> >hook_name = 'pytest_runtest_call' >methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _hookexec(self, hook_name, methods, kwargs, firstresult): > # called from all hookcaller instances. > # enable_tracing will set its own wrapping function at self._inner_hookexec >> return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:80: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def traced_hookexec(hook_name, hook_impls, kwargs, firstresult): > before(hook_name, hook_impls, kwargs) > outcome = _Result.from_call( > lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > after(outcome, hook_name, hook_impls, kwargs) >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:327: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264b0cc70> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >cls = <class 'pluggy._result._Result'> >func = <function PluginManager.add_hookcall_monitoring.<locals>.traced_hookexec.<locals>.<lambda> at 0x7fe264abf4c0> > > @classmethod > def from_call(cls, func): > __tracebackhide__ = True > result = excinfo = None > try: >> result = func() > >/usr/lib/python3.8/site-packages/pluggy/_result.py:33: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:324: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: > res = hook_impl.function(*args) > if res is not None: > results.append(res) > if firstresult: # halt further impl calls > break > except BaseException: > excinfo = sys.exc_info() > finally: > if firstresult: # first result hooks return a single value > outcome = _Result(results[0] if results else None, excinfo) > else: > outcome = _Result(results, excinfo) > > # run all wrapper post-yield blocks > for gen in reversed(teardowns): > try: > gen.send(outcome) > _raise_wrapfail(gen, "has second yield") > except StopIteration: > pass > >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264b0c040> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: >> res = hook_impl.function(*args) > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:39: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: > item.runtest() > except Exception as e: > # Store trace info to allow postmortem debugging > sys.last_type = type(e) > sys.last_value = e > assert e.__traceback__ is not None > # Skip *this* frame > sys.last_traceback = e.__traceback__.tb_next >> raise e > >/usr/lib/python3.8/site-packages/_pytest/runner.py:174: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: >> item.runtest() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:166: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <Flake8Item flake-8> > > def runtest(self): > with BytesIO() as bo, TextIOWrapper(bo, encoding='utf-8') as to, \ > BytesIO() as be, TextIOWrapper(be, encoding='utf-8') as te, \ > redirect_stdout(to), redirect_stderr(te): >> found_errors = check_file( > self.fspath, > self.flake8ignore, > self.maxlength, > self.maxdoclength, > self.maxcomplexity, > self.showsource, > self.statistics > ) > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:136: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_keyword_match0/test_keyword_match.py') >flake8ignore = [], maxlength = '', maxdoclenght = '', maxcomplexity = '' >showsource = [], statistics = [] > > def check_file(path, flake8ignore, maxlength, maxdoclenght, maxcomplexity, > showsource, statistics): > """Run flake8 over a single file, and return the number of failures.""" > args = [] > if maxlength: > args += ['--max-line-length', maxlength] > if maxdoclenght: > args += ['--max-doc-length', maxdoclenght] > if maxcomplexity: > args += ['--max-complexity', maxcomplexity] > if showsource: > args += ['--show-source'] > if statistics: > args += ['--statistics'] > app = application.Application() > prelim_opts, remaining_args = app.parse_preliminary_options(args) >> config_finder = config.ConfigFileFinder( > app.program, > prelim_opts.append_config, > config_file=prelim_opts.config, > ignore_config_files=prelim_opts.isolated, > ) >E AttributeError: module 'flake8.options.config' has no attribute 'ConfigFileFinder' > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:217: AttributeError >=========================== short test summary info ============================ >FAILED test_keyword_match.py::flake-8::FLAKE8 - AttributeError: module 'flake... >======================= 1 failed, 1 deselected in 0.08s ======================== >____________________________ test_run_on_init_file _____________________________ > >testdir = <Testdir local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_run_on_init_file0')> > > def test_run_on_init_file(testdir): > d = testdir.mkpydir("tests") > result = testdir.runpytest("--flake8", d / "__init__.py") >> result.assert_outcomes(passed=1) >E AssertionError: assert {'errors': 0,\n 'failed': 1,\n 'passed': 0,\n 'skipped': 0,\n 'xfailed': 0,\n 'xpassed': 0} == {'errors': 0,\n 'failed': 0,\n 'passed': 1,\n 'skipped': 0,\n 'xfailed': 0,\n 'xpassed': 0} >E Common items: >E {'errors': 0, 'skipped': 0, 'xfailed': 0, 'xpassed': 0} >E Differing items: >E {'passed': 0} != {'passed': 1} >E {'failed': 1} != {'failed': 0} >E Full diff: >E { >E 'errors': 0, >E - 'failed': 0, >E ? ^ >E + 'failed': 1, >E ? ^ >E - 'passed': 1, >E ? ^ >E + 'passed': 0, >E ? ^ >E 'skipped': 0, >E 'xfailed': 0, >E 'xpassed': 0, >E } > >d = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_run_on_init_file0/tests') >result = <RunResult ret=ExitCode.TESTS_FAILED len(stdout.lines)=352 len(stderr.lines)=0 duration=0.13s> >testdir = <Testdir local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_run_on_init_file0')> > >/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1/test_flake8.py:159: AssertionError >----------------------------- Captured stdout call ----------------------------- >============================= test session starts ============================== >platform linux -- Python 3.8.13, pytest-7.1.2, pluggy-1.0.0 >rootdir: /var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_run_on_init_file0 >plugins: flake8-1.1.1 >collected 1 item > >tests/__init__.py F [100%] > >=================================== FAILURES =================================== >_________________________________ FLAKE8-check _________________________________ > >cls = <class '_pytest.runner.CallInfo'> >func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe264b6b820> >when = 'call' >reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>) > > @classmethod > def from_call( > cls, > func: "Callable[[], TResult]", > when: "Literal['collect', 'setup', 'call', 'teardown']", > reraise: Optional[ > Union[Type[BaseException], Tuple[Type[BaseException], ...]] > ] = None, > ) -> "CallInfo[TResult]": > """Call func, wrapping the result in a CallInfo. > > :param func: > The function to call. Called without arguments. > :param when: > The phase in which the function is called. > :param reraise: > Exception or exceptions that shall propagate if raised by the > function, instead of being wrapped in the CallInfo. > """ > excinfo = None > start = timing.time() > precise_start = timing.perf_counter() > try: >> result: Optional[TResult] = func() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:338: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ) > >/usr/lib/python3.8/site-packages/_pytest/runner.py:259: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_HookCaller 'pytest_runtest_call'>, args = () >kwargs = {'item': <Flake8Item flake-8>}, argname = 'item', firstresult = False > > def __call__(self, *args, **kwargs): > if args: > raise TypeError("hook calling supports only keyword arguments") > assert not self.is_historic() > > # This is written to avoid expensive operations when not needed. > if self.spec: > for argname in self.spec.argnames: > if argname not in kwargs: > notincall = tuple(set(self.spec.argnames) - kwargs.keys()) > warnings.warn( > "Argument(s) {} which are declared in the hookspec " > "can not be found in this hook call".format(notincall), > stacklevel=2, > ) > break > > firstresult = self.spec.opts.get("firstresult") > else: > firstresult = False > >> return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_hooks.py:265: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_pytest.config.PytestPluginManager object at 0x7fe264b42340> >hook_name = 'pytest_runtest_call' >methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _hookexec(self, hook_name, methods, kwargs, firstresult): > # called from all hookcaller instances. > # enable_tracing will set its own wrapping function at self._inner_hookexec >> return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:80: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def traced_hookexec(hook_name, hook_impls, kwargs, firstresult): > before(hook_name, hook_impls, kwargs) > outcome = _Result.from_call( > lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > after(outcome, hook_name, hook_impls, kwargs) >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:327: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264da5850> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >cls = <class 'pluggy._result._Result'> >func = <function PluginManager.add_hookcall_monitoring.<locals>.traced_hookexec.<locals>.<lambda> at 0x7fe264d61dc0> > > @classmethod > def from_call(cls, func): > __tracebackhide__ = True > result = excinfo = None > try: >> result = func() > >/usr/lib/python3.8/site-packages/pluggy/_result.py:33: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:324: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: > res = hook_impl.function(*args) > if res is not None: > results.append(res) > if firstresult: # halt further impl calls > break > except BaseException: > excinfo = sys.exc_info() > finally: > if firstresult: # first result hooks return a single value > outcome = _Result(results[0] if results else None, excinfo) > else: > outcome = _Result(results, excinfo) > > # run all wrapper post-yield blocks > for gen in reversed(teardowns): > try: > gen.send(outcome) > _raise_wrapfail(gen, "has second yield") > except StopIteration: > pass > >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264da5ac0> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: >> res = hook_impl.function(*args) > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:39: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: > item.runtest() > except Exception as e: > # Store trace info to allow postmortem debugging > sys.last_type = type(e) > sys.last_value = e > assert e.__traceback__ is not None > # Skip *this* frame > sys.last_traceback = e.__traceback__.tb_next >> raise e > >/usr/lib/python3.8/site-packages/_pytest/runner.py:174: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: >> item.runtest() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:166: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <Flake8Item flake-8> > > def runtest(self): > with BytesIO() as bo, TextIOWrapper(bo, encoding='utf-8') as to, \ > BytesIO() as be, TextIOWrapper(be, encoding='utf-8') as te, \ > redirect_stdout(to), redirect_stderr(te): >> found_errors = check_file( > self.fspath, > self.flake8ignore, > self.maxlength, > self.maxdoclength, > self.maxcomplexity, > self.showsource, > self.statistics > ) > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:136: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_run_on_init_file0/tests/__init__.py') >flake8ignore = [], maxlength = '', maxdoclenght = '', maxcomplexity = '' >showsource = [], statistics = [] > > def check_file(path, flake8ignore, maxlength, maxdoclenght, maxcomplexity, > showsource, statistics): > """Run flake8 over a single file, and return the number of failures.""" > args = [] > if maxlength: > args += ['--max-line-length', maxlength] > if maxdoclenght: > args += ['--max-doc-length', maxdoclenght] > if maxcomplexity: > args += ['--max-complexity', maxcomplexity] > if showsource: > args += ['--show-source'] > if statistics: > args += ['--statistics'] > app = application.Application() > prelim_opts, remaining_args = app.parse_preliminary_options(args) >> config_finder = config.ConfigFileFinder( > app.program, > prelim_opts.append_config, > config_file=prelim_opts.config, > ignore_config_files=prelim_opts.isolated, > ) >E AttributeError: module 'flake8.options.config' has no attribute 'ConfigFileFinder' > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:217: AttributeError >=========================== short test summary info ============================ >FAILED tests/__init__.py::flake-8::FLAKE8 - AttributeError: module 'flake8.op... >============================== 1 failed in 0.07s =============================== >_____________________________ test_junit_classname _____________________________ > >testdir = <Testdir local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_junit_classname0')> > > def test_junit_classname(testdir): > testdir.makepyfile("") > result = testdir.runpytest("--flake8", "--junit-xml=TEST.xml") > junit = testdir.tmpdir.join("TEST.xml") > with open(str(junit)) as j_file: > j_text = j_file.read() >> result.assert_outcomes(passed=1) >E AssertionError: assert {'errors': 0,\n 'failed': 1,\n 'passed': 0,\n 'skipped': 0,\n 'xfailed': 0,\n 'xpassed': 0} == {'errors': 0,\n 'failed': 0,\n 'passed': 1,\n 'skipped': 0,\n 'xfailed': 0,\n 'xpassed': 0} >E Common items: >E {'errors': 0, 'skipped': 0, 'xfailed': 0, 'xpassed': 0} >E Differing items: >E {'passed': 0} != {'passed': 1} >E {'failed': 1} != {'failed': 0} >E Full diff: >E { >E 'errors': 0, >E - 'failed': 0, >E ? ^ >E + 'failed': 1, >E ? ^ >E - 'passed': 1, >E ? ^ >E + 'passed': 0, >E ? ^ >E 'skipped': 0, >E 'xfailed': 0, >E 'xpassed': 0, >E } > >j_file = <_io.TextIOWrapper name='/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_junit_classname0/TEST.xml' mode='r' encoding='UTF-8'> >j_text = ('<?xml version="1.0" encoding="utf-8"?><testsuites><testsuite name="pytest" ' > 'errors="0" failures="1" skipped="0" tests="1" time="0.084" ' > 'timestamp="2022-08-21T04:00:21.031794" hostname="gf.packet.net"><testcase ' > 'classname="test_junit_classname.flake-8" name="FLAKE8" time="0.001"><failure ' > 'message="AttributeError: module \'flake8.options.config\' has no attribute ' > '\'ConfigFileFinder\'">cls = <class \'_pytest.runner.CallInfo\'>\n' > 'func = <function call_runtest_hook.<locals>.<lambda> at ' > '0x7fe264ce5e50>\n' > "when = 'call'\n" > "reraise = (<class '_pytest.outcomes.Exit'>, <class " > "'KeyboardInterrupt'>)\n" > '\n' > ' @classmethod\n' > ' def from_call(\n' > ' cls,\n' > ' func: "Callable[[], TResult]",\n' > ' when: "Literal[\'collect\', \'setup\', \'call\', \'teardown\']",\n' > ' reraise: Optional[\n' > ' Union[Type[BaseException], Tuple[Type[BaseException], ...]]\n' > ' ] = None,\n' > ' ) -> "CallInfo[TResult]":\n' > ' """Call func, wrapping the result in a CallInfo.\n' > ' \n' > ' :param func:\n' > ' The function to call. Called without arguments.\n' > ' :param when:\n' > ' The phase in which the function is called.\n' > ' :param reraise:\n' > ' Exception or exceptions that shall propagate if raised by the\n' > ' function, instead of being wrapped in the CallInfo.\n' > ' """\n' > ' excinfo = None\n' > ' start = timing.time()\n' > ' precise_start = timing.perf_counter()\n' > ' try:\n' > '> result: Optional[TResult] = func()\n' > '\n' > '/usr/lib/python3.8/site-packages/_pytest/runner.py:338: \n' > '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' > '_ _ \n' > '\n' > '> lambda: ihook(item=item, **kwds), when=when, reraise=reraise\n' > ' )\n' > '\n' > '/usr/lib/python3.8/site-packages/_pytest/runner.py:259: \n' > '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' > '_ _ \n' > '\n' > "self = <_HookCaller 'pytest_runtest_call'>, args = ()\n" > "kwargs = {'item': <Flake8Item flake-8>}, argname = 'item', firstresult " > '= False\n' > '\n' > ' def __call__(self, *args, **kwargs):\n' > ' if args:\n' > ' raise TypeError("hook calling supports only keyword arguments")\n' > ' assert not self.is_historic()\n' > ' \n' > ' # This is written to avoid expensive operations when not needed.\n' > ' if self.spec:\n' > ' for argname in self.spec.argnames:\n' > ' if argname not in kwargs:\n' > ' notincall = tuple(set(self.spec.argnames) - ' > 'kwargs.keys())\n' > ' warnings.warn(\n' > ' "Argument(s) {} which are declared in the hookspec ' > '"\n' > ' "can not be found in this hook ' > 'call".format(notincall),\n' > ' stacklevel=2,\n' > ' )\n' > ' break\n' > ' \n' > ' firstresult = self.spec.opts.get("firstresult")\n' > ' else:\n' > ' firstresult = False\n' > ' \n' > '> return self._hookexec(self.name, self.get_hookimpls(), kwargs, ' > 'firstresult)\n' > '\n' > '/usr/lib/python3.8/site-packages/pluggy/_hooks.py:265: \n' > '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' > '_ _ \n' > '\n' > 'self = <_pytest.config.PytestPluginManager object at 0x7fe264cf38e0>\n' > "hook_name = 'pytest_runtest_call'\n" > "methods = [<HookImpl plugin_name='runner', plugin=<module " > "'_pytest.runner' from " > "'/usr/lib/python3.8/site-packages/_pytest/runner...eption', " > "plugin=<module '_pytest.threadexception' from " > "'/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]\n" > "kwargs = {'item': <Flake8Item flake-8>}, firstresult = False\n" > '\n' > ' def _hookexec(self, hook_name, methods, kwargs, firstresult):\n' > ' # called from all hookcaller instances.\n' > ' # enable_tracing will set its own wrapping function at ' > 'self._inner_hookexec\n' > '> return self._inner_hookexec(hook_name, methods, kwargs, ' > 'firstresult)\n' > '\n' > '/usr/lib/python3.8/site-packages/pluggy/_manager.py:80: \n' > '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' > '_ _ \n' > '\n' > "hook_name = 'pytest_runtest_call'\n" > "hook_impls = [<HookImpl plugin_name='runner', plugin=<module " > "'_pytest.runner' from " > "'/usr/lib/python3.8/site-packages/_pytest/runner...eption', " > "plugin=<module '_pytest.threadexception' from " > "'/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]\n" > "kwargs = {'item': <Flake8Item flake-8>}, firstresult = False\n" > '\n' > ' def traced_hookexec(hook_name, hook_impls, kwargs, firstresult):\n' > ' before(hook_name, hook_impls, kwargs)\n' > ' outcome = _Result.from_call(\n' > ' lambda: oldcall(hook_name, hook_impls, kwargs, firstresult)\n' > ' )\n' > ' after(outcome, hook_name, hook_impls, kwargs)\n' > '> return outcome.get_result()\n' > '\n' > '/usr/lib/python3.8/site-packages/pluggy/_manager.py:327: \n' > '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' > '_ _ \n' > '\n' > 'self = <pluggy._result._Result object at 0x7fe264c157f0>\n' > '\n' > ' def get_result(self):\n' > ' """Get the result(s) for this hook call.\n' > ' \n' > ' If the hook was marked as a ``firstresult`` only a single value\n' > ' will be returned otherwise a list of results.\n' > ' """\n' > ' __tracebackhide__ = True\n' > ' if self._excinfo is None:\n' > ' return self._result\n' > ' else:\n' > ' ex = self._excinfo\n' > '> raise ex[1].with_traceback(ex[2])\n' > '\n' > '/usr/lib/python3.8/site-packages/pluggy/_result.py:60: \n' > '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' > '_ _ \n' > '\n' > "cls = <class 'pluggy._result._Result'>\n" > 'func = <function ' > 'PluginManager.add_hookcall_monitoring.<locals>.traced_hookexec.<locals>.<lambda> ' > 'at 0x7fe264db8040>\n' > '\n' > ' @classmethod\n' > ' def from_call(cls, func):\n' > ' __tracebackhide__ = True\n' > ' result = excinfo = None\n' > ' try:\n' > '> result = func()\n' > '\n' > '/usr/lib/python3.8/site-packages/pluggy/_result.py:33: \n' > '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' > '_ _ \n' > '\n' > '> lambda: oldcall(hook_name, hook_impls, kwargs, firstresult)\n' > ' )\n' > '\n' > '/usr/lib/python3.8/site-packages/pluggy/_manager.py:324: \n' > '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' > '_ _ \n' > '\n' > "hook_name = 'pytest_runtest_call'\n" > "hook_impls = [<HookImpl plugin_name='runner', plugin=<module " > "'_pytest.runner' from " > "'/usr/lib/python3.8/site-packages/_pytest/runner...eption', " > "plugin=<module '_pytest.threadexception' from " > "'/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]\n" > "caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False\n" > '\n' > ' def _multicall(hook_name, hook_impls, caller_kwargs, firstresult):\n' > ' """Execute a call into multiple python functions/methods and return ' > 'the\n' > ' result(s).\n' > ' \n' > ' ``caller_kwargs`` comes from _HookCaller.__call__().\n' > ' """\n' > ' __tracebackhide__ = True\n' > ' results = []\n' > ' excinfo = None\n' > ' try: # run impl and wrapper setup functions in a loop\n' > ' teardowns = []\n' > ' try:\n' > ' for hook_impl in reversed(hook_impls):\n' > ' try:\n' > ' args = [caller_kwargs[argname] for argname in ' > 'hook_impl.argnames]\n' > ' except KeyError:\n' > ' for argname in hook_impl.argnames:\n' > ' if argname not in caller_kwargs:\n' > ' raise HookCallError(\n' > ' f"hook call must provide argument ' > '{argname!r}"\n' > ' )\n' > ' \n' > ' if hook_impl.hookwrapper:\n' > ' try:\n' > ' gen = hook_impl.function(*args)\n' > ' next(gen) # first yield\n' > ' teardowns.append(gen)\n' > ' except StopIteration:\n' > ' _raise_wrapfail(gen, "did not yield")\n' > ' else:\n' > ' res = hook_impl.function(*args)\n' > ' if res is not None:\n' > ' results.append(res)\n' > ' if firstresult: # halt further impl calls\n' > ' break\n' > ' except BaseException:\n' > ' excinfo = sys.exc_info()\n' > ' finally:\n' > ' if firstresult: # first result hooks return a single value\n' > ' outcome = _Result(results[0] if results else None, excinfo)\n' > ' else:\n' > ' outcome = _Result(results, excinfo)\n' > ' \n' > ' # run all wrapper post-yield blocks\n' > ' for gen in reversed(teardowns):\n' > ' try:\n' > ' gen.send(outcome)\n' > ' _raise_wrapfail(gen, "has second yield")\n' > ' except StopIteration:\n' > ' pass\n' > ' \n' > '> return outcome.get_result()\n' > '\n' > '/usr/lib/python3.8/site-packages/pluggy/_callers.py:60: \n' > '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' > '_ _ \n' > '\n' > 'self = <pluggy._result._Result object at 0x7fe264c15910>\n' > '\n' > ' def get_result(self):\n' > ' """Get the result(s) for this hook call.\n' > ' \n' > ' If the hook was marked as a ``firstresult`` only a single value\n' > ' will be returned otherwise a list of results.\n' > ' """\n' > ' __tracebackhide__ = True\n' > ' if self._excinfo is None:\n' > ' return self._result\n' > ' else:\n' > ' ex = self._excinfo\n' > '> raise ex[1].with_traceback(ex[2])\n' > '\n' > '/usr/lib/python3.8/site-packages/pluggy/_result.py:60: \n' > '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' > '_ _ \n' > '\n' > "hook_name = 'pytest_runtest_call'\n" > "hook_impls = [<HookImpl plugin_name='runner', plugin=<module " > "'_pytest.runner' from " > "'/usr/lib/python3.8/site-packages/_pytest/runner...eption', " > "plugin=<module '_pytest.threadexception' from " > "'/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>]\n" > "caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False\n" > '\n' > ' def _multicall(hook_name, hook_impls, caller_kwargs, firstresult):\n' > ' """Execute a call into multiple python functions/methods and return ' > 'the\n' > ' result(s).\n' > ' \n' > ' ``caller_kwargs`` comes from _HookCaller.__call__().\n' > ' """\n' > ' __tracebackhide__ = True\n' > ' results = []\n' > ' excinfo = None\n' > ' try: # run impl and wrapper setup functions in a loop\n' > ' teardowns = []\n' > ' try:\n' > ' for hook_impl in reversed(hook_impls):\n' > ' try:\n' > ' args = [caller_kwargs[argname] for argname in ' > 'hook_impl.argnames]\n' > ' except KeyError:\n' > ' for argname in hook_impl.argnames:\n' > ' if argname not in caller_kwargs:\n' > ' raise HookCallError(\n' > ' f"hook call must provide argument ' > '{argname!r}"\n' > ' )\n' > ' \n' > ' if hook_impl.hookwrapper:\n' > ' try:\n' > ' gen = hook_impl.function(*args)\n' > ' next(gen) # first yield\n' > ' teardowns.append(gen)\n' > ' except StopIteration:\n' > ' _raise_wrapfail(gen, "did not yield")\n' > ' else:\n' > '> res = hook_impl.function(*args)\n' > '\n' > '/usr/lib/python3.8/site-packages/pluggy/_callers.py:39: \n' > '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' > '_ _ \n' > '\n' > 'item = <Flake8Item flake-8>\n' > '\n' > ' def pytest_runtest_call(item: Item) -> None:\n' > ' _update_current_test_var(item, "call")\n' > ' try:\n' > ' del sys.last_type\n' > ' del sys.last_value\n' > ' del sys.last_traceback\n' > ' except AttributeError:\n' > ' pass\n' > ' try:\n' > ' item.runtest()\n' > ' except Exception as e:\n' > ' # Store trace info to allow postmortem debugging\n' > ' sys.last_type = type(e)\n' > ' sys.last_value = e\n' > ' assert e.__traceback__ is not None\n' > ' # Skip *this* frame\n' > ' sys.last_traceback = e.__traceback__.tb_next\n' > '> raise e\n' > '\n' > '/usr/lib/python3.8/site-packages/_pytest/runner.py:174: \n' > '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' > '_ _ \n' > '\n' > 'item = <Flake8Item flake-8>\n' > '\n' > ' def pytest_runtest_call(item: Item) -> None:\n' > ' _update_current_test_var(item, "call")\n' > ' try:\n' > ' del sys.last_type\n' > ' del sys.last_value\n' > ' del sys.last_traceback\n' > ' except AttributeError:\n' > ' pass\n' > ' try:\n' > '> item.runtest()\n' > '\n' > '/usr/lib/python3.8/site-packages/_pytest/runner.py:166: \n' > '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' > '_ _ \n' > '\n' > 'self = <Flake8Item flake-8>\n' > '\n' > ' def runtest(self):\n' > " with BytesIO() as bo, TextIOWrapper(bo, encoding='utf-8') as to, \\\n" > " BytesIO() as be, TextIOWrapper(be, encoding='utf-8') as te, \\\n" > ' redirect_stdout(to), redirect_stderr(te):\n' > '> found_errors = check_file(\n' > ' self.fspath,\n' > ' self.flake8ignore,\n' > ' self.maxlength,\n' > ' self.maxdoclength,\n' > ' self.maxcomplexity,\n' > ' self.showsource,\n' > ' self.statistics\n' > ' )\n' > '\n' > '../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:136: \n' > '_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ' > '_ _ \n' > '\n' > 'path = ' > "local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_junit_classname0/test_junit_classname.py')\n" > "flake8ignore = [], maxlength = '', maxdoclenght = '', maxcomplexity = ''\n" > 'showsource = [], statistics = []\n' > '\n' > ' def check_file(path, flake8ignore, maxlength, maxdoclenght, ' > 'maxcomplexity,\n' > ' showsource, statistics):\n' > ' """Run flake8 over a single file, and return the number of ' > 'failures."""\n' > ' args = []\n' > ' if maxlength:\n' > " args += ['--max-line-length', maxlength]\n" > ' if maxdoclenght:\n' > " args += ['--max-doc-length', maxdoclenght]\n" > ' if maxcomplexity:\n' > " args += ['--max-complexity', maxcomplexity]\n" > ' if showsource:\n' > " args += ['--show-source']\n" > ' if statistics:\n' > " args += ['--statistics']\n" > ' app = application.Application()\n' > ' prelim_opts, remaining_args = app.parse_preliminary_options(args)\n' > '> config_finder = config.ConfigFileFinder(\n' > ' app.program,\n' > ' prelim_opts.append_config,\n' > ' config_file=prelim_opts.config,\n' > ' ignore_config_files=prelim_opts.isolated,\n' > ' )\n' > "E AttributeError: module 'flake8.options.config' has no attribute " > "'ConfigFileFinder'\n" > '\n' > '../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:217: ' > 'AttributeError</failure></testcase></testsuite></testsuites>') >junit = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_junit_classname0/TEST.xml') >result = <RunResult ret=ExitCode.TESTS_FAILED len(stdout.lines)=353 len(stderr.lines)=0 duration=0.15s> >testdir = <Testdir local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_junit_classname0')> > >/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1/test_flake8.py:192: AssertionError >----------------------------- Captured stdout call ----------------------------- >============================= test session starts ============================== >platform linux -- Python 3.8.13, pytest-7.1.2, pluggy-1.0.0 >rootdir: /var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_junit_classname0 >plugins: flake8-1.1.1 >collected 1 item > >test_junit_classname.py F [100%] > >=================================== FAILURES =================================== >_________________________________ FLAKE8-check _________________________________ > >cls = <class '_pytest.runner.CallInfo'> >func = <function call_runtest_hook.<locals>.<lambda> at 0x7fe264ce5e50> >when = 'call' >reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>) > > @classmethod > def from_call( > cls, > func: "Callable[[], TResult]", > when: "Literal['collect', 'setup', 'call', 'teardown']", > reraise: Optional[ > Union[Type[BaseException], Tuple[Type[BaseException], ...]] > ] = None, > ) -> "CallInfo[TResult]": > """Call func, wrapping the result in a CallInfo. > > :param func: > The function to call. Called without arguments. > :param when: > The phase in which the function is called. > :param reraise: > Exception or exceptions that shall propagate if raised by the > function, instead of being wrapped in the CallInfo. > """ > excinfo = None > start = timing.time() > precise_start = timing.perf_counter() > try: >> result: Optional[TResult] = func() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:338: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: ihook(item=item, **kwds), when=when, reraise=reraise > ) > >/usr/lib/python3.8/site-packages/_pytest/runner.py:259: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_HookCaller 'pytest_runtest_call'>, args = () >kwargs = {'item': <Flake8Item flake-8>}, argname = 'item', firstresult = False > > def __call__(self, *args, **kwargs): > if args: > raise TypeError("hook calling supports only keyword arguments") > assert not self.is_historic() > > # This is written to avoid expensive operations when not needed. > if self.spec: > for argname in self.spec.argnames: > if argname not in kwargs: > notincall = tuple(set(self.spec.argnames) - kwargs.keys()) > warnings.warn( > "Argument(s) {} which are declared in the hookspec " > "can not be found in this hook call".format(notincall), > stacklevel=2, > ) > break > > firstresult = self.spec.opts.get("firstresult") > else: > firstresult = False > >> return self._hookexec(self.name, self.get_hookimpls(), kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_hooks.py:265: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <_pytest.config.PytestPluginManager object at 0x7fe264cf38e0> >hook_name = 'pytest_runtest_call' >methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _hookexec(self, hook_name, methods, kwargs, firstresult): > # called from all hookcaller instances. > # enable_tracing will set its own wrapping function at self._inner_hookexec >> return self._inner_hookexec(hook_name, methods, kwargs, firstresult) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:80: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def traced_hookexec(hook_name, hook_impls, kwargs, firstresult): > before(hook_name, hook_impls, kwargs) > outcome = _Result.from_call( > lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > after(outcome, hook_name, hook_impls, kwargs) >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:327: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264c157f0> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >cls = <class 'pluggy._result._Result'> >func = <function PluginManager.add_hookcall_monitoring.<locals>.traced_hookexec.<locals>.<lambda> at 0x7fe264db8040> > > @classmethod > def from_call(cls, func): > __tracebackhide__ = True > result = excinfo = None > try: >> result = func() > >/usr/lib/python3.8/site-packages/pluggy/_result.py:33: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >> lambda: oldcall(hook_name, hook_impls, kwargs, firstresult) > ) > >/usr/lib/python3.8/site-packages/pluggy/_manager.py:324: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: > res = hook_impl.function(*args) > if res is not None: > results.append(res) > if firstresult: # halt further impl calls > break > except BaseException: > excinfo = sys.exc_info() > finally: > if firstresult: # first result hooks return a single value > outcome = _Result(results[0] if results else None, excinfo) > else: > outcome = _Result(results, excinfo) > > # run all wrapper post-yield blocks > for gen in reversed(teardowns): > try: > gen.send(outcome) > _raise_wrapfail(gen, "has second yield") > except StopIteration: > pass > >> return outcome.get_result() > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <pluggy._result._Result object at 0x7fe264c15910> > > def get_result(self): > """Get the result(s) for this hook call. > > If the hook was marked as a ``firstresult`` only a single value > will be returned otherwise a list of results. > """ > __tracebackhide__ = True > if self._excinfo is None: > return self._result > else: > ex = self._excinfo >> raise ex[1].with_traceback(ex[2]) > >/usr/lib/python3.8/site-packages/pluggy/_result.py:60: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >hook_name = 'pytest_runtest_call' >hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/usr/lib/python3.8/site-packages/_pytest/runner...eption', plugin=<module '_pytest.threadexception' from '/usr/lib/python3.8/site-packages/_pytest/threadexception.py'>>] >caller_kwargs = {'item': <Flake8Item flake-8>}, firstresult = False > > def _multicall(hook_name, hook_impls, caller_kwargs, firstresult): > """Execute a call into multiple python functions/methods and return the > result(s). > > ``caller_kwargs`` comes from _HookCaller.__call__(). > """ > __tracebackhide__ = True > results = [] > excinfo = None > try: # run impl and wrapper setup functions in a loop > teardowns = [] > try: > for hook_impl in reversed(hook_impls): > try: > args = [caller_kwargs[argname] for argname in hook_impl.argnames] > except KeyError: > for argname in hook_impl.argnames: > if argname not in caller_kwargs: > raise HookCallError( > f"hook call must provide argument {argname!r}" > ) > > if hook_impl.hookwrapper: > try: > gen = hook_impl.function(*args) > next(gen) # first yield > teardowns.append(gen) > except StopIteration: > _raise_wrapfail(gen, "did not yield") > else: >> res = hook_impl.function(*args) > >/usr/lib/python3.8/site-packages/pluggy/_callers.py:39: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: > item.runtest() > except Exception as e: > # Store trace info to allow postmortem debugging > sys.last_type = type(e) > sys.last_value = e > assert e.__traceback__ is not None > # Skip *this* frame > sys.last_traceback = e.__traceback__.tb_next >> raise e > >/usr/lib/python3.8/site-packages/_pytest/runner.py:174: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >item = <Flake8Item flake-8> > > def pytest_runtest_call(item: Item) -> None: > _update_current_test_var(item, "call") > try: > del sys.last_type > del sys.last_value > del sys.last_traceback > except AttributeError: > pass > try: >> item.runtest() > >/usr/lib/python3.8/site-packages/_pytest/runner.py:166: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >self = <Flake8Item flake-8> > > def runtest(self): > with BytesIO() as bo, TextIOWrapper(bo, encoding='utf-8') as to, \ > BytesIO() as be, TextIOWrapper(be, encoding='utf-8') as te, \ > redirect_stdout(to), redirect_stderr(te): >> found_errors = check_file( > self.fspath, > self.flake8ignore, > self.maxlength, > self.maxdoclength, > self.maxcomplexity, > self.showsource, > self.statistics > ) > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:136: >_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ > >path = local('/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_junit_classname0/test_junit_classname.py') >flake8ignore = [], maxlength = '', maxdoclenght = '', maxcomplexity = '' >showsource = [], statistics = [] > > def check_file(path, flake8ignore, maxlength, maxdoclenght, maxcomplexity, > showsource, statistics): > """Run flake8 over a single file, and return the number of failures.""" > args = [] > if maxlength: > args += ['--max-line-length', maxlength] > if maxdoclenght: > args += ['--max-doc-length', maxdoclenght] > if maxcomplexity: > args += ['--max-complexity', maxcomplexity] > if showsource: > args += ['--show-source'] > if statistics: > args += ['--statistics'] > app = application.Application() > prelim_opts, remaining_args = app.parse_preliminary_options(args) >> config_finder = config.ConfigFileFinder( > app.program, > prelim_opts.append_config, > config_file=prelim_opts.config, > ignore_config_files=prelim_opts.isolated, > ) >E AttributeError: module 'flake8.options.config' has no attribute 'ConfigFileFinder' > >../../../../work/pytest-flake8-1.1.1/pytest_flake8.py:217: AttributeError >- generated xml file: /var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/pytest-of-portage/pytest-0/test_junit_classname0/TEST.xml - >=========================== short test summary info ============================ >FAILED test_junit_classname.py::flake-8::FLAKE8 - AttributeError: module 'fla... >============================== 1 failed in 0.08s =============================== >=========================== short test summary info ============================ >XFAIL test_flake8.py::test_strict > flake8 is not properly registered as a marker >FAILED pytest_flake8.py::flake-8::FLAKE8 - AttributeError: module 'flake8.opt... >FAILED setup.py::flake-8::FLAKE8 - AttributeError: module 'flake8.options.con... >FAILED test_flake8.py::flake-8::FLAKE8 - AttributeError: module 'flake8.optio... >FAILED test_flake8.py::TestIgnores::test_default_flake8_ignores - AssertionEr... >FAILED test_flake8.py::TestIgnores::test_ignores_all - AssertionError: assert... >FAILED test_flake8.py::TestIgnores::test_w293w292 - Failed: nomatch: '*W293*' >FAILED test_flake8.py::TestIgnores::test_mtime_caching - Failed: nomatch: '*W... >FAILED test_flake8.py::test_ok_verbose - AssertionError: assert {'errors': 0,... >FAILED test_flake8.py::test_keyword_match - Failed: nomatch: '*E201*' >FAILED test_flake8.py::test_run_on_init_file - AssertionError: assert {'error... >FAILED test_flake8.py::test_junit_classname - AssertionError: assert {'errors... >=================== 11 failed, 4 passed, 1 xfailed in 2.05s ==================== > * ERROR: dev-python/pytest-flake8-1.1.1::gentoo failed (test phase): > * pytest failed with python3.8 > * > * Call stack: > * ebuild.sh, line 122: Called src_test > * environment, line 3449: Called distutils-r1_src_test > * environment, line 1684: Called _distutils-r1_run_foreach_impl 'python_test' > * environment, line 755: Called python_foreach_impl 'distutils-r1_run_phase' 'python_test' > * environment, line 3125: Called multibuild_foreach_variant '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'python_test' > * environment, line 2654: Called _multibuild_run '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'python_test' > * environment, line 2652: Called _python_multibuild_wrapper 'distutils-r1_run_phase' 'python_test' > * environment, line 1091: Called distutils-r1_run_phase 'python_test' > * environment, line 1607: Called python_test > * environment, line 3416: Called epytest '-p' 'flake8' > * environment, line 2162: Called die > * The specific snippet of code: > * "${@}" || die -n "pytest failed with ${EPYTHON}"; > * > * If you need support, post the output of `emerge --info '=dev-python/pytest-flake8-1.1.1::gentoo'`, > * the complete build log and the output of `emerge -pqv '=dev-python/pytest-flake8-1.1.1::gentoo'`. > * The complete build log is located at '/var/log/emerge-log/build/dev-python/pytest-flake8-1.1.1:20220821-040006.log'. > * For convenience, a symlink to the build log is located at '/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/build.log'. > * The ebuild environment file is located at '/var/tmp/portage/dev-python/pytest-flake8-1.1.1/temp/environment'. > * Working directory: '/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1' > * S: '/var/tmp/portage/dev-python/pytest-flake8-1.1.1/work/pytest-flake8-1.1.1' >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 865931
: 800347