* Package: dev-python/tzlocal-5.0.1:0 * Repository: gentoo * Maintainer: python@gentoo.org * USE: abi_x86_64 amd64 elibc_musl kernel_linux python_targets_python3_10 python_targets_python3_11 test * 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/34904c1ba1e692c2e3586711f6b6d2a572f391e1 (Sat May 20 06:01:59 UTC 2023) @@@@@ END @@@@@ ################## # emerge --info: # ################## Portage 3.0.47 (python 3.11.3-final-0, default/linux/amd64/17.0/musl/hardened, gcc-13, musl-1.2.4, 5.15.85-gentoo-dist x86_64) ================================================================= System uname: Linux-5.15.85-gentoo-dist-x86_64-AMD_EPYC_7513_32-Core_Processor-with-libc KiB Mem: 263532996 total, 31993180 free KiB Swap: 0 total, 0 free Timestamp of repository gentoo: Sat, 20 May 2023 06:01:59 +0000 sh bash 5.2_p15-r2 ld GNU ld (Gentoo 2.40 p5) 2.40.0 app-misc/pax-utils: 1.3.7::gentoo app-shells/bash: 5.2_p15-r2::gentoo dev-lang/perl: 5.36.1-r1::gentoo dev-lang/python: 3.10.11::gentoo, 3.11.3::gentoo dev-util/cmake: 3.26.4-r1::gentoo dev-util/meson: 1.1.0::gentoo sys-apps/baselayout: 2.13-r1::gentoo sys-apps/openrc: 0.47.1::gentoo sys-apps/sandbox: 2.30-r1::gentoo sys-devel/autoconf: 2.71-r6::gentoo sys-devel/automake: 1.16.5-r1::gentoo sys-devel/binutils: 2.40-r5::gentoo sys-devel/binutils-config: 5.5::gentoo sys-devel/gcc: 13.1.1_p20230513::gentoo sys-devel/gcc-config: 2.11::gentoo sys-devel/libtool: 2.4.7-r1::gentoo sys-devel/make: 4.4.1::gentoo sys-kernel/linux-headers: 6.3::gentoo (virtual/os-headers) sys-libs/musl: 1.2.4::gentoo Repositories: gentoo location: /usr/portage sync-type: rsync sync-uri: rsync://rsync.gentoo.org/gentoo-portage priority: -1000 volatile: True sync-rsync-verify-max-age: 24 sync-rsync-verify-metamanifest: yes sync-rsync-verify-jobs: 1 sync-rsync-extra-opts: ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="* MIT" CBUILD="x86_64-gentoo-linux-musl" CFLAGS="-O2 -march=x86-64 -pipe -pipe -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 -march=x86-64 -pipe -pipe -frecord-gcc-switches -fno-diagnostics-color -fmessage-length=0" DISTDIR="/var/tmp/portage/dev-python/tzlocal-5.0.1/distdir" EMERGE_DEFAULT_OPTS="--with-bdeps=y -1 -k -b --backtrack=100" ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE 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 XDG_STATE_HOME" FCFLAGS="-O2 -march=x86-64 -pipe -pipe -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 -march=x86-64 -pipe -pipe -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" LEX="flex" MAKEOPTS="-j16" 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 cet cli crypt debug dri elogind fortran hardened iconv ipv6 jumbo-build libtirpc native-symlinks ncurses nls nptl openmp pam pcre pie readline seccomp split-usr ssl ssp test test-rust unicode xattr xtpax zlib" ABI_X86="64" ELIBC="musl" KERNEL="linux" PYTHON_TARGETS="python3_10 python3_11" 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, 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): # ############################## 2023-05-20T06:12:04 >>> dev-python/tzlocal-5.0.1 2023-05-20T06:12:17 >>> dev-python/iniconfig-2.0.0 2023-05-20T06:12:18 >>> dev-python/exceptiongroup-1.1.1 2023-05-20T06:12:20 >>> dev-python/flit_scm-1.7.0 2023-05-20T06:12:21 >>> dev-python/hatch-vcs-0.3.0 2023-05-20T06:12:25 >>> dev-python/pytest-7.3.1 2023-05-20T06:12:27 >>> dev-python/pytest-mock-3.10.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/floppy-0: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/root-0: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/usb-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.22:0 -doc -emacs -vim-syntax app-admin/perl-cleaner-2.30-r1:0 -pkgcore app-alternatives/awk-4:0 -busybox gawk -mawk -nawk split-usr app-alternatives/bc-0:0 -gh gnu app-alternatives/bzip2-1:0 -lbzip2 -pbzip2 reference split-usr app-alternatives/cpio-0:0 gnu -libarchive split-usr app-alternatives/gzip-0:0 -pigz reference split-usr app-alternatives/lex-0-r1:0 flex -reflex app-alternatives/sh-0:0 bash -busybox -dash -ksh -lksh -mksh app-alternatives/tar-0:0 gnu -libarchive split-usr app-alternatives/yacc-1-r2:0 bison -byacc -reference app-arch/bzip2-1.0.8-r4: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/cpio-2.14:0 nls app-arch/gzip-1.12-r4:0 -pic -static -verify-sig app-arch/libarchive-3.6.2-r1: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-r3:0 acl -minimal nls -selinux -verify-sig xattr app-arch/unzip-6.0_p27-r1:0 bzip2 -natspec unicode app-arch/xz-utils-5.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 -doc extra-filters nls split-usr -static-libs -verify-sig app-arch/zstd-1.5.5: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 lzma split-usr -static-libs -test zlib app-crypt/gnupg-2.4.0:0 bzip2 -doc -ldap nls readline -selinux smartcard ssl -test tofu -tools -tpm -usb -user-socket -verify-sig -wks-server app-crypt/gpgme-1.20.0:1/11.6.15.2 -common-lisp cxx debug -python python_targets_python3_10 python_targets_python3_11 -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.1-r3:0 -X -caps -efl -emacs -gtk -keyring ncurses -qt5 -verify-sig -wayland 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-7.2:0 -debug -justify -magic -minimal ncurses nls spell -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-r1:0 app-misc/ca-certificates-20230311.3.89.1:0 -cacert app-misc/editor-wrapper-4-r1:0 app-misc/mime-types-2.1.53:0 -nginx app-misc/pax-utils-1.3.7:0 -caps -man -python -python_single_target_python3_10 python_single_target_python3_11 -seccomp -test app-misc/tmux-3.3a-r1:0 debug -selinux -systemd -utempter -vim-syntax app-portage/eix-0.36.6:0 debug -doc nls -sqlite app-portage/elt-patches-20221210:0 app-portage/gemato-20.2:0 gpg -pretty-log -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test -tools app-portage/gentoolkit-0.6.1-r3:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test app-portage/portage-utils-0.95:0 openmp qmanifest qtegrity -static app-shells/bash-5.2_p15-r2:0 -afs -bashlogger -examples -mem-scramble net nls -pgo -plugins readline -verify-sig app-shells/bash-completion-2.11:0 eselect -test app-shells/gentoo-bashcomp-20230313:0 app-shells/push-3.4:0 app-shells/quoter-4.2:0 app-text/ansifilter-2.18:0 -qt5 app-text/asciidoc-10.2.0:0 -python_single_target_pypy3 -python_single_target_python3_10 python_single_target_python3_11 app-text/build-docbook-catalog-2.4: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-ns-stylesheets-1.79.1:0 -ruby app-text/docbook-xsl-stylesheets-1.79.1-r4:0 -ruby app-text/manpager-1:0 app-text/sgml-common-0.6.3-r7:0 app-text/xmlto-0.0.28-r10:0 -latex text dev-db/sqlite-3.42.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 debug -doc -icu readline -secure-delete -static-libs -tcl -test -tools dev-lang/perl-5.36.1-r1:0/5.36 -berkdb debug -doc -gdbm ithreads -minimal -quadmath dev-lang/python-3.11.3:3.11 -bluetooth -build ensurepip -examples gdbm hardened -libedit -lto ncurses -pgo readline sqlite ssl -test -tk -valgrind -verify-sig dev-lang/python-3.10.11:3.10 -bluetooth -build ensurepip -examples gdbm hardened -libedit -lto ncurses -pgo readline sqlite ssl -test -tk -valgrind -verify-sig xml dev-lang/python-exec-2.4.10:2 native-symlinks python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-lang/python-exec-conf-2.4.6:2 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 dev-lang/tcl-8.6.13-r1: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.2.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 -cxx large -static-libs threads dev-libs/elfutils-0.189-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 bzip2 -lzma nls -static-libs -test utils -verify-sig -zstd dev-libs/expat-2.5.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 -examples -static-libs unicode dev-libs/glib-2.76.2: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 -gtk-doc mime -selinux -static-libs -sysprof -systemtap -test -utils xattr dev-libs/gmp-6.2.1-r5: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 cpudetection cxx -doc -pic -static-libs dev-libs/gobject-introspection-1.76.1:0 -doctool -gtk-doc -python_single_target_python3_10 python_single_target_python3_11 -test dev-libs/gobject-introspection-common-1.76.1: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.8.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 dev-libs/libbsd-0.11.7-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 -verify-sig dev-libs/libevent-2.1.12-r1: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 -verbose-debug dev-libs/libffi-3.4.4-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 debug -exec-static-trampoline -pax-kernel -static-libs -test dev-libs/libgcrypt-1.10.2: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 getentropy -static-libs -verify-sig dev-libs/libgpg-error-1.47: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 -verify-sig dev-libs/libksba-1.6.3:0 -static-libs -verify-sig dev-libs/libltdl-2.4.7-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 -static-libs dev-libs/libpcre2-10.42-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 bzip2 -jit -libedit pcre16 pcre32 readline split-usr -static-libs unicode -valgrind -verify-sig zlib dev-libs/libpipeline-1.5.7:0 -test dev-libs/libtasn1-4.19.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 -verify-sig dev-libs/libunistring-1.1-r1:0/5 -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-r1:0/1 dev-libs/libxml2-2.11.4: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 readline -static-libs -test dev-libs/libxslt-1.1.38: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 -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.3.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.2.0_p9: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 -verify-sig dev-libs/nettle-3.9: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-3.0.8-r4: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 asm cpu_flags_x86_sse2 -fips -ktls -rfc3779 -sctp -static-libs -test -tls-compression -vanilla -verify-sig -verify-sig -weak-ssl-ciphers dev-libs/popt-1.19: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/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-MimeInfo-0.300.0:0 -test dev-perl/IO-Socket-SSL-2.81.0:0 -examples -idn -test dev-perl/IPC-System-Simple-1.300.0:0 -test dev-perl/Locale-gettext-1.70.0-r1:0 -test dev-perl/Mozilla-CA-20999999-r1:0 -test dev-perl/Net-SSLeay-1.920.0-r1:0 -examples -examples -minimal -test dev-perl/URI-5.110.0:0 -test dev-python/autocommand-2.2.2:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/calver-2022.06.26:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/certifi-3021.3.16-r3:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/charset_normalizer-3.1.0:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/cython-0.29.34:0 debug -doc -emacs -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/editables-0.3:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/ensurepip-pip-23.1.2:0 dev-python/ensurepip-setuptools-67.7.2:0 dev-python/ensurepip-wheels-100:0 dev-python/exceptiongroup-1.1.1:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/flit-core-3.9.0:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/flit_scm-1.7.0:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 dev-python/gentoo-common-1:0 dev-python/gpep517-13:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/hatch-vcs-0.3.0:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/hatchling-1.17.0:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/idna-3.4:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/inflect-6.0.4:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/iniconfig-2.0.0:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/installer-0.7.0:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/jaraco-context-4.3.0:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/jaraco-functools-3.6.0:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/jaraco-text-3.11.1:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/jinja-3.1.2:0 -doc -examples -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/markupsafe-2.1.2:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/more-itertools-9.1.0:0 -doc -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/nspektr-0.4.0:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/ordered-set-4.1.0:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/packaging-23.1:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/pathspec-0.11.1:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/platformdirs-3.5.1:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/pluggy-1.0.0-r2:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/pydantic-1.10.7:0 debug native-extensions -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/pyparsing-3.0.9:0 -examples -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/pypax-0.9.5-r1:0 debug -ptpax python_targets_python3_10 python_targets_python3_11 xtpax dev-python/PySocks-1.7.1-r2:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 dev-python/pytest-7.3.1:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/pytest-mock-3.10.0:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/requests-2.30.0:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -socks5 -test test-rust dev-python/setuptools-67.7.2:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/setuptools-scm-7.1.0:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/tomli-2.0.1-r1:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/trove-classifiers-2023.5.2:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/typing-extensions-4.5.0:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/tzlocal-5.0.1:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-python/urllib3-2.0.2-r1:0 -brotli -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test -zstd dev-python/wheel-0.40.0:0 -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 -test dev-util/checkbashisms-2.22.2:0 dev-util/cmake-3.26.4-r1:0 -doc -emacs ncurses -qt5 -test -test -verify-sig dev-util/desktop-file-utils-0.26-r2:0 -emacs dev-util/glib-utils-2.76.2:0 -python_single_target_python3_10 python_single_target_python3_11 dev-util/gperf-3.1-r1:0 dev-util/gtk-doc-am-1.33.2:0 dev-util/meson-1.1.0:0 python_targets_python3_10 python_targets_python3_11 -test dev-util/meson-format-array-0:0 python_targets_python3_10 python_targets_python3_11 dev-util/ninja-1.11.1-r2:0 -doc -emacs -test dev-util/pkgconf-1.8.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 -test dev-util/re2c-2.2:0 debug -test dev-vcs/git-2.40.1:0 blksha1 -cgi curl -cvs -doc gpg -highlight iconv -keyring -mediawiki nls pcre -perforce -perl -python_single_target_python3_10 python_single_target_python3_11 safe-directory -selinux -subversion -test -tk webdav -xinetd media-fonts/liberation-fonts-2.1.5:0 -X -X -fontforge media-gfx/graphite2-1.3.14_p20210810-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 -perl -test media-libs/fontconfig-2.14.2-r2: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 nls -test media-libs/freetype-2.13.0: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-7.3.0:0/6.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.39: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/c-ares-1.19.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 -static-libs -test -verify-sig net-dns/libidn2-2.3.4: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 nls -static-libs -verify-sig net-firewall/iptables-1.8.9:0/1.8.3 -conntrack -netlink -nftables -pcap split-usr -static-libs net-libs/gnutls-3.8.0: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 idn nls openssl -pkcs11 seccomp -sslv2 -sslv3 -static-libs -test -test-full tls-heartbeat -tools -verify-sig zlib -zstd net-libs/libmnl-1.0.5:0/0.2.0 -examples -verify-sig net-libs/nghttp2-1.52.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 debug -hpack-tools -jemalloc -static-libs -systemd -test -utils -xml net-misc/curl-8.1.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 -curl_ssl_rustls ftp -gnutls -gopher -hsts http2 -idn imap -kerberos -ldap -mbedtls -nghttp3 -nss openssl pop3 progress-meter -rtmp -rustls -samba smtp -ssh ssl -sslv3 -static-libs -telnet -test tftp -verify-sig -websockets -zstd net-misc/dhcpcd-10.0.1:0 debug embedded ipv6 -privsep udev net-misc/iputils-20221126-r1:0 arping -caps -clockdiff -doc filecaps -idn nls -test -tracepath net-misc/netifrc-0.7.4:0 dhcp net-misc/openssh-9.3_p1-r1:0 -X -abi_mips_n32 -audit -debug -kerberos -ldns -libedit -livecd pam pie -security-key -selinux ssl -static -test -verify-sig -xmss net-misc/rsync-3.2.7-r2:0 acl -examples iconv -lz4 -python_single_target_python3_10 python_single_target_python3_11 -rrsync ssl -stunnel -system-zlib -verify-sig xattr -xxhash -zstd net-misc/wget-1.21.4:0 -cookie-check debug -gnutls -idn ipv6 -metalink nls -ntlm pcre ssl -static -test -uuid -verify-sig zlib perl-core/File-Temp-0.231.100:0 sec-keys/openpgp-keys-gentoo-release-20230329:0 -test sys-apps/acl-2.3.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 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.13-r1:0 -build split-usr sys-apps/coreutils-9.3-r1:0 acl -caps -gmp -hostname -kill -multicall nls openssl -selinux split-usr -static -test -vanilla -verify-sig xattr sys-apps/dbus-1.15.4-r1: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 -valgrind sys-apps/debianutils-5.7:0 installkernel -static sys-apps/diffutils-3.9-r1:0 nls -verify-sig sys-apps/elfix-0.9.5:0 -ptpax xtpax sys-apps/file-5.44-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 bzip2 -lzip -lzma -python python_targets_python3_10 python_targets_python3_11 -seccomp -static-libs -verify-sig zlib -zstd sys-apps/findutils-4.9.0-r2:0 nls -selinux -static -test -verify-sig sys-apps/gawk-5.2.2:0 -mpfr nls -pma readline -verify-sig sys-apps/gentoo-functions-0.19:0 sys-apps/grep-3.11:0 egrep-fgrep nls pcre -static -verify-sig sys-apps/groff-1.22.4:0 -X -examples -uchardet sys-apps/help2man-1.49.3:0 nls sys-apps/install-xattr-0.8-r1:0 sys-apps/iproute2-6.3.0: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-r1:0 debug -doc lzma -pkcs7 -python python_targets_python3_10 python_targets_python3_11 -static-libs tools zlib zstd sys-apps/less-633:0 pcre sys-apps/man-db-2.11.2: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.47.1:0 -audit -bash debug ncurses netifrc -newnet pam -selinux -sysv-utils unicode sys-apps/portage-3.0.47:0 -apidoc -build debug -doc -gentoo-dev ipc native-extensions -python_targets_pypy3 python_targets_python3_10 python_targets_python3_11 rsync-verify -selinux -test xattr sys-apps/sandbox-2.30-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 nnp sys-apps/sed-4.9:0 acl nls -selinux -static -verify-sig sys-apps/shadow-4.13-r3:0/4 acl -audit -bcrypt -cracklib nls pam -selinux -skey split-usr -su -verify-sig xattr sys-apps/systemd-utils-252.9: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 -split-usr -sysusers -test tmpfiles udev sys-apps/sysvinit-3.07:0 -ibm -nls -selinux -static -verify-sig sys-apps/texinfo-7.0.3:0 nls standalone -static sys-apps/util-linux-2.38.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 -audit -build -caps cramfs -cryptsetup -fdformat hardlink -kill logger -magic ncurses -nls pam -python python_targets_python3_10 python_targets_python3_11 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-r3: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-r6:2.71 -emacs sys-devel/autoconf-archive-2023.02.20:0 sys-devel/autoconf-wrapper-20221207-r1:0 sys-devel/automake-1.16.5-r1:1.16 -test sys-devel/automake-wrapper-20221207:0 sys-devel/bc-1.07.1-r6:0 -libedit readline -static sys-devel/binutils-2.40-r5:2.40 cet -doc -gold -gprofng -multitarget nls -pgo plugins -static-libs -test -vanilla -zstd sys-devel/binutils-config-5.5:0 native-symlinks sys-devel/bison-3.8.2-r2:0 -examples nls -static -test -verify-sig sys-devel/flex-2.6.4-r6: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-13.1.1_p20230513:13 -ada cet -custom-cflags cxx -d -debug default-stack-clash-protection default-znow -doc -fixed-point fortran -go graphite hardened -ieee-long-double -jit -libssp lto -modula2 -multilib -nls nptl -objc -objc++ -objc-gc openmp -pch -pgo pie -sanitize ssp -systemtap -test -valgrind -vanilla -vtv -zstd sys-devel/gcc-config-2.11:0 cc-wrappers native-symlinks sys-devel/gettext-0.21.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 acl cxx -doc -emacs -git -java -java ncurses -nls openmp -static-libs -verify-sig sys-devel/gnuconfig-20230121:0 sys-devel/libtool-2.4.7-r1:2 -vanilla sys-devel/m4-1.4.19-r1:0 -examples nls -verify-sig sys-devel/make-4.4.1:0 -guile nls -static -verify-sig sys-devel/patch-2.7.6-r5:0 -static -test -verify-sig xattr sys-fs/e2fsprogs-1.47.0-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 -nls split-usr -static-libs -test tools sys-fs/udev-init-scripts-35:0 sys-kernel/dracut-059:0 -selinux -test sys-kernel/gentoo-kernel-bin-6.3.3:6.3.3 initramfs -test sys-kernel/installkernel-gentoo-7:0 -grub sys-kernel/linux-headers-6.3:0 -headers-only sys-libs/argp-standalone-1.5.0:0 -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 -test -verify-sig sys-libs/libcap-2.69: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_11 -static-libs -test sys-libs/libxcrypt-4.4.33: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 compat -headers-only split-usr -static-libs system -test sys-libs/musl-1.2.4:0 -crypt -headers-only split-usr -verify-sig sys-libs/ncurses-6.4_p20230401: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 -split-usr -stack-realign -static-libs -test tinfo -trace -verify-sig sys-libs/obstack-standalone-1.2.3:0 -static-libs sys-libs/pam-1.5.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 -audit -berkdb -debug -filecaps -nis -selinux split-usr sys-libs/queue-standalone-0.1-r1:0 sys-libs/readline-8.2_p1: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.13-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 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.6:0 -X -apparmor nls -selinux -test 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/dev-manager-0-r2:0 virtual/dist-kernel-6.3.3:0/6.3.3 virtual/editor-0-r5:0 virtual/libc-1-r1:0 virtual/libcrypt-2-r1: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 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/openssh-0:0 ssl 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-CPAN-2.330.0:0 virtual/perl-Data-Dumper-2.184.0:0 virtual/perl-Encode-3.170.0:0 virtual/perl-Exporter-5.770.0:0 virtual/perl-ExtUtils-MakeMaker-7.640.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-libnet-3.140.0:0 ssl virtual/perl-MIME-Base64-3.160.0-r1:0 virtual/perl-parent-0.238.0-r2:0 virtual/perl-Scalar-List-Utils-1.620.0:0 virtual/perl-Test-Harness-3.440.0:0 virtual/pkgconfig-2-r1:0 virtual/service-manager-1-r1:0 virtual/ssh-0-r2:0 -minimal virtual/tmpfiles-0-r3:0 virtual/ttf-fonts-1-r2:0 virtual/udev-217-r5:0 virtual/w3m-1:0 www-client/pybugz-0.13-r2:0 python_targets_python3_10 python_targets_python3_11 www-client/w3m-0.5.3_p20230121:0 -X -fbcon -gdk-pixbuf -gpm -imlib l10n_ja -lynxkeymap nls -nntp ssl unicode -xface x11-apps/xprop-1.2.6:0 x11-apps/xset-1.2.5:0 x11-base/xcb-proto-1.15.2:0 python_targets_python3_10 python_targets_python3_11 x11-base/xorg-proto-2022.2:0 -test x11-libs/cairo-1.17.8: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 glib -gtk-doc -test x11-libs/libICE-1.1.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 x11-libs/libSM-1.2.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 uuid x11-libs/libX11-1.8.4-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 -test x11-libs/libXau-1.0.11: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.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 -doc x11-libs/libXext-1.3.5: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.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/libXt-1.3.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 -doc -test x11-libs/pixman-0.42.2: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.4-r1:0 x11-misc/shared-mime-info-2.2:0 -test x11-misc/xdg-utils-1.1.3_p20210805-r1:0 -dbus -doc -gnome ####################### # build.log # ####################### >>> Unpacking source... >>> Unpacking tzlocal-5.0.1.gh.tar.gz to /var/tmp/portage/dev-python/tzlocal-5.0.1/work >>> Source unpacked in /var/tmp/portage/dev-python/tzlocal-5.0.1/work >>> Preparing source in /var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1 ... * Build system packages: * dev-python/gpep517 : 13 * dev-python/installer : 0.7.0 * dev-python/setuptools : 67.7.2 * dev-python/setuptools-scm : 7.1.0 * dev-python/wheel : 0.40.0 >>> Source prepared. >>> Configuring source in /var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1 ... >>> Source configured. >>> Compiling source in /var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1 ... * python3_10: running distutils-r1_run_phase distutils-r1_python_compile * Building the wheel for tzlocal-5.0.1 via setuptools.build_meta gpep517 build-wheel --backend setuptools.build_meta --output-fd 3 --wheel-dir /var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1-python3_10/wheel 2023-05-20 06:12:31,729 gpep517 INFO Building wheel via backend setuptools.build_meta 2023-05-20 06:12:31,769 root INFO running bdist_wheel 2023-05-20 06:12:31,825 root INFO running build 2023-05-20 06:12:31,825 root INFO running build_py 2023-05-20 06:12:31,831 root INFO creating build 2023-05-20 06:12:31,831 root INFO creating build/lib 2023-05-20 06:12:31,831 root INFO creating build/lib/tzlocal 2023-05-20 06:12:31,831 root INFO copying tzlocal/windows_tz.py -> build/lib/tzlocal 2023-05-20 06:12:31,831 root INFO copying tzlocal/win32.py -> build/lib/tzlocal 2023-05-20 06:12:31,831 root INFO copying tzlocal/utils.py -> build/lib/tzlocal 2023-05-20 06:12:31,832 root INFO copying tzlocal/unix.py -> build/lib/tzlocal 2023-05-20 06:12:31,832 root INFO copying tzlocal/__init__.py -> build/lib/tzlocal 2023-05-20 06:12:31,832 root WARNING warning: build_py: byte-compiling is disabled, skipping. 2023-05-20 06:12:31,842 wheel INFO installing to build/bdist.linux-x86_64/wheel 2023-05-20 06:12:31,842 root INFO running install 2023-05-20 06:12:31,851 root INFO running install_lib 2023-05-20 06:12:31,855 root INFO creating build/bdist.linux-x86_64 2023-05-20 06:12:31,855 root INFO creating build/bdist.linux-x86_64/wheel 2023-05-20 06:12:31,855 root INFO creating build/bdist.linux-x86_64/wheel/tzlocal 2023-05-20 06:12:31,856 root INFO copying build/lib/tzlocal/__init__.py -> build/bdist.linux-x86_64/wheel/tzlocal 2023-05-20 06:12:31,856 root INFO copying build/lib/tzlocal/unix.py -> build/bdist.linux-x86_64/wheel/tzlocal 2023-05-20 06:12:31,856 root INFO copying build/lib/tzlocal/utils.py -> build/bdist.linux-x86_64/wheel/tzlocal 2023-05-20 06:12:31,856 root INFO copying build/lib/tzlocal/win32.py -> build/bdist.linux-x86_64/wheel/tzlocal 2023-05-20 06:12:31,856 root INFO copying build/lib/tzlocal/windows_tz.py -> build/bdist.linux-x86_64/wheel/tzlocal 2023-05-20 06:12:31,857 root WARNING warning: install_lib: byte-compiling is disabled, skipping. 2023-05-20 06:12:31,857 root INFO running install_egg_info 2023-05-20 06:12:31,869 root INFO running egg_info 2023-05-20 06:12:31,869 root INFO creating tzlocal.egg-info 2023-05-20 06:12:31,873 root INFO writing tzlocal.egg-info/PKG-INFO 2023-05-20 06:12:31,873 root INFO writing dependency_links to tzlocal.egg-info/dependency_links.txt 2023-05-20 06:12:31,874 root INFO writing requirements to tzlocal.egg-info/requires.txt 2023-05-20 06:12:31,874 root INFO writing top-level names to tzlocal.egg-info/top_level.txt 2023-05-20 06:12:31,874 root INFO writing manifest file 'tzlocal.egg-info/SOURCES.txt' 2023-05-20 06:12:31,891 setuptools_scm.file_finder_git ERROR listing git files failed - pretending there aren't any 2023-05-20 06:12:31,894 root INFO reading manifest file 'tzlocal.egg-info/SOURCES.txt' 2023-05-20 06:12:31,895 root INFO reading manifest template 'MANIFEST.in' 2023-05-20 06:12:31,899 root WARNING warning: no previously-included files found matching 'Makefile' 2023-05-20 06:12:31,899 root INFO adding license file 'LICENSE.txt' 2023-05-20 06:12:31,900 root INFO writing manifest file 'tzlocal.egg-info/SOURCES.txt' 2023-05-20 06:12:31,900 root INFO Copying tzlocal.egg-info to build/bdist.linux-x86_64/wheel/tzlocal-5.0.1-py3.10.egg-info 2023-05-20 06:12:31,901 root INFO running install_scripts 2023-05-20 06:12:31,905 wheel INFO creating build/bdist.linux-x86_64/wheel/tzlocal-5.0.1.dist-info/WHEEL 2023-05-20 06:12:31,905 wheel INFO creating '/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1-python3_10/wheel/.tmp-7f9_yca_/tzlocal-5.0.1-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it 2023-05-20 06:12:31,906 wheel INFO adding 'tzlocal/__init__.py' 2023-05-20 06:12:31,906 wheel INFO adding 'tzlocal/unix.py' 2023-05-20 06:12:31,906 wheel INFO adding 'tzlocal/utils.py' 2023-05-20 06:12:31,906 wheel INFO adding 'tzlocal/win32.py' 2023-05-20 06:12:31,907 wheel INFO adding 'tzlocal/windows_tz.py' 2023-05-20 06:12:31,907 wheel INFO adding 'tzlocal-5.0.1.dist-info/LICENSE.txt' 2023-05-20 06:12:31,907 wheel INFO adding 'tzlocal-5.0.1.dist-info/METADATA' 2023-05-20 06:12:31,907 wheel INFO adding 'tzlocal-5.0.1.dist-info/WHEEL' 2023-05-20 06:12:31,907 wheel INFO adding 'tzlocal-5.0.1.dist-info/top_level.txt' 2023-05-20 06:12:31,908 wheel INFO adding 'tzlocal-5.0.1.dist-info/zip-safe' 2023-05-20 06:12:31,908 wheel INFO adding 'tzlocal-5.0.1.dist-info/RECORD' 2023-05-20 06:12:31,908 wheel INFO removing build/bdist.linux-x86_64/wheel 2023-05-20 06:12:31,909 gpep517 INFO The backend produced /var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1-python3_10/wheel/tzlocal-5.0.1-py3-none-any.whl * Installing tzlocal-5.0.1-py3-none-any.whl to /var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1-python3_10/install gpep517 install-wheel --destdir=/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1-python3_10/install --interpreter=/usr/bin/python3.10 --prefix=/usr --optimize=all /var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1-python3_10/wheel/tzlocal-5.0.1-py3-none-any.whl 2023-05-20 06:12:32,000 gpep517 INFO Installing /var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1-python3_10/wheel/tzlocal-5.0.1-py3-none-any.whl into /var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1-python3_10/install 2023-05-20 06:12:32,025 gpep517 INFO Installation complete * python3_11: running distutils-r1_run_phase distutils-r1_python_compile * Building the wheel for tzlocal-5.0.1 via setuptools.build_meta gpep517 build-wheel --backend setuptools.build_meta --output-fd 3 --wheel-dir /var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1-python3_11/wheel 2023-05-20 06:12:32,300 gpep517 INFO Building wheel via backend setuptools.build_meta 2023-05-20 06:12:32,340 root INFO running bdist_wheel 2023-05-20 06:12:32,393 root INFO running build 2023-05-20 06:12:32,394 root INFO running build_py 2023-05-20 06:12:32,399 root INFO creating build 2023-05-20 06:12:32,399 root INFO creating build/lib 2023-05-20 06:12:32,399 root INFO creating build/lib/tzlocal 2023-05-20 06:12:32,399 root INFO copying tzlocal/windows_tz.py -> build/lib/tzlocal 2023-05-20 06:12:32,399 root INFO copying tzlocal/win32.py -> build/lib/tzlocal 2023-05-20 06:12:32,399 root INFO copying tzlocal/utils.py -> build/lib/tzlocal 2023-05-20 06:12:32,400 root INFO copying tzlocal/unix.py -> build/lib/tzlocal 2023-05-20 06:12:32,400 root INFO copying tzlocal/__init__.py -> build/lib/tzlocal 2023-05-20 06:12:32,400 root WARNING warning: build_py: byte-compiling is disabled, skipping. 2023-05-20 06:12:32,410 wheel INFO installing to build/bdist.linux-x86_64/wheel 2023-05-20 06:12:32,410 root INFO running install 2023-05-20 06:12:32,417 root INFO running install_lib 2023-05-20 06:12:32,422 root INFO creating build/bdist.linux-x86_64 2023-05-20 06:12:32,422 root INFO creating build/bdist.linux-x86_64/wheel 2023-05-20 06:12:32,422 root INFO creating build/bdist.linux-x86_64/wheel/tzlocal 2023-05-20 06:12:32,422 root INFO copying build/lib/tzlocal/__init__.py -> build/bdist.linux-x86_64/wheel/tzlocal 2023-05-20 06:12:32,423 root INFO copying build/lib/tzlocal/unix.py -> build/bdist.linux-x86_64/wheel/tzlocal 2023-05-20 06:12:32,423 root INFO copying build/lib/tzlocal/utils.py -> build/bdist.linux-x86_64/wheel/tzlocal 2023-05-20 06:12:32,423 root INFO copying build/lib/tzlocal/win32.py -> build/bdist.linux-x86_64/wheel/tzlocal 2023-05-20 06:12:32,423 root INFO copying build/lib/tzlocal/windows_tz.py -> build/bdist.linux-x86_64/wheel/tzlocal 2023-05-20 06:12:32,423 root WARNING warning: install_lib: byte-compiling is disabled, skipping. 2023-05-20 06:12:32,423 root INFO running install_egg_info 2023-05-20 06:12:32,435 root INFO running egg_info 2023-05-20 06:12:32,440 root INFO writing tzlocal.egg-info/PKG-INFO 2023-05-20 06:12:32,440 root INFO writing dependency_links to tzlocal.egg-info/dependency_links.txt 2023-05-20 06:12:32,440 root INFO writing requirements to tzlocal.egg-info/requires.txt 2023-05-20 06:12:32,440 root INFO writing top-level names to tzlocal.egg-info/top_level.txt 2023-05-20 06:12:32,457 setuptools_scm.file_finder_git ERROR listing git files failed - pretending there aren't any 2023-05-20 06:12:32,460 root INFO reading manifest file 'tzlocal.egg-info/SOURCES.txt' 2023-05-20 06:12:32,461 root INFO reading manifest template 'MANIFEST.in' 2023-05-20 06:12:32,465 root WARNING warning: no previously-included files found matching 'Makefile' 2023-05-20 06:12:32,465 root INFO adding license file 'LICENSE.txt' 2023-05-20 06:12:32,466 root INFO writing manifest file 'tzlocal.egg-info/SOURCES.txt' 2023-05-20 06:12:32,466 root INFO Copying tzlocal.egg-info to build/bdist.linux-x86_64/wheel/tzlocal-5.0.1-py3.11.egg-info 2023-05-20 06:12:32,467 root INFO running install_scripts 2023-05-20 06:12:32,470 wheel INFO creating build/bdist.linux-x86_64/wheel/tzlocal-5.0.1.dist-info/WHEEL 2023-05-20 06:12:32,470 wheel INFO creating '/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1-python3_11/wheel/.tmp-nbx3017w/tzlocal-5.0.1-py3-none-any.whl' and adding 'build/bdist.linux-x86_64/wheel' to it 2023-05-20 06:12:32,471 wheel INFO adding 'tzlocal/__init__.py' 2023-05-20 06:12:32,471 wheel INFO adding 'tzlocal/unix.py' 2023-05-20 06:12:32,471 wheel INFO adding 'tzlocal/utils.py' 2023-05-20 06:12:32,471 wheel INFO adding 'tzlocal/win32.py' 2023-05-20 06:12:32,472 wheel INFO adding 'tzlocal/windows_tz.py' 2023-05-20 06:12:32,472 wheel INFO adding 'tzlocal-5.0.1.dist-info/LICENSE.txt' 2023-05-20 06:12:32,472 wheel INFO adding 'tzlocal-5.0.1.dist-info/METADATA' 2023-05-20 06:12:32,472 wheel INFO adding 'tzlocal-5.0.1.dist-info/WHEEL' 2023-05-20 06:12:32,472 wheel INFO adding 'tzlocal-5.0.1.dist-info/top_level.txt' 2023-05-20 06:12:32,473 wheel INFO adding 'tzlocal-5.0.1.dist-info/zip-safe' 2023-05-20 06:12:32,473 wheel INFO adding 'tzlocal-5.0.1.dist-info/RECORD' 2023-05-20 06:12:32,473 wheel INFO removing build/bdist.linux-x86_64/wheel 2023-05-20 06:12:32,474 gpep517 INFO The backend produced /var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1-python3_11/wheel/tzlocal-5.0.1-py3-none-any.whl * Installing tzlocal-5.0.1-py3-none-any.whl to /var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1-python3_11/install gpep517 install-wheel --destdir=/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1-python3_11/install --interpreter=/usr/bin/python3.11 --prefix=/usr --optimize=all /var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1-python3_11/wheel/tzlocal-5.0.1-py3-none-any.whl 2023-05-20 06:12:32,568 gpep517 INFO Installing /var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1-python3_11/wheel/tzlocal-5.0.1-py3-none-any.whl into /var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1-python3_11/install 2023-05-20 06:12:32,592 gpep517 INFO Installation complete >>> Source compiled. >>> Test phase: dev-python/tzlocal-5.0.1 * python3_10: running distutils-r1_run_phase python_test python3.10 -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 no:xvfb -p no:tavern ============================= test session starts ============================== platform linux -- Python 3.10.11, pytest-7.3.1, pluggy-1.0.0 -- /var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1-python3_10/install/usr/bin/python3.10 cachedir: .pytest_cache rootdir: /var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1 configfile: pyproject.toml testpaths: tests plugins: mock-3.10.0 collecting ... collected 20 items tests/test_tzlocal.py::test_env FAILED [ 1/20] tests/test_tzlocal.py::test_timezone FAILED [ 2/20] tests/test_tzlocal.py::test_timezone_top_line_comment FAILED [ 3/20] tests/test_tzlocal.py::test_zone_setting FAILED [ 4/20] tests/test_tzlocal.py::test_timezone_setting FAILED [ 5/20] tests/test_tzlocal.py::test_symlink_localtime FAILED [ 6/20] tests/test_tzlocal.py::test_vardbzoneinfo_setting FAILED [ 7/20] tests/test_tzlocal.py::test_only_localtime FAILED [ 8/20] tests/test_tzlocal.py::test_get_reload FAILED [ 9/20] tests/test_tzlocal.py::test_fail PASSED [10/20] tests/test_tzlocal.py::test_assert_tz_offset FAILED [11/20] tests/test_tzlocal.py::test_win32 FAILED [12/20] tests/test_tzlocal.py::test_win32_env FAILED [13/20] tests/test_tzlocal.py::test_win32_no_dst FAILED [14/20] tests/test_tzlocal.py::test_termux FAILED [15/20] tests/test_tzlocal.py::test_conflicting FAILED [16/20] tests/test_tzlocal.py::test_noconflict FAILED [17/20] tests/test_tzlocal.py::test_zoneinfo_compatibility FAILED [18/20] tests/test_tzlocal.py::test_get_localzone_name PASSED [19/20] tests/test_tzlocal.py::test_ubuntu_docker_bug FAILED [20/20] =================================== FAILURES =================================== ___________________________________ test_env ___________________________________ monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7f36e3e16500> def test_env(monkeypatch): > tz_harare = tzlocal.utils._tz_from_env(":Africa/Harare") monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7f36e3e16500> tests/test_tzlocal.py:37: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tzenv = 'Africa/Harare' def _tz_from_env(tzenv=None): if tzenv is None: tzenv = os.environ.get("TZ") if not tzenv: return None # Some weird format that exists: if tzenv[0] == ":": tzenv = tzenv[1:] # TZ specifies a file if os.path.isabs(tzenv) and os.path.exists(tzenv): # Try to see if we can figure out the name tzname = _tz_name_from_env(tzenv) if not tzname: # Nope, not a standard timezone name, just take the filename tzname = tzenv.split(os.sep)[-1] with open(tzenv, "rb") as tzfile: return zoneinfo.ZoneInfo.from_file(tzfile, key=tzname) # TZ must specify a zoneinfo zone. try: tz = zoneinfo.ZoneInfo(tzenv) # That worked, so we return this: return tz except zoneinfo.ZoneInfoNotFoundError: # Nope, it's something like "PST4DST" etc, we can't handle that. > raise zoneinfo.ZoneInfoNotFoundError( "tzlocal() does not support non-zoneinfo timezones like %s. \n" "Please use a timezone in the form of Continent/City" % tzenv ) from None E zoneinfo._common.ZoneInfoNotFoundError: 'tzlocal() does not support non-zoneinfo timezones like Africa/Harare. \nPlease use a timezone in the form of Continent/City' tzenv = 'Africa/Harare' tzlocal/utils.py:109: ZoneInfoNotFoundError ________________________________ test_timezone _________________________________ key = 'Africa/Harare' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: > return importlib.resources.open_binary(package_name, resource_name) components = ['Africa', 'Harare'] importlib = key = 'Africa/Harare' package_name = 'tzdata.zoneinfo.Africa' resource_name = 'Harare' /usr/lib/python3.10/zoneinfo/_common.py:12: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Africa', resource = 'Harare' def open_binary(package: Package, resource: Resource) -> BinaryIO: """Return a file-like object opened for binary reading of the resource.""" resource = _common.normalize_path(resource) > package = _common.get_package(package) package = 'tzdata.zoneinfo.Africa' resource = 'Harare' /usr/lib/python3.10/importlib/resources.py:43: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Africa' def get_package(package): # type: (Package) -> types.ModuleType """Take a package name or module object and return the module. Raise an exception if the resolved module is not a package. """ > resolved = resolve(package) package = 'tzdata.zoneinfo.Africa' /usr/lib/python3.10/importlib/_common.py:66: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cand = 'tzdata.zoneinfo.Africa' def resolve(cand): # type: (Package) -> types.ModuleType > return cand if isinstance(cand, types.ModuleType) else importlib.import_module(cand) cand = 'tzdata.zoneinfo.Africa' /usr/lib/python3.10/importlib/_common.py:57: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa', package = None def import_module(name, package=None): """Import a module. The 'package' argument is required when performing a relative import. It specifies the package to use as the anchor point from which to resolve the relative import to an absolute import. """ level = 0 if name.startswith('.'): if not package: msg = ("the 'package' argument is required to perform a relative " "import for {!r}") raise TypeError(msg.format(name)) for character in name: if character != '.': break level += 1 > return _bootstrap._gcd_import(name[level:], package, level) level = 0 name = 'tzdata.zoneinfo.Africa' package = None /usr/lib/python3.10/importlib/__init__.py:126: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo.Africa' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa' import_ = > ??? import_ = module = name = 'tzdata.zoneinfo.Africa' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa' import_ = > ??? import_ = name = 'tzdata.zoneinfo.Africa' parent = 'tzdata.zoneinfo' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata.zoneinfo',) kwds = {} > ??? args = ('tzdata.zoneinfo',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = module = name = 'tzdata.zoneinfo' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = name = 'tzdata.zoneinfo' parent = 'tzdata' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata',), kwds = {} > ??? args = ('tzdata',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', package = None, level = 0 > ??? level = 0 name = 'tzdata' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? import_ = module = name = 'tzdata' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? E ModuleNotFoundError: No module named 'tzdata' import_ = name = 'tzdata' parent = '' path = None spec = None :1004: ModuleNotFoundError During handling of the above exception, another exception occurred: def test_timezone(): # Most versions of Ubuntu > tz = tzlocal.unix._get_localzone(_root=tz_path("timezone")) tests/test_tzlocal.py:70: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tzlocal/unix.py:195: in _get_localzone tz = zoneinfo.ZoneInfo(tzname) _root = '/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1/tests/test_data/timezone' tzenv = None tzname = 'Africa/Harare' _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ key = 'Africa/Harare' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: return importlib.resources.open_binary(package_name, resource_name) except (ImportError, FileNotFoundError, UnicodeEncodeError): # There are three types of exception that can be raised that all amount # to "we cannot find this key": # # ImportError: If package_name doesn't exist (e.g. if tzdata is not # installed, or if there's an error in the folder name like # Amrica/New_York) # FileNotFoundError: If resource_name doesn't exist in the package # (e.g. Europe/Krasnoy) # UnicodeEncodeError: If package_name or resource_name are not UTF-8, # such as keys containing a surrogate character. > raise ZoneInfoNotFoundError(f"No time zone found with key {key}") E zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key Africa/Harare' components = ['Africa', 'Harare'] importlib = key = 'Africa/Harare' package_name = 'tzdata.zoneinfo.Africa' resource_name = 'Harare' /usr/lib/python3.10/zoneinfo/_common.py:24: ZoneInfoNotFoundError ________________________ test_timezone_top_line_comment ________________________ key = 'Africa/Harare' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: > return importlib.resources.open_binary(package_name, resource_name) components = ['Africa', 'Harare'] importlib = key = 'Africa/Harare' package_name = 'tzdata.zoneinfo.Africa' resource_name = 'Harare' /usr/lib/python3.10/zoneinfo/_common.py:12: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Africa', resource = 'Harare' def open_binary(package: Package, resource: Resource) -> BinaryIO: """Return a file-like object opened for binary reading of the resource.""" resource = _common.normalize_path(resource) > package = _common.get_package(package) package = 'tzdata.zoneinfo.Africa' resource = 'Harare' /usr/lib/python3.10/importlib/resources.py:43: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Africa' def get_package(package): # type: (Package) -> types.ModuleType """Take a package name or module object and return the module. Raise an exception if the resolved module is not a package. """ > resolved = resolve(package) package = 'tzdata.zoneinfo.Africa' /usr/lib/python3.10/importlib/_common.py:66: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cand = 'tzdata.zoneinfo.Africa' def resolve(cand): # type: (Package) -> types.ModuleType > return cand if isinstance(cand, types.ModuleType) else importlib.import_module(cand) cand = 'tzdata.zoneinfo.Africa' /usr/lib/python3.10/importlib/_common.py:57: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa', package = None def import_module(name, package=None): """Import a module. The 'package' argument is required when performing a relative import. It specifies the package to use as the anchor point from which to resolve the relative import to an absolute import. """ level = 0 if name.startswith('.'): if not package: msg = ("the 'package' argument is required to perform a relative " "import for {!r}") raise TypeError(msg.format(name)) for character in name: if character != '.': break level += 1 > return _bootstrap._gcd_import(name[level:], package, level) level = 0 name = 'tzdata.zoneinfo.Africa' package = None /usr/lib/python3.10/importlib/__init__.py:126: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo.Africa' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa' import_ = > ??? import_ = module = name = 'tzdata.zoneinfo.Africa' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa' import_ = > ??? import_ = name = 'tzdata.zoneinfo.Africa' parent = 'tzdata.zoneinfo' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata.zoneinfo',) kwds = {} > ??? args = ('tzdata.zoneinfo',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = module = name = 'tzdata.zoneinfo' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = name = 'tzdata.zoneinfo' parent = 'tzdata' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata',), kwds = {} > ??? args = ('tzdata',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', package = None, level = 0 > ??? level = 0 name = 'tzdata' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? import_ = module = name = 'tzdata' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? E ModuleNotFoundError: No module named 'tzdata' import_ = name = 'tzdata' parent = '' path = None spec = None :1004: ModuleNotFoundError During handling of the above exception, another exception occurred: def test_timezone_top_line_comment(): > tz = tzlocal.unix._get_localzone(_root=tz_path("top_line_comment")) tests/test_tzlocal.py:75: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tzlocal/unix.py:195: in _get_localzone tz = zoneinfo.ZoneInfo(tzname) _root = '/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1/tests/test_data/top_line_comment' tzenv = None tzname = 'Africa/Harare' _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ key = 'Africa/Harare' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: return importlib.resources.open_binary(package_name, resource_name) except (ImportError, FileNotFoundError, UnicodeEncodeError): # There are three types of exception that can be raised that all amount # to "we cannot find this key": # # ImportError: If package_name doesn't exist (e.g. if tzdata is not # installed, or if there's an error in the folder name like # Amrica/New_York) # FileNotFoundError: If resource_name doesn't exist in the package # (e.g. Europe/Krasnoy) # UnicodeEncodeError: If package_name or resource_name are not UTF-8, # such as keys containing a surrogate character. > raise ZoneInfoNotFoundError(f"No time zone found with key {key}") E zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key Africa/Harare' components = ['Africa', 'Harare'] importlib = key = 'Africa/Harare' package_name = 'tzdata.zoneinfo.Africa' resource_name = 'Harare' /usr/lib/python3.10/zoneinfo/_common.py:24: ZoneInfoNotFoundError ______________________________ test_zone_setting _______________________________ key = 'Africa/Harare' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: > return importlib.resources.open_binary(package_name, resource_name) components = ['Africa', 'Harare'] importlib = key = 'Africa/Harare' package_name = 'tzdata.zoneinfo.Africa' resource_name = 'Harare' /usr/lib/python3.10/zoneinfo/_common.py:12: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Africa', resource = 'Harare' def open_binary(package: Package, resource: Resource) -> BinaryIO: """Return a file-like object opened for binary reading of the resource.""" resource = _common.normalize_path(resource) > package = _common.get_package(package) package = 'tzdata.zoneinfo.Africa' resource = 'Harare' /usr/lib/python3.10/importlib/resources.py:43: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Africa' def get_package(package): # type: (Package) -> types.ModuleType """Take a package name or module object and return the module. Raise an exception if the resolved module is not a package. """ > resolved = resolve(package) package = 'tzdata.zoneinfo.Africa' /usr/lib/python3.10/importlib/_common.py:66: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cand = 'tzdata.zoneinfo.Africa' def resolve(cand): # type: (Package) -> types.ModuleType > return cand if isinstance(cand, types.ModuleType) else importlib.import_module(cand) cand = 'tzdata.zoneinfo.Africa' /usr/lib/python3.10/importlib/_common.py:57: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa', package = None def import_module(name, package=None): """Import a module. The 'package' argument is required when performing a relative import. It specifies the package to use as the anchor point from which to resolve the relative import to an absolute import. """ level = 0 if name.startswith('.'): if not package: msg = ("the 'package' argument is required to perform a relative " "import for {!r}") raise TypeError(msg.format(name)) for character in name: if character != '.': break level += 1 > return _bootstrap._gcd_import(name[level:], package, level) level = 0 name = 'tzdata.zoneinfo.Africa' package = None /usr/lib/python3.10/importlib/__init__.py:126: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo.Africa' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa' import_ = > ??? import_ = module = name = 'tzdata.zoneinfo.Africa' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa' import_ = > ??? import_ = name = 'tzdata.zoneinfo.Africa' parent = 'tzdata.zoneinfo' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata.zoneinfo',) kwds = {} > ??? args = ('tzdata.zoneinfo',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = module = name = 'tzdata.zoneinfo' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = name = 'tzdata.zoneinfo' parent = 'tzdata' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata',), kwds = {} > ??? args = ('tzdata',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', package = None, level = 0 > ??? level = 0 name = 'tzdata' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? import_ = module = name = 'tzdata' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? E ModuleNotFoundError: No module named 'tzdata' import_ = name = 'tzdata' parent = '' path = None spec = None :1004: ModuleNotFoundError During handling of the above exception, another exception occurred: def test_zone_setting(): # A ZONE setting in /etc/sysconfig/clock, f ex CentOS > tz = tzlocal.unix._get_localzone(_root=tz_path("zone_setting")) tests/test_tzlocal.py:82: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tzlocal/unix.py:195: in _get_localzone tz = zoneinfo.ZoneInfo(tzname) _root = '/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1/tests/test_data/zone_setting' tzenv = None tzname = 'Africa/Harare' _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ key = 'Africa/Harare' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: return importlib.resources.open_binary(package_name, resource_name) except (ImportError, FileNotFoundError, UnicodeEncodeError): # There are three types of exception that can be raised that all amount # to "we cannot find this key": # # ImportError: If package_name doesn't exist (e.g. if tzdata is not # installed, or if there's an error in the folder name like # Amrica/New_York) # FileNotFoundError: If resource_name doesn't exist in the package # (e.g. Europe/Krasnoy) # UnicodeEncodeError: If package_name or resource_name are not UTF-8, # such as keys containing a surrogate character. > raise ZoneInfoNotFoundError(f"No time zone found with key {key}") E zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key Africa/Harare' components = ['Africa', 'Harare'] importlib = key = 'Africa/Harare' package_name = 'tzdata.zoneinfo.Africa' resource_name = 'Harare' /usr/lib/python3.10/zoneinfo/_common.py:24: ZoneInfoNotFoundError ____________________________ test_timezone_setting _____________________________ key = 'Africa/Harare' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: > return importlib.resources.open_binary(package_name, resource_name) components = ['Africa', 'Harare'] importlib = key = 'Africa/Harare' package_name = 'tzdata.zoneinfo.Africa' resource_name = 'Harare' /usr/lib/python3.10/zoneinfo/_common.py:12: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Africa', resource = 'Harare' def open_binary(package: Package, resource: Resource) -> BinaryIO: """Return a file-like object opened for binary reading of the resource.""" resource = _common.normalize_path(resource) > package = _common.get_package(package) package = 'tzdata.zoneinfo.Africa' resource = 'Harare' /usr/lib/python3.10/importlib/resources.py:43: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Africa' def get_package(package): # type: (Package) -> types.ModuleType """Take a package name or module object and return the module. Raise an exception if the resolved module is not a package. """ > resolved = resolve(package) package = 'tzdata.zoneinfo.Africa' /usr/lib/python3.10/importlib/_common.py:66: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cand = 'tzdata.zoneinfo.Africa' def resolve(cand): # type: (Package) -> types.ModuleType > return cand if isinstance(cand, types.ModuleType) else importlib.import_module(cand) cand = 'tzdata.zoneinfo.Africa' /usr/lib/python3.10/importlib/_common.py:57: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa', package = None def import_module(name, package=None): """Import a module. The 'package' argument is required when performing a relative import. It specifies the package to use as the anchor point from which to resolve the relative import to an absolute import. """ level = 0 if name.startswith('.'): if not package: msg = ("the 'package' argument is required to perform a relative " "import for {!r}") raise TypeError(msg.format(name)) for character in name: if character != '.': break level += 1 > return _bootstrap._gcd_import(name[level:], package, level) level = 0 name = 'tzdata.zoneinfo.Africa' package = None /usr/lib/python3.10/importlib/__init__.py:126: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo.Africa' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa' import_ = > ??? import_ = module = name = 'tzdata.zoneinfo.Africa' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa' import_ = > ??? import_ = name = 'tzdata.zoneinfo.Africa' parent = 'tzdata.zoneinfo' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata.zoneinfo',) kwds = {} > ??? args = ('tzdata.zoneinfo',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = module = name = 'tzdata.zoneinfo' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = name = 'tzdata.zoneinfo' parent = 'tzdata' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata',), kwds = {} > ??? args = ('tzdata',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', package = None, level = 0 > ??? level = 0 name = 'tzdata' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? import_ = module = name = 'tzdata' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? E ModuleNotFoundError: No module named 'tzdata' import_ = name = 'tzdata' parent = '' path = None spec = None :1004: ModuleNotFoundError During handling of the above exception, another exception occurred: def test_timezone_setting(): # A ZONE setting in /etc/conf.d/clock, f ex Gentoo > tz = tzlocal.unix._get_localzone(_root=tz_path("timezone_setting")) tests/test_tzlocal.py:89: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tzlocal/unix.py:195: in _get_localzone tz = zoneinfo.ZoneInfo(tzname) _root = '/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1/tests/test_data/timezone_setting' tzenv = None tzname = 'Africa/Harare' _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ key = 'Africa/Harare' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: return importlib.resources.open_binary(package_name, resource_name) except (ImportError, FileNotFoundError, UnicodeEncodeError): # There are three types of exception that can be raised that all amount # to "we cannot find this key": # # ImportError: If package_name doesn't exist (e.g. if tzdata is not # installed, or if there's an error in the folder name like # Amrica/New_York) # FileNotFoundError: If resource_name doesn't exist in the package # (e.g. Europe/Krasnoy) # UnicodeEncodeError: If package_name or resource_name are not UTF-8, # such as keys containing a surrogate character. > raise ZoneInfoNotFoundError(f"No time zone found with key {key}") E zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key Africa/Harare' components = ['Africa', 'Harare'] importlib = key = 'Africa/Harare' package_name = 'tzdata.zoneinfo.Africa' resource_name = 'Harare' /usr/lib/python3.10/zoneinfo/_common.py:24: ZoneInfoNotFoundError ____________________________ test_symlink_localtime ____________________________ @pytest.mark.skipif( platform.system() == "Windows", reason="Symbolic links are not available on Windows" ) def test_symlink_localtime(): # A ZONE setting in the target path of a symbolic linked localtime, f ex systemd distributions tz = tzlocal.unix._get_localzone(_root=tz_path("symlink_localtime")) > assert str(tz) == "Africa/Harare" E AssertionError: assert 'local' == 'Africa/Harare' E - Africa/Harare E + local tz = zoneinfo.ZoneInfo(key='local') tests/test_tzlocal.py:100: AssertionError __________________________ test_vardbzoneinfo_setting __________________________ key = 'Africa/Harare' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: > return importlib.resources.open_binary(package_name, resource_name) components = ['Africa', 'Harare'] importlib = key = 'Africa/Harare' package_name = 'tzdata.zoneinfo.Africa' resource_name = 'Harare' /usr/lib/python3.10/zoneinfo/_common.py:12: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Africa', resource = 'Harare' def open_binary(package: Package, resource: Resource) -> BinaryIO: """Return a file-like object opened for binary reading of the resource.""" resource = _common.normalize_path(resource) > package = _common.get_package(package) package = 'tzdata.zoneinfo.Africa' resource = 'Harare' /usr/lib/python3.10/importlib/resources.py:43: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Africa' def get_package(package): # type: (Package) -> types.ModuleType """Take a package name or module object and return the module. Raise an exception if the resolved module is not a package. """ > resolved = resolve(package) package = 'tzdata.zoneinfo.Africa' /usr/lib/python3.10/importlib/_common.py:66: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cand = 'tzdata.zoneinfo.Africa' def resolve(cand): # type: (Package) -> types.ModuleType > return cand if isinstance(cand, types.ModuleType) else importlib.import_module(cand) cand = 'tzdata.zoneinfo.Africa' /usr/lib/python3.10/importlib/_common.py:57: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa', package = None def import_module(name, package=None): """Import a module. The 'package' argument is required when performing a relative import. It specifies the package to use as the anchor point from which to resolve the relative import to an absolute import. """ level = 0 if name.startswith('.'): if not package: msg = ("the 'package' argument is required to perform a relative " "import for {!r}") raise TypeError(msg.format(name)) for character in name: if character != '.': break level += 1 > return _bootstrap._gcd_import(name[level:], package, level) level = 0 name = 'tzdata.zoneinfo.Africa' package = None /usr/lib/python3.10/importlib/__init__.py:126: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo.Africa' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa' import_ = > ??? import_ = module = name = 'tzdata.zoneinfo.Africa' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa' import_ = > ??? import_ = name = 'tzdata.zoneinfo.Africa' parent = 'tzdata.zoneinfo' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata.zoneinfo',) kwds = {} > ??? args = ('tzdata.zoneinfo',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = module = name = 'tzdata.zoneinfo' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = name = 'tzdata.zoneinfo' parent = 'tzdata' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata',), kwds = {} > ??? args = ('tzdata',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', package = None, level = 0 > ??? level = 0 name = 'tzdata' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? import_ = module = name = 'tzdata' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? E ModuleNotFoundError: No module named 'tzdata' import_ = name = 'tzdata' parent = '' path = None spec = None :1004: ModuleNotFoundError During handling of the above exception, another exception occurred: def test_vardbzoneinfo_setting(): # A ZONE setting in /etc/conf.d/clock, f ex Gentoo > tz = tzlocal.unix._get_localzone(_root=tz_path("vardbzoneinfo")) tests/test_tzlocal.py:106: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tzlocal/unix.py:195: in _get_localzone tz = zoneinfo.ZoneInfo(tzname) _root = '/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1/tests/test_data/vardbzoneinfo' tzenv = None tzname = 'Africa/Harare' _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ key = 'Africa/Harare' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: return importlib.resources.open_binary(package_name, resource_name) except (ImportError, FileNotFoundError, UnicodeEncodeError): # There are three types of exception that can be raised that all amount # to "we cannot find this key": # # ImportError: If package_name doesn't exist (e.g. if tzdata is not # installed, or if there's an error in the folder name like # Amrica/New_York) # FileNotFoundError: If resource_name doesn't exist in the package # (e.g. Europe/Krasnoy) # UnicodeEncodeError: If package_name or resource_name are not UTF-8, # such as keys containing a surrogate character. > raise ZoneInfoNotFoundError(f"No time zone found with key {key}") E zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key Africa/Harare' components = ['Africa', 'Harare'] importlib = key = 'Africa/Harare' package_name = 'tzdata.zoneinfo.Africa' resource_name = 'Harare' /usr/lib/python3.10/zoneinfo/_common.py:24: ZoneInfoNotFoundError _____________________________ test_only_localtime ______________________________ key = 'Africa/Harare' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: > return importlib.resources.open_binary(package_name, resource_name) components = ['Africa', 'Harare'] importlib = key = 'Africa/Harare' package_name = 'tzdata.zoneinfo.Africa' resource_name = 'Harare' /usr/lib/python3.10/zoneinfo/_common.py:12: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Africa', resource = 'Harare' def open_binary(package: Package, resource: Resource) -> BinaryIO: """Return a file-like object opened for binary reading of the resource.""" resource = _common.normalize_path(resource) > package = _common.get_package(package) package = 'tzdata.zoneinfo.Africa' resource = 'Harare' /usr/lib/python3.10/importlib/resources.py:43: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Africa' def get_package(package): # type: (Package) -> types.ModuleType """Take a package name or module object and return the module. Raise an exception if the resolved module is not a package. """ > resolved = resolve(package) package = 'tzdata.zoneinfo.Africa' /usr/lib/python3.10/importlib/_common.py:66: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cand = 'tzdata.zoneinfo.Africa' def resolve(cand): # type: (Package) -> types.ModuleType > return cand if isinstance(cand, types.ModuleType) else importlib.import_module(cand) cand = 'tzdata.zoneinfo.Africa' /usr/lib/python3.10/importlib/_common.py:57: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa', package = None def import_module(name, package=None): """Import a module. The 'package' argument is required when performing a relative import. It specifies the package to use as the anchor point from which to resolve the relative import to an absolute import. """ level = 0 if name.startswith('.'): if not package: msg = ("the 'package' argument is required to perform a relative " "import for {!r}") raise TypeError(msg.format(name)) for character in name: if character != '.': break level += 1 > return _bootstrap._gcd_import(name[level:], package, level) level = 0 name = 'tzdata.zoneinfo.Africa' package = None /usr/lib/python3.10/importlib/__init__.py:126: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo.Africa' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa' import_ = > ??? import_ = module = name = 'tzdata.zoneinfo.Africa' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa' import_ = > ??? import_ = name = 'tzdata.zoneinfo.Africa' parent = 'tzdata.zoneinfo' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata.zoneinfo',) kwds = {} > ??? args = ('tzdata.zoneinfo',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = module = name = 'tzdata.zoneinfo' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = name = 'tzdata.zoneinfo' parent = 'tzdata' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata',), kwds = {} > ??? args = ('tzdata',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', package = None, level = 0 > ??? level = 0 name = 'tzdata' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? import_ = module = name = 'tzdata' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? E ModuleNotFoundError: No module named 'tzdata' import_ = name = 'tzdata' parent = '' path = None spec = None :1004: ModuleNotFoundError During handling of the above exception, another exception occurred: def test_only_localtime(): tz = tzlocal.unix._get_localzone(_root=tz_path("localtime")) assert str(tz) == "local" dt = datetime(2012, 1, 1, 5) > assert dt.replace(tzinfo=ZoneInfo("Africa/Harare")) == dt.replace(tzinfo=tz) dt = datetime.datetime(2012, 1, 1, 5, 0) tz = zoneinfo.ZoneInfo(key='local') tests/test_tzlocal.py:114: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ key = 'Africa/Harare' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: return importlib.resources.open_binary(package_name, resource_name) except (ImportError, FileNotFoundError, UnicodeEncodeError): # There are three types of exception that can be raised that all amount # to "we cannot find this key": # # ImportError: If package_name doesn't exist (e.g. if tzdata is not # installed, or if there's an error in the folder name like # Amrica/New_York) # FileNotFoundError: If resource_name doesn't exist in the package # (e.g. Europe/Krasnoy) # UnicodeEncodeError: If package_name or resource_name are not UTF-8, # such as keys containing a surrogate character. > raise ZoneInfoNotFoundError(f"No time zone found with key {key}") E zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key Africa/Harare' components = ['Africa', 'Harare'] importlib = key = 'Africa/Harare' package_name = 'tzdata.zoneinfo.Africa' resource_name = 'Harare' /usr/lib/python3.10/zoneinfo/_common.py:24: ZoneInfoNotFoundError _______________________________ test_get_reload ________________________________ mocker = monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7f36e3c9c3a0> def test_get_reload(mocker, monkeypatch): mocker.patch("tzlocal.utils.assert_tz_offset") # Clear any cached zone monkeypatch.setattr(tzlocal.unix, "_cache_tz", None) monkeypatch.setenv("TZ", "Africa/Harare") > tz_harare = tzlocal.unix.get_localzone() mocker = monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7f36e3c9c3a0> tests/test_tzlocal.py:123: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tzlocal/unix.py:218: in get_localzone _cache_tz = _get_localzone() tzlocal/unix.py:175: in _get_localzone tzenv = utils._tz_from_env() _root = '/' _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tzenv = 'Africa/Harare' def _tz_from_env(tzenv=None): if tzenv is None: tzenv = os.environ.get("TZ") if not tzenv: return None # Some weird format that exists: if tzenv[0] == ":": tzenv = tzenv[1:] # TZ specifies a file if os.path.isabs(tzenv) and os.path.exists(tzenv): # Try to see if we can figure out the name tzname = _tz_name_from_env(tzenv) if not tzname: # Nope, not a standard timezone name, just take the filename tzname = tzenv.split(os.sep)[-1] with open(tzenv, "rb") as tzfile: return zoneinfo.ZoneInfo.from_file(tzfile, key=tzname) # TZ must specify a zoneinfo zone. try: tz = zoneinfo.ZoneInfo(tzenv) # That worked, so we return this: return tz except zoneinfo.ZoneInfoNotFoundError: # Nope, it's something like "PST4DST" etc, we can't handle that. > raise zoneinfo.ZoneInfoNotFoundError( "tzlocal() does not support non-zoneinfo timezones like %s. \n" "Please use a timezone in the form of Continent/City" % tzenv ) from None E zoneinfo._common.ZoneInfoNotFoundError: 'tzlocal() does not support non-zoneinfo timezones like Africa/Harare. \nPlease use a timezone in the form of Continent/City' tzenv = 'Africa/Harare' tzlocal/utils.py:109: ZoneInfoNotFoundError ____________________________ test_assert_tz_offset _____________________________ key = 'Pacific/Chatham' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: > return importlib.resources.open_binary(package_name, resource_name) components = ['Pacific', 'Chatham'] importlib = key = 'Pacific/Chatham' package_name = 'tzdata.zoneinfo.Pacific' resource_name = 'Chatham' /usr/lib/python3.10/zoneinfo/_common.py:12: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Pacific', resource = 'Chatham' def open_binary(package: Package, resource: Resource) -> BinaryIO: """Return a file-like object opened for binary reading of the resource.""" resource = _common.normalize_path(resource) > package = _common.get_package(package) package = 'tzdata.zoneinfo.Pacific' resource = 'Chatham' /usr/lib/python3.10/importlib/resources.py:43: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Pacific' def get_package(package): # type: (Package) -> types.ModuleType """Take a package name or module object and return the module. Raise an exception if the resolved module is not a package. """ > resolved = resolve(package) package = 'tzdata.zoneinfo.Pacific' /usr/lib/python3.10/importlib/_common.py:66: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cand = 'tzdata.zoneinfo.Pacific' def resolve(cand): # type: (Package) -> types.ModuleType > return cand if isinstance(cand, types.ModuleType) else importlib.import_module(cand) cand = 'tzdata.zoneinfo.Pacific' /usr/lib/python3.10/importlib/_common.py:57: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Pacific', package = None def import_module(name, package=None): """Import a module. The 'package' argument is required when performing a relative import. It specifies the package to use as the anchor point from which to resolve the relative import to an absolute import. """ level = 0 if name.startswith('.'): if not package: msg = ("the 'package' argument is required to perform a relative " "import for {!r}") raise TypeError(msg.format(name)) for character in name: if character != '.': break level += 1 > return _bootstrap._gcd_import(name[level:], package, level) level = 0 name = 'tzdata.zoneinfo.Pacific' package = None /usr/lib/python3.10/importlib/__init__.py:126: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Pacific', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo.Pacific' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Pacific' import_ = > ??? import_ = module = name = 'tzdata.zoneinfo.Pacific' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Pacific' import_ = > ??? import_ = name = 'tzdata.zoneinfo.Pacific' parent = 'tzdata.zoneinfo' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata.zoneinfo',) kwds = {} > ??? args = ('tzdata.zoneinfo',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = module = name = 'tzdata.zoneinfo' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = name = 'tzdata.zoneinfo' parent = 'tzdata' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata',), kwds = {} > ??? args = ('tzdata',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', package = None, level = 0 > ??? level = 0 name = 'tzdata' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? import_ = module = name = 'tzdata' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? E ModuleNotFoundError: No module named 'tzdata' import_ = name = 'tzdata' parent = '' path = None spec = None :1004: ModuleNotFoundError During handling of the above exception, another exception occurred: def test_assert_tz_offset(): # The local zone should be the local zone: local = tzlocal.get_localzone() tzlocal.utils.assert_tz_offset(local) # Get a non local zone. Let's use Chatham, population 600. > other = ZoneInfo("Pacific/Chatham") local = datetime.timezone.utc tests/test_tzlocal.py:146: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ key = 'Pacific/Chatham' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: return importlib.resources.open_binary(package_name, resource_name) except (ImportError, FileNotFoundError, UnicodeEncodeError): # There are three types of exception that can be raised that all amount # to "we cannot find this key": # # ImportError: If package_name doesn't exist (e.g. if tzdata is not # installed, or if there's an error in the folder name like # Amrica/New_York) # FileNotFoundError: If resource_name doesn't exist in the package # (e.g. Europe/Krasnoy) # UnicodeEncodeError: If package_name or resource_name are not UTF-8, # such as keys containing a surrogate character. > raise ZoneInfoNotFoundError(f"No time zone found with key {key}") E zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key Pacific/Chatham' components = ['Pacific', 'Chatham'] importlib = key = 'Pacific/Chatham' package_name = 'tzdata.zoneinfo.Pacific' resource_name = 'Chatham' /usr/lib/python3.10/zoneinfo/_common.py:24: ZoneInfoNotFoundError __________________________________ test_win32 __________________________________ key = 'Europe/Minsk' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: > return importlib.resources.open_binary(package_name, resource_name) components = ['Europe', 'Minsk'] importlib = key = 'Europe/Minsk' package_name = 'tzdata.zoneinfo.Europe' resource_name = 'Minsk' /usr/lib/python3.10/zoneinfo/_common.py:12: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Europe', resource = 'Minsk' def open_binary(package: Package, resource: Resource) -> BinaryIO: """Return a file-like object opened for binary reading of the resource.""" resource = _common.normalize_path(resource) > package = _common.get_package(package) package = 'tzdata.zoneinfo.Europe' resource = 'Minsk' /usr/lib/python3.10/importlib/resources.py:43: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Europe' def get_package(package): # type: (Package) -> types.ModuleType """Take a package name or module object and return the module. Raise an exception if the resolved module is not a package. """ > resolved = resolve(package) package = 'tzdata.zoneinfo.Europe' /usr/lib/python3.10/importlib/_common.py:66: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cand = 'tzdata.zoneinfo.Europe' def resolve(cand): # type: (Package) -> types.ModuleType > return cand if isinstance(cand, types.ModuleType) else importlib.import_module(cand) cand = 'tzdata.zoneinfo.Europe' /usr/lib/python3.10/importlib/_common.py:57: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Europe', package = None def import_module(name, package=None): """Import a module. The 'package' argument is required when performing a relative import. It specifies the package to use as the anchor point from which to resolve the relative import to an absolute import. """ level = 0 if name.startswith('.'): if not package: msg = ("the 'package' argument is required to perform a relative " "import for {!r}") raise TypeError(msg.format(name)) for character in name: if character != '.': break level += 1 > return _bootstrap._gcd_import(name[level:], package, level) level = 0 name = 'tzdata.zoneinfo.Europe' package = None /usr/lib/python3.10/importlib/__init__.py:126: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Europe', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo.Europe' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Europe' import_ = > ??? import_ = module = name = 'tzdata.zoneinfo.Europe' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Europe' import_ = > ??? import_ = name = 'tzdata.zoneinfo.Europe' parent = 'tzdata.zoneinfo' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata.zoneinfo',) kwds = {} > ??? args = ('tzdata.zoneinfo',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = module = name = 'tzdata.zoneinfo' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = name = 'tzdata.zoneinfo' parent = 'tzdata' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata',), kwds = {} > ??? args = ('tzdata',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', package = None, level = 0 > ??? level = 0 name = 'tzdata' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? import_ = module = name = 'tzdata' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? E ModuleNotFoundError: No module named 'tzdata' import_ = name = 'tzdata' parent = '' path = None spec = None :1004: ModuleNotFoundError During handling of the above exception, another exception occurred: mocker = def test_win32(mocker): if sys.platform == "win32": # Ironically, these tests don't work on Windows. import tzlocal.win32 # Just check on Windows that the code works, and that we get # something reasonable back. tz = tzlocal.win32.get_localzone() # It should be a timezone with a slash in it, at least: assert "/" in str(tz) return # Yes, winreg is all mocked out, but this test means we at least # catch syntax errors, etc. mocker.patch("tzlocal.utils.assert_tz_offset") winreg = MagicMock() winreg.EnumValue.configure_mock( return_value=("TimeZoneKeyName", "Belarus Standard Time") ) sys.modules["winreg"] = winreg import tzlocal.win32 > tz = tzlocal.win32.get_localzone() mocker = tzlocal = winreg = tests/test_tzlocal.py:178: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tzlocal/win32.py:129: in get_localzone _cache_tz = zoneinfo.ZoneInfo(get_localzone_name()) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ key = 'Europe/Minsk' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: return importlib.resources.open_binary(package_name, resource_name) except (ImportError, FileNotFoundError, UnicodeEncodeError): # There are three types of exception that can be raised that all amount # to "we cannot find this key": # # ImportError: If package_name doesn't exist (e.g. if tzdata is not # installed, or if there's an error in the folder name like # Amrica/New_York) # FileNotFoundError: If resource_name doesn't exist in the package # (e.g. Europe/Krasnoy) # UnicodeEncodeError: If package_name or resource_name are not UTF-8, # such as keys containing a surrogate character. > raise ZoneInfoNotFoundError(f"No time zone found with key {key}") E zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key Europe/Minsk' components = ['Europe', 'Minsk'] importlib = key = 'Europe/Minsk' package_name = 'tzdata.zoneinfo.Europe' resource_name = 'Minsk' /usr/lib/python3.10/zoneinfo/_common.py:24: ZoneInfoNotFoundError ________________________________ test_win32_env ________________________________ key = 'Europe/Berlin' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: > return importlib.resources.open_binary(package_name, resource_name) components = ['Europe', 'Berlin'] importlib = key = 'Europe/Berlin' package_name = 'tzdata.zoneinfo.Europe' resource_name = 'Berlin' /usr/lib/python3.10/zoneinfo/_common.py:12: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Europe', resource = 'Berlin' def open_binary(package: Package, resource: Resource) -> BinaryIO: """Return a file-like object opened for binary reading of the resource.""" resource = _common.normalize_path(resource) > package = _common.get_package(package) package = 'tzdata.zoneinfo.Europe' resource = 'Berlin' /usr/lib/python3.10/importlib/resources.py:43: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Europe' def get_package(package): # type: (Package) -> types.ModuleType """Take a package name or module object and return the module. Raise an exception if the resolved module is not a package. """ > resolved = resolve(package) package = 'tzdata.zoneinfo.Europe' /usr/lib/python3.10/importlib/_common.py:66: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cand = 'tzdata.zoneinfo.Europe' def resolve(cand): # type: (Package) -> types.ModuleType > return cand if isinstance(cand, types.ModuleType) else importlib.import_module(cand) cand = 'tzdata.zoneinfo.Europe' /usr/lib/python3.10/importlib/_common.py:57: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Europe', package = None def import_module(name, package=None): """Import a module. The 'package' argument is required when performing a relative import. It specifies the package to use as the anchor point from which to resolve the relative import to an absolute import. """ level = 0 if name.startswith('.'): if not package: msg = ("the 'package' argument is required to perform a relative " "import for {!r}") raise TypeError(msg.format(name)) for character in name: if character != '.': break level += 1 > return _bootstrap._gcd_import(name[level:], package, level) level = 0 name = 'tzdata.zoneinfo.Europe' package = None /usr/lib/python3.10/importlib/__init__.py:126: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Europe', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo.Europe' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Europe' import_ = > ??? import_ = module = name = 'tzdata.zoneinfo.Europe' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Europe' import_ = > ??? import_ = name = 'tzdata.zoneinfo.Europe' parent = 'tzdata.zoneinfo' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata.zoneinfo',) kwds = {} > ??? args = ('tzdata.zoneinfo',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = module = name = 'tzdata.zoneinfo' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = name = 'tzdata.zoneinfo' parent = 'tzdata' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata',), kwds = {} > ??? args = ('tzdata',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', package = None, level = 0 > ??? level = 0 name = 'tzdata' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? import_ = module = name = 'tzdata' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? E ModuleNotFoundError: No module named 'tzdata' import_ = name = 'tzdata' parent = '' path = None spec = None :1004: ModuleNotFoundError During handling of the above exception, another exception occurred: mocker = monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7f36e3b8e6e0> def test_win32_env(mocker, monkeypatch): sys.modules["winreg"] = MagicMock() import tzlocal.win32 mocker.patch("tzlocal.utils.assert_tz_offset") monkeypatch.setattr(tzlocal.win32, "_cache_tz", None) monkeypatch.setenv("TZ", "Europe/Berlin") tzlocal.win32._cache_tz_name = None tzname = tzlocal.win32.get_localzone_name() assert tzname == "Europe/Berlin" > tz = tzlocal.win32.get_localzone() mocker = monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7f36e3b8e6e0> tzlocal = tzname = 'Europe/Berlin' tests/test_tzlocal.py:213: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tzlocal/win32.py:129: in get_localzone _cache_tz = zoneinfo.ZoneInfo(get_localzone_name()) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ key = 'Europe/Berlin' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: return importlib.resources.open_binary(package_name, resource_name) except (ImportError, FileNotFoundError, UnicodeEncodeError): # There are three types of exception that can be raised that all amount # to "we cannot find this key": # # ImportError: If package_name doesn't exist (e.g. if tzdata is not # installed, or if there's an error in the folder name like # Amrica/New_York) # FileNotFoundError: If resource_name doesn't exist in the package # (e.g. Europe/Krasnoy) # UnicodeEncodeError: If package_name or resource_name are not UTF-8, # such as keys containing a surrogate character. > raise ZoneInfoNotFoundError(f"No time zone found with key {key}") E zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key Europe/Berlin' components = ['Europe', 'Berlin'] importlib = key = 'Europe/Berlin' package_name = 'tzdata.zoneinfo.Europe' resource_name = 'Berlin' /usr/lib/python3.10/zoneinfo/_common.py:24: ZoneInfoNotFoundError ______________________________ test_win32_no_dst _______________________________ key = 'Europe/Paris' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: > return importlib.resources.open_binary(package_name, resource_name) components = ['Europe', 'Paris'] importlib = key = 'Europe/Paris' package_name = 'tzdata.zoneinfo.Europe' resource_name = 'Paris' /usr/lib/python3.10/zoneinfo/_common.py:12: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Europe', resource = 'Paris' def open_binary(package: Package, resource: Resource) -> BinaryIO: """Return a file-like object opened for binary reading of the resource.""" resource = _common.normalize_path(resource) > package = _common.get_package(package) package = 'tzdata.zoneinfo.Europe' resource = 'Paris' /usr/lib/python3.10/importlib/resources.py:43: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Europe' def get_package(package): # type: (Package) -> types.ModuleType """Take a package name or module object and return the module. Raise an exception if the resolved module is not a package. """ > resolved = resolve(package) package = 'tzdata.zoneinfo.Europe' /usr/lib/python3.10/importlib/_common.py:66: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cand = 'tzdata.zoneinfo.Europe' def resolve(cand): # type: (Package) -> types.ModuleType > return cand if isinstance(cand, types.ModuleType) else importlib.import_module(cand) cand = 'tzdata.zoneinfo.Europe' /usr/lib/python3.10/importlib/_common.py:57: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Europe', package = None def import_module(name, package=None): """Import a module. The 'package' argument is required when performing a relative import. It specifies the package to use as the anchor point from which to resolve the relative import to an absolute import. """ level = 0 if name.startswith('.'): if not package: msg = ("the 'package' argument is required to perform a relative " "import for {!r}") raise TypeError(msg.format(name)) for character in name: if character != '.': break level += 1 > return _bootstrap._gcd_import(name[level:], package, level) level = 0 name = 'tzdata.zoneinfo.Europe' package = None /usr/lib/python3.10/importlib/__init__.py:126: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Europe', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo.Europe' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Europe' import_ = > ??? import_ = module = name = 'tzdata.zoneinfo.Europe' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Europe' import_ = > ??? import_ = name = 'tzdata.zoneinfo.Europe' parent = 'tzdata.zoneinfo' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata.zoneinfo',) kwds = {} > ??? args = ('tzdata.zoneinfo',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = module = name = 'tzdata.zoneinfo' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = name = 'tzdata.zoneinfo' parent = 'tzdata' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata',), kwds = {} > ??? args = ('tzdata',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', package = None, level = 0 > ??? level = 0 name = 'tzdata' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? import_ = module = name = 'tzdata' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? E ModuleNotFoundError: No module named 'tzdata' import_ = name = 'tzdata' parent = '' path = None spec = None :1004: ModuleNotFoundError During handling of the above exception, another exception occurred: mocker = def test_win32_no_dst(mocker): mocker.patch("tzlocal.utils.assert_tz_offset") valuesmock = mocker.patch("tzlocal.win32.valuestodict") # If you turn off the DST, tzlocal returns "Etc/GMT+zomething": valuesmock.configure_mock( return_value={ "TimeZoneKeyName": "Romance Standard Time", "DynamicDaylightTimeDisabled": 1, } ) tzlocal.win32._cache_tz_name = None tzlocal.win32._cache_tz = None > assert str(tzlocal.win32.get_localzone()) == "Etc/GMT-1" mocker = valuesmock = tests/test_tzlocal.py:230: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tzlocal/win32.py:129: in get_localzone _cache_tz = zoneinfo.ZoneInfo(get_localzone_name()) tzlocal/win32.py:119: in get_localzone_name _cache_tz_name = _get_localzone_name() tzlocal/win32.py:91: in _get_localzone_name tz = zoneinfo.ZoneInfo(timezone) TZLOCALKEYNAME = 'SYSTEM\\CurrentControlSet\\Control\\TimeZoneInformation' handle = keyvalues = {'DynamicDaylightTimeDisabled': 1, 'TimeZoneKeyName': 'Romance Standard Time'} localtz = timezone = 'Europe/Paris' tzenv = None tzkeyname = 'Romance Standard Time' _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ key = 'Europe/Paris' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: return importlib.resources.open_binary(package_name, resource_name) except (ImportError, FileNotFoundError, UnicodeEncodeError): # There are three types of exception that can be raised that all amount # to "we cannot find this key": # # ImportError: If package_name doesn't exist (e.g. if tzdata is not # installed, or if there's an error in the folder name like # Amrica/New_York) # FileNotFoundError: If resource_name doesn't exist in the package # (e.g. Europe/Krasnoy) # UnicodeEncodeError: If package_name or resource_name are not UTF-8, # such as keys containing a surrogate character. > raise ZoneInfoNotFoundError(f"No time zone found with key {key}") E zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key Europe/Paris' components = ['Europe', 'Paris'] importlib = key = 'Europe/Paris' package_name = 'tzdata.zoneinfo.Europe' resource_name = 'Paris' /usr/lib/python3.10/zoneinfo/_common.py:24: ZoneInfoNotFoundError _________________________________ test_termux __________________________________ key = 'Africa/Johannesburg' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: > return importlib.resources.open_binary(package_name, resource_name) components = ['Africa', 'Johannesburg'] importlib = key = 'Africa/Johannesburg' package_name = 'tzdata.zoneinfo.Africa' resource_name = 'Johannesburg' /usr/lib/python3.10/zoneinfo/_common.py:12: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Africa', resource = 'Johannesburg' def open_binary(package: Package, resource: Resource) -> BinaryIO: """Return a file-like object opened for binary reading of the resource.""" resource = _common.normalize_path(resource) > package = _common.get_package(package) package = 'tzdata.zoneinfo.Africa' resource = 'Johannesburg' /usr/lib/python3.10/importlib/resources.py:43: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Africa' def get_package(package): # type: (Package) -> types.ModuleType """Take a package name or module object and return the module. Raise an exception if the resolved module is not a package. """ > resolved = resolve(package) package = 'tzdata.zoneinfo.Africa' /usr/lib/python3.10/importlib/_common.py:66: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cand = 'tzdata.zoneinfo.Africa' def resolve(cand): # type: (Package) -> types.ModuleType > return cand if isinstance(cand, types.ModuleType) else importlib.import_module(cand) cand = 'tzdata.zoneinfo.Africa' /usr/lib/python3.10/importlib/_common.py:57: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa', package = None def import_module(name, package=None): """Import a module. The 'package' argument is required when performing a relative import. It specifies the package to use as the anchor point from which to resolve the relative import to an absolute import. """ level = 0 if name.startswith('.'): if not package: msg = ("the 'package' argument is required to perform a relative " "import for {!r}") raise TypeError(msg.format(name)) for character in name: if character != '.': break level += 1 > return _bootstrap._gcd_import(name[level:], package, level) level = 0 name = 'tzdata.zoneinfo.Africa' package = None /usr/lib/python3.10/importlib/__init__.py:126: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo.Africa' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa' import_ = > ??? import_ = module = name = 'tzdata.zoneinfo.Africa' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Africa' import_ = > ??? import_ = name = 'tzdata.zoneinfo.Africa' parent = 'tzdata.zoneinfo' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata.zoneinfo',) kwds = {} > ??? args = ('tzdata.zoneinfo',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = module = name = 'tzdata.zoneinfo' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = name = 'tzdata.zoneinfo' parent = 'tzdata' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata',), kwds = {} > ??? args = ('tzdata',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', package = None, level = 0 > ??? level = 0 name = 'tzdata' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? import_ = module = name = 'tzdata' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? E ModuleNotFoundError: No module named 'tzdata' import_ = name = 'tzdata' parent = '' path = None spec = None :1004: ModuleNotFoundError During handling of the above exception, another exception occurred: mocker = def test_termux(mocker): subprocess = MagicMock() subprocess.check_output.configure_mock(return_value=b"Africa/Johannesburg") sys.modules["subprocess"] = subprocess > tz = tzlocal.unix._get_localzone(_root=tz_path("termux")) mocker = subprocess = tests/test_tzlocal.py:269: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tzlocal/unix.py:195: in _get_localzone tz = zoneinfo.ZoneInfo(tzname) _root = '/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1/tests/test_data/termux' tzenv = None tzname = 'Africa/Johannesburg' _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ key = 'Africa/Johannesburg' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: return importlib.resources.open_binary(package_name, resource_name) except (ImportError, FileNotFoundError, UnicodeEncodeError): # There are three types of exception that can be raised that all amount # to "we cannot find this key": # # ImportError: If package_name doesn't exist (e.g. if tzdata is not # installed, or if there's an error in the folder name like # Amrica/New_York) # FileNotFoundError: If resource_name doesn't exist in the package # (e.g. Europe/Krasnoy) # UnicodeEncodeError: If package_name or resource_name are not UTF-8, # such as keys containing a surrogate character. > raise ZoneInfoNotFoundError(f"No time zone found with key {key}") E zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key Africa/Johannesburg' components = ['Africa', 'Johannesburg'] importlib = key = 'Africa/Johannesburg' package_name = 'tzdata.zoneinfo.Africa' resource_name = 'Johannesburg' /usr/lib/python3.10/zoneinfo/_common.py:24: ZoneInfoNotFoundError _______________________________ test_conflicting _______________________________ @pytest.mark.skipif( platform.system() == "Windows", reason="Symbolic links are not available on Windows" ) def test_conflicting(): with pytest.raises(ZoneInfoNotFoundError) as excinfo: tzlocal.unix._get_localzone(_root=tz_path("conflicting")) message = excinfo.value.args[0] assert "Multiple conflicting time zone configurations found:\n" in message assert "Europe/Paris" in message assert "America/New_York" in message assert "Europe/Warsaw" in message assert "Africa/Johannesburg" in message > assert "localtime is a symlink to: Africa/Harare" in message E AssertionError: assert 'localtime is a symlink to: Africa/Harare' in 'Multiple conflicting time zone configurations found:\n/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1/tests/test_data/conflicting/etc/timezone: Europe/Paris\n/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1/tests/test_data/conflicting/var/db/zoneinfo: America/New_York\n/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1/tests/test_data/conflicting/etc/sysconfig/clock: Europe/Warsaw\n/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1/tests/test_data/conflicting/etc/conf.d/clock: Africa/Johannesburg\nFix the configuration, or set the time zone in a TZ environment variable.\n' excinfo = message = ('Multiple conflicting time zone configurations found:\n' '/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1/tests/test_data/conflicting/etc/timezone: ' 'Europe/Paris\n' '/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1/tests/test_data/conflicting/var/db/zoneinfo: ' 'America/New_York\n' '/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1/tests/test_data/conflicting/etc/sysconfig/clock: ' 'Europe/Warsaw\n' '/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1/tests/test_data/conflicting/etc/conf.d/clock: ' 'Africa/Johannesburg\n' 'Fix the configuration, or set the time zone in a TZ environment variable.\n') tests/test_tzlocal.py:285: AssertionError _______________________________ test_noconflict ________________________________ key = 'Etc/UTC' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: > return importlib.resources.open_binary(package_name, resource_name) components = ['Etc', 'UTC'] importlib = key = 'Etc/UTC' package_name = 'tzdata.zoneinfo.Etc' resource_name = 'UTC' /usr/lib/python3.10/zoneinfo/_common.py:12: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Etc', resource = 'UTC' def open_binary(package: Package, resource: Resource) -> BinaryIO: """Return a file-like object opened for binary reading of the resource.""" resource = _common.normalize_path(resource) > package = _common.get_package(package) package = 'tzdata.zoneinfo.Etc' resource = 'UTC' /usr/lib/python3.10/importlib/resources.py:43: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo.Etc' def get_package(package): # type: (Package) -> types.ModuleType """Take a package name or module object and return the module. Raise an exception if the resolved module is not a package. """ > resolved = resolve(package) package = 'tzdata.zoneinfo.Etc' /usr/lib/python3.10/importlib/_common.py:66: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cand = 'tzdata.zoneinfo.Etc' def resolve(cand): # type: (Package) -> types.ModuleType > return cand if isinstance(cand, types.ModuleType) else importlib.import_module(cand) cand = 'tzdata.zoneinfo.Etc' /usr/lib/python3.10/importlib/_common.py:57: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Etc', package = None def import_module(name, package=None): """Import a module. The 'package' argument is required when performing a relative import. It specifies the package to use as the anchor point from which to resolve the relative import to an absolute import. """ level = 0 if name.startswith('.'): if not package: msg = ("the 'package' argument is required to perform a relative " "import for {!r}") raise TypeError(msg.format(name)) for character in name: if character != '.': break level += 1 > return _bootstrap._gcd_import(name[level:], package, level) level = 0 name = 'tzdata.zoneinfo.Etc' package = None /usr/lib/python3.10/importlib/__init__.py:126: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Etc', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo.Etc' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Etc', import_ = > ??? import_ = module = name = 'tzdata.zoneinfo.Etc' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo.Etc', import_ = > ??? import_ = name = 'tzdata.zoneinfo.Etc' parent = 'tzdata.zoneinfo' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata.zoneinfo',) kwds = {} > ??? args = ('tzdata.zoneinfo',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = module = name = 'tzdata.zoneinfo' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = name = 'tzdata.zoneinfo' parent = 'tzdata' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata',), kwds = {} > ??? args = ('tzdata',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', package = None, level = 0 > ??? level = 0 name = 'tzdata' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? import_ = module = name = 'tzdata' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? E ModuleNotFoundError: No module named 'tzdata' import_ = name = 'tzdata' parent = '' path = None spec = None :1004: ModuleNotFoundError During handling of the above exception, another exception occurred: @pytest.mark.skipif( platform.system() == "Windows", reason="Symbolic links are not available on Windows" ) def test_noconflict(): > tz = tzlocal.unix._get_localzone(_root=tz_path("noconflict")) tests/test_tzlocal.py:292: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tzlocal/unix.py:195: in _get_localzone tz = zoneinfo.ZoneInfo(tzname) _root = '/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1/tests/test_data/noconflict' tzenv = None tzname = 'Etc/UTC' _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ key = 'Etc/UTC' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: return importlib.resources.open_binary(package_name, resource_name) except (ImportError, FileNotFoundError, UnicodeEncodeError): # There are three types of exception that can be raised that all amount # to "we cannot find this key": # # ImportError: If package_name doesn't exist (e.g. if tzdata is not # installed, or if there's an error in the folder name like # Amrica/New_York) # FileNotFoundError: If resource_name doesn't exist in the package # (e.g. Europe/Krasnoy) # UnicodeEncodeError: If package_name or resource_name are not UTF-8, # such as keys containing a surrogate character. > raise ZoneInfoNotFoundError(f"No time zone found with key {key}") E zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key Etc/UTC' components = ['Etc', 'UTC'] importlib = key = 'Etc/UTC' package_name = 'tzdata.zoneinfo.Etc' resource_name = 'UTC' /usr/lib/python3.10/zoneinfo/_common.py:24: ZoneInfoNotFoundError _________________________ test_zoneinfo_compatibility __________________________ def test_zoneinfo_compatibility(): os.environ["TZ"] = "Africa/Harare" > tzlocal.unix.reload_localzone() tests/test_tzlocal.py:298: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tzlocal/unix.py:228: in reload_localzone _cache_tz = _get_localzone() tzlocal/unix.py:175: in _get_localzone tzenv = utils._tz_from_env() _root = '/' _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tzenv = 'Africa/Harare' def _tz_from_env(tzenv=None): if tzenv is None: tzenv = os.environ.get("TZ") if not tzenv: return None # Some weird format that exists: if tzenv[0] == ":": tzenv = tzenv[1:] # TZ specifies a file if os.path.isabs(tzenv) and os.path.exists(tzenv): # Try to see if we can figure out the name tzname = _tz_name_from_env(tzenv) if not tzname: # Nope, not a standard timezone name, just take the filename tzname = tzenv.split(os.sep)[-1] with open(tzenv, "rb") as tzfile: return zoneinfo.ZoneInfo.from_file(tzfile, key=tzname) # TZ must specify a zoneinfo zone. try: tz = zoneinfo.ZoneInfo(tzenv) # That worked, so we return this: return tz except zoneinfo.ZoneInfoNotFoundError: # Nope, it's something like "PST4DST" etc, we can't handle that. > raise zoneinfo.ZoneInfoNotFoundError( "tzlocal() does not support non-zoneinfo timezones like %s. \n" "Please use a timezone in the form of Continent/City" % tzenv ) from None E zoneinfo._common.ZoneInfoNotFoundError: 'tzlocal() does not support non-zoneinfo timezones like Africa/Harare. \nPlease use a timezone in the form of Continent/City' tzenv = 'Africa/Harare' tzlocal/utils.py:109: ZoneInfoNotFoundError ____________________________ test_ubuntu_docker_bug ____________________________ key = 'UTC' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: > return importlib.resources.open_binary(package_name, resource_name) components = ['UTC'] importlib = key = 'UTC' package_name = 'tzdata.zoneinfo' resource_name = 'UTC' /usr/lib/python3.10/zoneinfo/_common.py:12: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo', resource = 'UTC' def open_binary(package: Package, resource: Resource) -> BinaryIO: """Return a file-like object opened for binary reading of the resource.""" resource = _common.normalize_path(resource) > package = _common.get_package(package) package = 'tzdata.zoneinfo' resource = 'UTC' /usr/lib/python3.10/importlib/resources.py:43: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ package = 'tzdata.zoneinfo' def get_package(package): # type: (Package) -> types.ModuleType """Take a package name or module object and return the module. Raise an exception if the resolved module is not a package. """ > resolved = resolve(package) package = 'tzdata.zoneinfo' /usr/lib/python3.10/importlib/_common.py:66: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ cand = 'tzdata.zoneinfo' def resolve(cand): # type: (Package) -> types.ModuleType > return cand if isinstance(cand, types.ModuleType) else importlib.import_module(cand) cand = 'tzdata.zoneinfo' /usr/lib/python3.10/importlib/_common.py:57: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', package = None def import_module(name, package=None): """Import a module. The 'package' argument is required when performing a relative import. It specifies the package to use as the anchor point from which to resolve the relative import to an absolute import. """ level = 0 if name.startswith('.'): if not package: msg = ("the 'package' argument is required to perform a relative " "import for {!r}") raise TypeError(msg.format(name)) for character in name: if character != '.': break level += 1 > return _bootstrap._gcd_import(name[level:], package, level) level = 0 name = 'tzdata.zoneinfo' package = None /usr/lib/python3.10/importlib/__init__.py:126: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', package = None, level = 0 > ??? level = 0 name = 'tzdata.zoneinfo' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = module = name = 'tzdata.zoneinfo' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata.zoneinfo', import_ = > ??? import_ = name = 'tzdata.zoneinfo' parent = 'tzdata' path = None :992: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ f = , args = ('tzdata',), kwds = {} > ??? args = ('tzdata',) f = kwds = {} :241: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', package = None, level = 0 > ??? level = 0 name = 'tzdata' package = None :1050: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? import_ = module = name = 'tzdata' :1027: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'tzdata', import_ = > ??? E ModuleNotFoundError: No module named 'tzdata' import_ = name = 'tzdata' parent = '' path = None spec = None :1004: ModuleNotFoundError During handling of the above exception, another exception occurred: def test_ubuntu_docker_bug(): > tz = tzlocal.unix._get_localzone(_root=tz_path("ubuntu_docker_bug")) tests/test_tzlocal.py:323: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tzlocal/unix.py:195: in _get_localzone tz = zoneinfo.ZoneInfo(tzname) _root = '/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1/tests/test_data/ubuntu_docker_bug' tzenv = None tzname = 'UTC' _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ key = 'UTC' def load_tzdata(key): import importlib.resources components = key.split("/") package_name = ".".join(["tzdata.zoneinfo"] + components[:-1]) resource_name = components[-1] try: return importlib.resources.open_binary(package_name, resource_name) except (ImportError, FileNotFoundError, UnicodeEncodeError): # There are three types of exception that can be raised that all amount # to "we cannot find this key": # # ImportError: If package_name doesn't exist (e.g. if tzdata is not # installed, or if there's an error in the folder name like # Amrica/New_York) # FileNotFoundError: If resource_name doesn't exist in the package # (e.g. Europe/Krasnoy) # UnicodeEncodeError: If package_name or resource_name are not UTF-8, # such as keys containing a surrogate character. > raise ZoneInfoNotFoundError(f"No time zone found with key {key}") E zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key UTC' components = ['UTC'] importlib = key = 'UTC' package_name = 'tzdata.zoneinfo' resource_name = 'UTC' /usr/lib/python3.10/zoneinfo/_common.py:24: ZoneInfoNotFoundError =============================== warnings summary =============================== tests/test_tzlocal.py::test_assert_tz_offset /var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1/tzlocal/unix.py:192: UserWarning: Can not find any timezone configuration, defaulting to UTC. warnings.warn("Can not find any timezone configuration, defaulting to UTC.") -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED tests/test_tzlocal.py::test_env - zoneinfo._common.ZoneInfoNotFoundErr... FAILED tests/test_tzlocal.py::test_timezone - zoneinfo._common.ZoneInfoNotFou... FAILED tests/test_tzlocal.py::test_timezone_top_line_comment - zoneinfo._comm... FAILED tests/test_tzlocal.py::test_zone_setting - zoneinfo._common.ZoneInfoNo... FAILED tests/test_tzlocal.py::test_timezone_setting - zoneinfo._common.ZoneIn... FAILED tests/test_tzlocal.py::test_symlink_localtime - AssertionError: assert... FAILED tests/test_tzlocal.py::test_vardbzoneinfo_setting - zoneinfo._common.Z... FAILED tests/test_tzlocal.py::test_only_localtime - zoneinfo._common.ZoneInfo... FAILED tests/test_tzlocal.py::test_get_reload - zoneinfo._common.ZoneInfoNotF... FAILED tests/test_tzlocal.py::test_assert_tz_offset - zoneinfo._common.ZoneIn... FAILED tests/test_tzlocal.py::test_win32 - zoneinfo._common.ZoneInfoNotFoundE... FAILED tests/test_tzlocal.py::test_win32_env - zoneinfo._common.ZoneInfoNotFo... FAILED tests/test_tzlocal.py::test_win32_no_dst - zoneinfo._common.ZoneInfoNo... FAILED tests/test_tzlocal.py::test_termux - zoneinfo._common.ZoneInfoNotFound... FAILED tests/test_tzlocal.py::test_conflicting - AssertionError: assert 'loca... FAILED tests/test_tzlocal.py::test_noconflict - zoneinfo._common.ZoneInfoNotF... FAILED tests/test_tzlocal.py::test_zoneinfo_compatibility - zoneinfo._common.... FAILED tests/test_tzlocal.py::test_ubuntu_docker_bug - zoneinfo._common.ZoneI... =================== 18 failed, 2 passed, 1 warning in 0.71s ==================== * ERROR: dev-python/tzlocal-5.0.1::gentoo failed (test phase): * pytest failed with python3.10 * * Call stack: * ebuild.sh, line 136: Called src_test * environment, line 3475: Called distutils-r1_src_test * environment, line 1628: Called _distutils-r1_run_foreach_impl 'python_test' * environment, line 729: Called python_foreach_impl 'distutils-r1_run_phase' 'python_test' * environment, line 3160: Called multibuild_foreach_variant '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'python_test' * environment, line 2645: Called _multibuild_run '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'python_test' * environment, line 2643: Called _python_multibuild_wrapper 'distutils-r1_run_phase' 'python_test' * environment, line 1059: Called distutils-r1_run_phase 'python_test' * environment, line 1551: Called python_test * environment, line 3442: Called distutils-r1_python_test * environment, line 1498: Called epytest * environment, line 2150: 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/tzlocal-5.0.1::gentoo'`, * the complete build log and the output of `emerge -pqv '=dev-python/tzlocal-5.0.1::gentoo'`. * The complete build log is located at '/var/log/emerge-log/build/dev-python/tzlocal-5.0.1:20230520-061229.log'. * For convenience, a symlink to the build log is located at '/var/tmp/portage/dev-python/tzlocal-5.0.1/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-python/tzlocal-5.0.1/temp/environment'. * Working directory: '/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1' * S: '/var/tmp/portage/dev-python/tzlocal-5.0.1/work/tzlocal-5.0.1'