I: pbuilder: network access will be disabled during build I: Current time: Thu Jan 18 16:05:07 -12 2024 I: pbuilder-time-stamp: 1705637107 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/bookworm-reproducible-base.tgz] I: copying local configuration W: --override-config is not set; not updating apt.conf Read the manpage for details. I: mounting /proc filesystem I: mounting /sys filesystem I: creating /{dev,run}/shm I: mounting /dev/pts filesystem I: redirecting /dev/ptmx to /dev/pts/ptmx I: policy-rc.d already exists I: using eatmydata during job I: Copying source file I: copying [errbot_6.1.7+ds-1.dsc] I: copying [./errbot_6.1.7+ds.orig.tar.xz] I: copying [./errbot_6.1.7+ds-1.debian.tar.xz] I: Extracting source gpgv: Signature made Tue Dec 29 18:12:33 2020 gpgv: using RSA key 3AF0BCB67C26AC48CEB4E5BC2A0C5D60F204BDB0 gpgv: issuer "birger@debian.org" gpgv: Can't check signature: No public key dpkg-source: warning: cannot verify inline signature for ./errbot_6.1.7+ds-1.dsc: no acceptable signature found dpkg-source: info: extracting errbot in errbot-6.1.7+ds dpkg-source: info: unpacking errbot_6.1.7+ds.orig.tar.xz dpkg-source: info: unpacking errbot_6.1.7+ds-1.debian.tar.xz dpkg-source: info: using patch list from debian/patches/series dpkg-source: info: applying 0002-Remove-pygments-markdown-lexer-dependency.patch I: Not using root during the build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/8038/tmp/hooks/D02_print_environment starting I: set BUILDDIR='/build/reproducible-path' BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' BUILDUSERNAME='pbuilder1' BUILD_ARCH='i386' DEBIAN_FRONTEND='noninteractive' DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=8 ' DISTRIBUTION='bookworm' HOME='/root' HOST_ARCH='i386' IFS=' ' INVOCATION_ID='c2cffb9d4e344b2f8a84d39f0352cf9b' LANG='C' LANGUAGE='en_US:en' LC_ALL='C' LD_LIBRARY_PATH='/usr/lib/libeatmydata' LD_PRELOAD='libeatmydata.so' MAIL='/var/mail/root' OPTIND='1' PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' PBCURRENTCOMMANDLINEOPERATION='build' PBUILDER_OPERATION='build' PBUILDER_PKGDATADIR='/usr/share/pbuilder' PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' PBUILDER_SYSCONFDIR='/etc' PPID='8038' PS1='# ' PS2='> ' PS4='+ ' PWD='/' SHELL='/bin/bash' SHLVL='2' SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.9pgMLtoP/pbuilderrc_p3qO --distribution bookworm --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/bookworm-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.9pgMLtoP/b1 --logfile b1/build.log errbot_6.1.7+ds-1.dsc' SUDO_GID='112' SUDO_UID='107' SUDO_USER='jenkins' TERM='unknown' TZ='/usr/share/zoneinfo/Etc/GMT+12' USER='root' _='/usr/bin/systemd-run' http_proxy='http://78.137.99.97:3128' I: uname -a Linux ionos2-i386 6.1.0-17-686-pae #1 SMP PREEMPT_DYNAMIC Debian 6.1.69-1 (2023-12-30) i686 GNU/Linux I: ls -l /bin total 6036 -rwxr-xr-x 1 root root 1408088 Apr 23 2023 bash -rwxr-xr-x 3 root root 38404 Sep 19 2022 bunzip2 -rwxr-xr-x 3 root root 38404 Sep 19 2022 bzcat lrwxrwxrwx 1 root root 6 Sep 19 2022 bzcmp -> bzdiff -rwxr-xr-x 1 root root 2225 Sep 19 2022 bzdiff lrwxrwxrwx 1 root root 6 Sep 19 2022 bzegrep -> bzgrep -rwxr-xr-x 1 root root 4893 Nov 27 2021 bzexe lrwxrwxrwx 1 root root 6 Sep 19 2022 bzfgrep -> bzgrep -rwxr-xr-x 1 root root 3775 Sep 19 2022 bzgrep -rwxr-xr-x 3 root root 38404 Sep 19 2022 bzip2 -rwxr-xr-x 1 root root 17892 Sep 19 2022 bzip2recover lrwxrwxrwx 1 root root 6 Sep 19 2022 bzless -> bzmore -rwxr-xr-x 1 root root 1297 Sep 19 2022 bzmore -rwxr-xr-x 1 root root 42920 Sep 20 2022 cat -rwxr-xr-x 1 root root 79816 Sep 20 2022 chgrp -rwxr-xr-x 1 root root 67496 Sep 20 2022 chmod -rwxr-xr-x 1 root root 79816 Sep 20 2022 chown -rwxr-xr-x 1 root root 162024 Sep 20 2022 cp -rwxr-xr-x 1 root root 136916 Jan 5 2023 dash -rwxr-xr-x 1 root root 137160 Sep 20 2022 date -rwxr-xr-x 1 root root 100364 Sep 20 2022 dd -rwxr-xr-x 1 root root 108940 Sep 20 2022 df -rwxr-xr-x 1 root root 162152 Sep 20 2022 dir -rwxr-xr-x 1 root root 87760 Mar 23 2023 dmesg lrwxrwxrwx 1 root root 8 Dec 19 2022 dnsdomainname -> hostname lrwxrwxrwx 1 root root 8 Dec 19 2022 domainname -> hostname -rwxr-xr-x 1 root root 38760 Sep 20 2022 echo -rwxr-xr-x 1 root root 41 Jan 24 2023 egrep -rwxr-xr-x 1 root root 34664 Sep 20 2022 false -rwxr-xr-x 1 root root 41 Jan 24 2023 fgrep -rwxr-xr-x 1 root root 84272 Mar 23 2023 findmnt -rwsr-xr-x 1 root root 30240 Mar 23 2023 fusermount -rwxr-xr-x 1 root root 218680 Jan 24 2023 grep -rwxr-xr-x 2 root root 2346 Apr 10 2022 gunzip -rwxr-xr-x 1 root root 6447 Apr 10 2022 gzexe -rwxr-xr-x 1 root root 100952 Apr 10 2022 gzip -rwxr-xr-x 1 root root 21916 Dec 19 2022 hostname -rwxr-xr-x 1 root root 75756 Sep 20 2022 ln -rwxr-xr-x 1 root root 55600 Mar 23 2023 login -rwxr-xr-x 1 root root 162152 Sep 20 2022 ls -rwxr-xr-x 1 root root 214568 Mar 23 2023 lsblk -rwxr-xr-x 1 root root 96328 Sep 20 2022 mkdir -rwxr-xr-x 1 root root 84008 Sep 20 2022 mknod -rwxr-xr-x 1 root root 38792 Sep 20 2022 mktemp -rwxr-xr-x 1 root root 63016 Mar 23 2023 more -rwsr-xr-x 1 root root 58912 Mar 23 2023 mount -rwxr-xr-x 1 root root 13856 Mar 23 2023 mountpoint -rwxr-xr-x 1 root root 157932 Sep 20 2022 mv lrwxrwxrwx 1 root root 8 Dec 19 2022 nisdomainname -> hostname lrwxrwxrwx 1 root root 14 Apr 3 2023 pidof -> /sbin/killall5 -rwxr-xr-x 1 root root 38792 Sep 20 2022 pwd lrwxrwxrwx 1 root root 4 Apr 23 2023 rbash -> bash -rwxr-xr-x 1 root root 51080 Sep 20 2022 readlink -rwxr-xr-x 1 root root 75720 Sep 20 2022 rm -rwxr-xr-x 1 root root 51080 Sep 20 2022 rmdir -rwxr-xr-x 1 root root 22308 Jul 28 23:46 run-parts -rwxr-xr-x 1 root root 133224 Jan 5 2023 sed lrwxrwxrwx 1 root root 4 Jan 5 2023 sh -> dash -rwxr-xr-x 1 root root 38760 Sep 20 2022 sleep -rwxr-xr-x 1 root root 87976 Sep 20 2022 stty -rwsr-xr-x 1 root root 83492 Mar 23 2023 su -rwxr-xr-x 1 root root 38792 Sep 20 2022 sync -rwxr-xr-x 1 root root 598456 Apr 6 2023 tar -rwxr-xr-x 1 root root 13860 Jul 28 23:46 tempfile -rwxr-xr-x 1 root root 120776 Sep 20 2022 touch -rwxr-xr-x 1 root root 34664 Sep 20 2022 true -rwxr-xr-x 1 root root 17892 Mar 23 2023 ulockmgr_server -rwsr-xr-x 1 root root 30236 Mar 23 2023 umount -rwxr-xr-x 1 root root 38760 Sep 20 2022 uname -rwxr-xr-x 2 root root 2346 Apr 10 2022 uncompress -rwxr-xr-x 1 root root 162152 Sep 20 2022 vdir -rwxr-xr-x 1 root root 71216 Mar 23 2023 wdctl lrwxrwxrwx 1 root root 8 Dec 19 2022 ypdomainname -> hostname -rwxr-xr-x 1 root root 1984 Apr 10 2022 zcat -rwxr-xr-x 1 root root 1678 Apr 10 2022 zcmp -rwxr-xr-x 1 root root 6460 Apr 10 2022 zdiff -rwxr-xr-x 1 root root 29 Apr 10 2022 zegrep -rwxr-xr-x 1 root root 29 Apr 10 2022 zfgrep -rwxr-xr-x 1 root root 2081 Apr 10 2022 zforce -rwxr-xr-x 1 root root 8103 Apr 10 2022 zgrep -rwxr-xr-x 1 root root 2206 Apr 10 2022 zless -rwxr-xr-x 1 root root 1842 Apr 10 2022 zmore -rwxr-xr-x 1 root root 4577 Apr 10 2022 znew I: user script /srv/workspace/pbuilder/8038/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy Version: 0.invalid.0 Architecture: i386 Maintainer: Debian Pbuilder Team Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder This package was created automatically by pbuilder to satisfy the build-dependencies of the package being currently built. Depends: debhelper-compat (= 13), dh-python, git-core, localehelper, python3-all, python3-ansi, python3-bottle, python3-colorlog, python3-daemonize, python3-flask, python3-jinja2, python3-markdown, python3-mock, python3-openssl, python3-pygments, python3-pytest, python3-requests, python3-setuptools, python3-webtest, python3-yapsy, python3-dulwich dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 18156 files and directories currently installed.) Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ... Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ... dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested: pbuilder-satisfydepends-dummy depends on debhelper-compat (= 13); however: Package debhelper-compat is not installed. pbuilder-satisfydepends-dummy depends on dh-python; however: Package dh-python is not installed. pbuilder-satisfydepends-dummy depends on git-core; however: Package git-core is not installed. pbuilder-satisfydepends-dummy depends on localehelper; however: Package localehelper is not installed. pbuilder-satisfydepends-dummy depends on python3-all; however: Package python3-all is not installed. pbuilder-satisfydepends-dummy depends on python3-ansi; however: Package python3-ansi is not installed. pbuilder-satisfydepends-dummy depends on python3-bottle; however: Package python3-bottle is not installed. pbuilder-satisfydepends-dummy depends on python3-colorlog; however: Package python3-colorlog is not installed. pbuilder-satisfydepends-dummy depends on python3-daemonize; however: Package python3-daemonize is not installed. pbuilder-satisfydepends-dummy depends on python3-flask; however: Package python3-flask is not installed. pbuilder-satisfydepends-dummy depends on python3-jinja2; however: Package python3-jinja2 is not installed. pbuilder-satisfydepends-dummy depends on python3-markdown; however: Package python3-markdown is not installed. pbuilder-satisfydepends-dummy depends on python3-mock; however: Package python3-mock is not installed. pbuilder-satisfydepends-dummy depends on python3-openssl; however: Package python3-openssl is not installed. pbuilder-satisfydepends-dummy depends on python3-pygments; however: Package python3-pygments is not installed. pbuilder-satisfydepends-dummy depends on python3-pytest; however: Package python3-pytest is not installed. pbuilder-satisfydepends-dummy depends on python3-requests; however: Package python3-requests is not installed. pbuilder-satisfydepends-dummy depends on python3-setuptools; however: Package python3-setuptools is not installed. pbuilder-satisfydepends-dummy depends on python3-webtest; however: Package python3-webtest is not installed. pbuilder-satisfydepends-dummy depends on python3-yapsy; however: Package python3-yapsy is not installed. pbuilder-satisfydepends-dummy depends on python3-dulwich; however: Package python3-dulwich is not installed. Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... Reading package lists... Building dependency tree... Reading state information... Initializing package states... Writing extended state information... Building tag database... pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) The following NEW packages will be installed: autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdextrautils{a} ca-certificates{a} debhelper{a} dh-autoreconf{a} dh-python{a} dh-strip-nondeterminism{a} dwz{a} file{a} gettext{a} gettext-base{a} git{a} git-man{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libbrotli1{a} libcurl3-gnutls{a} libdebhelper-perl{a} libelf1{a} liberror-perl{a} libexpat1{a} libfile-stripnondeterminism-perl{a} libicu72{a} libjs-jquery{a} libldap-2.5-0{a} libmagic-mgc{a} libmagic1{a} libnghttp2-14{a} libpipeline1{a} libpsl5{a} libpython3-stdlib{a} libpython3.11-minimal{a} libpython3.11-stdlib{a} libreadline8{a} librtmp1{a} libsasl2-2{a} libsasl2-modules-db{a} libssh2-1{a} libsub-override-perl{a} libtool{a} libuchardet0{a} libxml2{a} localehelper{a} locales{a} m4{a} man-db{a} media-types{a} openssl{a} po-debconf{a} python3{a} python3-all{a} python3-ansi{a} python3-attr{a} python3-bottle{a} python3-bs4{a} python3-certifi{a} python3-cffi-backend{a} python3-chardet{a} python3-charset-normalizer{a} python3-click{a} python3-colorama{a} python3-colorlog{a} python3-cryptography{a} python3-daemonize{a} python3-distutils{a} python3-dulwich{a} python3-flask{a} python3-idna{a} python3-iniconfig{a} python3-itsdangerous{a} python3-jinja2{a} python3-lib2to3{a} python3-markdown{a} python3-markupsafe{a} python3-minimal{a} python3-mock{a} python3-more-itertools{a} python3-openssl{a} python3-packaging{a} python3-paste{a} python3-pastedeploy{a} python3-pastedeploy-tpl{a} python3-pbr{a} python3-pkg-resources{a} python3-pluggy{a} python3-py{a} python3-pygments{a} python3-pytest{a} python3-requests{a} python3-setuptools{a} python3-six{a} python3-soupsieve{a} python3-tempita{a} python3-urllib3{a} python3-waitress{a} python3-webob{a} python3-webtest{a} python3-werkzeug{a} python3-yapsy{a} python3.11{a} python3.11-minimal{a} readline-common{a} sensible-utils{a} The following packages are RECOMMENDED but will NOT be installed: curl javascript-common less libarchive-cpio-perl libldap-common libltdl-dev libmail-sendmail-perl libsasl2-modules lynx openssh-client publicsuffix python3-asgiref python3-babel python3-blinker python3-dotenv python3-fastimport python3-lxml python3-pastescript python3-pyinotify python3-simplejson python3-yaml wget 0 packages upgraded, 107 newly installed, 0 to remove and 0 not upgraded. Need to get 48.4 MB of archives. After unpacking 199 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian bookworm/main i386 libpython3.11-minimal i386 3.11.2-6 [813 kB] Get: 2 http://deb.debian.org/debian bookworm/main i386 libexpat1 i386 2.5.0-1 [103 kB] Get: 3 http://deb.debian.org/debian bookworm/main i386 python3.11-minimal i386 3.11.2-6 [2130 kB] Get: 4 http://deb.debian.org/debian bookworm/main i386 python3-minimal i386 3.11.2-1+b1 [26.3 kB] Get: 5 http://deb.debian.org/debian bookworm/main i386 media-types all 10.0.0 [26.1 kB] Get: 6 http://deb.debian.org/debian bookworm/main i386 readline-common all 8.2-1.3 [69.0 kB] Get: 7 http://deb.debian.org/debian bookworm/main i386 libreadline8 i386 8.2-1.3 [171 kB] Get: 8 http://deb.debian.org/debian bookworm/main i386 libpython3.11-stdlib i386 3.11.2-6 [1799 kB] Get: 9 http://deb.debian.org/debian bookworm/main i386 python3.11 i386 3.11.2-6 [572 kB] Get: 10 http://deb.debian.org/debian bookworm/main i386 libpython3-stdlib i386 3.11.2-1+b1 [9308 B] Get: 11 http://deb.debian.org/debian bookworm/main i386 python3 i386 3.11.2-1+b1 [26.3 kB] Get: 12 http://deb.debian.org/debian bookworm/main i386 sensible-utils all 0.0.17+nmu1 [19.0 kB] Get: 13 http://deb.debian.org/debian bookworm/main i386 openssl i386 3.0.11-1~deb12u2 [1423 kB] Get: 14 http://deb.debian.org/debian bookworm/main i386 ca-certificates all 20230311 [153 kB] Get: 15 http://deb.debian.org/debian bookworm/main i386 libmagic-mgc i386 1:5.44-3 [305 kB] Get: 16 http://deb.debian.org/debian bookworm/main i386 libmagic1 i386 1:5.44-3 [114 kB] Get: 17 http://deb.debian.org/debian bookworm/main i386 file i386 1:5.44-3 [42.5 kB] Get: 18 http://deb.debian.org/debian bookworm/main i386 gettext-base i386 0.21-12 [162 kB] Get: 19 http://deb.debian.org/debian bookworm/main i386 libuchardet0 i386 0.0.7-1 [67.9 kB] Get: 20 http://deb.debian.org/debian bookworm/main i386 groff-base i386 1.22.4-10 [932 kB] Get: 21 http://deb.debian.org/debian bookworm/main i386 locales all 2.36-9+deb12u3 [3904 kB] Get: 22 http://deb.debian.org/debian bookworm/main i386 bsdextrautils i386 2.38.1-5+b1 [90.3 kB] Get: 23 http://deb.debian.org/debian bookworm/main i386 libpipeline1 i386 1.5.7-1 [40.0 kB] Get: 24 http://deb.debian.org/debian bookworm/main i386 man-db i386 2.11.2-2 [1397 kB] Get: 25 http://deb.debian.org/debian bookworm/main i386 m4 i386 1.4.19-3 [294 kB] Get: 26 http://deb.debian.org/debian bookworm/main i386 autoconf all 2.71-3 [332 kB] Get: 27 http://deb.debian.org/debian bookworm/main i386 autotools-dev all 20220109.1 [51.6 kB] Get: 28 http://deb.debian.org/debian bookworm/main i386 automake all 1:1.16.5-1.3 [823 kB] Get: 29 http://deb.debian.org/debian bookworm/main i386 autopoint all 0.21-12 [495 kB] Get: 30 http://deb.debian.org/debian bookworm/main i386 libdebhelper-perl all 13.11.4 [81.2 kB] Get: 31 http://deb.debian.org/debian bookworm/main i386 libtool all 2.4.7-5 [517 kB] Get: 32 http://deb.debian.org/debian bookworm/main i386 dh-autoreconf all 20 [17.1 kB] Get: 33 http://deb.debian.org/debian bookworm/main i386 libarchive-zip-perl all 1.68-1 [104 kB] Get: 34 http://deb.debian.org/debian bookworm/main i386 libsub-override-perl all 0.09-4 [9304 B] Get: 35 http://deb.debian.org/debian bookworm/main i386 libfile-stripnondeterminism-perl all 1.13.1-1 [19.4 kB] Get: 36 http://deb.debian.org/debian bookworm/main i386 dh-strip-nondeterminism all 1.13.1-1 [8620 B] Get: 37 http://deb.debian.org/debian bookworm/main i386 libelf1 i386 0.188-2.1 [179 kB] Get: 38 http://deb.debian.org/debian bookworm/main i386 dwz i386 0.15-1 [118 kB] Get: 39 http://deb.debian.org/debian bookworm/main i386 libicu72 i386 72.1-3 [9541 kB] Get: 40 http://deb.debian.org/debian bookworm/main i386 libxml2 i386 2.9.14+dfsg-1.3~deb12u1 [720 kB] Get: 41 http://deb.debian.org/debian bookworm/main i386 gettext i386 0.21-12 [1311 kB] Get: 42 http://deb.debian.org/debian bookworm/main i386 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 43 http://deb.debian.org/debian bookworm/main i386 po-debconf all 1.0.21+nmu1 [248 kB] Get: 44 http://deb.debian.org/debian bookworm/main i386 debhelper all 13.11.4 [942 kB] Get: 45 http://deb.debian.org/debian bookworm/main i386 python3-lib2to3 all 3.11.2-3 [76.3 kB] Get: 46 http://deb.debian.org/debian bookworm/main i386 python3-distutils all 3.11.2-3 [131 kB] Get: 47 http://deb.debian.org/debian bookworm/main i386 dh-python all 5.20230130+deb12u1 [104 kB] Get: 48 http://deb.debian.org/debian bookworm/main i386 libbrotli1 i386 1.0.9-2+b6 [275 kB] Get: 49 http://deb.debian.org/debian bookworm/main i386 libsasl2-modules-db i386 2.1.28+dfsg-10 [21.4 kB] Get: 50 http://deb.debian.org/debian bookworm/main i386 libsasl2-2 i386 2.1.28+dfsg-10 [62.7 kB] Get: 51 http://deb.debian.org/debian bookworm/main i386 libldap-2.5-0 i386 2.5.13+dfsg-5 [196 kB] Get: 52 http://deb.debian.org/debian bookworm/main i386 libnghttp2-14 i386 1.52.0-1+deb12u1 [80.7 kB] Get: 53 http://deb.debian.org/debian bookworm/main i386 libpsl5 i386 0.21.2-1 [59.3 kB] Get: 54 http://deb.debian.org/debian bookworm/main i386 librtmp1 i386 2.4+20151223.gitfa8646d.1-2+b2 [64.3 kB] Get: 55 http://deb.debian.org/debian bookworm/main i386 libssh2-1 i386 1.10.0-3+b1 [187 kB] Get: 56 http://deb.debian.org/debian bookworm/main i386 libcurl3-gnutls i386 7.88.1-10+deb12u4 [417 kB] Get: 57 http://deb.debian.org/debian bookworm/main i386 liberror-perl all 0.17029-2 [29.0 kB] Get: 58 http://deb.debian.org/debian bookworm/main i386 git-man all 1:2.39.2-1.1 [2049 kB] Get: 59 http://deb.debian.org/debian bookworm/main i386 git i386 1:2.39.2-1.1 [8525 kB] Get: 60 http://deb.debian.org/debian bookworm/main i386 libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [326 kB] Get: 61 http://deb.debian.org/debian bookworm/main i386 localehelper all 0.1.4-3 [7796 B] Get: 62 http://deb.debian.org/debian bookworm/main i386 python3-all i386 3.11.2-1+b1 [1056 B] Get: 63 http://deb.debian.org/debian bookworm/main i386 python3-ansi all 0.1.5-2 [6232 B] Get: 64 http://deb.debian.org/debian bookworm/main i386 python3-attr all 22.2.0-1 [65.4 kB] Get: 65 http://deb.debian.org/debian bookworm/main i386 python3-bottle all 0.12.23-1.1 [45.3 kB] Get: 66 http://deb.debian.org/debian bookworm/main i386 python3-soupsieve all 2.3.2-1 [38.8 kB] Get: 67 http://deb.debian.org/debian bookworm/main i386 python3-bs4 all 4.11.2-2 [121 kB] Get: 68 http://deb.debian.org/debian bookworm/main i386 python3-certifi all 2022.9.24-1 [153 kB] Get: 69 http://deb.debian.org/debian bookworm/main i386 python3-cffi-backend i386 1.15.1-5+b1 [88.0 kB] Get: 70 http://deb.debian.org/debian bookworm/main i386 python3-pkg-resources all 66.1.1-1 [296 kB] Get: 71 http://deb.debian.org/debian bookworm/main i386 python3-chardet all 5.1.0+dfsg-2 [110 kB] Get: 72 http://deb.debian.org/debian bookworm/main i386 python3-charset-normalizer all 3.0.1-2 [49.3 kB] Get: 73 http://deb.debian.org/debian bookworm/main i386 python3-colorama all 0.4.6-2 [36.8 kB] Get: 74 http://deb.debian.org/debian bookworm/main i386 python3-click all 8.1.3-2 [92.2 kB] Get: 75 http://deb.debian.org/debian bookworm/main i386 python3-colorlog all 6.7.0-1 [26.5 kB] Get: 76 http://deb.debian.org/debian bookworm/main i386 python3-cryptography i386 38.0.4-3 [678 kB] Get: 77 http://deb.debian.org/debian bookworm/main i386 python3-daemonize all 2.5.0-1 [6584 B] Get: 78 http://deb.debian.org/debian bookworm/main i386 python3-six all 1.16.0-4 [17.5 kB] Get: 79 http://deb.debian.org/debian bookworm/main i386 python3-urllib3 all 1.26.12-1 [117 kB] Get: 80 http://deb.debian.org/debian bookworm/main i386 python3-dulwich i386 0.21.2-1+b1 [320 kB] Get: 81 http://deb.debian.org/debian bookworm/main i386 python3-itsdangerous all 2.1.2-3 [17.0 kB] Get: 82 http://deb.debian.org/debian bookworm/main i386 python3-markupsafe i386 2.1.2-1+b1 [13.3 kB] Get: 83 http://deb.debian.org/debian bookworm/main i386 python3-jinja2 all 3.1.2-1 [119 kB] Get: 84 http://deb.debian.org/debian bookworm/main i386 python3-werkzeug all 2.2.2-3 [205 kB] Get: 85 http://deb.debian.org/debian bookworm/main i386 python3-flask all 2.2.2-3 [105 kB] Get: 86 http://deb.debian.org/debian bookworm/main i386 python3-idna all 3.3-1 [39.4 kB] Get: 87 http://deb.debian.org/debian bookworm/main i386 python3-iniconfig all 1.1.1-2 [6396 B] Get: 88 http://deb.debian.org/debian bookworm/main i386 python3-markdown all 3.4.1-2 [64.7 kB] Get: 89 http://deb.debian.org/debian bookworm/main i386 python3-setuptools all 66.1.1-1 [521 kB] Get: 90 http://deb.debian.org/debian bookworm/main i386 python3-pbr all 5.10.0-2 [61.4 kB] Get: 91 http://deb.debian.org/debian bookworm/main i386 python3-mock all 4.0.3-4 [64.0 kB] Get: 92 http://deb.debian.org/debian bookworm/main i386 python3-more-itertools all 8.10.0-2 [53.0 kB] Get: 93 http://deb.debian.org/debian bookworm/main i386 python3-openssl all 23.0.0-1 [50.8 kB] Get: 94 http://deb.debian.org/debian bookworm/main i386 python3-packaging all 23.0-1 [32.5 kB] Get: 95 http://deb.debian.org/debian bookworm/main i386 python3-tempita all 0.5.2-7 [15.0 kB] Get: 96 http://deb.debian.org/debian bookworm/main i386 python3-paste all 3.5.2+repack-1 [525 kB] Get: 97 http://deb.debian.org/debian bookworm/main i386 python3-pastedeploy-tpl all 3.0.1-5 [8084 B] Get: 98 http://deb.debian.org/debian bookworm/main i386 python3-pastedeploy all 3.0.1-5 [18.8 kB] Get: 99 http://deb.debian.org/debian bookworm/main i386 python3-pluggy all 1.0.0+repack-1 [19.7 kB] Get: 100 http://deb.debian.org/debian bookworm/main i386 python3-py all 1.11.0-1 [89.2 kB] Get: 101 http://deb.debian.org/debian bookworm/main i386 python3-pygments all 2.14.0+dfsg-1 [783 kB] Get: 102 http://deb.debian.org/debian bookworm/main i386 python3-pytest all 7.2.1-2 [236 kB] Get: 103 http://deb.debian.org/debian bookworm/main i386 python3-requests all 2.28.1+dfsg-1 [67.9 kB] Get: 104 http://deb.debian.org/debian bookworm/main i386 python3-waitress all 2.1.2-2 [48.9 kB] Get: 105 http://deb.debian.org/debian bookworm/main i386 python3-webob all 1:1.8.6-3 [87.8 kB] Get: 106 http://deb.debian.org/debian bookworm/main i386 python3-webtest all 3.0.0-2 [34.5 kB] Get: 107 http://deb.debian.org/debian bookworm/main i386 python3-yapsy all 1.12.0-1.3 [31.0 kB] Fetched 48.4 MB in 3s (16.7 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package libpython3.11-minimal:i386. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 18156 files and directories currently installed.) Preparing to unpack .../libpython3.11-minimal_3.11.2-6_i386.deb ... Unpacking libpython3.11-minimal:i386 (3.11.2-6) ... Selecting previously unselected package libexpat1:i386. Preparing to unpack .../libexpat1_2.5.0-1_i386.deb ... Unpacking libexpat1:i386 (2.5.0-1) ... Selecting previously unselected package python3.11-minimal. Preparing to unpack .../python3.11-minimal_3.11.2-6_i386.deb ... Unpacking python3.11-minimal (3.11.2-6) ... Setting up libpython3.11-minimal:i386 (3.11.2-6) ... Setting up libexpat1:i386 (2.5.0-1) ... Setting up python3.11-minimal (3.11.2-6) ... Selecting previously unselected package python3-minimal. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 18472 files and directories currently installed.) Preparing to unpack .../0-python3-minimal_3.11.2-1+b1_i386.deb ... Unpacking python3-minimal (3.11.2-1+b1) ... Selecting previously unselected package media-types. Preparing to unpack .../1-media-types_10.0.0_all.deb ... Unpacking media-types (10.0.0) ... Selecting previously unselected package readline-common. Preparing to unpack .../2-readline-common_8.2-1.3_all.deb ... Unpacking readline-common (8.2-1.3) ... Selecting previously unselected package libreadline8:i386. Preparing to unpack .../3-libreadline8_8.2-1.3_i386.deb ... Unpacking libreadline8:i386 (8.2-1.3) ... Selecting previously unselected package libpython3.11-stdlib:i386. Preparing to unpack .../4-libpython3.11-stdlib_3.11.2-6_i386.deb ... Unpacking libpython3.11-stdlib:i386 (3.11.2-6) ... Selecting previously unselected package python3.11. Preparing to unpack .../5-python3.11_3.11.2-6_i386.deb ... Unpacking python3.11 (3.11.2-6) ... Selecting previously unselected package libpython3-stdlib:i386. Preparing to unpack .../6-libpython3-stdlib_3.11.2-1+b1_i386.deb ... Unpacking libpython3-stdlib:i386 (3.11.2-1+b1) ... Setting up python3-minimal (3.11.2-1+b1) ... Selecting previously unselected package python3. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 18906 files and directories currently installed.) Preparing to unpack .../00-python3_3.11.2-1+b1_i386.deb ... Unpacking python3 (3.11.2-1+b1) ... Selecting previously unselected package sensible-utils. Preparing to unpack .../01-sensible-utils_0.0.17+nmu1_all.deb ... Unpacking sensible-utils (0.0.17+nmu1) ... Selecting previously unselected package openssl. Preparing to unpack .../02-openssl_3.0.11-1~deb12u2_i386.deb ... Unpacking openssl (3.0.11-1~deb12u2) ... Selecting previously unselected package ca-certificates. Preparing to unpack .../03-ca-certificates_20230311_all.deb ... Unpacking ca-certificates (20230311) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../04-libmagic-mgc_1%3a5.44-3_i386.deb ... Unpacking libmagic-mgc (1:5.44-3) ... Selecting previously unselected package libmagic1:i386. Preparing to unpack .../05-libmagic1_1%3a5.44-3_i386.deb ... Unpacking libmagic1:i386 (1:5.44-3) ... Selecting previously unselected package file. Preparing to unpack .../06-file_1%3a5.44-3_i386.deb ... Unpacking file (1:5.44-3) ... Selecting previously unselected package gettext-base. Preparing to unpack .../07-gettext-base_0.21-12_i386.deb ... Unpacking gettext-base (0.21-12) ... Selecting previously unselected package libuchardet0:i386. Preparing to unpack .../08-libuchardet0_0.0.7-1_i386.deb ... Unpacking libuchardet0:i386 (0.0.7-1) ... Selecting previously unselected package groff-base. Preparing to unpack .../09-groff-base_1.22.4-10_i386.deb ... Unpacking groff-base (1.22.4-10) ... Selecting previously unselected package locales. Preparing to unpack .../10-locales_2.36-9+deb12u3_all.deb ... Unpacking locales (2.36-9+deb12u3) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../11-bsdextrautils_2.38.1-5+b1_i386.deb ... Unpacking bsdextrautils (2.38.1-5+b1) ... Selecting previously unselected package libpipeline1:i386. Preparing to unpack .../12-libpipeline1_1.5.7-1_i386.deb ... Unpacking libpipeline1:i386 (1.5.7-1) ... Selecting previously unselected package man-db. Preparing to unpack .../13-man-db_2.11.2-2_i386.deb ... Unpacking man-db (2.11.2-2) ... Selecting previously unselected package m4. Preparing to unpack .../14-m4_1.4.19-3_i386.deb ... Unpacking m4 (1.4.19-3) ... Selecting previously unselected package autoconf. Preparing to unpack .../15-autoconf_2.71-3_all.deb ... Unpacking autoconf (2.71-3) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../16-autotools-dev_20220109.1_all.deb ... Unpacking autotools-dev (20220109.1) ... Selecting previously unselected package automake. Preparing to unpack .../17-automake_1%3a1.16.5-1.3_all.deb ... Unpacking automake (1:1.16.5-1.3) ... Selecting previously unselected package autopoint. Preparing to unpack .../18-autopoint_0.21-12_all.deb ... Unpacking autopoint (0.21-12) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../19-libdebhelper-perl_13.11.4_all.deb ... Unpacking libdebhelper-perl (13.11.4) ... Selecting previously unselected package libtool. Preparing to unpack .../20-libtool_2.4.7-5_all.deb ... Unpacking libtool (2.4.7-5) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../21-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../22-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libsub-override-perl. Preparing to unpack .../23-libsub-override-perl_0.09-4_all.deb ... Unpacking libsub-override-perl (0.09-4) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../24-libfile-stripnondeterminism-perl_1.13.1-1_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.13.1-1) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../25-dh-strip-nondeterminism_1.13.1-1_all.deb ... Unpacking dh-strip-nondeterminism (1.13.1-1) ... Selecting previously unselected package libelf1:i386. Preparing to unpack .../26-libelf1_0.188-2.1_i386.deb ... Unpacking libelf1:i386 (0.188-2.1) ... Selecting previously unselected package dwz. Preparing to unpack .../27-dwz_0.15-1_i386.deb ... Unpacking dwz (0.15-1) ... Selecting previously unselected package libicu72:i386. Preparing to unpack .../28-libicu72_72.1-3_i386.deb ... Unpacking libicu72:i386 (72.1-3) ... Selecting previously unselected package libxml2:i386. Preparing to unpack .../29-libxml2_2.9.14+dfsg-1.3~deb12u1_i386.deb ... Unpacking libxml2:i386 (2.9.14+dfsg-1.3~deb12u1) ... Selecting previously unselected package gettext. Preparing to unpack .../30-gettext_0.21-12_i386.deb ... Unpacking gettext (0.21-12) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../31-intltool-debian_0.35.0+20060710.6_all.deb ... Unpacking intltool-debian (0.35.0+20060710.6) ... Selecting previously unselected package po-debconf. Preparing to unpack .../32-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../33-debhelper_13.11.4_all.deb ... Unpacking debhelper (13.11.4) ... Selecting previously unselected package python3-lib2to3. Preparing to unpack .../34-python3-lib2to3_3.11.2-3_all.deb ... Unpacking python3-lib2to3 (3.11.2-3) ... Selecting previously unselected package python3-distutils. Preparing to unpack .../35-python3-distutils_3.11.2-3_all.deb ... Unpacking python3-distutils (3.11.2-3) ... Selecting previously unselected package dh-python. Preparing to unpack .../36-dh-python_5.20230130+deb12u1_all.deb ... Unpacking dh-python (5.20230130+deb12u1) ... Selecting previously unselected package libbrotli1:i386. Preparing to unpack .../37-libbrotli1_1.0.9-2+b6_i386.deb ... Unpacking libbrotli1:i386 (1.0.9-2+b6) ... Selecting previously unselected package libsasl2-modules-db:i386. Preparing to unpack .../38-libsasl2-modules-db_2.1.28+dfsg-10_i386.deb ... Unpacking libsasl2-modules-db:i386 (2.1.28+dfsg-10) ... Selecting previously unselected package libsasl2-2:i386. Preparing to unpack .../39-libsasl2-2_2.1.28+dfsg-10_i386.deb ... Unpacking libsasl2-2:i386 (2.1.28+dfsg-10) ... Selecting previously unselected package libldap-2.5-0:i386. Preparing to unpack .../40-libldap-2.5-0_2.5.13+dfsg-5_i386.deb ... Unpacking libldap-2.5-0:i386 (2.5.13+dfsg-5) ... Selecting previously unselected package libnghttp2-14:i386. Preparing to unpack .../41-libnghttp2-14_1.52.0-1+deb12u1_i386.deb ... Unpacking libnghttp2-14:i386 (1.52.0-1+deb12u1) ... Selecting previously unselected package libpsl5:i386. Preparing to unpack .../42-libpsl5_0.21.2-1_i386.deb ... Unpacking libpsl5:i386 (0.21.2-1) ... Selecting previously unselected package librtmp1:i386. Preparing to unpack .../43-librtmp1_2.4+20151223.gitfa8646d.1-2+b2_i386.deb ... Unpacking librtmp1:i386 (2.4+20151223.gitfa8646d.1-2+b2) ... Selecting previously unselected package libssh2-1:i386. Preparing to unpack .../44-libssh2-1_1.10.0-3+b1_i386.deb ... Unpacking libssh2-1:i386 (1.10.0-3+b1) ... Selecting previously unselected package libcurl3-gnutls:i386. Preparing to unpack .../45-libcurl3-gnutls_7.88.1-10+deb12u4_i386.deb ... Unpacking libcurl3-gnutls:i386 (7.88.1-10+deb12u4) ... Selecting previously unselected package liberror-perl. Preparing to unpack .../46-liberror-perl_0.17029-2_all.deb ... Unpacking liberror-perl (0.17029-2) ... Selecting previously unselected package git-man. Preparing to unpack .../47-git-man_1%3a2.39.2-1.1_all.deb ... Unpacking git-man (1:2.39.2-1.1) ... Selecting previously unselected package git. Preparing to unpack .../48-git_1%3a2.39.2-1.1_i386.deb ... Unpacking git (1:2.39.2-1.1) ... Selecting previously unselected package libjs-jquery. Preparing to unpack .../49-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... Selecting previously unselected package localehelper. Preparing to unpack .../50-localehelper_0.1.4-3_all.deb ... Unpacking localehelper (0.1.4-3) ... Selecting previously unselected package python3-all. Preparing to unpack .../51-python3-all_3.11.2-1+b1_i386.deb ... Unpacking python3-all (3.11.2-1+b1) ... Selecting previously unselected package python3-ansi. Preparing to unpack .../52-python3-ansi_0.1.5-2_all.deb ... Unpacking python3-ansi (0.1.5-2) ... Selecting previously unselected package python3-attr. Preparing to unpack .../53-python3-attr_22.2.0-1_all.deb ... Unpacking python3-attr (22.2.0-1) ... Selecting previously unselected package python3-bottle. Preparing to unpack .../54-python3-bottle_0.12.23-1.1_all.deb ... Unpacking python3-bottle (0.12.23-1.1) ... Selecting previously unselected package python3-soupsieve. Preparing to unpack .../55-python3-soupsieve_2.3.2-1_all.deb ... Unpacking python3-soupsieve (2.3.2-1) ... Selecting previously unselected package python3-bs4. Preparing to unpack .../56-python3-bs4_4.11.2-2_all.deb ... Unpacking python3-bs4 (4.11.2-2) ... Selecting previously unselected package python3-certifi. Preparing to unpack .../57-python3-certifi_2022.9.24-1_all.deb ... Unpacking python3-certifi (2022.9.24-1) ... Selecting previously unselected package python3-cffi-backend:i386. Preparing to unpack .../58-python3-cffi-backend_1.15.1-5+b1_i386.deb ... Unpacking python3-cffi-backend:i386 (1.15.1-5+b1) ... Selecting previously unselected package python3-pkg-resources. Preparing to unpack .../59-python3-pkg-resources_66.1.1-1_all.deb ... Unpacking python3-pkg-resources (66.1.1-1) ... Selecting previously unselected package python3-chardet. Preparing to unpack .../60-python3-chardet_5.1.0+dfsg-2_all.deb ... Unpacking python3-chardet (5.1.0+dfsg-2) ... Selecting previously unselected package python3-charset-normalizer. Preparing to unpack .../61-python3-charset-normalizer_3.0.1-2_all.deb ... Unpacking python3-charset-normalizer (3.0.1-2) ... Selecting previously unselected package python3-colorama. Preparing to unpack .../62-python3-colorama_0.4.6-2_all.deb ... Unpacking python3-colorama (0.4.6-2) ... Selecting previously unselected package python3-click. Preparing to unpack .../63-python3-click_8.1.3-2_all.deb ... Unpacking python3-click (8.1.3-2) ... Selecting previously unselected package python3-colorlog. Preparing to unpack .../64-python3-colorlog_6.7.0-1_all.deb ... Unpacking python3-colorlog (6.7.0-1) ... Selecting previously unselected package python3-cryptography. Preparing to unpack .../65-python3-cryptography_38.0.4-3_i386.deb ... Unpacking python3-cryptography (38.0.4-3) ... Selecting previously unselected package python3-daemonize. Preparing to unpack .../66-python3-daemonize_2.5.0-1_all.deb ... Unpacking python3-daemonize (2.5.0-1) ... Selecting previously unselected package python3-six. Preparing to unpack .../67-python3-six_1.16.0-4_all.deb ... Unpacking python3-six (1.16.0-4) ... Selecting previously unselected package python3-urllib3. Preparing to unpack .../68-python3-urllib3_1.26.12-1_all.deb ... Unpacking python3-urllib3 (1.26.12-1) ... Selecting previously unselected package python3-dulwich. Preparing to unpack .../69-python3-dulwich_0.21.2-1+b1_i386.deb ... Unpacking python3-dulwich (0.21.2-1+b1) ... Selecting previously unselected package python3-itsdangerous. Preparing to unpack .../70-python3-itsdangerous_2.1.2-3_all.deb ... Unpacking python3-itsdangerous (2.1.2-3) ... Selecting previously unselected package python3-markupsafe. Preparing to unpack .../71-python3-markupsafe_2.1.2-1+b1_i386.deb ... Unpacking python3-markupsafe (2.1.2-1+b1) ... Selecting previously unselected package python3-jinja2. Preparing to unpack .../72-python3-jinja2_3.1.2-1_all.deb ... Unpacking python3-jinja2 (3.1.2-1) ... Selecting previously unselected package python3-werkzeug. Preparing to unpack .../73-python3-werkzeug_2.2.2-3_all.deb ... Unpacking python3-werkzeug (2.2.2-3) ... Selecting previously unselected package python3-flask. Preparing to unpack .../74-python3-flask_2.2.2-3_all.deb ... Unpacking python3-flask (2.2.2-3) ... Selecting previously unselected package python3-idna. Preparing to unpack .../75-python3-idna_3.3-1_all.deb ... Unpacking python3-idna (3.3-1) ... Selecting previously unselected package python3-iniconfig. Preparing to unpack .../76-python3-iniconfig_1.1.1-2_all.deb ... Unpacking python3-iniconfig (1.1.1-2) ... Selecting previously unselected package python3-markdown. Preparing to unpack .../77-python3-markdown_3.4.1-2_all.deb ... Unpacking python3-markdown (3.4.1-2) ... Selecting previously unselected package python3-setuptools. Preparing to unpack .../78-python3-setuptools_66.1.1-1_all.deb ... Unpacking python3-setuptools (66.1.1-1) ... Selecting previously unselected package python3-pbr. Preparing to unpack .../79-python3-pbr_5.10.0-2_all.deb ... Unpacking python3-pbr (5.10.0-2) ... Selecting previously unselected package python3-mock. Preparing to unpack .../80-python3-mock_4.0.3-4_all.deb ... Unpacking python3-mock (4.0.3-4) ... Selecting previously unselected package python3-more-itertools. Preparing to unpack .../81-python3-more-itertools_8.10.0-2_all.deb ... Unpacking python3-more-itertools (8.10.0-2) ... Selecting previously unselected package python3-openssl. Preparing to unpack .../82-python3-openssl_23.0.0-1_all.deb ... Unpacking python3-openssl (23.0.0-1) ... Selecting previously unselected package python3-packaging. Preparing to unpack .../83-python3-packaging_23.0-1_all.deb ... Unpacking python3-packaging (23.0-1) ... Selecting previously unselected package python3-tempita. Preparing to unpack .../84-python3-tempita_0.5.2-7_all.deb ... Unpacking python3-tempita (0.5.2-7) ... Selecting previously unselected package python3-paste. Preparing to unpack .../85-python3-paste_3.5.2+repack-1_all.deb ... Unpacking python3-paste (3.5.2+repack-1) ... Selecting previously unselected package python3-pastedeploy-tpl. Preparing to unpack .../86-python3-pastedeploy-tpl_3.0.1-5_all.deb ... Unpacking python3-pastedeploy-tpl (3.0.1-5) ... Selecting previously unselected package python3-pastedeploy. Preparing to unpack .../87-python3-pastedeploy_3.0.1-5_all.deb ... Unpacking python3-pastedeploy (3.0.1-5) ... Selecting previously unselected package python3-pluggy. Preparing to unpack .../88-python3-pluggy_1.0.0+repack-1_all.deb ... Unpacking python3-pluggy (1.0.0+repack-1) ... Selecting previously unselected package python3-py. Preparing to unpack .../89-python3-py_1.11.0-1_all.deb ... Unpacking python3-py (1.11.0-1) ... Selecting previously unselected package python3-pygments. Preparing to unpack .../90-python3-pygments_2.14.0+dfsg-1_all.deb ... Unpacking python3-pygments (2.14.0+dfsg-1) ... Selecting previously unselected package python3-pytest. Preparing to unpack .../91-python3-pytest_7.2.1-2_all.deb ... Unpacking python3-pytest (7.2.1-2) ... Selecting previously unselected package python3-requests. Preparing to unpack .../92-python3-requests_2.28.1+dfsg-1_all.deb ... Unpacking python3-requests (2.28.1+dfsg-1) ... Selecting previously unselected package python3-waitress. Preparing to unpack .../93-python3-waitress_2.1.2-2_all.deb ... Unpacking python3-waitress (2.1.2-2) ... Selecting previously unselected package python3-webob. Preparing to unpack .../94-python3-webob_1%3a1.8.6-3_all.deb ... Unpacking python3-webob (1:1.8.6-3) ... Selecting previously unselected package python3-webtest. Preparing to unpack .../95-python3-webtest_3.0.0-2_all.deb ... Unpacking python3-webtest (3.0.0-2) ... Selecting previously unselected package python3-yapsy. Preparing to unpack .../96-python3-yapsy_1.12.0-1.3_all.deb ... Unpacking python3-yapsy (1.12.0-1.3) ... Setting up media-types (10.0.0) ... Setting up libpipeline1:i386 (1.5.7-1) ... Setting up libpsl5:i386 (0.21.2-1) ... Setting up libicu72:i386 (72.1-3) ... Setting up bsdextrautils (2.38.1-5+b1) ... Setting up libmagic-mgc (1:5.44-3) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libdebhelper-perl (13.11.4) ... Setting up libbrotli1:i386 (1.0.9-2+b6) ... Setting up libnghttp2-14:i386 (1.52.0-1+deb12u1) ... Setting up libmagic1:i386 (1:5.44-3) ... Setting up gettext-base (0.21-12) ... Setting up m4 (1.4.19-3) ... Setting up file (1:5.44-3) ... Setting up locales (2.36-9+deb12u3) ... locales-all installed, skipping locales generation Setting up libsasl2-modules-db:i386 (2.1.28+dfsg-10) ... Setting up liberror-perl (0.17029-2) ... Setting up autotools-dev (20220109.1) ... Setting up localehelper (0.1.4-3) ... Setting up librtmp1:i386 (2.4+20151223.gitfa8646d.1-2+b2) ... Setting up python3-pastedeploy-tpl (3.0.1-5) ... Setting up autopoint (0.21-12) ... Setting up libsasl2-2:i386 (2.1.28+dfsg-10) ... Setting up autoconf (2.71-3) ... Setting up sensible-utils (0.0.17+nmu1) ... Setting up libuchardet0:i386 (0.0.7-1) ... Setting up libsub-override-perl (0.09-4) ... Setting up git-man (1:2.39.2-1.1) ... Setting up libssh2-1:i386 (1.10.0-3+b1) ... Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... Setting up openssl (3.0.11-1~deb12u2) ... Setting up libelf1:i386 (0.188-2.1) ... Setting up readline-common (8.2-1.3) ... Setting up libxml2:i386 (2.9.14+dfsg-1.3~deb12u1) ... Setting up automake (1:1.16.5-1.3) ... update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode Setting up libfile-stripnondeterminism-perl (1.13.1-1) ... Setting up gettext (0.21-12) ... Setting up libtool (2.4.7-5) ... Setting up libreadline8:i386 (8.2-1.3) ... Setting up libldap-2.5-0:i386 (2.5.13+dfsg-5) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up ca-certificates (20230311) ... Updating certificates in /etc/ssl/certs... 140 added, 0 removed; done. Setting up dh-strip-nondeterminism (1.13.1-1) ... Setting up dwz (0.15-1) ... Setting up groff-base (1.22.4-10) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up libpython3.11-stdlib:i386 (3.11.2-6) ... Setting up libcurl3-gnutls:i386 (7.88.1-10+deb12u4) ... Setting up man-db (2.11.2-2) ... Not building database; man-db/auto-update is not 'true'. Setting up git (1:2.39.2-1.1) ... Setting up libpython3-stdlib:i386 (3.11.2-1+b1) ... Setting up python3.11 (3.11.2-6) ... Setting up debhelper (13.11.4) ... Setting up python3 (3.11.2-1+b1) ... Setting up python3-markupsafe (2.1.2-1+b1) ... Setting up python3-six (1.16.0-4) ... Setting up python3-jinja2 (3.1.2-1) ... Setting up python3-tempita (0.5.2-7) ... Setting up python3-packaging (23.0-1) ... Setting up python3-ansi (0.1.5-2) ... Setting up python3-certifi (2022.9.24-1) ... Setting up python3-werkzeug (2.2.2-3) ... Setting up python3-idna (3.3-1) ... Setting up python3-markdown (3.4.1-2) ... Setting up python3-urllib3 (1.26.12-1) ... Setting up python3-pluggy (1.0.0+repack-1) ... Setting up python3-dulwich (0.21.2-1+b1) ... Setting up python3-lib2to3 (3.11.2-3) ... Setting up python3-soupsieve (2.3.2-1) ... Setting up python3-cffi-backend:i386 (1.15.1-5+b1) ... Setting up python3-webob (1:1.8.6-3) ... Setting up python3-yapsy (1.12.0-1.3) ... Setting up python3-daemonize (2.5.0-1) ... Setting up python3-pkg-resources (66.1.1-1) ... Setting up python3-distutils (3.11.2-3) ... Setting up dh-python (5.20230130+deb12u1) ... Setting up python3-more-itertools (8.10.0-2) ... Setting up python3-iniconfig (1.1.1-2) ... Setting up python3-attr (22.2.0-1) ... Setting up python3-waitress (2.1.2-2) ... Setting up python3-setuptools (66.1.1-1) ... Setting up python3-bottle (0.12.23-1.1) ... Setting up python3-py (1.11.0-1) ... Setting up python3-colorama (0.4.6-2) ... Setting up python3-colorlog (6.7.0-1) ... Setting up python3-pbr (5.10.0-2) ... Setting up python3-charset-normalizer (3.0.1-2) ... Setting up python3-pytest (7.2.1-2) ... Setting up python3-itsdangerous (2.1.2-3) ... Setting up python3-all (3.11.2-1+b1) ... Setting up python3-click (8.1.3-2) ... Setting up python3-bs4 (4.11.2-2) ... Setting up python3-mock (4.0.3-4) ... Setting up python3-pygments (2.14.0+dfsg-1) ... Setting up python3-chardet (5.1.0+dfsg-2) ... Setting up python3-paste (3.5.2+repack-1) ... Setting up python3-cryptography (38.0.4-3) ... Setting up python3-requests (2.28.1+dfsg-1) ... Setting up python3-openssl (23.0.0-1) ... Setting up python3-flask (2.2.2-3) ... Setting up python3-pastedeploy (3.0.1-5) ... Setting up python3-webtest (3.0.0-2) ... Processing triggers for libc-bin (2.36-9+deb12u3) ... Processing triggers for ca-certificates (20230311) ... Updating certificates in /etc/ssl/certs... 0 added, 0 removed; done. Running hooks in /etc/ca-certificates/update.d... done. Reading package lists... Building dependency tree... Reading state information... Reading extended state information... Initializing package states... Writing extended state information... Building tag database... -> Finished parsing the build-deps I: Building the package I: Running cd /build/reproducible-path/errbot-6.1.7+ds/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../errbot_6.1.7+ds-1_source.changes dpkg-buildpackage: info: source package errbot dpkg-buildpackage: info: source version 6.1.7+ds-1 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Birger Schacht dpkg-source --before-build . dpkg-buildpackage: info: host architecture i386 debian/rules clean dh clean --with python3 --buildsystem=pybuild dh_auto_clean -O--buildsystem=pybuild pybuild --clean -i python{version} -p 3.11 I: pybuild base:240: python3.11 setup.py clean running clean removing '/build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build' (and everything under it) 'build/bdist.linux-i386' does not exist -- can't clean it 'build/scripts-3.11' does not exist -- can't clean it rm -rf .pybuild/ find . -name \*.pyc -exec rm {} \; dh_autoreconf_clean -O--buildsystem=pybuild dh_clean -O--buildsystem=pybuild rm -f debian/debhelper-build-stamp rm -rf debian/.debhelper/ rm -f -- debian/errbot.substvars debian/files rm -fr -- debian/errbot/ debian/tmp/ find . \( \( \ \( -path .\*/.git -o -path .\*/.svn -o -path .\*/.bzr -o -path .\*/.hg -o -path .\*/CVS -o -path .\*/.pc -o -path .\*/_darcs \) -prune -o -type f -a \ \( -name '#*#' -o -name '.*~' -o -name '*~' -o -name DEADJOE \ -o -name '*.orig' -o -name '*.rej' -o -name '*.bak' \ -o -name '.*.orig' -o -name .*.rej -o -name '.SUMS' \ -o -name TAGS -o \( -path '*/.deps/*' -a -name '*.P' \) \ \) -exec rm -f {} + \) -o \ \( -type d -a -name autom4te.cache -prune -exec rm -rf {} + \) \) debian/rules binary dh binary --with python3 --buildsystem=pybuild dh_update_autotools_config -O--buildsystem=pybuild dh_autoreconf -O--buildsystem=pybuild dh_auto_configure -O--buildsystem=pybuild pybuild --configure -i python{version} -p 3.11 I: pybuild base:240: python3.11 setup.py config running config dh_auto_build -O--buildsystem=pybuild pybuild --build -i python{version} -p 3.11 I: pybuild base:240: /usr/bin/python3 setup.py build running build running build_py creating /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot copying ./errbot/repo_manager.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot copying ./errbot/bootstrap.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot copying ./errbot/plugin_info.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot copying ./errbot/streaming.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot copying ./errbot/botplugin.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot copying ./errbot/backend_plugin_manager.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot copying ./errbot/logs.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot copying ./errbot/flow.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot copying ./errbot/templating.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot copying ./errbot/version.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot copying ./errbot/core.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot copying ./errbot/plugin_wizard.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot copying ./errbot/config-template.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot copying ./errbot/plugin_manager.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot copying ./errbot/__init__.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot copying ./errbot/utils.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot copying ./errbot/cli.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot creating /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/null.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/xmpp.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/graphic.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/hipchat.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/slack_rtm.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/base.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/test.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/text.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/slack.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/__init__.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/irc.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/telegram_messenger.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends creating /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/acls.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/backup.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/wsview.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/webserver.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/health.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/vcheck.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/cnf_filter.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/__init__.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/utils.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/chatRoom.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/help.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/textcmds.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/plugins.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/flows.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins creating /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/rendering copying ./errbot/rendering/ansiext.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/rendering copying ./errbot/rendering/__init__.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/rendering copying ./errbot/rendering/xhtmlim.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/rendering creating /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/storage copying ./errbot/storage/memory.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/storage copying ./errbot/storage/shelf.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/storage copying ./errbot/storage/base.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/storage copying ./errbot/storage/__init__.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/storage copying ./errbot/backends/null.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/test.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/hipchat.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/text.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/slack.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/irc.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/xmpp.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/telegram_messenger.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/graphic.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/slack_rtm.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends copying ./errbot/backends/graphic_card.html -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends creating /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends/styles copying ./errbot/backends/styles/style.css -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends/styles copying ./errbot/backends/styles/style-demo.css -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends/styles creating /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends/images copying ./errbot/backends/images/errbot.svg -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends/images copying ./errbot/backends/images/prompt.svg -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends/images copying ./errbot/backends/images/errbot-bg.svg -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/backends/images copying ./errbot/core_plugins/chatRoom.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/help.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/utils.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/health.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/vcheck.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/flows.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/plugins.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/textcmds.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/cnf_filter.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/backup.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/webserver.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/acls.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins copying ./errbot/core_plugins/test.md -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins creating /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins/templates copying ./errbot/core_plugins/templates/status.md -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins/templates copying ./errbot/core_plugins/templates/status_gc.md -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins/templates copying ./errbot/core_plugins/templates/about.md -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins/templates copying ./errbot/core_plugins/templates/webstatus.md -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins/templates copying ./errbot/core_plugins/templates/repos.md -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins/templates copying ./errbot/core_plugins/templates/plugin_info.md -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins/templates copying ./errbot/core_plugins/templates/status_plugins.md -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins/templates copying ./errbot/core_plugins/templates/status_load.md -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins/templates copying ./errbot/core_plugins/templates/repos2.md -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/core_plugins/templates copying ./errbot/storage/shelf.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/storage copying ./errbot/storage/memory.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/storage creating /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/templates creating /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/templates/initdir copying ./errbot/templates/initdir/example.py -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/templates/initdir copying ./errbot/templates/initdir/example.plug -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/templates/initdir copying ./errbot/templates/initdir/config.py.tmpl -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/templates/initdir copying ./errbot/templates/card.md -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/templates copying ./errbot/templates/new_plugin.py.tmpl -> /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/errbot/templates debian/rules override_dh_auto_test make[1]: Entering directory '/build/reproducible-path/errbot-6.1.7+ds' localehelper LANG=en_US.UTF-8 dh_auto_test pybuild --test --test-pytest -i python{version} -p 3.11 I: pybuild pybuild:307: rm -f /build/reproducible-path/errbot-6.1.7+ds/tests/backend_tests/slack_test.py I: pybuild base:240: cd /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build; python3.11 -m pytest -k "not test_broken_plugin and not test_backup and not test_plugin_cycle and not test_check_dependencies_requirements_file_all_installed" ============================= test session starts ============================== platform linux -- Python 3.11.2, pytest-7.2.1, pluggy-1.0.0+repack rootdir: /build/reproducible-path/errbot-6.1.7+ds, configfile: pytest.ini collected 208 items / 6 deselected / 202 selected tests/backend_manager_test.py ... [ 1%] tests/base_backend_test.py ................................ [ 17%] tests/commands_test.py ....................E....... [ 31%] tests/core_plugins_test.py ... [ 32%] tests/core_test.py .. [ 33%] tests/dependencies_test.py ...... [ 36%] tests/dynaplug_test.py ..... [ 39%] tests/flow_e2e_test.py .........E... [ 45%] tests/flow_test.py ... [ 47%] tests/i18n_test.py .... [ 49%] tests/link_test.py . [ 49%] tests/matchall_test.py .. [ 50%] tests/md_rendering_test.py .... [ 52%] tests/mention_test.py ... [ 53%] tests/muc_test.py ...... [ 56%] tests/multi_plugin_test.py E. [ 57%] tests/persistence_test.py .. [ 58%] tests/plugin_config_fail_test.py . [ 59%] tests/plugin_config_test.py ........ [ 63%] tests/plugin_info_test.py ........ [ 67%] tests/plugin_management_test.py ...... [ 70%] tests/poller_test.py .. [ 71%] tests/repo_manager_test.py ....... [ 74%] tests/simple_identifiers_test.py ..... [ 77%] tests/streaming_test.py . [ 77%] tests/syntax_test.py .... [ 79%] tests/templates_test.py ..... [ 82%] tests/utils_test.py .................... [ 92%] tests/webhooks_test.py ............... [ 99%] tests/backend_tests/text_test.py . [100%] ==================================== ERRORS ==================================== _____________________ ERROR at setup of test_simple_match ______________________ backend_name = 'Test', logger = config = restore = None def setup_bot(backend_name: str, logger, config, restore=None) -> ErrBot: # from here the environment is supposed to be set (daemon / non daemon, # config.py in the python path ) bot_config_defaults(config) if hasattr(config, "BOT_LOG_FORMATTER"): format_logs(formatter=config.BOT_LOG_FORMATTER) else: format_logs(theme_color=config.TEXT_COLOR_THEME) if config.BOT_LOG_FILE: hdlr = logging.FileHandler(config.BOT_LOG_FILE) hdlr.setFormatter( logging.Formatter("%(asctime)s %(levelname)-8s %(name)-25s %(message)s") ) logger.addHandler(hdlr) if hasattr(config, "BOT_LOG_SENTRY") and config.BOT_LOG_SENTRY: sentry_integrations = [] try: import sentry_sdk from sentry_sdk.integrations.logging import LoggingIntegration except ImportError: log.exception( "You have BOT_LOG_SENTRY enabled, but I couldn't import modules " "needed for Sentry integration. Did you install sentry-sdk? " "(See https://docs.sentry.io/platforms/python for installation instructions)" ) exit(-1) sentry_logging = LoggingIntegration( level=config.SENTRY_LOGLEVEL, event_level=config.SENTRY_EVENTLEVEL ) sentry_integrations.append(sentry_logging) if hasattr(config, "BOT_LOG_SENTRY_FLASK") and config.BOT_LOG_SENTRY_FLASK: try: from sentry_sdk.integrations.flask import FlaskIntegration except ImportError: log.exception( "You have BOT_LOG_SENTRY enabled, but I couldn't import modules " "needed for Sentry integration. Did you install sentry-sdk[flask]? " "(See https://docs.sentry.io/platforms/python/flask for installation instructions)" ) exit(-1) sentry_integrations.append(FlaskIntegration()) try: if hasattr(config, "SENTRY_TRANSPORT") and isinstance( config.SENTRY_TRANSPORT, tuple ): mod = importlib.import_module(config.SENTRY_TRANSPORT[1]) transport = getattr(mod, config.SENTRY_TRANSPORT[0]) sentry_sdk.init( dsn=config.SENTRY_DSN, integrations=sentry_integrations, transport=transport, ) else: sentry_sdk.init(dsn=config.SENTRY_DSN, integrations=sentry_integrations) except ImportError: log.exception( f"Unable to import selected SENTRY_TRANSPORT - {config.SENTRY_TRANSPORT}" ) exit(-1) logger.setLevel(config.BOT_LOG_LEVEL) storage_plugin = get_storage_plugin(config) # init the botplugin manager botplugins_dir = path.join(config.BOT_DATA_DIR, PLUGINS_SUBDIR) if not path.exists(botplugins_dir): makedirs(botplugins_dir, mode=0o755) plugin_indexes = getattr(config, "BOT_PLUGIN_INDEXES", (PLUGIN_DEFAULT_INDEX,)) if isinstance(plugin_indexes, str): plugin_indexes = (plugin_indexes,) # Extra backend is expected to be a list type, convert string to list. extra_backend = getattr(config, "BOT_EXTRA_BACKEND_DIR", []) if isinstance(extra_backend, str): extra_backend = [extra_backend] backendpm = BackendPluginManager( config, "errbot.backends", backend_name, ErrBot, CORE_BACKENDS, extra_backend ) log.info(f"Found Backend plugin: {backendpm.plugin_info.name}") repo_manager = BotRepoManager(storage_plugin, botplugins_dir, plugin_indexes) try: > bot = backendpm.load_plugin() ../../../errbot/bootstrap.py:175: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = def load_plugin(self) -> Any: plugin_path = self.plugin_info.location.parent if plugin_path not in sys.path: # Cast pathlib.Path objects to string type for compatibility with sys.path sys.path.append(str(plugin_path)) plugin_classes = self.plugin_info.load_plugin_classes( self._base_module, self._base_class ) if len(plugin_classes) != 1: raise PluginNotFoundException( f"Found more that one plugin for {self._base_class}." ) _, clazz = plugin_classes[0] > return clazz(self._config) ../../../errbot/backend_plugin_manager.py:69: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = config = def __init__(self, config): config.BOT_LOG_LEVEL = logging.DEBUG config.CHATROOM_PRESENCE = ( "testroom", ) # we are testing with simple identfiers config.BOT_IDENTITY = { "username": "err" } # we are testing with simple identfiers self.bot_identifier = self.build_identifier("Err") # whatever > super().__init__(config) ../../../errbot/backends/test.py:238: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = bot_config = def __init__(self, bot_config): log.debug("ErrBot init.") super().__init__(bot_config) self.bot_config = bot_config self.prefix = bot_config.BOT_PREFIX if bot_config.BOT_ASYNC: self.thread_pool = ThreadPool(bot_config.BOT_ASYNC_POOLSIZE) log.debug( "created a thread pool of size %d.", bot_config.BOT_ASYNC_POOLSIZE ) self.commands = ( {} ) # the dynamically populated list of commands available on the bot self.re_commands = ( {} ) # the dynamically populated list of regex-based commands available on the bot self.command_filters = [] # the dynamically populated list of filters self.MSG_UNKNOWN_COMMAND = ( 'Unknown command: "%(command)s". ' 'Type "' + bot_config.BOT_PREFIX + 'help" for available commands.' ) if bot_config.BOT_ALT_PREFIX_CASEINSENSITIVE: self.bot_alt_prefixes = tuple( prefix.lower() for prefix in bot_config.BOT_ALT_PREFIXES ) else: self.bot_alt_prefixes = bot_config.BOT_ALT_PREFIXES self.repo_manager = None self.plugin_manager = None self.storage_plugin = None self._plugin_errors_during_startup = None > self.flow_executor = FlowExecutor(self) ../../../errbot/core.py:76: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = bot = def __init__(self, bot): self._lock = RLock() self.flow_roots = {} self.in_flight = [] > self._pool = ThreadPool(EXECUTOR_THREADS) ../../../errbot/flow.py:276: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , processes = 5 initializer = None, initargs = () def __init__(self, processes=None, initializer=None, initargs=()): > Pool.__init__(self, processes, initializer, initargs) /usr/lib/python3.11/multiprocessing/pool.py:930: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , processes = 5 initializer = None, initargs = (), maxtasksperchild = None, context = None def __init__(self, processes=None, initializer=None, initargs=(), maxtasksperchild=None, context=None): # Attributes initialized early to make sure that they exist in # __del__() if __init__() raises an exception self._pool = [] self._state = INIT self._ctx = context or get_context() self._setup_queues() self._taskqueue = queue.SimpleQueue() # The _change_notifier queue exist to wake up self._handle_workers() # when the cache (self._cache) is empty or when there is a change in # the _state variable of the thread that runs _handle_workers. self._change_notifier = self._ctx.SimpleQueue() self._cache = _PoolCache(notifier=self._change_notifier) self._maxtasksperchild = maxtasksperchild self._initializer = initializer self._initargs = initargs if processes is None: processes = os.cpu_count() or 1 if processes < 1: raise ValueError("Number of processes must be at least 1") if maxtasksperchild is not None: if not isinstance(maxtasksperchild, int) or maxtasksperchild <= 0: raise ValueError("maxtasksperchild must be a positive int or None") if initializer is not None and not callable(initializer): raise TypeError('initializer must be a callable') self._processes = processes try: > self._repopulate_pool() /usr/lib/python3.11/multiprocessing/pool.py:215: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = def _repopulate_pool(self): > return self._repopulate_pool_static(self._ctx, self.Process, self._processes, self._pool, self._inqueue, self._outqueue, self._initializer, self._initargs, self._maxtasksperchild, self._wrap_exception) /usr/lib/python3.11/multiprocessing/pool.py:306: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ctx = Process = , processes = 5, pool = [] inqueue = <_queue.SimpleQueue object at 0xb4816938> outqueue = <_queue.SimpleQueue object at 0xb4819b90>, initializer = None initargs = (), maxtasksperchild = None, wrap_exception = False @staticmethod def _repopulate_pool_static(ctx, Process, processes, pool, inqueue, outqueue, initializer, initargs, maxtasksperchild, wrap_exception): """Bring the number of pool processes up to the specified number, for use after reaping workers which have exited. """ for i in range(processes - len(pool)): w = Process(ctx, target=worker, args=(inqueue, outqueue, initializer, initargs, maxtasksperchild, wrap_exception)) w.name = w.name.replace('Process', 'PoolWorker') w.daemon = True > w.start() /usr/lib/python3.11/multiprocessing/pool.py:329: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = def start(self): if self._parent is not current_process(): raise RuntimeError( "Parent is {0!r} but current_process is {1!r}".format( self._parent, current_process())) self._start_called = True if hasattr(self._parent, '_children'): self._parent._children[self] = None > threading.Thread.start(self) /usr/lib/python3.11/multiprocessing/dummy/__init__.py:51: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = def start(self): """Start the thread's activity. It must be called at most once per thread object. It arranges for the object's run() method to be invoked in a separate thread of control. This method will raise a RuntimeError if called more than once on the same thread object. """ if not self._initialized: raise RuntimeError("thread.__init__() not called") if self._started.is_set(): raise RuntimeError("threads can only be started once") with _active_limbo_lock: _limbo[self] = self try: > _start_new_thread(self._bootstrap, ()) E RuntimeError: can't start new thread /usr/lib/python3.11/threading.py:957: RuntimeError During handling of the above exception, another exception occurred: request = > @pytest.fixture def testbot(request) -> TestBot: """ Pytest fixture to write tests against a fully functioning bot. For example, if you wanted to test the builtin `!about` command, you could write a test file with the following:: def test_about(testbot): testbot.push_message('!about') assert "Err version" in testbot.pop_message() It's possible to provide additional configuration to this fixture, by setting variables at module level or as class attributes (the latter taking precedence over the former). For example:: extra_plugin_dir = '/foo/bar' def test_about(testbot): testbot.push_message('!about') assert "Err version" in testbot.pop_message() ..or:: extra_plugin_dir = '/foo/bar' class Tests: # Wins over `extra_plugin_dir = '/foo/bar'` above extra_plugin_dir = '/foo/baz' def test_about(self, testbot): testbot.push_message('!about') assert "Err version" in testbot.pop_message() ..to load additional plugins from the directory `/foo/bar` or `/foo/baz` respectively. This works for the following items, which are passed to the constructor of :class:`~errbot.backends.test.TestBot`: * `extra_plugin_dir` * `loglevel` """ def on_finish(): bot.stop() # setup the logging to something digestable. logger = logging.getLogger("") logging.getLogger("MARKDOWN").setLevel( logging.ERROR ) # this one is way too verbose in debug logger.setLevel(logging.DEBUG) console_hdlr = logging.StreamHandler(sys.stdout) console_hdlr.setFormatter( logging.Formatter("%(levelname)-8s %(name)-25s %(message)s") ) logger.handlers = [] logger.addHandler(console_hdlr) kwargs = {} for attr, default in ( ("extra_plugin_dir", None), ("extra_config", None), ("loglevel", logging.DEBUG), ): if hasattr(request, "instance"): kwargs[attr] = getattr(request.instance, attr, None) if kwargs[attr] is None: kwargs[attr] = getattr(request.module, attr, default) bot = TestBot(**kwargs) > bot.start() ../../../errbot/backends/test.py:647: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ../../../errbot/backends/test.py:427: in start self._bot = setup_bot("Test", self.logger, self.bot_config) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ backend_name = 'Test', logger = config = restore = None def setup_bot(backend_name: str, logger, config, restore=None) -> ErrBot: # from here the environment is supposed to be set (daemon / non daemon, # config.py in the python path ) bot_config_defaults(config) if hasattr(config, "BOT_LOG_FORMATTER"): format_logs(formatter=config.BOT_LOG_FORMATTER) else: format_logs(theme_color=config.TEXT_COLOR_THEME) if config.BOT_LOG_FILE: hdlr = logging.FileHandler(config.BOT_LOG_FILE) hdlr.setFormatter( logging.Formatter("%(asctime)s %(levelname)-8s %(name)-25s %(message)s") ) logger.addHandler(hdlr) if hasattr(config, "BOT_LOG_SENTRY") and config.BOT_LOG_SENTRY: sentry_integrations = [] try: import sentry_sdk from sentry_sdk.integrations.logging import LoggingIntegration except ImportError: log.exception( "You have BOT_LOG_SENTRY enabled, but I couldn't import modules " "needed for Sentry integration. Did you install sentry-sdk? " "(See https://docs.sentry.io/platforms/python for installation instructions)" ) exit(-1) sentry_logging = LoggingIntegration( level=config.SENTRY_LOGLEVEL, event_level=config.SENTRY_EVENTLEVEL ) sentry_integrations.append(sentry_logging) if hasattr(config, "BOT_LOG_SENTRY_FLASK") and config.BOT_LOG_SENTRY_FLASK: try: from sentry_sdk.integrations.flask import FlaskIntegration except ImportError: log.exception( "You have BOT_LOG_SENTRY enabled, but I couldn't import modules " "needed for Sentry integration. Did you install sentry-sdk[flask]? " "(See https://docs.sentry.io/platforms/python/flask for installation instructions)" ) exit(-1) sentry_integrations.append(FlaskIntegration()) try: if hasattr(config, "SENTRY_TRANSPORT") and isinstance( config.SENTRY_TRANSPORT, tuple ): mod = importlib.import_module(config.SENTRY_TRANSPORT[1]) transport = getattr(mod, config.SENTRY_TRANSPORT[0]) sentry_sdk.init( dsn=config.SENTRY_DSN, integrations=sentry_integrations, transport=transport, ) else: sentry_sdk.init(dsn=config.SENTRY_DSN, integrations=sentry_integrations) except ImportError: log.exception( f"Unable to import selected SENTRY_TRANSPORT - {config.SENTRY_TRANSPORT}" ) exit(-1) logger.setLevel(config.BOT_LOG_LEVEL) storage_plugin = get_storage_plugin(config) # init the botplugin manager botplugins_dir = path.join(config.BOT_DATA_DIR, PLUGINS_SUBDIR) if not path.exists(botplugins_dir): makedirs(botplugins_dir, mode=0o755) plugin_indexes = getattr(config, "BOT_PLUGIN_INDEXES", (PLUGIN_DEFAULT_INDEX,)) if isinstance(plugin_indexes, str): plugin_indexes = (plugin_indexes,) # Extra backend is expected to be a list type, convert string to list. extra_backend = getattr(config, "BOT_EXTRA_BACKEND_DIR", []) if isinstance(extra_backend, str): extra_backend = [extra_backend] backendpm = BackendPluginManager( config, "errbot.backends", backend_name, ErrBot, CORE_BACKENDS, extra_backend ) log.info(f"Found Backend plugin: {backendpm.plugin_info.name}") repo_manager = BotRepoManager(storage_plugin, botplugins_dir, plugin_indexes) try: bot = backendpm.load_plugin() botpm = BotPluginManager( storage_plugin, config.BOT_EXTRA_PLUGIN_DIR, config.AUTOINSTALL_DEPS, getattr(config, "CORE_PLUGINS", None), lambda name, clazz: clazz(bot, name), getattr(config, "PLUGINS_CALLBACK_ORDER", (None,)), ) bot.attach_storage_plugin(storage_plugin) bot.attach_repo_manager(repo_manager) bot.attach_plugin_manager(botpm) bot.initialize_backend_storage() # restore the bot from the restore script if restore: # Prepare the context for the restore script if "repos" in bot: log.fatal("You cannot restore onto a non empty bot.") sys.exit(-1) log.info(f"**** RESTORING the bot from {restore}") restore_bot_from_backup(restore, bot=bot, log=log) print("Restore complete. You can restart the bot normally") sys.exit(0) errors = bot.plugin_manager.update_plugin_places( repo_manager.get_all_repos_paths() ) if errors: startup_errors = "\n".join(errors.values()) log.error("Some plugins failed to load:\n%s", startup_errors) bot._plugin_errors_during_startup = startup_errors return bot except Exception: log.exception("Unable to load or configure the backend.") > exit(-1) E SystemExit: -1 ../../../errbot/bootstrap.py:210: SystemExit ---------------------------- Captured stdout setup ----------------------------- INFO errbot.bootstrap Found Storage plugin: Memory. INFO errbot.bootstrap Found Backend plugin: Test DEBUG errbot.storage Opening storage 'repomgr' DEBUG errbot.core ErrBot init. DEBUG errbot.backends.base Backend init. DEBUG errbot.core created a thread pool of size 10. ERROR errbot.bootstrap Unable to load or configure the backend. Traceback (most recent call last): File "/build/reproducible-path/errbot-6.1.7+ds/errbot/bootstrap.py", line 175, in setup_bot bot = backendpm.load_plugin() ^^^^^^^^^^^^^^^^^^^^^^^ File "/build/reproducible-path/errbot-6.1.7+ds/errbot/backend_plugin_manager.py", line 69, in load_plugin return clazz(self._config) ^^^^^^^^^^^^^^^^^^^ File "/build/reproducible-path/errbot-6.1.7+ds/errbot/backends/test.py", line 238, in __init__ super().__init__(config) File "/build/reproducible-path/errbot-6.1.7+ds/errbot/core.py", line 76, in __init__ self.flow_executor = FlowExecutor(self) ^^^^^^^^^^^^^^^^^^ File "/build/reproducible-path/errbot-6.1.7+ds/errbot/flow.py", line 276, in __init__ self._pool = ThreadPool(EXECUTOR_THREADS) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/multiprocessing/pool.py", line 930, in __init__ Pool.__init__(self, processes, initializer, initargs) File "/usr/lib/python3.11/multiprocessing/pool.py", line 215, in __init__ self._repopulate_pool() File "/usr/lib/python3.11/multiprocessing/pool.py", line 306, in _repopulate_pool return self._repopulate_pool_static(self._ctx, self.Process, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/multiprocessing/pool.py", line 329, in _repopulate_pool_static w.start() File "/usr/lib/python3.11/multiprocessing/dummy/__init__.py", line 51, in start threading.Thread.start(self) File "/usr/lib/python3.11/threading.py", line 957, in start _start_new_thread(self._bootstrap, ()) RuntimeError: can't start new thread ---------------------------- Captured stderr setup ----------------------------- 2024-01-19 04:06:02,429 INFO errbot.bootstrap Found Storage plugin: Memory. 2024-01-19 04:06:02,432 INFO errbot.bootstrap Found Backend plugin: Test 2024-01-19 04:06:02,432 DEBUG errbot.storage Opening storage 'repomgr' 2024-01-19 04:06:02,433 DEBUG errbot.core ErrBot init. 2024-01-19 04:06:02,433 DEBUG errbot.backends.base Backend init. 2024-01-19 04:06:02,437 DEBUG errbot.core created a thread pool of size 10. 2024-01-19 04:06:02,438 ERROR errbot.bootstrap Unable to load or configure the backend. Traceback (most recent call last): File "/build/reproducible-path/errbot-6.1.7+ds/errbot/bootstrap.py", line 175, in setup_bot bot = backendpm.load_plugin() ^^^^^^^^^^^^^^^^^^^^^^^ File "/build/reproducible-path/errbot-6.1.7+ds/errbot/backend_plugin_manager.py", line 69, in load_plugin return clazz(self._config) ^^^^^^^^^^^^^^^^^^^ File "/build/reproducible-path/errbot-6.1.7+ds/errbot/backends/test.py", line 238, in __init__ super().__init__(config) File "/build/reproducible-path/errbot-6.1.7+ds/errbot/core.py", line 76, in __init__ self.flow_executor = FlowExecutor(self) ^^^^^^^^^^^^^^^^^^ File "/build/reproducible-path/errbot-6.1.7+ds/errbot/flow.py", line 276, in __init__ self._pool = ThreadPool(EXECUTOR_THREADS) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/multiprocessing/pool.py", line 930, in __init__ Pool.__init__(self, processes, initializer, initargs) File "/usr/lib/python3.11/multiprocessing/pool.py", line 215, in __init__ self._repopulate_pool() File "/usr/lib/python3.11/multiprocessing/pool.py", line 306, in _repopulate_pool return self._repopulate_pool_static(self._ctx, self.Process, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/multiprocessing/pool.py", line 329, in _repopulate_pool_static w.start() File "/usr/lib/python3.11/multiprocessing/dummy/__init__.py", line 51, in start threading.Thread.start(self) File "/usr/lib/python3.11/threading.py", line 957, in start _start_new_thread(self._bootstrap, ()) RuntimeError: can't start new thread ____________________ ERROR at setup of test_flow_only_help _____________________ backend_name = 'Test', logger = config = restore = None def setup_bot(backend_name: str, logger, config, restore=None) -> ErrBot: # from here the environment is supposed to be set (daemon / non daemon, # config.py in the python path ) bot_config_defaults(config) if hasattr(config, "BOT_LOG_FORMATTER"): format_logs(formatter=config.BOT_LOG_FORMATTER) else: format_logs(theme_color=config.TEXT_COLOR_THEME) if config.BOT_LOG_FILE: hdlr = logging.FileHandler(config.BOT_LOG_FILE) hdlr.setFormatter( logging.Formatter("%(asctime)s %(levelname)-8s %(name)-25s %(message)s") ) logger.addHandler(hdlr) if hasattr(config, "BOT_LOG_SENTRY") and config.BOT_LOG_SENTRY: sentry_integrations = [] try: import sentry_sdk from sentry_sdk.integrations.logging import LoggingIntegration except ImportError: log.exception( "You have BOT_LOG_SENTRY enabled, but I couldn't import modules " "needed for Sentry integration. Did you install sentry-sdk? " "(See https://docs.sentry.io/platforms/python for installation instructions)" ) exit(-1) sentry_logging = LoggingIntegration( level=config.SENTRY_LOGLEVEL, event_level=config.SENTRY_EVENTLEVEL ) sentry_integrations.append(sentry_logging) if hasattr(config, "BOT_LOG_SENTRY_FLASK") and config.BOT_LOG_SENTRY_FLASK: try: from sentry_sdk.integrations.flask import FlaskIntegration except ImportError: log.exception( "You have BOT_LOG_SENTRY enabled, but I couldn't import modules " "needed for Sentry integration. Did you install sentry-sdk[flask]? " "(See https://docs.sentry.io/platforms/python/flask for installation instructions)" ) exit(-1) sentry_integrations.append(FlaskIntegration()) try: if hasattr(config, "SENTRY_TRANSPORT") and isinstance( config.SENTRY_TRANSPORT, tuple ): mod = importlib.import_module(config.SENTRY_TRANSPORT[1]) transport = getattr(mod, config.SENTRY_TRANSPORT[0]) sentry_sdk.init( dsn=config.SENTRY_DSN, integrations=sentry_integrations, transport=transport, ) else: sentry_sdk.init(dsn=config.SENTRY_DSN, integrations=sentry_integrations) except ImportError: log.exception( f"Unable to import selected SENTRY_TRANSPORT - {config.SENTRY_TRANSPORT}" ) exit(-1) logger.setLevel(config.BOT_LOG_LEVEL) storage_plugin = get_storage_plugin(config) # init the botplugin manager botplugins_dir = path.join(config.BOT_DATA_DIR, PLUGINS_SUBDIR) if not path.exists(botplugins_dir): makedirs(botplugins_dir, mode=0o755) plugin_indexes = getattr(config, "BOT_PLUGIN_INDEXES", (PLUGIN_DEFAULT_INDEX,)) if isinstance(plugin_indexes, str): plugin_indexes = (plugin_indexes,) # Extra backend is expected to be a list type, convert string to list. extra_backend = getattr(config, "BOT_EXTRA_BACKEND_DIR", []) if isinstance(extra_backend, str): extra_backend = [extra_backend] backendpm = BackendPluginManager( config, "errbot.backends", backend_name, ErrBot, CORE_BACKENDS, extra_backend ) log.info(f"Found Backend plugin: {backendpm.plugin_info.name}") repo_manager = BotRepoManager(storage_plugin, botplugins_dir, plugin_indexes) try: > bot = backendpm.load_plugin() ../../../errbot/bootstrap.py:175: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = def load_plugin(self) -> Any: plugin_path = self.plugin_info.location.parent if plugin_path not in sys.path: # Cast pathlib.Path objects to string type for compatibility with sys.path sys.path.append(str(plugin_path)) plugin_classes = self.plugin_info.load_plugin_classes( self._base_module, self._base_class ) if len(plugin_classes) != 1: raise PluginNotFoundException( f"Found more that one plugin for {self._base_class}." ) _, clazz = plugin_classes[0] > return clazz(self._config) ../../../errbot/backend_plugin_manager.py:69: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = config = def __init__(self, config): config.BOT_LOG_LEVEL = logging.DEBUG config.CHATROOM_PRESENCE = ( "testroom", ) # we are testing with simple identfiers config.BOT_IDENTITY = { "username": "err" } # we are testing with simple identfiers self.bot_identifier = self.build_identifier("Err") # whatever > super().__init__(config) ../../../errbot/backends/test.py:238: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = bot_config = def __init__(self, bot_config): log.debug("ErrBot init.") super().__init__(bot_config) self.bot_config = bot_config self.prefix = bot_config.BOT_PREFIX if bot_config.BOT_ASYNC: > self.thread_pool = ThreadPool(bot_config.BOT_ASYNC_POOLSIZE) ../../../errbot/core.py:51: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , processes = 10 initializer = None, initargs = () def __init__(self, processes=None, initializer=None, initargs=()): > Pool.__init__(self, processes, initializer, initargs) /usr/lib/python3.11/multiprocessing/pool.py:930: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , processes = 10 initializer = None, initargs = (), maxtasksperchild = None, context = None def __init__(self, processes=None, initializer=None, initargs=(), maxtasksperchild=None, context=None): # Attributes initialized early to make sure that they exist in # __del__() if __init__() raises an exception self._pool = [] self._state = INIT self._ctx = context or get_context() self._setup_queues() self._taskqueue = queue.SimpleQueue() # The _change_notifier queue exist to wake up self._handle_workers() # when the cache (self._cache) is empty or when there is a change in # the _state variable of the thread that runs _handle_workers. self._change_notifier = self._ctx.SimpleQueue() self._cache = _PoolCache(notifier=self._change_notifier) self._maxtasksperchild = maxtasksperchild self._initializer = initializer self._initargs = initargs if processes is None: processes = os.cpu_count() or 1 if processes < 1: raise ValueError("Number of processes must be at least 1") if maxtasksperchild is not None: if not isinstance(maxtasksperchild, int) or maxtasksperchild <= 0: raise ValueError("maxtasksperchild must be a positive int or None") if initializer is not None and not callable(initializer): raise TypeError('initializer must be a callable') self._processes = processes try: self._repopulate_pool() except Exception: for p in self._pool: if p.exitcode is None: p.terminate() for p in self._pool: p.join() raise sentinels = self._get_sentinels() self._worker_handler = threading.Thread( target=Pool._handle_workers, args=(self._cache, self._taskqueue, self._ctx, self.Process, self._processes, self._pool, self._inqueue, self._outqueue, self._initializer, self._initargs, self._maxtasksperchild, self._wrap_exception, sentinels, self._change_notifier) ) self._worker_handler.daemon = True self._worker_handler._state = RUN self._worker_handler.start() self._task_handler = threading.Thread( target=Pool._handle_tasks, args=(self._taskqueue, self._quick_put, self._outqueue, self._pool, self._cache) ) self._task_handler.daemon = True self._task_handler._state = RUN self._task_handler.start() self._result_handler = threading.Thread( target=Pool._handle_results, args=(self._outqueue, self._quick_get, self._cache) ) self._result_handler.daemon = True self._result_handler._state = RUN > self._result_handler.start() /usr/lib/python3.11/multiprocessing/pool.py:253: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = def start(self): """Start the thread's activity. It must be called at most once per thread object. It arranges for the object's run() method to be invoked in a separate thread of control. This method will raise a RuntimeError if called more than once on the same thread object. """ if not self._initialized: raise RuntimeError("thread.__init__() not called") if self._started.is_set(): raise RuntimeError("threads can only be started once") with _active_limbo_lock: _limbo[self] = self try: > _start_new_thread(self._bootstrap, ()) E RuntimeError: can't start new thread /usr/lib/python3.11/threading.py:957: RuntimeError During handling of the above exception, another exception occurred: request = > @pytest.fixture def testbot(request) -> TestBot: """ Pytest fixture to write tests against a fully functioning bot. For example, if you wanted to test the builtin `!about` command, you could write a test file with the following:: def test_about(testbot): testbot.push_message('!about') assert "Err version" in testbot.pop_message() It's possible to provide additional configuration to this fixture, by setting variables at module level or as class attributes (the latter taking precedence over the former). For example:: extra_plugin_dir = '/foo/bar' def test_about(testbot): testbot.push_message('!about') assert "Err version" in testbot.pop_message() ..or:: extra_plugin_dir = '/foo/bar' class Tests: # Wins over `extra_plugin_dir = '/foo/bar'` above extra_plugin_dir = '/foo/baz' def test_about(self, testbot): testbot.push_message('!about') assert "Err version" in testbot.pop_message() ..to load additional plugins from the directory `/foo/bar` or `/foo/baz` respectively. This works for the following items, which are passed to the constructor of :class:`~errbot.backends.test.TestBot`: * `extra_plugin_dir` * `loglevel` """ def on_finish(): bot.stop() # setup the logging to something digestable. logger = logging.getLogger("") logging.getLogger("MARKDOWN").setLevel( logging.ERROR ) # this one is way too verbose in debug logger.setLevel(logging.DEBUG) console_hdlr = logging.StreamHandler(sys.stdout) console_hdlr.setFormatter( logging.Formatter("%(levelname)-8s %(name)-25s %(message)s") ) logger.handlers = [] logger.addHandler(console_hdlr) kwargs = {} for attr, default in ( ("extra_plugin_dir", None), ("extra_config", None), ("loglevel", logging.DEBUG), ): if hasattr(request, "instance"): kwargs[attr] = getattr(request.instance, attr, None) if kwargs[attr] is None: kwargs[attr] = getattr(request.module, attr, default) bot = TestBot(**kwargs) > bot.start() ../../../errbot/backends/test.py:647: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ../../../errbot/backends/test.py:427: in start self._bot = setup_bot("Test", self.logger, self.bot_config) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ backend_name = 'Test', logger = config = restore = None def setup_bot(backend_name: str, logger, config, restore=None) -> ErrBot: # from here the environment is supposed to be set (daemon / non daemon, # config.py in the python path ) bot_config_defaults(config) if hasattr(config, "BOT_LOG_FORMATTER"): format_logs(formatter=config.BOT_LOG_FORMATTER) else: format_logs(theme_color=config.TEXT_COLOR_THEME) if config.BOT_LOG_FILE: hdlr = logging.FileHandler(config.BOT_LOG_FILE) hdlr.setFormatter( logging.Formatter("%(asctime)s %(levelname)-8s %(name)-25s %(message)s") ) logger.addHandler(hdlr) if hasattr(config, "BOT_LOG_SENTRY") and config.BOT_LOG_SENTRY: sentry_integrations = [] try: import sentry_sdk from sentry_sdk.integrations.logging import LoggingIntegration except ImportError: log.exception( "You have BOT_LOG_SENTRY enabled, but I couldn't import modules " "needed for Sentry integration. Did you install sentry-sdk? " "(See https://docs.sentry.io/platforms/python for installation instructions)" ) exit(-1) sentry_logging = LoggingIntegration( level=config.SENTRY_LOGLEVEL, event_level=config.SENTRY_EVENTLEVEL ) sentry_integrations.append(sentry_logging) if hasattr(config, "BOT_LOG_SENTRY_FLASK") and config.BOT_LOG_SENTRY_FLASK: try: from sentry_sdk.integrations.flask import FlaskIntegration except ImportError: log.exception( "You have BOT_LOG_SENTRY enabled, but I couldn't import modules " "needed for Sentry integration. Did you install sentry-sdk[flask]? " "(See https://docs.sentry.io/platforms/python/flask for installation instructions)" ) exit(-1) sentry_integrations.append(FlaskIntegration()) try: if hasattr(config, "SENTRY_TRANSPORT") and isinstance( config.SENTRY_TRANSPORT, tuple ): mod = importlib.import_module(config.SENTRY_TRANSPORT[1]) transport = getattr(mod, config.SENTRY_TRANSPORT[0]) sentry_sdk.init( dsn=config.SENTRY_DSN, integrations=sentry_integrations, transport=transport, ) else: sentry_sdk.init(dsn=config.SENTRY_DSN, integrations=sentry_integrations) except ImportError: log.exception( f"Unable to import selected SENTRY_TRANSPORT - {config.SENTRY_TRANSPORT}" ) exit(-1) logger.setLevel(config.BOT_LOG_LEVEL) storage_plugin = get_storage_plugin(config) # init the botplugin manager botplugins_dir = path.join(config.BOT_DATA_DIR, PLUGINS_SUBDIR) if not path.exists(botplugins_dir): makedirs(botplugins_dir, mode=0o755) plugin_indexes = getattr(config, "BOT_PLUGIN_INDEXES", (PLUGIN_DEFAULT_INDEX,)) if isinstance(plugin_indexes, str): plugin_indexes = (plugin_indexes,) # Extra backend is expected to be a list type, convert string to list. extra_backend = getattr(config, "BOT_EXTRA_BACKEND_DIR", []) if isinstance(extra_backend, str): extra_backend = [extra_backend] backendpm = BackendPluginManager( config, "errbot.backends", backend_name, ErrBot, CORE_BACKENDS, extra_backend ) log.info(f"Found Backend plugin: {backendpm.plugin_info.name}") repo_manager = BotRepoManager(storage_plugin, botplugins_dir, plugin_indexes) try: bot = backendpm.load_plugin() botpm = BotPluginManager( storage_plugin, config.BOT_EXTRA_PLUGIN_DIR, config.AUTOINSTALL_DEPS, getattr(config, "CORE_PLUGINS", None), lambda name, clazz: clazz(bot, name), getattr(config, "PLUGINS_CALLBACK_ORDER", (None,)), ) bot.attach_storage_plugin(storage_plugin) bot.attach_repo_manager(repo_manager) bot.attach_plugin_manager(botpm) bot.initialize_backend_storage() # restore the bot from the restore script if restore: # Prepare the context for the restore script if "repos" in bot: log.fatal("You cannot restore onto a non empty bot.") sys.exit(-1) log.info(f"**** RESTORING the bot from {restore}") restore_bot_from_backup(restore, bot=bot, log=log) print("Restore complete. You can restart the bot normally") sys.exit(0) errors = bot.plugin_manager.update_plugin_places( repo_manager.get_all_repos_paths() ) if errors: startup_errors = "\n".join(errors.values()) log.error("Some plugins failed to load:\n%s", startup_errors) bot._plugin_errors_during_startup = startup_errors return bot except Exception: log.exception("Unable to load or configure the backend.") > exit(-1) E SystemExit: -1 ../../../errbot/bootstrap.py:210: SystemExit ---------------------------- Captured stdout setup ----------------------------- INFO errbot.bootstrap Found Storage plugin: Memory. INFO errbot.bootstrap Found Backend plugin: Test DEBUG errbot.storage Opening storage 'repomgr' DEBUG errbot.core ErrBot init. DEBUG errbot.backends.base Backend init. ERROR errbot.bootstrap Unable to load or configure the backend. Traceback (most recent call last): File "/build/reproducible-path/errbot-6.1.7+ds/errbot/bootstrap.py", line 175, in setup_bot bot = backendpm.load_plugin() ^^^^^^^^^^^^^^^^^^^^^^^ File "/build/reproducible-path/errbot-6.1.7+ds/errbot/backend_plugin_manager.py", line 69, in load_plugin return clazz(self._config) ^^^^^^^^^^^^^^^^^^^ File "/build/reproducible-path/errbot-6.1.7+ds/errbot/backends/test.py", line 238, in __init__ super().__init__(config) File "/build/reproducible-path/errbot-6.1.7+ds/errbot/core.py", line 51, in __init__ self.thread_pool = ThreadPool(bot_config.BOT_ASYNC_POOLSIZE) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/multiprocessing/pool.py", line 930, in __init__ Pool.__init__(self, processes, initializer, initargs) File "/usr/lib/python3.11/multiprocessing/pool.py", line 253, in __init__ self._result_handler.start() File "/usr/lib/python3.11/threading.py", line 957, in start _start_new_thread(self._bootstrap, ()) RuntimeError: can't start new thread ---------------------------- Captured stderr setup ----------------------------- 2024-01-19 04:06:06,746 INFO errbot.bootstrap Found Storage plugin: Memory. 2024-01-19 04:06:06,748 INFO errbot.bootstrap Found Backend plugin: Test 2024-01-19 04:06:06,748 DEBUG errbot.storage Opening storage 'repomgr' 2024-01-19 04:06:06,750 DEBUG errbot.core ErrBot init. 2024-01-19 04:06:06,750 DEBUG errbot.backends.base Backend init. 2024-01-19 04:06:06,753 ERROR errbot.bootstrap Unable to load or configure the backend. Traceback (most recent call last): File "/build/reproducible-path/errbot-6.1.7+ds/errbot/bootstrap.py", line 175, in setup_bot bot = backendpm.load_plugin() ^^^^^^^^^^^^^^^^^^^^^^^ File "/build/reproducible-path/errbot-6.1.7+ds/errbot/backend_plugin_manager.py", line 69, in load_plugin return clazz(self._config) ^^^^^^^^^^^^^^^^^^^ File "/build/reproducible-path/errbot-6.1.7+ds/errbot/backends/test.py", line 238, in __init__ super().__init__(config) File "/build/reproducible-path/errbot-6.1.7+ds/errbot/core.py", line 51, in __init__ self.thread_pool = ThreadPool(bot_config.BOT_ASYNC_POOLSIZE) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/multiprocessing/pool.py", line 930, in __init__ Pool.__init__(self, processes, initializer, initargs) File "/usr/lib/python3.11/multiprocessing/pool.py", line 253, in __init__ self._result_handler.start() File "/usr/lib/python3.11/threading.py", line 957, in start _start_new_thread(self._bootstrap, ()) RuntimeError: can't start new thread _________________________ ERROR at setup of test_first _________________________ request = > @pytest.fixture def testbot(request) -> TestBot: """ Pytest fixture to write tests against a fully functioning bot. For example, if you wanted to test the builtin `!about` command, you could write a test file with the following:: def test_about(testbot): testbot.push_message('!about') assert "Err version" in testbot.pop_message() It's possible to provide additional configuration to this fixture, by setting variables at module level or as class attributes (the latter taking precedence over the former). For example:: extra_plugin_dir = '/foo/bar' def test_about(testbot): testbot.push_message('!about') assert "Err version" in testbot.pop_message() ..or:: extra_plugin_dir = '/foo/bar' class Tests: # Wins over `extra_plugin_dir = '/foo/bar'` above extra_plugin_dir = '/foo/baz' def test_about(self, testbot): testbot.push_message('!about') assert "Err version" in testbot.pop_message() ..to load additional plugins from the directory `/foo/bar` or `/foo/baz` respectively. This works for the following items, which are passed to the constructor of :class:`~errbot.backends.test.TestBot`: * `extra_plugin_dir` * `loglevel` """ def on_finish(): bot.stop() # setup the logging to something digestable. logger = logging.getLogger("") logging.getLogger("MARKDOWN").setLevel( logging.ERROR ) # this one is way too verbose in debug logger.setLevel(logging.DEBUG) console_hdlr = logging.StreamHandler(sys.stdout) console_hdlr.setFormatter( logging.Formatter("%(levelname)-8s %(name)-25s %(message)s") ) logger.handlers = [] logger.addHandler(console_hdlr) kwargs = {} for attr, default in ( ("extra_plugin_dir", None), ("extra_config", None), ("loglevel", logging.DEBUG), ): if hasattr(request, "instance"): kwargs[attr] = getattr(request.instance, attr, None) if kwargs[attr] is None: kwargs[attr] = getattr(request.module, attr, default) bot = TestBot(**kwargs) > bot.start() ../../../errbot/backends/test.py:647: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ../../../errbot/backends/test.py:432: in start self.bot_thread.start() _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = def start(self): """Start the thread's activity. It must be called at most once per thread object. It arranges for the object's run() method to be invoked in a separate thread of control. This method will raise a RuntimeError if called more than once on the same thread object. """ if not self._initialized: raise RuntimeError("thread.__init__() not called") if self._started.is_set(): raise RuntimeError("threads can only be started once") with _active_limbo_lock: _limbo[self] = self try: > _start_new_thread(self._bootstrap, ()) E RuntimeError: can't start new thread /usr/lib/python3.11/threading.py:957: RuntimeError ---------------------------- Captured stdout setup ----------------------------- INFO errbot.bootstrap Found Storage plugin: Memory. INFO errbot.bootstrap Found Backend plugin: Test DEBUG errbot.storage Opening storage 'repomgr' DEBUG errbot.core ErrBot init. DEBUG errbot.backends.base Backend init. DEBUG errbot.core created a thread pool of size 10. DEBUG errbot.storage Opening storage 'core' DEBUG errbot.core Initializing backend storage DEBUG errbot.storage Opening storage 'test_backend' DEBUG errbot.plugin_manager New entries added to sys.path: DEBUG errbot.plugin_manager /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/tests/multi_plugin DEBUG errbot.plugins.ChatRoom Logger for plugin initialized... DEBUG errbot.plugins.Help Logger for plugin initialized... DEBUG errbot.plugins.Utils Logger for plugin initialized... DEBUG errbot.plugins.Health Logger for plugin initialized... DEBUG errbot.plugins.VersionChecker Logger for plugin initialized... DEBUG errbot.plugins.Flows Logger for plugin initialized... DEBUG errbot.plugins.Plugins Logger for plugin initialized... DEBUG errbot.plugins.TextCmds Logger for plugin initialized... DEBUG errbot.plugins.CommandNotFoundFilter Logger for plugin initialized... DEBUG errbot.plugins.Backup Logger for plugin initialized... INFO errbot webhooks: Flag to bind /echo to echo DEBUG errbot.plugins.Webserver Logger for plugin initialized... DEBUG errbot.plugins.ACLs Logger for plugin initialized... DEBUG errbot.plugins.Multi2 Logger for plugin initialized... DEBUG errbot.plugins.Multi1 Logger for plugin initialized... ---------------------------- Captured stderr setup ----------------------------- 2024-01-19 04:06:08,662 INFO errbot.bootstrap Found Storage plugin: Memory. 2024-01-19 04:06:08,664 INFO errbot.bootstrap Found Backend plugin: Test 2024-01-19 04:06:08,664 DEBUG errbot.storage Opening storage 'repomgr' 2024-01-19 04:06:08,666 DEBUG errbot.core ErrBot init. 2024-01-19 04:06:08,666 DEBUG errbot.backends.base Backend init. 2024-01-19 04:06:08,669 DEBUG errbot.core created a thread pool of size 10. 2024-01-19 04:06:08,672 DEBUG errbot.storage Opening storage 'core' 2024-01-19 04:06:08,672 DEBUG errbot.core Initializing backend storage 2024-01-19 04:06:08,672 DEBUG errbot.storage Opening storage 'test_backend' 2024-01-19 04:06:08,674 DEBUG errbot.plugin_manager New entries added to sys.path: 2024-01-19 04:06:08,674 DEBUG errbot.plugin_manager /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build/tests/multi_plugin 2024-01-19 04:06:08,675 DEBUG errbot.plugins.ChatRoom Logger for plugin initialized... 2024-01-19 04:06:08,676 DEBUG errbot.plugins.Help Logger for plugin initialized... 2024-01-19 04:06:08,677 DEBUG errbot.plugins.Utils Logger for plugin initialized... 2024-01-19 04:06:08,679 DEBUG errbot.plugins.Health Logger for plugin initialized... 2024-01-19 04:06:08,680 DEBUG errbot.plugins.VersionChecker Logger for plugin initialized... 2024-01-19 04:06:08,683 DEBUG errbot.plugins.Flows Logger for plugin initialized... 2024-01-19 04:06:08,683 DEBUG errbot.plugins.Plugins Logger for plugin initialized... 2024-01-19 04:06:08,684 DEBUG errbot.plugins.TextCmds Logger for plugin initialized... 2024-01-19 04:06:08,685 DEBUG errbot.plugins.CommandNotFoundFilter Logger for plugin initialized... 2024-01-19 04:06:08,685 DEBUG errbot.plugins.Backup Logger for plugin initialized... 2024-01-19 04:06:08,686 INFO errbot webhooks: Flag to bind /echo to echo 2024-01-19 04:06:08,687 DEBUG errbot.plugins.Webserver Logger for plugin initialized... 2024-01-19 04:06:08,687 DEBUG errbot.plugins.ACLs Logger for plugin initialized... 2024-01-19 04:06:08,689 DEBUG errbot.plugins.Multi2 Logger for plugin initialized... 2024-01-19 04:06:08,689 DEBUG errbot.plugins.Multi1 Logger for plugin initialized... =============================== warnings summary =============================== .pybuild/cpython3_3.11_errbot/build/tests/commands_test.py::test_root_help /usr/lib/python3/dist-packages/webob/compat.py:5: DeprecationWarning: 'cgi' is deprecated and slated for removal in Python 3.13 from cgi import parse_header .pybuild/cpython3_3.11_errbot/build/tests/commands_test.py: 27 warnings .pybuild/cpython3_3.11_errbot/build/tests/core_plugins_test.py: 3 warnings .pybuild/cpython3_3.11_errbot/build/tests/core_test.py: 2 warnings .pybuild/cpython3_3.11_errbot/build/tests/dependencies_test.py: 6 warnings .pybuild/cpython3_3.11_errbot/build/tests/dynaplug_test.py: 5 warnings .pybuild/cpython3_3.11_errbot/build/tests/flow_e2e_test.py: 12 warnings .pybuild/cpython3_3.11_errbot/build/tests/i18n_test.py: 4 warnings .pybuild/cpython3_3.11_errbot/build/tests/link_test.py: 1 warning .pybuild/cpython3_3.11_errbot/build/tests/matchall_test.py: 2 warnings .pybuild/cpython3_3.11_errbot/build/tests/mention_test.py: 3 warnings .pybuild/cpython3_3.11_errbot/build/tests/muc_test.py: 6 warnings .pybuild/cpython3_3.11_errbot/build/tests/multi_plugin_test.py: 2 warnings .pybuild/cpython3_3.11_errbot/build/tests/plugin_config_fail_test.py: 1 warning .pybuild/cpython3_3.11_errbot/build/tests/plugin_config_test.py: 1 warning .pybuild/cpython3_3.11_errbot/build/tests/poller_test.py: 2 warnings .pybuild/cpython3_3.11_errbot/build/tests/syntax_test.py: 4 warnings .pybuild/cpython3_3.11_errbot/build/tests/templates_test.py: 5 warnings .pybuild/cpython3_3.11_errbot/build/tests/webhooks_test.py: 15 warnings /build/reproducible-path/errbot-6.1.7+ds/errbot/backends/test.py:431: DeprecationWarning: setDaemon() is deprecated, set the daemon attribute instead self.bot_thread.setDaemon(True) .pybuild/cpython3_3.11_errbot/build/tests/poller_test.py::test_delayed_hello .pybuild/cpython3_3.11_errbot/build/tests/poller_test.py::test_delayed_hello_loop .pybuild/cpython3_3.11_errbot/build/tests/poller_test.py::test_delayed_hello_loop /build/reproducible-path/errbot-6.1.7+ds/errbot/botplugin.py:296: DeprecationWarning: setName() is deprecated, set the name attribute instead t.setName(f"Poller thread for {type(method.__self__).__name__}") .pybuild/cpython3_3.11_errbot/build/tests/poller_test.py::test_delayed_hello .pybuild/cpython3_3.11_errbot/build/tests/poller_test.py::test_delayed_hello_loop .pybuild/cpython3_3.11_errbot/build/tests/poller_test.py::test_delayed_hello_loop /build/reproducible-path/errbot-6.1.7+ds/errbot/botplugin.py:297: DeprecationWarning: setDaemon() is deprecated, set the daemon attribute instead t.setDaemon(True) # so it is not locking on exit -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ ERROR tests/commands_test.py::test_simple_match - SystemExit: -1 ERROR tests/flow_e2e_test.py::test_flow_only_help - SystemExit: -1 ERROR tests/multi_plugin_test.py::test_first - RuntimeError: can't start new ... ========== 199 passed, 6 deselected, 108 warnings, 3 errors in 34.74s ========== Exception ignored in: Traceback (most recent call last): File "/usr/lib/python3.11/multiprocessing/pool.py", line 271, in __del__ self._change_notifier.put(None) File "/usr/lib/python3.11/multiprocessing/queues.py", line 377, in put self._writer.send_bytes(obj) File "/usr/lib/python3.11/multiprocessing/connection.py", line 199, in send_bytes self._send_bytes(m[offset:offset + size]) File "/usr/lib/python3.11/multiprocessing/connection.py", line 410, in _send_bytes self._send(header + buf) File "/usr/lib/python3.11/multiprocessing/connection.py", line 367, in _send n = write(self._handle, buf) ^^^^^^^^^^^^^^^^^^^^^^^^ OSError: [Errno 9] Bad file descriptor Exception ignored in: Traceback (most recent call last): File "/usr/lib/python3.11/multiprocessing/pool.py", line 271, in __del__ self._change_notifier.put(None) File "/usr/lib/python3.11/multiprocessing/queues.py", line 377, in put self._writer.send_bytes(obj) File "/usr/lib/python3.11/multiprocessing/connection.py", line 199, in send_bytes self._send_bytes(m[offset:offset + size]) File "/usr/lib/python3.11/multiprocessing/connection.py", line 410, in _send_bytes self._send(header + buf) File "/usr/lib/python3.11/multiprocessing/connection.py", line 367, in _send n = write(self._handle, buf) ^^^^^^^^^^^^^^^^^^^^^^^^ OSError: [Errno 9] Bad file descriptor Exception ignored in: Traceback (most recent call last): File "/usr/lib/python3.11/multiprocessing/pool.py", line 271, in __del__ self._change_notifier.put(None) File "/usr/lib/python3.11/multiprocessing/queues.py", line 377, in put self._writer.send_bytes(obj) File "/usr/lib/python3.11/multiprocessing/connection.py", line 199, in send_bytes self._send_bytes(m[offset:offset + size]) File "/usr/lib/python3.11/multiprocessing/connection.py", line 410, in _send_bytes self._send(header + buf) File "/usr/lib/python3.11/multiprocessing/connection.py", line 367, in _send n = write(self._handle, buf) ^^^^^^^^^^^^^^^^^^^^^^^^ OSError: [Errno 9] Bad file descriptor Exception ignored in: Traceback (most recent call last): File "/usr/lib/python3.11/multiprocessing/pool.py", line 271, in __del__ self._change_notifier.put(None) File "/usr/lib/python3.11/multiprocessing/queues.py", line 377, in put self._writer.send_bytes(obj) File "/usr/lib/python3.11/multiprocessing/connection.py", line 199, in send_bytes self._send_bytes(m[offset:offset + size]) File "/usr/lib/python3.11/multiprocessing/connection.py", line 410, in _send_bytes self._send(header + buf) File "/usr/lib/python3.11/multiprocessing/connection.py", line 367, in _send n = write(self._handle, buf) ^^^^^^^^^^^^^^^^^^^^^^^^ OSError: [Errno 9] Bad file descriptor Exception ignored in: Traceback (most recent call last): File "/usr/lib/python3.11/multiprocessing/pool.py", line 271, in __del__ self._change_notifier.put(None) File "/usr/lib/python3.11/multiprocessing/queues.py", line 377, in put self._writer.send_bytes(obj) File "/usr/lib/python3.11/multiprocessing/connection.py", line 199, in send_bytes self._send_bytes(m[offset:offset + size]) File "/usr/lib/python3.11/multiprocessing/connection.py", line 410, in _send_bytes self._send(header + buf) File "/usr/lib/python3.11/multiprocessing/connection.py", line 367, in _send n = write(self._handle, buf) ^^^^^^^^^^^^^^^^^^^^^^^^ OSError: [Errno 9] Bad file descriptor Exception ignored in: Traceback (most recent call last): File "/usr/lib/python3.11/multiprocessing/pool.py", line 271, in __del__ self._change_notifier.put(None) File "/usr/lib/python3.11/multiprocessing/queues.py", line 377, in put self._writer.send_bytes(obj) File "/usr/lib/python3.11/multiprocessing/connection.py", line 199, in send_bytes self._send_bytes(m[offset:offset + size]) File "/usr/lib/python3.11/multiprocessing/connection.py", line 410, in _send_bytes self._send(header + buf) File "/usr/lib/python3.11/multiprocessing/connection.py", line 367, in _send n = write(self._handle, buf) ^^^^^^^^^^^^^^^^^^^^^^^^ OSError: [Errno 9] Bad file descriptor Exception ignored in: Traceback (most recent call last): File "/usr/lib/python3.11/multiprocessing/pool.py", line 271, in __del__ self._change_notifier.put(None) File "/usr/lib/python3.11/multiprocessing/queues.py", line 377, in put self._writer.send_bytes(obj) File "/usr/lib/python3.11/multiprocessing/connection.py", line 199, in send_bytes self._send_bytes(m[offset:offset + size]) File "/usr/lib/python3.11/multiprocessing/connection.py", line 410, in _send_bytes self._send(header + buf) File "/usr/lib/python3.11/multiprocessing/connection.py", line 367, in _send n = write(self._handle, buf) ^^^^^^^^^^^^^^^^^^^^^^^^ OSError: [Errno 9] Bad file descriptor Exception ignored in: Traceback (most recent call last): File "/usr/lib/python3.11/multiprocessing/pool.py", line 271, in __del__ self._change_notifier.put(None) File "/usr/lib/python3.11/multiprocessing/queues.py", line 377, in put self._writer.send_bytes(obj) File "/usr/lib/python3.11/multiprocessing/connection.py", line 199, in send_bytes self._send_bytes(m[offset:offset + size]) File "/usr/lib/python3.11/multiprocessing/connection.py", line 410, in _send_bytes self._send(header + buf) File "/usr/lib/python3.11/multiprocessing/connection.py", line 367, in _send n = write(self._handle, buf) ^^^^^^^^^^^^^^^^^^^^^^^^ OSError: [Errno 9] Bad file descriptor Exception ignored in: Traceback (most recent call last): File "/usr/lib/python3.11/multiprocessing/pool.py", line 271, in __del__ self._change_notifier.put(None) File "/usr/lib/python3.11/multiprocessing/queues.py", line 377, in put self._writer.send_bytes(obj) File "/usr/lib/python3.11/multiprocessing/connection.py", line 199, in send_bytes self._send_bytes(m[offset:offset + size]) File "/usr/lib/python3.11/multiprocessing/connection.py", line 410, in _send_bytes self._send(header + buf) File "/usr/lib/python3.11/multiprocessing/connection.py", line 367, in _send n = write(self._handle, buf) ^^^^^^^^^^^^^^^^^^^^^^^^ OSError: [Errno 9] Bad file descriptor Exception ignored in: Traceback (most recent call last): File "/usr/lib/python3.11/multiprocessing/pool.py", line 271, in __del__ self._change_notifier.put(None) File "/usr/lib/python3.11/multiprocessing/queues.py", line 377, in put self._writer.send_bytes(obj) File "/usr/lib/python3.11/multiprocessing/connection.py", line 199, in send_bytes self._send_bytes(m[offset:offset + size]) File "/usr/lib/python3.11/multiprocessing/connection.py", line 410, in _send_bytes self._send(header + buf) File "/usr/lib/python3.11/multiprocessing/connection.py", line 367, in _send n = write(self._handle, buf) ^^^^^^^^^^^^^^^^^^^^^^^^ OSError: [Errno 9] Bad file descriptor Exception ignored in: Traceback (most recent call last): File "/usr/lib/python3.11/multiprocessing/pool.py", line 271, in __del__ self._change_notifier.put(None) File "/usr/lib/python3.11/multiprocessing/queues.py", line 377, in put self._writer.send_bytes(obj) File "/usr/lib/python3.11/multiprocessing/connection.py", line 199, in send_bytes self._send_bytes(m[offset:offset + size]) File "/usr/lib/python3.11/multiprocessing/connection.py", line 410, in _send_bytes self._send(header + buf) File "/usr/lib/python3.11/multiprocessing/connection.py", line 367, in _send n = write(self._handle, buf) ^^^^^^^^^^^^^^^^^^^^^^^^ OSError: [Errno 9] Bad file descriptor Exception ignored in: Traceback (most recent call last): File "/usr/lib/python3.11/multiprocessing/pool.py", line 271, in __del__ self._change_notifier.put(None) File "/usr/lib/python3.11/multiprocessing/queues.py", line 377, in put self._writer.send_bytes(obj) File "/usr/lib/python3.11/multiprocessing/connection.py", line 199, in send_bytes self._send_bytes(m[offset:offset + size]) File "/usr/lib/python3.11/multiprocessing/connection.py", line 410, in _send_bytes self._send(header + buf) File "/usr/lib/python3.11/multiprocessing/connection.py", line 367, in _send n = write(self._handle, buf) ^^^^^^^^^^^^^^^^^^^^^^^^ OSError: [Errno 9] Bad file descriptor E: pybuild pybuild:388: test: plugin distutils failed with: exit code=1: cd /build/reproducible-path/errbot-6.1.7+ds/.pybuild/cpython3_3.11_errbot/build; python3.11 -m pytest -k "not test_broken_plugin and not test_backup and not test_plugin_cycle and not test_check_dependencies_requirements_file_all_installed" rm -fr -- /tmp/dh-xdg-rundir-tRvyxZim dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.11 returned exit code 13 make[1]: *** [debian/rules:23: override_dh_auto_test] Error 25 make[1]: Leaving directory '/build/reproducible-path/errbot-6.1.7+ds' make: *** [debian/rules:16: binary] Error 2 dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2 I: copying local configuration E: Failed autobuilding of package I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env I: removing directory /srv/workspace/pbuilder/8038 and its subdirectories