Wed Aug 6 17:11:01 UTC 2025 I: starting to build tahoe-lafs/unstable/amd64 on jenkins on '2025-08-06 17:10' Wed Aug 6 17:11:01 UTC 2025 I: The jenkins build log is/was available at https://jenkins.debian.net/userContent/reproducible/debian/build_service/amd64_32/53317/console.log Wed Aug 6 17:11:01 UTC 2025 I: Downloading source for unstable/tahoe-lafs=1.20.0-6 --2025-08-06 17:11:01-- http://deb.debian.org/debian/pool/main/t/tahoe-lafs/tahoe-lafs_1.20.0-6.dsc Connecting to 46.16.76.132:3128... connected. Proxy request sent, awaiting response... 200 OK Length: 2782 (2.7K) [text/prs.lines.tag] Saving to: ‘tahoe-lafs_1.20.0-6.dsc’ 0K .. 100% 288M=0s 2025-08-06 17:11:01 (288 MB/s) - ‘tahoe-lafs_1.20.0-6.dsc’ saved [2782/2782] Wed Aug 6 17:11:01 UTC 2025 I: tahoe-lafs_1.20.0-6.dsc -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Format: 3.0 (quilt) Source: tahoe-lafs Binary: tahoe-lafs Architecture: all Version: 1.20.0-6 Maintainer: Andrius Merkys Homepage: https://www.tahoe-lafs.org Standards-Version: 4.6.2 Vcs-Browser: https://salsa.debian.org/merkys/tahoe-lafs Vcs-Git: https://salsa.debian.org/merkys/tahoe-lafs.git Build-Depends: architecture-is-64-bit, debhelper-compat (= 13), dh-sequence-python3, magic-wormhole , pybuild-plugin-pyproject, python3-all, python3-autobahn , python3-bs4 , python3-cbor2 , python3-collections-extended , python3-eliot , python3-exceptiongroup , python3-filelock , python3-fixtures , python3-foolscap , python3-hatch-vcs, python3-html5lib , python3-hypothesis , python3-klein , python3-legacy-cgi , python3-netifaces , python3-prometheus-client , python3-psutil , python3-pycddl , python3-pytest , python3-pyutil , python3-setuptools, python3-tenacity , python3-testtools , python3-treq , python3-txi2p-tahoe , python3-txtorcon , python3-yaml , python3-zfec Package-List: tahoe-lafs deb utils optional arch=all Checksums-Sha1: fce71f8e1f2839efc966bdd87a338715a15032c6 2237761 tahoe-lafs_1.20.0.orig.tar.gz 210614756d2ea7d3538172a1e5a560693d8cdfd1 19096 tahoe-lafs_1.20.0-6.debian.tar.xz Checksums-Sha256: d121fab784c8ada895d7463ef80e65697e295aa6c44f509a3dce4013ca6f5768 2237761 tahoe-lafs_1.20.0.orig.tar.gz a5f34620bb3fb83ddb1cc479aff084c1b3f46ed7355258e059ba156d6df0d87b 19096 tahoe-lafs_1.20.0-6.debian.tar.xz Files: 0485a44b9ef4ddf82077e6a91ac454a7 2237761 tahoe-lafs_1.20.0.orig.tar.gz db7ad333e43f1fb6dc651ae361fff863 19096 tahoe-lafs_1.20.0-6.debian.tar.xz -----BEGIN PGP SIGNATURE----- iQJGBAEBCgAwFiEEdyKS9veshfrgQdQe5fQ/nCc08ocFAmgm9ckSHG1lcmt5c0Bk ZWJpYW4ub3JnAAoJEOX0P5wnNPKHRGMP/2l8DmlBw7gMthtlpVpehMuv/O11Mxea Xxa/WipVxLX7QX9lxYbq3pg6DBv/25Yn+ZkT0McnONXW5ILHk5sJKoUeOtV5pevZ ph54U2YW1OtLUHMQTb4UJsW6L7iPayNkDHS1jbFv0TcI1Kx/7NVY2g5+DRobLy9F QW+8PJ2rFcwUdGiitwY57uluWXmnvoogudzIGlH+djkBAHpeKjA1oLjcq21ZoqmX spQ2j/sPIZepi/8jaKQUQdcVw7NiCkv9jwBHr4usd+ChaFgKWPABZ1Z0+rA9e9HF hv5KSF1NJZjYRJS2edY7FJoAzKa+x0SzbE8FS+4/83DDbe3b8Ds2xAEaBYJJbM4y AVL1ogD+0rf0hNf5fFyzfpbXlTpNhekDiE02NNcfOxoCsjb+hu8apMaZwDWkDxi5 kocAYBRWsD2p4QgWC+9AKkEV5cdAYf7k8sxZhvuKXflTcdv2A1jbZuPOI6+PGJeM rhji2RLSNLgCvDd4rVUnpUOJgoXHfyKeMDBreUgQz4+mWwjbIbQWuzutsnm6Nny2 P+KYX5dpmiX1P50L2WCoU9GUSgbXy9jNCMtQWzv6pcTWfrx1pmeO5b36utS03e7J H5AH6fq/tnCcwAoF4szxsKWfEnePHIu8eqNUGJM+oiunQdTVfHAfrgiguKkXkKKs 241hfEBtbKWO =Dc82 -----END PGP SIGNATURE----- Wed Aug 6 17:11:01 UTC 2025 I: Checking whether the package is not for us Wed Aug 6 17:11:01 UTC 2025 I: Starting 1st build on remote node ionos5-amd64.debian.net. Wed Aug 6 17:11:01 UTC 2025 I: Preparing to do remote build '1' on ionos5-amd64.debian.net. Wed Aug 6 20:20:08 UTC 2025 I: Deleting $TMPDIR on ionos5-amd64.debian.net. I: pbuilder: network access will be disabled during build I: Current time: Tue Sep 8 11:34:03 -12 2026 I: pbuilder-time-stamp: 1788910443 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-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: Copying source file I: copying [tahoe-lafs_1.20.0-6.dsc] I: copying [./tahoe-lafs_1.20.0.orig.tar.gz] I: copying [./tahoe-lafs_1.20.0-6.debian.tar.xz] I: Extracting source dpkg-source: warning: cannot verify inline signature for ./tahoe-lafs_1.20.0-6.dsc: no acceptable signature found dpkg-source: info: extracting tahoe-lafs in tahoe-lafs-1.20.0 dpkg-source: info: unpacking tahoe-lafs_1.20.0.orig.tar.gz dpkg-source: info: unpacking tahoe-lafs_1.20.0-6.debian.tar.xz dpkg-source: info: using patch list from debian/patches/series dpkg-source: info: applying 1420.patch dpkg-source: info: applying 1421.patch dpkg-source: info: applying 1427.patch dpkg-source: info: applying 1431.patch dpkg-source: warning: diff 'tahoe-lafs-1.20.0/debian/patches/1433.patch' patches file tahoe-lafs-1.20.0/docs/man/man1/tahoe.1 more than once dpkg-source: info: applying 1433.patch I: Not using root during the build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/256089/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='amd64' DEBIAN_FRONTEND='noninteractive' DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=42 ' DISTRIBUTION='unstable' HOME='/root' HOST_ARCH='amd64' IFS=' ' INVOCATION_ID='637e2a526cd44bfe90e9d37c5392d622' LANG='C' LANGUAGE='en_US:en' LC_ALL='C' 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='256089' 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.4ND780cm/pbuilderrc_46vF --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.4ND780cm/b1 --logfile b1/build.log tahoe-lafs_1.20.0-6.dsc' SUDO_GID='110' SUDO_UID='105' SUDO_USER='jenkins' TERM='unknown' TZ='/usr/share/zoneinfo/Etc/GMT+12' USER='root' _='/usr/bin/systemd-run' http_proxy='http://213.165.73.152:3128' I: uname -a Linux ionos5-amd64 6.12.33+deb12-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.33-1~bpo12+1 (2025-07-09) x86_64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 May 12 2025 /bin -> usr/bin I: user script /srv/workspace/pbuilder/256089/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: amd64 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: architecture-is-64-bit, debhelper-compat (= 13), dh-sequence-python3, magic-wormhole, pybuild-plugin-pyproject, python3-all, python3-autobahn, python3-bs4, python3-cbor2, python3-collections-extended, python3-eliot, python3-exceptiongroup, python3-filelock, python3-fixtures, python3-foolscap, python3-hatch-vcs, python3-html5lib, python3-hypothesis, python3-klein, python3-legacy-cgi, python3-netifaces, python3-prometheus-client, python3-psutil, python3-pycddl, python3-pytest, python3-pyutil, python3-setuptools, python3-tenacity, python3-testtools, python3-treq, python3-txi2p-tahoe, python3-txtorcon, python3-yaml, python3-zfec dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19850 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 architecture-is-64-bit; however: Package architecture-is-64-bit is not installed. pbuilder-satisfydepends-dummy depends on debhelper-compat (= 13); however: Package debhelper-compat is not installed. pbuilder-satisfydepends-dummy depends on dh-sequence-python3; however: Package dh-sequence-python3 is not installed. pbuilder-satisfydepends-dummy depends on magic-wormhole; however: Package magic-wormhole is not installed. pbuilder-satisfydepends-dummy depends on pybuild-plugin-pyproject; however: Package pybuild-plugin-pyproject is not installed. pbuilder-satisfydepends-dummy depends on python3-all; however: Package python3-all is not installed. pbuilder-satisfydepends-dummy depends on python3-autobahn; however: Package python3-autobahn is not installed. pbuilder-satisfydepends-dummy depends on python3-bs4; however: Package python3-bs4 is not installed. pbuilder-satisfydepends-dummy depends on python3-cbor2; however: Package python3-cbor2 is not installed. pbuilder-satisfydepends-dummy depends on python3-collections-extended; however: Package python3-collections-extended is not installed. pbuilder-satisfydepends-dummy depends on python3-eliot; however: Package python3-eliot is not installed. pbuilder-satisfydepends-dummy depends on python3-exceptiongroup; however: Package python3-exceptiongroup is not installed. pbuilder-satisfydepends-dummy depends on python3-filelock; however: Package python3-filelock is not installed. pbuilder-satisfydepends-dummy depends on python3-fixtures; however: Package python3-fixtures is not installed. pbuilder-satisfydepends-dummy depends on python3-foolscap; however: Package python3-foolscap is not installed. pbuilder-satisfydepends-dummy depends on python3-hatch-vcs; however: Package python3-hatch-vcs is not installed. pbuilder-satisfydepends-dummy depends on python3-html5lib; however: Package python3-html5lib is not installed. pbuilder-satisfydepends-dummy depends on python3-hypothesis; however: Package python3-hypothesis is not installed. pbuilder-satisfydepends-dummy depends on python3-klein; however: Package python3-klein is not installed. pbuilder-satisfydepends-dummy depends on python3-legacy-cgi; however: Package python3-legacy-cgi is not installed. pbuilder-satisfydepends-dummy depends on python3-netifaces; however: Package python3-netifaces is not installed. pbuilder-satisfydepends-dummy depends on python3-prometheus-client; however: Package python3-prometheus-client is not installed. pbuilder-satisfydepends-dummy depends on python3-psutil; however: Package python3-psutil is not installed. pbuilder-satisfydepends-dummy depends on python3-pycddl; however: Package python3-pycddl is not installed. pbuilder-satisfydepends-dummy depends on python3-pytest; however: Package python3-pytest is not installed. pbuilder-satisfydepends-dummy depends on python3-pyutil; however: Package python3-pyutil is not installed. pbuilder-satisfydepends-dummy depends on python3-setuptools; however: Package python3-setuptools is not installed. pbuilder-satisfydepends-dummy depends on python3-tenacity; however: Package python3-tenacity is not installed. pbuilder-satisfydepends-dummy depends on python3-testtools; however: Package python3-testtools is not installed. pbuilder-satisfydepends-dummy depends on python3-treq; however: Package python3-treq is not installed. pbuilder-satisfydepends-dummy depends on python3-txi2p-tahoe; however: Package python3-txi2p-tahoe is not installed. pbuilder-satisfydepends-dummy depends on python3-txtorcon; however: Package python3-txtorcon is not installed. pbuilder-satisfydepends-dummy depends on python3-yaml; however: Package python3-yaml is not installed. pbuilder-satisfydepends-dummy depends on python3-zfec; however: Package python3-zfec 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: architecture-properties{a} 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} geoip-database{a} gettext{a} gettext-base{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libbrotli1{a} libdebhelper-perl{a} libdeflate0{a} libdouble-conversion3{a} libelf1t64{a} libexpat1{a} libffi8{a} libfile-stripnondeterminism-perl{a} libfreetype6{a} libfribidi0{a} libgeoip1t64{a} libglib2.0-0t64{a} libgraphite2-3{a} libharfbuzz0b{a} libimagequant0{a} libjbig0{a} libjpeg62-turbo{a} liblcms2-2{a} liblerc4{a} libmagic-mgc{a} libmagic1t64{a} libopenjp2-7{a} libpipeline1{a} libpng16-16t64{a} libpython3-stdlib{a} libpython3.13-minimal{a} libpython3.13-stdlib{a} libraqm0{a} libreadline8t64{a} libsharpyuv0{a} libsnappy1v5{a} libsodium23{a} libtiff6{a} libtool{a} libuchardet0{a} libunistring5{a} libwebp7{a} libwebpdemux2{a} libwebpmux3{a} libxau6{a} libxcb1{a} libxdmcp6{a} libxml2{a} libyaml-0-2{a} m4{a} magic-wormhole{a} man-db{a} media-types{a} netbase{a} openssl{a} po-debconf{a} pybuild-plugin-pyproject{a} python3{a} python3-all{a} python3-attr{a} python3-autobahn{a} python3-autocommand{a} python3-automat{a} python3-base58{a} python3-bcrypt{a} python3-boltons{a} python3-bs4{a} python3-build{a} python3-cbor{a} python3-cbor2{a} python3-certifi{a} python3-cffi{a} python3-cffi-backend{a} python3-chardet{a} python3-charset-normalizer{a} python3-click{a} python3-collections-extended{a} python3-constantly{a} python3-cryptography{a} python3-dateutil{a} python3-decorator{a} python3-ecdsa{a} python3-eliot{a} python3-exceptiongroup{a} python3-filelock{a} python3-fixtures{a} python3-flatbuffers{a} python3-foolscap{a} python3-geoip{a} python3-hamcrest{a} python3-hatch-vcs{a} python3-hatchling{a} python3-html5lib{a} python3-humanize{a} python3-hyperlink{a} python3-hypothesis{a} python3-idna{a} python3-incremental{a} python3-inflect{a} python3-iniconfig{a} python3-installer{a} python3-iterable-io{a} python3-jaraco.context{a} python3-jaraco.functools{a} python3-jaraco.text{a} python3-klein{a} python3-legacy-cgi{a} python3-legacycrypt{a} python3-lz4{a} python3-markupsafe{a} python3-minimal{a} python3-mnemonic{a} python3-more-itertools{a} python3-msgpack{a} python3-nacl{a} python3-netifaces{a} python3-openssl{a} python3-packaging{a} python3-parsley{a} python3-passlib{a} python3-pathspec{a} python3-pbr{a} python3-pil{a} python3-pkg-resources{a} python3-pluggy{a} python3-ply{a} python3-prometheus-client{a} python3-psutil{a} python3-pyasn1{a} python3-pyasn1-modules{a} python3-pycddl{a} python3-pycparser{a} python3-pyproject-hooks{a} python3-pyqrcode{a} python3-pyrsistent{a} python3-pytest{a} python3-pyutil{a} python3-qrcode{a} python3-requests{a} python3-service-identity{a} python3-setuptools{a} python3-setuptools-scm{a} python3-six{a} python3-snappy{a} python3-sortedcontainers{a} python3-soupsieve{a} python3-spake2{a} python3-tenacity{a} python3-testtools{a} python3-tqdm{a} python3-treq{a} python3-trie{a} python3-trove-classifiers{a} python3-tubes{a} python3-twisted{a} python3-txaio{a} python3-txi2p-tahoe{a} python3-txtorcon{a} python3-typeguard{a} python3-typing-extensions{a} python3-u-msgpack{a} python3-ubjson{a} python3-ujson{a} python3-urllib3{a} python3-webencodings{a} python3-werkzeug{a} python3-wheel{a} python3-wsaccel{a} python3-yaml{a} python3-zfec{a} python3-zipp{a} python3-zipstream-ng{a} python3-zope.interface{a} python3.13{a} python3.13-minimal{a} readline-common{a} sensible-utils{a} tzdata{a} The following packages are RECOMMENDED but will NOT be installed: base58 curl libarchive-cpio-perl libglib2.0-data libltdl-dev libmail-sendmail-perl lynx python3-lxml python3-olefile python3-png python3-pygments python3-pyinotify shared-mime-info wget xdg-user-dirs 0 packages upgraded, 192 newly installed, 0 to remove and 0 not upgraded. Need to get 41.5 MB of archives. After unpacking 164 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian unstable/main amd64 libexpat1 amd64 2.7.1-2 [108 kB] Get: 2 http://deb.debian.org/debian unstable/main amd64 libpython3.13-minimal amd64 3.13.5-2 [862 kB] Get: 3 http://deb.debian.org/debian unstable/main amd64 python3.13-minimal amd64 3.13.5-2 [2224 kB] Get: 4 http://deb.debian.org/debian unstable/main amd64 python3-minimal amd64 3.13.5-1 [27.2 kB] Get: 5 http://deb.debian.org/debian unstable/main amd64 media-types all 13.0.0 [29.3 kB] Get: 6 http://deb.debian.org/debian unstable/main amd64 netbase all 6.5 [12.4 kB] Get: 7 http://deb.debian.org/debian unstable/main amd64 tzdata all 2025b-4 [260 kB] Get: 8 http://deb.debian.org/debian unstable/main amd64 libffi8 amd64 3.4.8-2 [24.1 kB] Get: 9 http://deb.debian.org/debian unstable/main amd64 readline-common all 8.2-6 [69.4 kB] Get: 10 http://deb.debian.org/debian unstable/main amd64 libreadline8t64 amd64 8.2-6 [169 kB] Get: 11 http://deb.debian.org/debian unstable/main amd64 libpython3.13-stdlib amd64 3.13.5-2 [1956 kB] Get: 12 http://deb.debian.org/debian unstable/main amd64 python3.13 amd64 3.13.5-2 [757 kB] Get: 13 http://deb.debian.org/debian unstable/main amd64 libpython3-stdlib amd64 3.13.5-1 [10.2 kB] Get: 14 http://deb.debian.org/debian unstable/main amd64 python3 amd64 3.13.5-1 [28.2 kB] Get: 15 http://deb.debian.org/debian unstable/main amd64 sensible-utils all 0.0.25 [25.0 kB] Get: 16 http://deb.debian.org/debian unstable/main amd64 openssl amd64 3.5.1-1 [1494 kB] Get: 17 http://deb.debian.org/debian unstable/main amd64 ca-certificates all 20250419 [162 kB] Get: 18 http://deb.debian.org/debian unstable/main amd64 libmagic-mgc amd64 1:5.46-5 [338 kB] Get: 19 http://deb.debian.org/debian unstable/main amd64 libmagic1t64 amd64 1:5.46-5 [109 kB] Get: 20 http://deb.debian.org/debian unstable/main amd64 file amd64 1:5.46-5 [43.6 kB] Get: 21 http://deb.debian.org/debian unstable/main amd64 gettext-base amd64 0.23.1-2 [243 kB] Get: 22 http://deb.debian.org/debian unstable/main amd64 libuchardet0 amd64 0.0.8-1+b2 [68.9 kB] Get: 23 http://deb.debian.org/debian unstable/main amd64 groff-base amd64 1.23.0-9 [1187 kB] Get: 24 http://deb.debian.org/debian unstable/main amd64 bsdextrautils amd64 2.41-5 [94.6 kB] Get: 25 http://deb.debian.org/debian unstable/main amd64 libpipeline1 amd64 1.5.8-1 [42.0 kB] Get: 26 http://deb.debian.org/debian unstable/main amd64 man-db amd64 2.13.1-1 [1469 kB] Get: 27 http://deb.debian.org/debian unstable/main amd64 architecture-properties amd64 0.2.6 [2336 B] Get: 28 http://deb.debian.org/debian unstable/main amd64 m4 amd64 1.4.19-8 [294 kB] Get: 29 http://deb.debian.org/debian unstable/main amd64 autoconf all 2.72-3.1 [494 kB] Get: 30 http://deb.debian.org/debian unstable/main amd64 autotools-dev all 20240727.1 [60.2 kB] Get: 31 http://deb.debian.org/debian unstable/main amd64 automake all 1:1.17-4 [862 kB] Get: 32 http://deb.debian.org/debian unstable/main amd64 autopoint all 0.23.1-2 [770 kB] Get: 33 http://deb.debian.org/debian unstable/main amd64 libdebhelper-perl all 13.24.2 [90.9 kB] Get: 34 http://deb.debian.org/debian unstable/main amd64 libtool all 2.5.4-4 [539 kB] Get: 35 http://deb.debian.org/debian unstable/main amd64 dh-autoreconf all 20 [17.1 kB] Get: 36 http://deb.debian.org/debian unstable/main amd64 libarchive-zip-perl all 1.68-1 [104 kB] Get: 37 http://deb.debian.org/debian unstable/main amd64 libfile-stripnondeterminism-perl all 1.14.1-2 [19.7 kB] Get: 38 http://deb.debian.org/debian unstable/main amd64 dh-strip-nondeterminism all 1.14.1-2 [8620 B] Get: 39 http://deb.debian.org/debian unstable/main amd64 libelf1t64 amd64 0.192-4 [189 kB] Get: 40 http://deb.debian.org/debian unstable/main amd64 dwz amd64 0.15-1+b1 [110 kB] Get: 41 http://deb.debian.org/debian unstable/main amd64 libunistring5 amd64 1.3-2 [477 kB] Get: 42 http://deb.debian.org/debian unstable/main amd64 libxml2 amd64 2.12.7+dfsg+really2.9.14-2.1 [698 kB] Get: 43 http://deb.debian.org/debian unstable/main amd64 gettext amd64 0.23.1-2 [1680 kB] Get: 44 http://deb.debian.org/debian unstable/main amd64 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 45 http://deb.debian.org/debian unstable/main amd64 po-debconf all 1.0.21+nmu1 [248 kB] Get: 46 http://deb.debian.org/debian unstable/main amd64 debhelper all 13.24.2 [919 kB] Get: 47 http://deb.debian.org/debian unstable/main amd64 dh-python all 6.20250414 [116 kB] Get: 48 http://deb.debian.org/debian unstable/main amd64 geoip-database all 20250401-1 [3472 kB] Get: 49 http://deb.debian.org/debian unstable/main amd64 libbrotli1 amd64 1.1.0-2+b7 [307 kB] Get: 50 http://deb.debian.org/debian unstable/main amd64 libdeflate0 amd64 1.23-2 [47.3 kB] Get: 51 http://deb.debian.org/debian unstable/main amd64 libdouble-conversion3 amd64 3.3.1-1 [41.8 kB] Get: 52 http://deb.debian.org/debian unstable/main amd64 libpng16-16t64 amd64 1.6.48-1 [282 kB] Get: 53 http://deb.debian.org/debian unstable/main amd64 libfreetype6 amd64 2.13.3+dfsg-1 [452 kB] Get: 54 http://deb.debian.org/debian unstable/main amd64 libfribidi0 amd64 1.0.16-1 [26.5 kB] Get: 55 http://deb.debian.org/debian unstable/main amd64 libgeoip1t64 amd64 1.6.12-11.1+b1 [84.8 kB] Get: 56 http://deb.debian.org/debian unstable/main amd64 libglib2.0-0t64 amd64 2.84.3-1 [1515 kB] Get: 57 http://deb.debian.org/debian unstable/main amd64 libgraphite2-3 amd64 1.3.14-2+b1 [75.4 kB] Get: 58 http://deb.debian.org/debian unstable/main amd64 libharfbuzz0b amd64 10.2.0-1+b1 [479 kB] Get: 59 http://deb.debian.org/debian unstable/main amd64 libimagequant0 amd64 2.18.0-1+b2 [35.2 kB] Get: 60 http://deb.debian.org/debian unstable/main amd64 libjbig0 amd64 2.1-6.1+b2 [32.1 kB] Get: 61 http://deb.debian.org/debian unstable/main amd64 libjpeg62-turbo amd64 1:2.1.5-4 [168 kB] Get: 62 http://deb.debian.org/debian unstable/main amd64 liblcms2-2 amd64 2.16-2 [160 kB] Get: 63 http://deb.debian.org/debian unstable/main amd64 liblerc4 amd64 4.0.0+ds-5 [183 kB] Get: 64 http://deb.debian.org/debian unstable/main amd64 libopenjp2-7 amd64 2.5.3-2 [204 kB] Get: 65 http://deb.debian.org/debian unstable/main amd64 libraqm0 amd64 0.10.2-1 [13.9 kB] Get: 66 http://deb.debian.org/debian unstable/main amd64 libsharpyuv0 amd64 1.5.0-0.1 [116 kB] Get: 67 http://deb.debian.org/debian unstable/main amd64 libsnappy1v5 amd64 1.2.2-1 [29.3 kB] Get: 68 http://deb.debian.org/debian unstable/main amd64 libsodium23 amd64 1.0.18-1+b2 [165 kB] Get: 69 http://deb.debian.org/debian unstable/main amd64 libwebp7 amd64 1.5.0-0.1 [318 kB] Get: 70 http://deb.debian.org/debian unstable/main amd64 libtiff6 amd64 4.7.0-3 [346 kB] Get: 71 http://deb.debian.org/debian unstable/main amd64 libwebpdemux2 amd64 1.5.0-0.1 [113 kB] Get: 72 http://deb.debian.org/debian unstable/main amd64 libwebpmux3 amd64 1.5.0-0.1 [126 kB] Get: 73 http://deb.debian.org/debian unstable/main amd64 libxau6 amd64 1:1.0.11-1 [20.4 kB] Get: 74 http://deb.debian.org/debian unstable/main amd64 libxdmcp6 amd64 1:1.1.5-1 [27.8 kB] Get: 75 http://deb.debian.org/debian unstable/main amd64 libxcb1 amd64 1.17.0-2+b1 [144 kB] Get: 76 http://deb.debian.org/debian unstable/main amd64 libyaml-0-2 amd64 0.2.5-2 [52.5 kB] Get: 77 http://deb.debian.org/debian unstable/main amd64 python3-attr all 25.3.0-1 [69.5 kB] Get: 78 http://deb.debian.org/debian unstable/main amd64 python3-base58 all 1.0.3-2 [5752 B] Get: 79 http://deb.debian.org/debian unstable/main amd64 python3-cbor amd64 1.0.0-1.2+b5 [21.4 kB] Get: 80 http://deb.debian.org/debian unstable/main amd64 python3-cffi-backend amd64 1.17.1-3 [93.4 kB] Get: 81 http://deb.debian.org/debian unstable/main amd64 python3-ply all 3.11-9 [62.9 kB] Get: 82 http://deb.debian.org/debian unstable/main amd64 python3-pycparser all 2.22-2 [78.0 kB] Get: 83 http://deb.debian.org/debian unstable/main amd64 python3-cffi all 1.17.1-3 [89.5 kB] Get: 84 http://deb.debian.org/debian unstable/main amd64 python3-bcrypt amd64 4.2.0-2.1+b1 [211 kB] Get: 85 http://deb.debian.org/debian unstable/main amd64 python3-cryptography amd64 43.0.0-3 [941 kB] Get: 86 http://deb.debian.org/debian unstable/main amd64 python3-ecdsa all 0.19.1-1 [123 kB] Get: 87 http://deb.debian.org/debian unstable/main amd64 python3-flatbuffers all 23.5.26+dfsg-4 [31.7 kB] Get: 88 http://deb.debian.org/debian unstable/main amd64 python3-idna all 3.10-1 [42.0 kB] Get: 89 http://deb.debian.org/debian unstable/main amd64 python3-hyperlink all 21.0.0-6 [70.2 kB] Get: 90 http://deb.debian.org/debian unstable/main amd64 python3-lz4 amd64 4.4.0+dfsg-2 [25.3 kB] Get: 91 http://deb.debian.org/debian unstable/main amd64 python3-mnemonic all 0.21-2 [77.3 kB] Get: 92 http://deb.debian.org/debian unstable/main amd64 python3-msgpack amd64 1.0.3-3+b4 [84.5 kB] Get: 93 http://deb.debian.org/debian unstable/main amd64 python3-nacl amd64 1.5.0-7 [57.6 kB] Get: 94 http://deb.debian.org/debian unstable/main amd64 python3-typing-extensions all 4.13.2-1 [90.5 kB] Get: 95 http://deb.debian.org/debian unstable/main amd64 python3-openssl all 25.0.0-1 [52.1 kB] Get: 96 http://deb.debian.org/debian unstable/main amd64 python3-legacycrypt all 0.3-2 [8096 B] Get: 97 http://deb.debian.org/debian unstable/main amd64 python3-passlib all 1.7.4-6 [368 kB] Get: 98 http://deb.debian.org/debian unstable/main amd64 python3-pyqrcode all 1.2.1-4 [30.3 kB] Get: 99 http://deb.debian.org/debian unstable/main amd64 python3-pyasn1 all 0.6.1-1 [68.9 kB] Get: 100 http://deb.debian.org/debian unstable/main amd64 python3-pyasn1-modules all 0.4.1-2 [85.2 kB] Get: 101 http://deb.debian.org/debian unstable/main amd64 python3-service-identity all 24.2.0-1 [13.8 kB] Get: 102 http://deb.debian.org/debian unstable/main amd64 python3-snappy amd64 0.5.3-1.2+b5 [17.0 kB] Get: 103 http://deb.debian.org/debian unstable/main amd64 python3-sortedcontainers all 2.4.0-2 [31.9 kB] Get: 104 http://deb.debian.org/debian unstable/main amd64 python3-trie all 0.4.0+ds-1 [7640 B] Get: 105 http://deb.debian.org/debian unstable/main amd64 python3-hamcrest all 2.1.0-1 [31.3 kB] Get: 106 http://deb.debian.org/debian unstable/main amd64 python3-automat all 25.4.16-1 [35.2 kB] Get: 107 http://deb.debian.org/debian unstable/main amd64 python3-constantly all 23.10.4-2 [13.6 kB] Get: 108 http://deb.debian.org/debian unstable/main amd64 python3-packaging all 25.0-1 [56.6 kB] Get: 109 http://deb.debian.org/debian unstable/main amd64 python3-incremental all 24.7.2-3 [18.2 kB] Get: 110 http://deb.debian.org/debian unstable/main amd64 python3-autocommand all 2.2.2-3 [13.6 kB] Get: 111 http://deb.debian.org/debian unstable/main amd64 python3-more-itertools all 10.7.0-1 [67.4 kB] Get: 112 http://deb.debian.org/debian unstable/main amd64 python3-typeguard all 4.4.2-1 [37.3 kB] Get: 113 http://deb.debian.org/debian unstable/main amd64 python3-inflect all 7.3.1-2 [32.4 kB] Get: 114 http://deb.debian.org/debian unstable/main amd64 python3-jaraco.functools all 4.1.0-1 [12.0 kB] Get: 115 http://deb.debian.org/debian unstable/main amd64 python3-jaraco.text all 4.0.0-1 [11.4 kB] Get: 116 http://deb.debian.org/debian unstable/main amd64 python3-zipp all 3.21.0-1 [10.6 kB] Get: 117 http://deb.debian.org/debian unstable/main amd64 python3-setuptools all 78.1.1-0.1 [738 kB] Get: 118 http://deb.debian.org/debian unstable/main amd64 python3-jaraco.context all 6.0.1-1 [8276 B] Get: 119 http://deb.debian.org/debian unstable/main amd64 python3-pkg-resources all 78.1.1-0.1 [224 kB] Get: 120 http://deb.debian.org/debian unstable/main amd64 python3-zope.interface amd64 7.2-1+b1 [152 kB] Get: 121 http://deb.debian.org/debian unstable/main amd64 python3-twisted all 24.11.0-1 [2047 kB] Get: 122 http://deb.debian.org/debian unstable/main amd64 python3-txaio all 23.1.1-4 [18.1 kB] Get: 123 http://deb.debian.org/debian unstable/main amd64 python3-u-msgpack all 2.8.0-2 [10.3 kB] Get: 124 http://deb.debian.org/debian unstable/main amd64 python3-ubjson amd64 0.16.1-4+b4 [34.3 kB] Get: 125 http://deb.debian.org/debian unstable/main amd64 python3-ujson amd64 5.10.0-1+b4 [26.0 kB] Get: 126 http://deb.debian.org/debian unstable/main amd64 python3-wsaccel amd64 0.6.3-5+b1 [111 kB] Get: 127 http://deb.debian.org/debian unstable/main amd64 python3-autobahn all 23.1.2+dfsg1-2 [349 kB] Get: 128 http://deb.debian.org/debian unstable/main amd64 python3-click all 8.2.0+0.really.8.1.8-1 [95.4 kB] Get: 129 http://deb.debian.org/debian unstable/main amd64 python3-humanize all 4.12.1-1 [52.9 kB] Get: 130 http://deb.debian.org/debian unstable/main amd64 python3-iterable-io all 1.0.0-3 [6092 B] Get: 131 http://deb.debian.org/debian unstable/main amd64 python3-pil amd64 11.1.0-5+b1 [513 kB] Get: 132 http://deb.debian.org/debian unstable/main amd64 python3-qrcode all 8.2-1 [43.1 kB] Get: 133 http://deb.debian.org/debian unstable/main amd64 python3-spake2 all 0.9-1 [25.8 kB] Get: 134 http://deb.debian.org/debian unstable/main amd64 python3-tqdm all 4.67.1-5 [90.8 kB] Get: 135 http://deb.debian.org/debian unstable/main amd64 python3-geoip amd64 1.3.2-6+b9 [20.8 kB] Get: 136 http://deb.debian.org/debian unstable/main amd64 python3-txtorcon all 24.8.0-1.1 [110 kB] Get: 137 http://deb.debian.org/debian unstable/main amd64 python3-zipstream-ng all 1.8.0-1 [26.5 kB] Get: 138 http://deb.debian.org/debian unstable/main amd64 magic-wormhole all 0.18.0-1 [212 kB] Get: 139 http://deb.debian.org/debian unstable/main amd64 python3-pyproject-hooks all 1.2.0-1 [11.7 kB] Get: 140 http://deb.debian.org/debian unstable/main amd64 python3-wheel all 0.46.1-2 [21.7 kB] Get: 141 http://deb.debian.org/debian unstable/main amd64 python3-build all 1.2.2-2 [36.1 kB] Get: 142 http://deb.debian.org/debian unstable/main amd64 python3-installer all 0.7.0+dfsg1-3 [18.6 kB] Get: 143 http://deb.debian.org/debian unstable/main amd64 pybuild-plugin-pyproject all 6.20250414 [11.8 kB] Get: 144 http://deb.debian.org/debian unstable/main amd64 python3-all amd64 3.13.5-1 [1048 B] Get: 145 http://deb.debian.org/debian unstable/main amd64 python3-boltons all 25.0.0-1 [149 kB] Get: 146 http://deb.debian.org/debian unstable/main amd64 python3-soupsieve all 2.7-1 [39.0 kB] Get: 147 http://deb.debian.org/debian unstable/main amd64 python3-bs4 all 4.13.4-2 [167 kB] Get: 148 http://deb.debian.org/debian unstable/main amd64 python3-cbor2 amd64 5.6.5-1 [21.1 kB] Get: 149 http://deb.debian.org/debian unstable/main amd64 python3-certifi all 2025.1.31+ds-1 [9652 B] Get: 150 http://deb.debian.org/debian unstable/main amd64 python3-chardet all 5.2.0+dfsg-2 [108 kB] Get: 151 http://deb.debian.org/debian unstable/main amd64 python3-charset-normalizer amd64 3.4.2-1 [128 kB] Get: 152 http://deb.debian.org/debian unstable/main amd64 python3-collections-extended all 2.0.2-2 [18.7 kB] Get: 153 http://deb.debian.org/debian unstable/main amd64 python3-dateutil all 2.9.0-4 [79.4 kB] Get: 154 http://deb.debian.org/debian unstable/main amd64 python3-decorator all 5.2.1-2 [33.0 kB] Get: 155 http://deb.debian.org/debian unstable/main amd64 python3-pyrsistent amd64 0.20.0-2+b1 [63.1 kB] Get: 156 http://deb.debian.org/debian unstable/main amd64 python3-eliot all 1.16.0-1 [77.7 kB] Get: 157 http://deb.debian.org/debian unstable/main amd64 python3-exceptiongroup all 1.2.2-1 [19.7 kB] Get: 158 http://deb.debian.org/debian unstable/main amd64 python3-filelock all 3.18.0-1 [12.8 kB] Get: 159 http://deb.debian.org/debian unstable/main amd64 python3-pbr all 6.1.1-2 [57.1 kB] Get: 160 http://deb.debian.org/debian unstable/main amd64 python3-testtools all 2.7.2-5 [123 kB] Get: 161 http://deb.debian.org/debian unstable/main amd64 python3-fixtures all 4.1.0-3 [34.2 kB] Get: 162 http://deb.debian.org/debian unstable/main amd64 python3-six all 1.17.0-1 [16.5 kB] Get: 163 http://deb.debian.org/debian unstable/main amd64 python3-foolscap all 24.9.0-3 [412 kB] Get: 164 http://deb.debian.org/debian unstable/main amd64 python3-pathspec all 0.12.1-1 [28.1 kB] Get: 165 http://deb.debian.org/debian unstable/main amd64 python3-pluggy all 1.5.0-1 [26.9 kB] Get: 166 http://deb.debian.org/debian unstable/main amd64 python3-trove-classifiers all 2025.4.28.22-1 [10.8 kB] Get: 167 http://deb.debian.org/debian unstable/main amd64 python3-hatchling all 1.27.0-1 [47.0 kB] Get: 168 http://deb.debian.org/debian unstable/main amd64 python3-setuptools-scm all 8.2.1-1 [41.2 kB] Get: 169 http://deb.debian.org/debian unstable/main amd64 python3-hatch-vcs all 0.4.0-1 [8336 B] Get: 170 http://deb.debian.org/debian unstable/main amd64 python3-webencodings all 0.5.1-5 [11.1 kB] Get: 171 http://deb.debian.org/debian unstable/main amd64 python3-html5lib all 1.2-2 [92.1 kB] Get: 172 http://deb.debian.org/debian unstable/main amd64 python3-hypothesis all 6.130.5-2 [336 kB] Get: 173 http://deb.debian.org/debian unstable/main amd64 python3-iniconfig all 1.1.1-2 [6396 B] Get: 174 http://deb.debian.org/debian unstable/main amd64 python3-tubes all 0.2.1-5 [42.0 kB] Get: 175 http://deb.debian.org/debian unstable/main amd64 python3-markupsafe amd64 2.1.5-1+b3 [14.0 kB] Get: 176 http://deb.debian.org/debian unstable/main amd64 python3-werkzeug all 3.1.3-2 [207 kB] Get: 177 http://deb.debian.org/debian unstable/main amd64 python3-klein all 24.8.0-1 [63.7 kB] Get: 178 http://deb.debian.org/debian unstable/main amd64 python3-legacy-cgi all 2.6.3-1 [16.5 kB] Get: 179 http://deb.debian.org/debian unstable/main amd64 python3-netifaces amd64 0.11.0-2+b6 [17.4 kB] Get: 180 http://deb.debian.org/debian unstable/main amd64 python3-parsley all 1.3-3 [60.2 kB] Get: 181 http://deb.debian.org/debian unstable/main amd64 python3-prometheus-client all 0.21.1+ds1-1 [44.9 kB] Get: 182 http://deb.debian.org/debian unstable/main amd64 python3-psutil amd64 7.0.0-2 [220 kB] Get: 183 http://deb.debian.org/debian unstable/main amd64 python3-pycddl amd64 0.6.4+ds-1 [954 kB] Get: 184 http://deb.debian.org/debian unstable/main amd64 python3-pytest all 8.3.5-2 [250 kB] Get: 185 http://deb.debian.org/debian unstable/main amd64 python3-pyutil all 3.3.2-5 [105 kB] Get: 186 http://deb.debian.org/debian unstable/main amd64 python3-urllib3 all 2.3.0-3 [115 kB] Get: 187 http://deb.debian.org/debian unstable/main amd64 python3-requests all 2.32.3+dfsg-5 [72.2 kB] Get: 188 http://deb.debian.org/debian unstable/main amd64 python3-tenacity all 8.4.2+really8.4.1-2 [46.0 kB] Get: 189 http://deb.debian.org/debian unstable/main amd64 python3-treq all 24.9.1-1 [60.8 kB] Get: 190 http://deb.debian.org/debian unstable/main amd64 python3-txi2p-tahoe all 0.3.7-4 [28.5 kB] Get: 191 http://deb.debian.org/debian unstable/main amd64 python3-yaml amd64 6.0.2-1+b2 [136 kB] Get: 192 http://deb.debian.org/debian unstable/main amd64 python3-zfec amd64 1.5.7.4-0.2+b1 [52.1 kB] Fetched 41.5 MB in 17s (2404 kB/s) Preconfiguring packages ... Selecting previously unselected package libexpat1:amd64. (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 ... 19850 files and directories currently installed.) Preparing to unpack .../libexpat1_2.7.1-2_amd64.deb ... Unpacking libexpat1:amd64 (2.7.1-2) ... Selecting previously unselected package libpython3.13-minimal:amd64. Preparing to unpack .../libpython3.13-minimal_3.13.5-2_amd64.deb ... Unpacking libpython3.13-minimal:amd64 (3.13.5-2) ... Selecting previously unselected package python3.13-minimal. Preparing to unpack .../python3.13-minimal_3.13.5-2_amd64.deb ... Unpacking python3.13-minimal (3.13.5-2) ... Setting up libpython3.13-minimal:amd64 (3.13.5-2) ... Setting up libexpat1:amd64 (2.7.1-2) ... Setting up python3.13-minimal (3.13.5-2) ... 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 ... 20184 files and directories currently installed.) Preparing to unpack .../0-python3-minimal_3.13.5-1_amd64.deb ... Unpacking python3-minimal (3.13.5-1) ... Selecting previously unselected package media-types. Preparing to unpack .../1-media-types_13.0.0_all.deb ... Unpacking media-types (13.0.0) ... Selecting previously unselected package netbase. Preparing to unpack .../2-netbase_6.5_all.deb ... Unpacking netbase (6.5) ... Selecting previously unselected package tzdata. Preparing to unpack .../3-tzdata_2025b-4_all.deb ... Unpacking tzdata (2025b-4) ... Selecting previously unselected package libffi8:amd64. Preparing to unpack .../4-libffi8_3.4.8-2_amd64.deb ... Unpacking libffi8:amd64 (3.4.8-2) ... Selecting previously unselected package readline-common. Preparing to unpack .../5-readline-common_8.2-6_all.deb ... Unpacking readline-common (8.2-6) ... Selecting previously unselected package libreadline8t64:amd64. Preparing to unpack .../6-libreadline8t64_8.2-6_amd64.deb ... Adding 'diversion of /lib/x86_64-linux-gnu/libhistory.so.8 to /lib/x86_64-linux-gnu/libhistory.so.8.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/x86_64-linux-gnu/libhistory.so.8.2 to /lib/x86_64-linux-gnu/libhistory.so.8.2.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/x86_64-linux-gnu/libreadline.so.8 to /lib/x86_64-linux-gnu/libreadline.so.8.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/x86_64-linux-gnu/libreadline.so.8.2 to /lib/x86_64-linux-gnu/libreadline.so.8.2.usr-is-merged by libreadline8t64' Unpacking libreadline8t64:amd64 (8.2-6) ... Selecting previously unselected package libpython3.13-stdlib:amd64. Preparing to unpack .../7-libpython3.13-stdlib_3.13.5-2_amd64.deb ... Unpacking libpython3.13-stdlib:amd64 (3.13.5-2) ... Selecting previously unselected package python3.13. Preparing to unpack .../8-python3.13_3.13.5-2_amd64.deb ... Unpacking python3.13 (3.13.5-2) ... Selecting previously unselected package libpython3-stdlib:amd64. Preparing to unpack .../9-libpython3-stdlib_3.13.5-1_amd64.deb ... Unpacking libpython3-stdlib:amd64 (3.13.5-1) ... Setting up python3-minimal (3.13.5-1) ... 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 ... 21199 files and directories currently installed.) Preparing to unpack .../000-python3_3.13.5-1_amd64.deb ... Unpacking python3 (3.13.5-1) ... Selecting previously unselected package sensible-utils. Preparing to unpack .../001-sensible-utils_0.0.25_all.deb ... Unpacking sensible-utils (0.0.25) ... Selecting previously unselected package openssl. Preparing to unpack .../002-openssl_3.5.1-1_amd64.deb ... Unpacking openssl (3.5.1-1) ... Selecting previously unselected package ca-certificates. Preparing to unpack .../003-ca-certificates_20250419_all.deb ... Unpacking ca-certificates (20250419) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../004-libmagic-mgc_1%3a5.46-5_amd64.deb ... Unpacking libmagic-mgc (1:5.46-5) ... Selecting previously unselected package libmagic1t64:amd64. Preparing to unpack .../005-libmagic1t64_1%3a5.46-5_amd64.deb ... Unpacking libmagic1t64:amd64 (1:5.46-5) ... Selecting previously unselected package file. Preparing to unpack .../006-file_1%3a5.46-5_amd64.deb ... Unpacking file (1:5.46-5) ... Selecting previously unselected package gettext-base. Preparing to unpack .../007-gettext-base_0.23.1-2_amd64.deb ... Unpacking gettext-base (0.23.1-2) ... Selecting previously unselected package libuchardet0:amd64. Preparing to unpack .../008-libuchardet0_0.0.8-1+b2_amd64.deb ... Unpacking libuchardet0:amd64 (0.0.8-1+b2) ... Selecting previously unselected package groff-base. Preparing to unpack .../009-groff-base_1.23.0-9_amd64.deb ... Unpacking groff-base (1.23.0-9) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../010-bsdextrautils_2.41-5_amd64.deb ... Unpacking bsdextrautils (2.41-5) ... Selecting previously unselected package libpipeline1:amd64. Preparing to unpack .../011-libpipeline1_1.5.8-1_amd64.deb ... Unpacking libpipeline1:amd64 (1.5.8-1) ... Selecting previously unselected package man-db. Preparing to unpack .../012-man-db_2.13.1-1_amd64.deb ... Unpacking man-db (2.13.1-1) ... Selecting previously unselected package architecture-properties:amd64. Preparing to unpack .../013-architecture-properties_0.2.6_amd64.deb ... Unpacking architecture-properties:amd64 (0.2.6) ... Selecting previously unselected package m4. Preparing to unpack .../014-m4_1.4.19-8_amd64.deb ... Unpacking m4 (1.4.19-8) ... Selecting previously unselected package autoconf. Preparing to unpack .../015-autoconf_2.72-3.1_all.deb ... Unpacking autoconf (2.72-3.1) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../016-autotools-dev_20240727.1_all.deb ... Unpacking autotools-dev (20240727.1) ... Selecting previously unselected package automake. Preparing to unpack .../017-automake_1%3a1.17-4_all.deb ... Unpacking automake (1:1.17-4) ... Selecting previously unselected package autopoint. Preparing to unpack .../018-autopoint_0.23.1-2_all.deb ... Unpacking autopoint (0.23.1-2) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../019-libdebhelper-perl_13.24.2_all.deb ... Unpacking libdebhelper-perl (13.24.2) ... Selecting previously unselected package libtool. Preparing to unpack .../020-libtool_2.5.4-4_all.deb ... Unpacking libtool (2.5.4-4) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../021-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../022-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../023-libfile-stripnondeterminism-perl_1.14.1-2_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.14.1-2) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../024-dh-strip-nondeterminism_1.14.1-2_all.deb ... Unpacking dh-strip-nondeterminism (1.14.1-2) ... Selecting previously unselected package libelf1t64:amd64. Preparing to unpack .../025-libelf1t64_0.192-4_amd64.deb ... Unpacking libelf1t64:amd64 (0.192-4) ... Selecting previously unselected package dwz. Preparing to unpack .../026-dwz_0.15-1+b1_amd64.deb ... Unpacking dwz (0.15-1+b1) ... Selecting previously unselected package libunistring5:amd64. Preparing to unpack .../027-libunistring5_1.3-2_amd64.deb ... Unpacking libunistring5:amd64 (1.3-2) ... Selecting previously unselected package libxml2:amd64. Preparing to unpack .../028-libxml2_2.12.7+dfsg+really2.9.14-2.1_amd64.deb ... Unpacking libxml2:amd64 (2.12.7+dfsg+really2.9.14-2.1) ... Selecting previously unselected package gettext. Preparing to unpack .../029-gettext_0.23.1-2_amd64.deb ... Unpacking gettext (0.23.1-2) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../030-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 .../031-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../032-debhelper_13.24.2_all.deb ... Unpacking debhelper (13.24.2) ... Selecting previously unselected package dh-python. Preparing to unpack .../033-dh-python_6.20250414_all.deb ... Unpacking dh-python (6.20250414) ... Selecting previously unselected package geoip-database. Preparing to unpack .../034-geoip-database_20250401-1_all.deb ... Unpacking geoip-database (20250401-1) ... Selecting previously unselected package libbrotli1:amd64. Preparing to unpack .../035-libbrotli1_1.1.0-2+b7_amd64.deb ... Unpacking libbrotli1:amd64 (1.1.0-2+b7) ... Selecting previously unselected package libdeflate0:amd64. Preparing to unpack .../036-libdeflate0_1.23-2_amd64.deb ... Unpacking libdeflate0:amd64 (1.23-2) ... Selecting previously unselected package libdouble-conversion3:amd64. Preparing to unpack .../037-libdouble-conversion3_3.3.1-1_amd64.deb ... Unpacking libdouble-conversion3:amd64 (3.3.1-1) ... Selecting previously unselected package libpng16-16t64:amd64. Preparing to unpack .../038-libpng16-16t64_1.6.48-1_amd64.deb ... Unpacking libpng16-16t64:amd64 (1.6.48-1) ... Selecting previously unselected package libfreetype6:amd64. Preparing to unpack .../039-libfreetype6_2.13.3+dfsg-1_amd64.deb ... Unpacking libfreetype6:amd64 (2.13.3+dfsg-1) ... Selecting previously unselected package libfribidi0:amd64. Preparing to unpack .../040-libfribidi0_1.0.16-1_amd64.deb ... Unpacking libfribidi0:amd64 (1.0.16-1) ... Selecting previously unselected package libgeoip1t64:amd64. Preparing to unpack .../041-libgeoip1t64_1.6.12-11.1+b1_amd64.deb ... Unpacking libgeoip1t64:amd64 (1.6.12-11.1+b1) ... Selecting previously unselected package libglib2.0-0t64:amd64. Preparing to unpack .../042-libglib2.0-0t64_2.84.3-1_amd64.deb ... Unpacking libglib2.0-0t64:amd64 (2.84.3-1) ... Selecting previously unselected package libgraphite2-3:amd64. Preparing to unpack .../043-libgraphite2-3_1.3.14-2+b1_amd64.deb ... Unpacking libgraphite2-3:amd64 (1.3.14-2+b1) ... Selecting previously unselected package libharfbuzz0b:amd64. Preparing to unpack .../044-libharfbuzz0b_10.2.0-1+b1_amd64.deb ... Unpacking libharfbuzz0b:amd64 (10.2.0-1+b1) ... Selecting previously unselected package libimagequant0:amd64. Preparing to unpack .../045-libimagequant0_2.18.0-1+b2_amd64.deb ... Unpacking libimagequant0:amd64 (2.18.0-1+b2) ... Selecting previously unselected package libjbig0:amd64. Preparing to unpack .../046-libjbig0_2.1-6.1+b2_amd64.deb ... Unpacking libjbig0:amd64 (2.1-6.1+b2) ... Selecting previously unselected package libjpeg62-turbo:amd64. Preparing to unpack .../047-libjpeg62-turbo_1%3a2.1.5-4_amd64.deb ... Unpacking libjpeg62-turbo:amd64 (1:2.1.5-4) ... Selecting previously unselected package liblcms2-2:amd64. Preparing to unpack .../048-liblcms2-2_2.16-2_amd64.deb ... Unpacking liblcms2-2:amd64 (2.16-2) ... Selecting previously unselected package liblerc4:amd64. Preparing to unpack .../049-liblerc4_4.0.0+ds-5_amd64.deb ... Unpacking liblerc4:amd64 (4.0.0+ds-5) ... Selecting previously unselected package libopenjp2-7:amd64. Preparing to unpack .../050-libopenjp2-7_2.5.3-2_amd64.deb ... Unpacking libopenjp2-7:amd64 (2.5.3-2) ... Selecting previously unselected package libraqm0:amd64. Preparing to unpack .../051-libraqm0_0.10.2-1_amd64.deb ... Unpacking libraqm0:amd64 (0.10.2-1) ... Selecting previously unselected package libsharpyuv0:amd64. Preparing to unpack .../052-libsharpyuv0_1.5.0-0.1_amd64.deb ... Unpacking libsharpyuv0:amd64 (1.5.0-0.1) ... Selecting previously unselected package libsnappy1v5:amd64. Preparing to unpack .../053-libsnappy1v5_1.2.2-1_amd64.deb ... Unpacking libsnappy1v5:amd64 (1.2.2-1) ... Selecting previously unselected package libsodium23:amd64. Preparing to unpack .../054-libsodium23_1.0.18-1+b2_amd64.deb ... Unpacking libsodium23:amd64 (1.0.18-1+b2) ... Selecting previously unselected package libwebp7:amd64. Preparing to unpack .../055-libwebp7_1.5.0-0.1_amd64.deb ... Unpacking libwebp7:amd64 (1.5.0-0.1) ... Selecting previously unselected package libtiff6:amd64. Preparing to unpack .../056-libtiff6_4.7.0-3_amd64.deb ... Unpacking libtiff6:amd64 (4.7.0-3) ... Selecting previously unselected package libwebpdemux2:amd64. Preparing to unpack .../057-libwebpdemux2_1.5.0-0.1_amd64.deb ... Unpacking libwebpdemux2:amd64 (1.5.0-0.1) ... Selecting previously unselected package libwebpmux3:amd64. Preparing to unpack .../058-libwebpmux3_1.5.0-0.1_amd64.deb ... Unpacking libwebpmux3:amd64 (1.5.0-0.1) ... Selecting previously unselected package libxau6:amd64. Preparing to unpack .../059-libxau6_1%3a1.0.11-1_amd64.deb ... Unpacking libxau6:amd64 (1:1.0.11-1) ... Selecting previously unselected package libxdmcp6:amd64. Preparing to unpack .../060-libxdmcp6_1%3a1.1.5-1_amd64.deb ... Unpacking libxdmcp6:amd64 (1:1.1.5-1) ... Selecting previously unselected package libxcb1:amd64. Preparing to unpack .../061-libxcb1_1.17.0-2+b1_amd64.deb ... Unpacking libxcb1:amd64 (1.17.0-2+b1) ... Selecting previously unselected package libyaml-0-2:amd64. Preparing to unpack .../062-libyaml-0-2_0.2.5-2_amd64.deb ... Unpacking libyaml-0-2:amd64 (0.2.5-2) ... Selecting previously unselected package python3-attr. Preparing to unpack .../063-python3-attr_25.3.0-1_all.deb ... Unpacking python3-attr (25.3.0-1) ... Selecting previously unselected package python3-base58. Preparing to unpack .../064-python3-base58_1.0.3-2_all.deb ... Unpacking python3-base58 (1.0.3-2) ... Selecting previously unselected package python3-cbor. Preparing to unpack .../065-python3-cbor_1.0.0-1.2+b5_amd64.deb ... Unpacking python3-cbor (1.0.0-1.2+b5) ... Selecting previously unselected package python3-cffi-backend:amd64. Preparing to unpack .../066-python3-cffi-backend_1.17.1-3_amd64.deb ... Unpacking python3-cffi-backend:amd64 (1.17.1-3) ... Selecting previously unselected package python3-ply. Preparing to unpack .../067-python3-ply_3.11-9_all.deb ... Unpacking python3-ply (3.11-9) ... Selecting previously unselected package python3-pycparser. Preparing to unpack .../068-python3-pycparser_2.22-2_all.deb ... Unpacking python3-pycparser (2.22-2) ... Selecting previously unselected package python3-cffi. Preparing to unpack .../069-python3-cffi_1.17.1-3_all.deb ... Unpacking python3-cffi (1.17.1-3) ... Selecting previously unselected package python3-bcrypt. Preparing to unpack .../070-python3-bcrypt_4.2.0-2.1+b1_amd64.deb ... Unpacking python3-bcrypt (4.2.0-2.1+b1) ... Selecting previously unselected package python3-cryptography. Preparing to unpack .../071-python3-cryptography_43.0.0-3_amd64.deb ... Unpacking python3-cryptography (43.0.0-3) ... Selecting previously unselected package python3-ecdsa. Preparing to unpack .../072-python3-ecdsa_0.19.1-1_all.deb ... Unpacking python3-ecdsa (0.19.1-1) ... Selecting previously unselected package python3-flatbuffers. Preparing to unpack .../073-python3-flatbuffers_23.5.26+dfsg-4_all.deb ... Unpacking python3-flatbuffers (23.5.26+dfsg-4) ... Selecting previously unselected package python3-idna. Preparing to unpack .../074-python3-idna_3.10-1_all.deb ... Unpacking python3-idna (3.10-1) ... Selecting previously unselected package python3-hyperlink. Preparing to unpack .../075-python3-hyperlink_21.0.0-6_all.deb ... Unpacking python3-hyperlink (21.0.0-6) ... Selecting previously unselected package python3-lz4. Preparing to unpack .../076-python3-lz4_4.4.0+dfsg-2_amd64.deb ... Unpacking python3-lz4 (4.4.0+dfsg-2) ... Selecting previously unselected package python3-mnemonic. Preparing to unpack .../077-python3-mnemonic_0.21-2_all.deb ... Unpacking python3-mnemonic (0.21-2) ... Selecting previously unselected package python3-msgpack. Preparing to unpack .../078-python3-msgpack_1.0.3-3+b4_amd64.deb ... Unpacking python3-msgpack (1.0.3-3+b4) ... Selecting previously unselected package python3-nacl. Preparing to unpack .../079-python3-nacl_1.5.0-7_amd64.deb ... Unpacking python3-nacl (1.5.0-7) ... Selecting previously unselected package python3-typing-extensions. Preparing to unpack .../080-python3-typing-extensions_4.13.2-1_all.deb ... Unpacking python3-typing-extensions (4.13.2-1) ... Selecting previously unselected package python3-openssl. Preparing to unpack .../081-python3-openssl_25.0.0-1_all.deb ... Unpacking python3-openssl (25.0.0-1) ... Selecting previously unselected package python3-legacycrypt. Preparing to unpack .../082-python3-legacycrypt_0.3-2_all.deb ... Unpacking python3-legacycrypt (0.3-2) ... Selecting previously unselected package python3-passlib. Preparing to unpack .../083-python3-passlib_1.7.4-6_all.deb ... Unpacking python3-passlib (1.7.4-6) ... Selecting previously unselected package python3-pyqrcode. Preparing to unpack .../084-python3-pyqrcode_1.2.1-4_all.deb ... Unpacking python3-pyqrcode (1.2.1-4) ... Selecting previously unselected package python3-pyasn1. Preparing to unpack .../085-python3-pyasn1_0.6.1-1_all.deb ... Unpacking python3-pyasn1 (0.6.1-1) ... Selecting previously unselected package python3-pyasn1-modules. Preparing to unpack .../086-python3-pyasn1-modules_0.4.1-2_all.deb ... Unpacking python3-pyasn1-modules (0.4.1-2) ... Selecting previously unselected package python3-service-identity. Preparing to unpack .../087-python3-service-identity_24.2.0-1_all.deb ... Unpacking python3-service-identity (24.2.0-1) ... Selecting previously unselected package python3-snappy. Preparing to unpack .../088-python3-snappy_0.5.3-1.2+b5_amd64.deb ... Unpacking python3-snappy (0.5.3-1.2+b5) ... Selecting previously unselected package python3-sortedcontainers. Preparing to unpack .../089-python3-sortedcontainers_2.4.0-2_all.deb ... Unpacking python3-sortedcontainers (2.4.0-2) ... Selecting previously unselected package python3-trie. Preparing to unpack .../090-python3-trie_0.4.0+ds-1_all.deb ... Unpacking python3-trie (0.4.0+ds-1) ... Selecting previously unselected package python3-hamcrest. Preparing to unpack .../091-python3-hamcrest_2.1.0-1_all.deb ... Unpacking python3-hamcrest (2.1.0-1) ... Selecting previously unselected package python3-automat. Preparing to unpack .../092-python3-automat_25.4.16-1_all.deb ... Unpacking python3-automat (25.4.16-1) ... Selecting previously unselected package python3-constantly. Preparing to unpack .../093-python3-constantly_23.10.4-2_all.deb ... Unpacking python3-constantly (23.10.4-2) ... Selecting previously unselected package python3-packaging. Preparing to unpack .../094-python3-packaging_25.0-1_all.deb ... Unpacking python3-packaging (25.0-1) ... Selecting previously unselected package python3-incremental. Preparing to unpack .../095-python3-incremental_24.7.2-3_all.deb ... Unpacking python3-incremental (24.7.2-3) ... Selecting previously unselected package python3-autocommand. Preparing to unpack .../096-python3-autocommand_2.2.2-3_all.deb ... Unpacking python3-autocommand (2.2.2-3) ... Selecting previously unselected package python3-more-itertools. Preparing to unpack .../097-python3-more-itertools_10.7.0-1_all.deb ... Unpacking python3-more-itertools (10.7.0-1) ... Selecting previously unselected package python3-typeguard. Preparing to unpack .../098-python3-typeguard_4.4.2-1_all.deb ... Unpacking python3-typeguard (4.4.2-1) ... Selecting previously unselected package python3-inflect. Preparing to unpack .../099-python3-inflect_7.3.1-2_all.deb ... Unpacking python3-inflect (7.3.1-2) ... Selecting previously unselected package python3-jaraco.functools. Preparing to unpack .../100-python3-jaraco.functools_4.1.0-1_all.deb ... Unpacking python3-jaraco.functools (4.1.0-1) ... Selecting previously unselected package python3-jaraco.text. Preparing to unpack .../101-python3-jaraco.text_4.0.0-1_all.deb ... Unpacking python3-jaraco.text (4.0.0-1) ... Selecting previously unselected package python3-zipp. Preparing to unpack .../102-python3-zipp_3.21.0-1_all.deb ... Unpacking python3-zipp (3.21.0-1) ... Selecting previously unselected package python3-setuptools. Preparing to unpack .../103-python3-setuptools_78.1.1-0.1_all.deb ... Unpacking python3-setuptools (78.1.1-0.1) ... Selecting previously unselected package python3-jaraco.context. Preparing to unpack .../104-python3-jaraco.context_6.0.1-1_all.deb ... Unpacking python3-jaraco.context (6.0.1-1) ... Selecting previously unselected package python3-pkg-resources. Preparing to unpack .../105-python3-pkg-resources_78.1.1-0.1_all.deb ... Unpacking python3-pkg-resources (78.1.1-0.1) ... Selecting previously unselected package python3-zope.interface. Preparing to unpack .../106-python3-zope.interface_7.2-1+b1_amd64.deb ... Unpacking python3-zope.interface (7.2-1+b1) ... Selecting previously unselected package python3-twisted. Preparing to unpack .../107-python3-twisted_24.11.0-1_all.deb ... Unpacking python3-twisted (24.11.0-1) ... Selecting previously unselected package python3-txaio. Preparing to unpack .../108-python3-txaio_23.1.1-4_all.deb ... Unpacking python3-txaio (23.1.1-4) ... Selecting previously unselected package python3-u-msgpack. Preparing to unpack .../109-python3-u-msgpack_2.8.0-2_all.deb ... Unpacking python3-u-msgpack (2.8.0-2) ... Selecting previously unselected package python3-ubjson. Preparing to unpack .../110-python3-ubjson_0.16.1-4+b4_amd64.deb ... Unpacking python3-ubjson (0.16.1-4+b4) ... Selecting previously unselected package python3-ujson:amd64. Preparing to unpack .../111-python3-ujson_5.10.0-1+b4_amd64.deb ... Unpacking python3-ujson:amd64 (5.10.0-1+b4) ... Selecting previously unselected package python3-wsaccel. Preparing to unpack .../112-python3-wsaccel_0.6.3-5+b1_amd64.deb ... Unpacking python3-wsaccel (0.6.3-5+b1) ... Selecting previously unselected package python3-autobahn. Preparing to unpack .../113-python3-autobahn_23.1.2+dfsg1-2_all.deb ... Unpacking python3-autobahn (23.1.2+dfsg1-2) ... Selecting previously unselected package python3-click. Preparing to unpack .../114-python3-click_8.2.0+0.really.8.1.8-1_all.deb ... Unpacking python3-click (8.2.0+0.really.8.1.8-1) ... Selecting previously unselected package python3-humanize. Preparing to unpack .../115-python3-humanize_4.12.1-1_all.deb ... Unpacking python3-humanize (4.12.1-1) ... Selecting previously unselected package python3-iterable-io. Preparing to unpack .../116-python3-iterable-io_1.0.0-3_all.deb ... Unpacking python3-iterable-io (1.0.0-3) ... Selecting previously unselected package python3-pil:amd64. Preparing to unpack .../117-python3-pil_11.1.0-5+b1_amd64.deb ... Unpacking python3-pil:amd64 (11.1.0-5+b1) ... Selecting previously unselected package python3-qrcode. Preparing to unpack .../118-python3-qrcode_8.2-1_all.deb ... Unpacking python3-qrcode (8.2-1) ... Selecting previously unselected package python3-spake2. Preparing to unpack .../119-python3-spake2_0.9-1_all.deb ... Unpacking python3-spake2 (0.9-1) ... Selecting previously unselected package python3-tqdm. Preparing to unpack .../120-python3-tqdm_4.67.1-5_all.deb ... Unpacking python3-tqdm (4.67.1-5) ... Selecting previously unselected package python3-geoip:amd64. Preparing to unpack .../121-python3-geoip_1.3.2-6+b9_amd64.deb ... Unpacking python3-geoip:amd64 (1.3.2-6+b9) ... Selecting previously unselected package python3-txtorcon. Preparing to unpack .../122-python3-txtorcon_24.8.0-1.1_all.deb ... Unpacking python3-txtorcon (24.8.0-1.1) ... Selecting previously unselected package python3-zipstream-ng. Preparing to unpack .../123-python3-zipstream-ng_1.8.0-1_all.deb ... Unpacking python3-zipstream-ng (1.8.0-1) ... Selecting previously unselected package magic-wormhole. Preparing to unpack .../124-magic-wormhole_0.18.0-1_all.deb ... Unpacking magic-wormhole (0.18.0-1) ... Selecting previously unselected package python3-pyproject-hooks. Preparing to unpack .../125-python3-pyproject-hooks_1.2.0-1_all.deb ... Unpacking python3-pyproject-hooks (1.2.0-1) ... Selecting previously unselected package python3-wheel. Preparing to unpack .../126-python3-wheel_0.46.1-2_all.deb ... Unpacking python3-wheel (0.46.1-2) ... Selecting previously unselected package python3-build. Preparing to unpack .../127-python3-build_1.2.2-2_all.deb ... Unpacking python3-build (1.2.2-2) ... Selecting previously unselected package python3-installer. Preparing to unpack .../128-python3-installer_0.7.0+dfsg1-3_all.deb ... Unpacking python3-installer (0.7.0+dfsg1-3) ... Selecting previously unselected package pybuild-plugin-pyproject. Preparing to unpack .../129-pybuild-plugin-pyproject_6.20250414_all.deb ... Unpacking pybuild-plugin-pyproject (6.20250414) ... Selecting previously unselected package python3-all. Preparing to unpack .../130-python3-all_3.13.5-1_amd64.deb ... Unpacking python3-all (3.13.5-1) ... Selecting previously unselected package python3-boltons. Preparing to unpack .../131-python3-boltons_25.0.0-1_all.deb ... Unpacking python3-boltons (25.0.0-1) ... Selecting previously unselected package python3-soupsieve. Preparing to unpack .../132-python3-soupsieve_2.7-1_all.deb ... Unpacking python3-soupsieve (2.7-1) ... Selecting previously unselected package python3-bs4. Preparing to unpack .../133-python3-bs4_4.13.4-2_all.deb ... Unpacking python3-bs4 (4.13.4-2) ... Selecting previously unselected package python3-cbor2. Preparing to unpack .../134-python3-cbor2_5.6.5-1_amd64.deb ... Unpacking python3-cbor2 (5.6.5-1) ... Selecting previously unselected package python3-certifi. Preparing to unpack .../135-python3-certifi_2025.1.31+ds-1_all.deb ... Unpacking python3-certifi (2025.1.31+ds-1) ... Selecting previously unselected package python3-chardet. Preparing to unpack .../136-python3-chardet_5.2.0+dfsg-2_all.deb ... Unpacking python3-chardet (5.2.0+dfsg-2) ... Selecting previously unselected package python3-charset-normalizer. Preparing to unpack .../137-python3-charset-normalizer_3.4.2-1_amd64.deb ... Unpacking python3-charset-normalizer (3.4.2-1) ... Selecting previously unselected package python3-collections-extended. Preparing to unpack .../138-python3-collections-extended_2.0.2-2_all.deb ... Unpacking python3-collections-extended (2.0.2-2) ... Selecting previously unselected package python3-dateutil. Preparing to unpack .../139-python3-dateutil_2.9.0-4_all.deb ... Unpacking python3-dateutil (2.9.0-4) ... Selecting previously unselected package python3-decorator. Preparing to unpack .../140-python3-decorator_5.2.1-2_all.deb ... Unpacking python3-decorator (5.2.1-2) ... Selecting previously unselected package python3-pyrsistent:amd64. Preparing to unpack .../141-python3-pyrsistent_0.20.0-2+b1_amd64.deb ... Unpacking python3-pyrsistent:amd64 (0.20.0-2+b1) ... Selecting previously unselected package python3-eliot. Preparing to unpack .../142-python3-eliot_1.16.0-1_all.deb ... Unpacking python3-eliot (1.16.0-1) ... Selecting previously unselected package python3-exceptiongroup. Preparing to unpack .../143-python3-exceptiongroup_1.2.2-1_all.deb ... Unpacking python3-exceptiongroup (1.2.2-1) ... Selecting previously unselected package python3-filelock. Preparing to unpack .../144-python3-filelock_3.18.0-1_all.deb ... Unpacking python3-filelock (3.18.0-1) ... Selecting previously unselected package python3-pbr. Preparing to unpack .../145-python3-pbr_6.1.1-2_all.deb ... Unpacking python3-pbr (6.1.1-2) ... Selecting previously unselected package python3-testtools. Preparing to unpack .../146-python3-testtools_2.7.2-5_all.deb ... Unpacking python3-testtools (2.7.2-5) ... Selecting previously unselected package python3-fixtures. Preparing to unpack .../147-python3-fixtures_4.1.0-3_all.deb ... Unpacking python3-fixtures (4.1.0-3) ... Selecting previously unselected package python3-six. Preparing to unpack .../148-python3-six_1.17.0-1_all.deb ... Unpacking python3-six (1.17.0-1) ... Selecting previously unselected package python3-foolscap. Preparing to unpack .../149-python3-foolscap_24.9.0-3_all.deb ... Unpacking python3-foolscap (24.9.0-3) ... Selecting previously unselected package python3-pathspec. Preparing to unpack .../150-python3-pathspec_0.12.1-1_all.deb ... Unpacking python3-pathspec (0.12.1-1) ... Selecting previously unselected package python3-pluggy. Preparing to unpack .../151-python3-pluggy_1.5.0-1_all.deb ... Unpacking python3-pluggy (1.5.0-1) ... Selecting previously unselected package python3-trove-classifiers. Preparing to unpack .../152-python3-trove-classifiers_2025.4.28.22-1_all.deb ... Unpacking python3-trove-classifiers (2025.4.28.22-1) ... Selecting previously unselected package python3-hatchling. Preparing to unpack .../153-python3-hatchling_1.27.0-1_all.deb ... Unpacking python3-hatchling (1.27.0-1) ... Selecting previously unselected package python3-setuptools-scm. Preparing to unpack .../154-python3-setuptools-scm_8.2.1-1_all.deb ... Unpacking python3-setuptools-scm (8.2.1-1) ... Selecting previously unselected package python3-hatch-vcs. Preparing to unpack .../155-python3-hatch-vcs_0.4.0-1_all.deb ... Unpacking python3-hatch-vcs (0.4.0-1) ... Selecting previously unselected package python3-webencodings. Preparing to unpack .../156-python3-webencodings_0.5.1-5_all.deb ... Unpacking python3-webencodings (0.5.1-5) ... Selecting previously unselected package python3-html5lib. Preparing to unpack .../157-python3-html5lib_1.2-2_all.deb ... Unpacking python3-html5lib (1.2-2) ... Selecting previously unselected package python3-hypothesis. Preparing to unpack .../158-python3-hypothesis_6.130.5-2_all.deb ... Unpacking python3-hypothesis (6.130.5-2) ... Selecting previously unselected package python3-iniconfig. Preparing to unpack .../159-python3-iniconfig_1.1.1-2_all.deb ... Unpacking python3-iniconfig (1.1.1-2) ... Selecting previously unselected package python3-tubes. Preparing to unpack .../160-python3-tubes_0.2.1-5_all.deb ... Unpacking python3-tubes (0.2.1-5) ... Selecting previously unselected package python3-markupsafe. Preparing to unpack .../161-python3-markupsafe_2.1.5-1+b3_amd64.deb ... Unpacking python3-markupsafe (2.1.5-1+b3) ... Selecting previously unselected package python3-werkzeug. Preparing to unpack .../162-python3-werkzeug_3.1.3-2_all.deb ... Unpacking python3-werkzeug (3.1.3-2) ... Selecting previously unselected package python3-klein. Preparing to unpack .../163-python3-klein_24.8.0-1_all.deb ... Unpacking python3-klein (24.8.0-1) ... Selecting previously unselected package python3-legacy-cgi. Preparing to unpack .../164-python3-legacy-cgi_2.6.3-1_all.deb ... Unpacking python3-legacy-cgi (2.6.3-1) ... Selecting previously unselected package python3-netifaces:amd64. Preparing to unpack .../165-python3-netifaces_0.11.0-2+b6_amd64.deb ... Unpacking python3-netifaces:amd64 (0.11.0-2+b6) ... Selecting previously unselected package python3-parsley. Preparing to unpack .../166-python3-parsley_1.3-3_all.deb ... Unpacking python3-parsley (1.3-3) ... Selecting previously unselected package python3-prometheus-client. Preparing to unpack .../167-python3-prometheus-client_0.21.1+ds1-1_all.deb ... Unpacking python3-prometheus-client (0.21.1+ds1-1) ... Selecting previously unselected package python3-psutil. Preparing to unpack .../168-python3-psutil_7.0.0-2_amd64.deb ... Unpacking python3-psutil (7.0.0-2) ... Selecting previously unselected package python3-pycddl. Preparing to unpack .../169-python3-pycddl_0.6.4+ds-1_amd64.deb ... Unpacking python3-pycddl (0.6.4+ds-1) ... Selecting previously unselected package python3-pytest. Preparing to unpack .../170-python3-pytest_8.3.5-2_all.deb ... Unpacking python3-pytest (8.3.5-2) ... Selecting previously unselected package python3-pyutil. Preparing to unpack .../171-python3-pyutil_3.3.2-5_all.deb ... Unpacking python3-pyutil (3.3.2-5) ... Selecting previously unselected package python3-urllib3. Preparing to unpack .../172-python3-urllib3_2.3.0-3_all.deb ... Unpacking python3-urllib3 (2.3.0-3) ... Selecting previously unselected package python3-requests. Preparing to unpack .../173-python3-requests_2.32.3+dfsg-5_all.deb ... Unpacking python3-requests (2.32.3+dfsg-5) ... Selecting previously unselected package python3-tenacity. Preparing to unpack .../174-python3-tenacity_8.4.2+really8.4.1-2_all.deb ... Unpacking python3-tenacity (8.4.2+really8.4.1-2) ... Selecting previously unselected package python3-treq. Preparing to unpack .../175-python3-treq_24.9.1-1_all.deb ... Unpacking python3-treq (24.9.1-1) ... Selecting previously unselected package python3-txi2p-tahoe. Preparing to unpack .../176-python3-txi2p-tahoe_0.3.7-4_all.deb ... Unpacking python3-txi2p-tahoe (0.3.7-4) ... Selecting previously unselected package python3-yaml. Preparing to unpack .../177-python3-yaml_6.0.2-1+b2_amd64.deb ... Unpacking python3-yaml (6.0.2-1+b2) ... Selecting previously unselected package python3-zfec. Preparing to unpack .../178-python3-zfec_1.5.7.4-0.2+b1_amd64.deb ... Unpacking python3-zfec (1.5.7.4-0.2+b1) ... Setting up media-types (13.0.0) ... Setting up libpipeline1:amd64 (1.5.8-1) ... Setting up libgraphite2-3:amd64 (1.3.14-2+b1) ... Setting up liblcms2-2:amd64 (2.16-2) ... Setting up libsharpyuv0:amd64 (1.5.0-0.1) ... Setting up libxau6:amd64 (1:1.0.11-1) ... Setting up libxdmcp6:amd64 (1:1.1.5-1) ... Setting up libdouble-conversion3:amd64 (3.3.1-1) ... Setting up libxcb1:amd64 (1.17.0-2+b1) ... Setting up libsodium23:amd64 (1.0.18-1+b2) ... Setting up liblerc4:amd64 (4.0.0+ds-5) ... Setting up bsdextrautils (2.41-5) ... Setting up libmagic-mgc (1:5.46-5) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libyaml-0-2:amd64 (0.2.5-2) ... Setting up architecture-properties:amd64 (0.2.6) ... Setting up libdebhelper-perl (13.24.2) ... Setting up libbrotli1:amd64 (1.1.0-2+b7) ... Setting up libmagic1t64:amd64 (1:5.46-5) ... Setting up libdeflate0:amd64 (1.23-2) ... Setting up gettext-base (0.23.1-2) ... Setting up m4 (1.4.19-8) ... Setting up libgeoip1t64:amd64 (1.6.12-11.1+b1) ... Setting up file (1:5.46-5) ... Setting up libjbig0:amd64 (2.1-6.1+b2) ... Setting up libelf1t64:amd64 (0.192-4) ... Setting up libsnappy1v5:amd64 (1.2.2-1) ... Setting up tzdata (2025b-4) ... Current default time zone: 'Etc/UTC' Local time is now: Tue Sep 8 23:36:30 UTC 2026. Universal Time is now: Tue Sep 8 23:36:30 UTC 2026. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up autotools-dev (20240727.1) ... Setting up libjpeg62-turbo:amd64 (1:2.1.5-4) ... Setting up libfribidi0:amd64 (1.0.16-1) ... Setting up libimagequant0:amd64 (2.18.0-1+b2) ... Setting up libunistring5:amd64 (1.3-2) ... Setting up libpng16-16t64:amd64 (1.6.48-1) ... Setting up autopoint (0.23.1-2) ... Setting up autoconf (2.72-3.1) ... Setting up libwebp7:amd64 (1.5.0-0.1) ... Setting up libffi8:amd64 (3.4.8-2) ... Setting up dwz (0.15-1+b1) ... Setting up sensible-utils (0.0.25) ... Setting up libtiff6:amd64 (4.7.0-3) ... Setting up libuchardet0:amd64 (0.0.8-1+b2) ... Setting up libopenjp2-7:amd64 (2.5.3-2) ... Setting up netbase (6.5) ... Setting up geoip-database (20250401-1) ... Setting up openssl (3.5.1-1) ... Setting up libwebpmux3:amd64 (1.5.0-0.1) ... Setting up readline-common (8.2-6) ... Setting up libxml2:amd64 (2.12.7+dfsg+really2.9.14-2.1) ... Setting up automake (1:1.17-4) ... update-alternatives: using /usr/bin/automake-1.17 to provide /usr/bin/automake (automake) in auto mode Setting up libfile-stripnondeterminism-perl (1.14.1-2) ... Setting up gettext (0.23.1-2) ... Setting up libtool (2.5.4-4) ... Setting up libwebpdemux2:amd64 (1.5.0-0.1) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up ca-certificates (20250419) ... Updating certificates in /etc/ssl/certs... 150 added, 0 removed; done. Setting up libglib2.0-0t64:amd64 (2.84.3-1) ... No schema files found: doing nothing. Setting up libfreetype6:amd64 (2.13.3+dfsg-1) ... Setting up libreadline8t64:amd64 (8.2-6) ... Setting up dh-strip-nondeterminism (1.14.1-2) ... Setting up groff-base (1.23.0-9) ... Setting up libharfbuzz0b:amd64 (10.2.0-1+b1) ... Setting up libpython3.13-stdlib:amd64 (3.13.5-2) ... Setting up libpython3-stdlib:amd64 (3.13.5-1) ... Setting up python3.13 (3.13.5-2) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up python3 (3.13.5-1) ... Setting up python3-sortedcontainers (2.4.0-2) ... Setting up python3-zipp (3.21.0-1) ... Setting up python3-click (8.2.0+0.really.8.1.8-1) ... Setting up python3-autocommand (2.2.2-3) ... Setting up man-db (2.13.1-1) ... Not building database; man-db/auto-update is not 'true'. Setting up python3-markupsafe (2.1.5-1+b3) ... Setting up python3-webencodings (0.5.1-5) ... Setting up python3-zipstream-ng (1.8.0-1) ... Setting up python3-ujson:amd64 (5.10.0-1+b4) ... Setting up python3-psutil (7.0.0-2) ... Setting up python3-six (1.17.0-1) ... Setting up python3-ecdsa (0.19.1-1) ... Setting up python3-decorator (5.2.1-2) ... Setting up python3-packaging (25.0-1) ... Setting up python3-chardet (5.2.0+dfsg-2) ... Setting up python3-pycddl (0.6.4+ds-1) ... Setting up python3-pyproject-hooks (1.2.0-1) ... Setting up python3-certifi (2025.1.31+ds-1) ... Setting up python3-base58 (1.0.3-2) ... Setting up python3-zfec (1.5.7.4-0.2+b1) ... Setting up python3-werkzeug (3.1.3-2) ... Setting up python3-incremental (24.7.2-3) ... Setting up libraqm0:amd64 (0.10.2-1) ... Setting up python3-idna (3.10-1) ... Setting up python3-pyqrcode (1.2.1-4) ... Setting up python3-iterable-io (1.0.0-3) ... Setting up python3-typing-extensions (4.13.2-1) ... Setting up python3-cbor2 (5.6.5-1) ... Setting up python3-html5lib (1.2-2) ... Setting up python3-legacycrypt (0.3-2) ... Setting up python3-installer (0.7.0+dfsg1-3) ... Setting up python3-urllib3 (2.3.0-3) ... Setting up python3-pluggy (1.5.0-1) ... Setting up python3-netifaces:amd64 (0.11.0-2+b6) ... Setting up python3-legacy-cgi (2.6.3-1) ... Setting up python3-pyrsistent:amd64 (0.20.0-2+b1) ... Setting up python3-trove-classifiers (2025.4.28.22-1) ... Setting up python3-exceptiongroup (1.2.2-1) ... Setting up python3-pyasn1 (0.6.1-1) ... Setting up python3-wsaccel (0.6.3-5+b1) ... Setting up python3-geoip:amd64 (1.3.2-6+b9) ... Setting up python3-snappy (0.5.3-1.2+b5) ... Setting up python3-dateutil (2.9.0-4) ... Setting up python3-mnemonic (0.21-2) ... Setting up python3-constantly (23.10.4-2) ... Setting up python3-msgpack (1.0.3-3+b4) ... Setting up python3-ubjson (0.16.1-4+b4) ... Setting up python3-trie (0.4.0+ds-1) ... Setting up python3-humanize (4.12.1-1) ... Setting up python3-collections-extended (2.0.2-2) ... Setting up python3-pathspec (0.12.1-1) ... Setting up python3-soupsieve (2.7-1) ... Setting up python3-u-msgpack (2.8.0-2) ... Setting up python3-cffi-backend:amd64 (1.17.1-3) ... Setting up python3-cbor (1.0.0-1.2+b5) ... Setting up dh-python (6.20250414) ... Setting up python3-more-itertools (10.7.0-1) ... Setting up python3-iniconfig (1.1.1-2) ... Setting up python3-attr (25.3.0-1) ... Setting up python3-filelock (3.18.0-1) ... Setting up python3-jaraco.functools (4.1.0-1) ... Setting up python3-flatbuffers (23.5.26+dfsg-4) ... Setting up python3-jaraco.context (6.0.1-1) ... Setting up python3-parsley (1.3-3) ... Setting up python3-passlib (1.7.4-6) ... Setting up python3-lz4 (4.4.0+dfsg-2) ... Setting up python3-boltons (25.0.0-1) ... Setting up python3-charset-normalizer (3.4.2-1) ... Setting up python3-pytest (8.3.5-2) ... Setting up python3-tenacity (8.4.2+really8.4.1-2) ... Setting up python3-bcrypt (4.2.0-2.1+b1) ... Setting up python3-hypothesis (6.130.5-2) ... Setting up python3-ply (3.11-9) ... Setting up python3-automat (25.4.16-1) ... Setting up python3-tqdm (4.67.1-5) ... Setting up python3-typeguard (4.4.2-1) ... Setting up python3-all (3.13.5-1) ... Setting up python3-yaml (6.0.2-1+b2) ... Setting up debhelper (13.24.2) ... Setting up python3-hamcrest (2.1.0-1) ... Setting up python3-wheel (0.46.1-2) ... Setting up python3-bs4 (4.13.4-2) ... Setting up python3-pycparser (2.22-2) ... Setting up python3-pil:amd64 (11.1.0-5+b1) ... Setting up python3-inflect (7.3.1-2) ... Setting up python3-prometheus-client (0.21.1+ds1-1) ... Setting up python3-jaraco.text (4.0.0-1) ... Setting up python3-pyasn1-modules (0.4.1-2) ... Setting up python3-cryptography (43.0.0-3) ... Setting up python3-requests (2.32.3+dfsg-5) ... Setting up python3-hyperlink (21.0.0-6) ... Setting up python3-service-identity (24.2.0-1) ... Setting up python3-hatchling (1.27.0-1) ... Setting up python3-qrcode (8.2-1) ... update-alternatives: using /usr/bin/python3-qr to provide /usr/bin/qr (qr) in auto mode Setting up python3-build (1.2.2-2) ... Setting up python3-nacl (1.5.0-7) ... Setting up python3-pkg-resources (78.1.1-0.1) ... Setting up python3-setuptools (78.1.1-0.1) ... Setting up python3-zope.interface (7.2-1+b1) ... Setting up python3-pbr (6.1.1-2) ... Setting up python3-pyutil (3.3.2-5) ... Setting up pybuild-plugin-pyproject (6.20250414) ... Setting up python3-openssl (25.0.0-1) ... Setting up python3-cffi (1.17.1-3) ... Setting up python3-setuptools-scm (8.2.1-1) ... Setting up python3-spake2 (0.9-1) ... Setting up python3-twisted (24.11.0-1) ... Setting up python3-txaio (23.1.1-4) ... Setting up python3-autobahn (23.1.2+dfsg1-2) ... Setting up python3-txi2p-tahoe (0.3.7-4) ... Setting up python3-eliot (1.16.0-1) ... Setting up python3-hatch-vcs (0.4.0-1) ... Setting up python3-testtools (2.7.2-5) ... Setting up python3-txtorcon (24.8.0-1.1) ... Setting up python3-tubes (0.2.1-5) ... Setting up python3-foolscap (24.9.0-3) ... /usr/lib/python3/dist-packages/foolscap/test/test_schema.py:104: SyntaxWarning: invalid escape sequence '\d' c5 = schema.UnicodeConstraint(regexp=re.compile("\d+\s\w+")) Setting up python3-treq (24.9.1-1) ... Setting up python3-fixtures (4.1.0-3) ... Setting up magic-wormhole (0.18.0-1) ... Setting up python3-klein (24.8.0-1) ... Processing triggers for libc-bin (2.41-12) ... Processing triggers for ca-certificates (20250419) ... 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/tahoe-lafs-1.20.0/ && 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 > ../tahoe-lafs_1.20.0-6_source.changes dpkg-buildpackage: info: source package tahoe-lafs dpkg-buildpackage: info: source version 1.20.0-6 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Andrius Merkys dpkg-source --before-build . dpkg-buildpackage: info: host architecture amd64 dpkg-source: info: using options from tahoe-lafs-1.20.0/debian/source/options: --extend-diff-ignore=^[^/]*[.]egg-info/ debian/rules clean dh clean --buildsystem pybuild dh_auto_clean -O--buildsystem=pybuild dh_autoreconf_clean -O--buildsystem=pybuild dh_clean -O--buildsystem=pybuild debian/rules binary dh binary --buildsystem pybuild dh_update_autotools_config -O--buildsystem=pybuild dh_autoreconf -O--buildsystem=pybuild dh_auto_configure -O--buildsystem=pybuild dh_auto_build -O--buildsystem=pybuild I: pybuild plugin_pyproject:129: Building wheel for python3.13 with "build" module I: pybuild base:311: python3.13 -m build --skip-dependency-check --no-isolation --wheel --outdir /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs * Building wheel... Successfully built tahoe_lafs-1.20.0-py3-none-any.whl I: pybuild plugin_pyproject:144: Unpacking wheel built for python3.13 with "installer" module dh_auto_test -O--buildsystem=pybuild I: pybuild base:311: cd /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build; python3.13 -m pytest -k 'not testing_tub' ============================= test session starts ============================== platform linux -- Python 3.13.5, pytest-8.3.5, pluggy-1.5.0 rootdir: /build/reproducible-path/tahoe-lafs-1.20.0 configfile: tox.ini plugins: typeguard-4.4.2, hypothesis-6.130.5 collected 1847 items / 1 deselected / 1846 selected allmydata/test/cli/test_admin.py ....... [ 0%] allmydata/test/cli/test_alias.py ... [ 0%] allmydata/test/cli/test_backup.py .......... [ 1%] allmydata/test/cli/test_backupdb.py ....... [ 1%] allmydata/test/cli/test_check.py ..... [ 1%] allmydata/test/cli/test_cli.py ......................................... [ 3%] ..................... [ 5%] allmydata/test/cli/test_cp.py .............. [ 5%] allmydata/test/cli/test_create.py ...................................... [ 7%] ......... [ 8%] allmydata/test/cli/test_create_alias.py .. [ 8%] allmydata/test/cli/test_grid_manager.py ................ [ 9%] allmydata/test/cli/test_invite.py .......... [ 9%] allmydata/test/cli/test_list.py ...... [ 10%] allmydata/test/cli/test_mv.py .... [ 10%] allmydata/test/cli/test_put.py .............. [ 11%] allmydata/test/cli/test_run.py ....... [ 11%] allmydata/test/cli/test_status.py ................. [ 12%] allmydata/test/mutable/test_checker.py ......................... [ 13%] allmydata/test/mutable/test_datahandle.py ... [ 14%] allmydata/test/mutable/test_different_encoding.py . [ 14%] allmydata/test/mutable/test_exceptions.py . [ 14%] allmydata/test/mutable/test_filehandle.py ..... [ 14%] allmydata/test/mutable/test_filenode.py ......................... [ 15%] allmydata/test/mutable/test_interoperability.py . [ 15%] allmydata/test/mutable/test_multiple_encodings.py . [ 15%] allmydata/test/mutable/test_multiple_versions.py .. [ 15%] allmydata/test/mutable/test_problems.py ............. [ 16%] allmydata/test/mutable/test_repair.py ................. [ 17%] allmydata/test/mutable/test_roundtrip.py ............................. [ 19%] allmydata/test/mutable/test_servermap.py ........ [ 19%] allmydata/test/mutable/test_update.py ............. [ 20%] allmydata/test/mutable/test_version.py ................... [ 21%] allmydata/test/test_abbreviate.py .......... [ 21%] allmydata/test/test_auth.py .......... [ 22%] allmydata/test/test_base32.py .... [ 22%] allmydata/test/test_base62.py ........... [ 23%] allmydata/test/test_checker.py ........ [ 23%] allmydata/test/test_client.py .......................................... [ 25%] .... [ 26%] allmydata/test/test_codec.py ... [ 26%] allmydata/test/test_common_util.py .... [ 26%] allmydata/test/test_configutil.py ............ [ 27%] allmydata/test/test_connection_status.py ...... [ 27%] allmydata/test/test_connections.py ............ [ 28%] allmydata/test/test_consumer.py .. [ 28%] allmydata/test/test_crawler.py ...... [ 28%] allmydata/test/test_crypto.py ............................. [ 30%] allmydata/test/test_deepcheck.py ...... [ 30%] allmydata/test/test_deferredutil.py .............. [ 31%] allmydata/test/test_dictutil.py ..... [ 31%] allmydata/test/test_dirnode.py ................................. [ 33%] allmydata/test/test_download.py ........................................ [ 35%] .. [ 35%] allmydata/test/test_eliotutil.py .............. [ 36%] allmydata/test/test_encode.py ...................... [ 37%] allmydata/test/test_encodingutil.py .s...............s........... [ 39%] allmydata/test/test_filenode.py ..... [ 39%] allmydata/test/test_grid_manager.py ................... [ 40%] allmydata/test/test_happiness.py .................. [ 41%] allmydata/test/test_hashtree.py ......... [ 41%] allmydata/test/test_hashutil.py ............ [ 42%] allmydata/test/test_helper.py ........ [ 42%] allmydata/test/test_humanreadable.py . [ 43%] allmydata/test/test_hung_server.py ......s.s..s.. [ 43%] allmydata/test/test_i2p_provider.py ........................... [ 45%] allmydata/test/test_immutable.py ............ [ 45%] allmydata/test/test_introducer.py ................... [ 46%] allmydata/test/test_iputil.py ..... [ 47%] allmydata/test/test_istorageserver.py .................................. [ 49%] ................................... [ 50%] allmydata/test/test_json_metadata.py ......... [ 51%] allmydata/test/test_log.py ......... [ 51%] allmydata/test/test_monitor.py ... [ 52%] allmydata/test/test_multi_introducers.py ....... [ 52%] allmydata/test/test_netstring.py .... [ 52%] allmydata/test/test_no_network.py .. [ 52%] allmydata/test/test_node.py ............................................ [ 55%] ... [ 55%] allmydata/test/test_observer.py ....... [ 55%] allmydata/test/test_openmetrics.py . [ 55%] allmydata/test/test_protocol_switch.py . [ 55%] allmydata/test/test_repairer.py ............................. [ 57%] allmydata/test/test_runner.py ................... [ 58%] allmydata/test/test_sftp.py .............. [ 59%] allmydata/test/test_spans.py ........ [ 59%] allmydata/test/test_statistics.py ......... [ 60%] allmydata/test/test_stats.py . [ 60%] allmydata/test/test_storage.py ......................................... [ 62%] ..........................................................F....... [ 65%] allmydata/test/test_storage_client.py ........................... [ 67%] allmydata/test/test_storage_http.py .................................... [ 69%] ....................F.......F. [ 70%] allmydata/test/test_storage_https.py ..... [ 71%] allmydata/test/test_storage_web.py ........................ [ 72%] allmydata/test/test_system.py .......F.FEFEFFFE [ 73%] allmydata/test/test_testing.py .... [ 73%] allmydata/test/test_time_format.py ........ [ 73%] allmydata/test/test_tor_provider.py ................................. [ 75%] allmydata/test/test_upload.py .......................................... [ 78%] ............. [ 78%] allmydata/test/test_uri.py ........................... [ 80%] allmydata/test/test_util.py .................................. [ 82%] allmydata/test/web/test_common.py .......... [ 82%] allmydata/test/web/test_grid.py ............ [ 83%] allmydata/test/web/test_introducer.py ..F.. [ 83%] allmydata/test/web/test_logs.py .. [ 83%] allmydata/test/web/test_private.py .... [ 83%] allmydata/test/web/test_root.py .... [ 84%] allmydata/test/web/test_status.py ... [ 84%] allmydata/test/web/test_util.py ...... [ 84%] allmydata/test/web/test_web.py ......FE............F...............F.... [ 86%] ................F..........FFFFF.F.F.F.FFFFF...FFFFFF..FFFFFFFFFFF..FFFF [ 90%] FF.FFF.F....FFFFF.FF..FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF [ 94%] FFFF.FF..FFFF..........FFFF.FFFFFFFFFFFFFFFFFFFFF.....FFFF.....F.......F [ 98%] E.................. [ 99%] allmydata/test/web/test_webish.py .....F...... [100%] ==================================== ERRORS ==================================== ____________ ERROR at teardown of HTTPSystemTest.test_mutable_mdmf _____________ 'NoneType' object is not iterable During handling of the above exception, another exception occurred: NOTE: Incompatible Exception Representation, displaying natively: twisted.trial.util.DirtyReactorAggregateError: Reactor was unclean. DelayedCalls: (set twisted.internet.base.DelayedCall.debug = True to debug) )> (HTTPNativeStorageServer._connect, *(), **{})()> )> (HTTPNativeStorageServer._connect, *(), **{})()> (HTTPNativeStorageServer._connect, *(), **{})()> )> (HTTPNativeStorageServer._connect, *(), **{})()> (HTTPNativeStorageServer._connect, *(), **{})()> (HTTPNativeStorageServer._connect, *(), **{})()> )> (HTTPNativeStorageServer._connect, *(), **{})()> (HTTPNativeStorageServer._connect, *(), **{})()> (HTTPNativeStorageServer._connect, *(), **{})()> (HTTPNativeStorageServer._connect, *(), **{})()> )> .timeItOut()> (HTTPNativeStorageServer._connect, *(), **{})()> (HTTPNativeStorageServer._connect, *(), **{})()> (HTTPNativeStorageServer._connect, *(), **{})()> (HTTPNativeStorageServer._connect, *(), **{})()> )> (HTTPNativeStorageServer._connect, *(), **{})()> (CPUUsageMonitor.check, *(), **{})()> (CPUUsageMonitor.check, *(), **{})()> (HTTPNativeStorageServer._connect, *(), **{})()> (HTTPNativeStorageServer._connect, *(), **{})()> (HTTPNativeStorageServer._connect, *(), **{})()> (HTTPNativeStorageServer._connect, *(), **{})()> (HTTPNativeStorageServer._connect, *(), **{})()> (HTTPNativeStorageServer._connect, *(), **{})()> (HTTPNativeStorageServer._connect, *(), **{})()> (CPUUsageMonitor.check, *(), **{})()> (CPUUsageMonitor.check, *(), **{})()> (CPUUsageMonitor.check, *(), **{})()> (HTTPNativeStorageServer._connect, *(), **{})()> (HTTPNativeStorageServer._connect, *(), **{})()> )> ____________ ERROR at teardown of HTTPSystemTest.test_mutable_sdmf _____________ logger = func = > args = (, 190, 25), kw = {} lp = 'FoolscapOrHttpForTub,137,127.0.0.1' def callWithLogger(logger, func, *args, **kw): """ Utility method which wraps a function in a try:/except:, logs a failure if one occurs, and uses the system's logPrefix. """ try: lp = logger.logPrefix() except KeyboardInterrupt: raise except BaseException: lp = "(buggy logPrefix method)" err(system=lp) try: > return callWithContext({"system": lp}, func, *args, **kw) /usr/lib/python3/dist-packages/twisted/python/log.py:96: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/log.py:80: in callWithContext return context.call({ILogContext: newCtx}, func, *args, **kw) /usr/lib/python3/dist-packages/twisted/python/context.py:117: in callWithContext return self.currentContext().callWithContext(ctx, func, *args, **kw) /usr/lib/python3/dist-packages/twisted/python/context.py:82: in callWithContext return func(*args, **kw) /usr/lib/python3/dist-packages/twisted/internet/posixbase.py:504: in _doReadOrWrite self._disconnectSelectable(selectable, why, inRead) /usr/lib/python3/dist-packages/twisted/internet/posixbase.py:112: in _disconnectSelectable selectable.connectionLost(f) /usr/lib/python3/dist-packages/twisted/internet/tcp.py:328: in connectionLost protocol.connectionLost(reason) /usr/lib/python3/dist-packages/twisted/protocols/tls.py:409: in connectionLost ProtocolWrapper.connectionLost(self, reason) /usr/lib/python3/dist-packages/twisted/protocols/policies.py:114: in connectionLost self.wrappedProtocol.connectionLost(reason) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = oself = type = def __get__(self, oself, type=None): """ Retrieve the C{self.attributeName} property from I{oself}. """ if oself is None: return _ProxiedClassMethod(self.attributeName, self.originalAttribute) > original = getattr(oself, self.originalAttribute) E AttributeError: '_GenericHTTPChannelProtocol' object has no attribute '_channel' /usr/lib/python3/dist-packages/twisted/python/components.py:405: AttributeError ----------------------------- Captured stdout call ----------------------------- [] ----------------------------- Captured stderr call ----------------------------- Unhandled Error Traceback (most recent call last): File "/usr/lib/python3/dist-packages/twisted/python/log.py", line 96, in callWithLogger return callWithContext({"system": lp}, func, *args, **kw) File "/usr/lib/python3/dist-packages/twisted/python/log.py", line 80, in callWithContext return context.call({ILogContext: newCtx}, func, *args, **kw) File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 117, in callWithContext return self.currentContext().callWithContext(ctx, func, *args, **kw) File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 82, in callWithContext return func(*args, **kw) File "/usr/lib/python3/dist-packages/twisted/internet/posixbase.py", line 504, in _doReadOrWrite self._disconnectSelectable(selectable, why, inRead) File "/usr/lib/python3/dist-packages/twisted/internet/posixbase.py", line 112, in _disconnectSelectable selectable.connectionLost(f) File "/usr/lib/python3/dist-packages/twisted/internet/tcp.py", line 328, in connectionLost protocol.connectionLost(reason) File "/usr/lib/python3/dist-packages/twisted/protocols/tls.py", line 409, in connectionLost ProtocolWrapper.connectionLost(self, reason) File "/usr/lib/python3/dist-packages/twisted/protocols/policies.py", line 114, in connectionLost self.wrappedProtocol.connectionLost(reason) File "/usr/lib/python3/dist-packages/twisted/python/components.py", line 405, in __get__ original = getattr(oself, self.originalAttribute) builtins.AttributeError: '_GenericHTTPChannelProtocol' object has no attribute '_channel' ________________ ERROR at teardown of HTTPConnections.test_rref ________________ logger = func = > args = (, 107, 25), kw = {} lp = 'FoolscapOrHttpForTub,2,127.0.0.1' def callWithLogger(logger, func, *args, **kw): """ Utility method which wraps a function in a try:/except:, logs a failure if one occurs, and uses the system's logPrefix. """ try: lp = logger.logPrefix() except KeyboardInterrupt: raise except BaseException: lp = "(buggy logPrefix method)" err(system=lp) try: > return callWithContext({"system": lp}, func, *args, **kw) /usr/lib/python3/dist-packages/twisted/python/log.py:96: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/log.py:80: in callWithContext return context.call({ILogContext: newCtx}, func, *args, **kw) /usr/lib/python3/dist-packages/twisted/python/context.py:117: in callWithContext return self.currentContext().callWithContext(ctx, func, *args, **kw) /usr/lib/python3/dist-packages/twisted/python/context.py:82: in callWithContext return func(*args, **kw) /usr/lib/python3/dist-packages/twisted/internet/posixbase.py:504: in _doReadOrWrite self._disconnectSelectable(selectable, why, inRead) /usr/lib/python3/dist-packages/twisted/internet/posixbase.py:112: in _disconnectSelectable selectable.connectionLost(f) /usr/lib/python3/dist-packages/twisted/internet/tcp.py:328: in connectionLost protocol.connectionLost(reason) /usr/lib/python3/dist-packages/twisted/protocols/tls.py:409: in connectionLost ProtocolWrapper.connectionLost(self, reason) /usr/lib/python3/dist-packages/twisted/protocols/policies.py:114: in connectionLost self.wrappedProtocol.connectionLost(reason) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = oself = type = def __get__(self, oself, type=None): """ Retrieve the C{self.attributeName} property from I{oself}. """ if oself is None: return _ProxiedClassMethod(self.attributeName, self.originalAttribute) > original = getattr(oself, self.originalAttribute) E AttributeError: '_GenericHTTPChannelProtocol' object has no attribute '_channel' /usr/lib/python3/dist-packages/twisted/python/components.py:405: AttributeError ----------------------------- Captured stdout call ----------------------------- [] ----------------------------- Captured stderr call ----------------------------- Unhandled Error Traceback (most recent call last): File "/usr/lib/python3/dist-packages/twisted/python/log.py", line 96, in callWithLogger return callWithContext({"system": lp}, func, *args, **kw) File "/usr/lib/python3/dist-packages/twisted/python/log.py", line 80, in callWithContext return context.call({ILogContext: newCtx}, func, *args, **kw) File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 117, in callWithContext return self.currentContext().callWithContext(ctx, func, *args, **kw) File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 82, in callWithContext return func(*args, **kw) File "/usr/lib/python3/dist-packages/twisted/internet/posixbase.py", line 504, in _doReadOrWrite self._disconnectSelectable(selectable, why, inRead) File "/usr/lib/python3/dist-packages/twisted/internet/posixbase.py", line 112, in _disconnectSelectable selectable.connectionLost(f) File "/usr/lib/python3/dist-packages/twisted/internet/tcp.py", line 328, in connectionLost protocol.connectionLost(reason) File "/usr/lib/python3/dist-packages/twisted/protocols/tls.py", line 409, in connectionLost ProtocolWrapper.connectionLost(self, reason) File "/usr/lib/python3/dist-packages/twisted/protocols/policies.py", line 114, in connectionLost self.wrappedProtocol.connectionLost(reason) File "/usr/lib/python3/dist-packages/twisted/python/components.py", line 405, in __get__ original = getattr(oself, self.originalAttribute) builtins.AttributeError: '_GenericHTTPChannelProtocol' object has no attribute '_channel' ____________________ ERROR at teardown of Web.test_CSS_FILE ____________________ 'NoneType' object is not iterable During handling of the above exception, another exception occurred: NOTE: Incompatible Exception Representation, displaying natively: twisted.trial.util.DirtyReactorAggregateError: Reactor was unclean. Selectables: < to ('127.0.0.1', 38457) at 7f1c7d36b6b0> <_GenericHTTPChannelProtocol #0 on 38457> _____________________ ERROR at teardown of Web.test_static _____________________ 'NoneType' object is not iterable During handling of the above exception, another exception occurred: NOTE: Incompatible Exception Representation, displaying natively: twisted.trial.util.DirtyReactorAggregateError: Reactor was unclean. Selectables: <_GenericHTTPChannelProtocol #0 on 40769> < to ('127.0.0.1', 40769) at 7f1c7c2697c0> =================================== FAILURES =================================== ______________ MutableShareFileTests.test_readv_reads_share_data _______________ 'NoneType' object is not iterable During handling of the above exception, another exception occurred: NOTE: Incompatible Exception Representation, displaying natively: testtools.testresult.real._StringException: + Exception Group Traceback (most recent call last): | File "/usr/lib/python3/dist-packages/twisted/internet/defer.py", line 216, in maybeDeferred | result = f(*args, **kwargs) | File "/usr/lib/python3/dist-packages/testtools/testcase.py", line 756, in _run_test_method | return self._get_test_method()() | ~~~~~~~~~~~~~~~~~~~~~~~^^ | File "/build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/eliotutil.py", line 156, in run_with_logging | return test_method(*args, **kwargs) | File "/build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py", line 3564, in test_readv_reads_share_data | schema=mutable_schemas, | ^^^^^^^ | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 1837, in wrapped_test | raise the_error_hypothesis_found | hypothesis.errors.FlakyFailure: Hypothesis test_readv_reads_share_data(self=, schema=_Schema(version=2, | lease_serializer=HashedLeaseSerializer(_to_data=, | _from_data=from_mutable_data), | _magic=b'Tahoe mutable container v2\n\xc3U!\x99%'), nodeid=b'xxxxxxxxxxxxxxxxxxxx', write_enabler=b'yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy', datav=[(26386, b''), | (3686, b''), | (1192, b'\x82\xab|]\\]\x97\x06#\xb3\xf4'), | (23213, b'\xaa\x12\xd7\xfdw^U\xf1s\xc4d-\x1e\xeb\x86 \xad'), | (16190, b'\xaa\t\x8dQ'), | (32221, b'\xdc\xcd\xdf\xc9\xc13\xf13O\xe7\t'), | (18519, b']\xce)o'), | (1, b'?\xacsp\x04\x9c'), | (59467, | b',\x14\xd5A\x86\xc36\x8d\xde:zMpZ[\xab\x14\xe2\x08\x10\xf8\x04\x93Y'), | (39583, b'\xae-\xf1'), | (3, b'\x00\x18Jg\x0cN\x8c'), | (37706, b'd\xee'), | (16772, b'?\xacsp\x04\x9c'), | (7221, b'\x97%\x85'), | (3686, b''), | (37706, b'd\xee')], new_length=27776) produces unreliable results: Falsified on the first call but did not on a subsequent one (1 sub-exception) | Falsifying example: test_readv_reads_share_data( | self=, | schema=_Schema(version=2, | lease_serializer=HashedLeaseSerializer(_to_data=, | _from_data=from_mutable_data), | _magic=b'Tahoe mutable container v2\n\xc3U!\x99%'), | nodeid=b'xxxxxxxxxxxxxxxxxxxx', | write_enabler=b'yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy', | datav=[(26386, b''), | (3686, b''), | (1192, b'\x82\xab|]\\]\x97\x06#\xb3\xf4'), | (23213, b'\xaa\x12\xd7\xfdw^U\xf1s\xc4d-\x1e\xeb\x86 \xad'), | (16190, b'\xaa\t\x8dQ'), | (32221, b'\xdc\xcd\xdf\xc9\xc13\xf13O\xe7\t'), | (18519, b']\xce)o'), | (1, b'?\xacsp\x04\x9c'), | (59467, | b',\x14\xd5A\x86\xc36\x8d\xde:zMpZ[\xab\x14\xe2\x08\x10\xf8\x04\x93Y'), | (39583, b'\xae-\xf1'), | (3, b'\x00\x18Jg\x0cN\x8c'), | (37706, b'd\xee'), | (16772, b'?\xacsp\x04\x9c'), | (7221, b'\x97%\x85'), | (3686, b''), | (37706, b'd\xee')], | new_length=27776, | ) | Unreliable test timings! On an initial run, this test took 1517.44ms, which exceeded the deadline of 200.00ms, but on a subsequent run it took 1.10 ms, which did not. If you expect this sort of variability in your test timings, consider turning deadlines off for this test by setting deadline=None. +-+---------------- 1 ---------------- | Traceback (most recent call last): | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 1085, in _execute_once_for_engine | result = self.execute_once(data) | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 1022, in execute_once | result = self.test_runner(data, run) | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 729, in default_executor | return function(data) | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 996, in run | return test(*args, **kwargs) | File "/build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py", line 3564, in test_readv_reads_share_data | schema=mutable_schemas, | ^^^^^^^^^^^^^^^^ | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 926, in test | raise DeadlineExceeded( | datetime.timedelta(seconds=runtime), self.settings.deadline | ) | hypothesis.errors.DeadlineExceeded: Test took 1517.44ms, which exceeds the deadline of 200.00ms +------------------------------------ _________________ ImmutableSharedTests.test_read_with_no_range _________________ 'NoneType' object is not iterable During handling of the above exception, another exception occurred: NOTE: Incompatible Exception Representation, displaying natively: testtools.testresult.real._StringException: + Exception Group Traceback (most recent call last): | File "/usr/lib/python3/dist-packages/twisted/internet/defer.py", line 216, in maybeDeferred | result = f(*args, **kwargs) | File "/usr/lib/python3/dist-packages/testtools/testcase.py", line 756, in _run_test_method | return self._get_test_method()() | ~~~~~~~~~~~~~~~~~~~~~~~^^ | File "/build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/eliotutil.py", line 156, in run_with_logging | return test_method(*args, **kwargs) | File "/build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_http.py", line 1788, in test_read_with_no_range | def test_read_with_no_range(self, data_length): | ^^^^^^^ | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 1837, in wrapped_test | raise the_error_hypothesis_found | hypothesis.errors.FlakyFailure: Hypothesis test_read_with_no_range(self=, data_length=81109) produces unreliable results: Falsified on the first call but did not on a subsequent one (1 sub-exception) | Falsifying example: test_read_with_no_range( | self=, | data_length=81109, | ) | Unreliable test timings! On an initial run, this test took 2067.71ms, which exceeded the deadline of 200.00ms, but on a subsequent run it took 45.89 ms, which did not. If you expect this sort of variability in your test timings, consider turning deadlines off for this test by setting deadline=None. +-+---------------- 1 ---------------- | Traceback (most recent call last): | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 1085, in _execute_once_for_engine | result = self.execute_once(data) | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 1022, in execute_once | result = self.test_runner(data, run) | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 729, in default_executor | return function(data) | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 996, in run | return test(*args, **kwargs) | File "/build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_http.py", line 1788, in test_read_with_no_range | def test_read_with_no_range(self, data_length): | ^^^^^^^^^^^^^^^^^^^^ | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 926, in test | raise DeadlineExceeded( | datetime.timedelta(seconds=runtime), self.settings.deadline | ) | hypothesis.errors.DeadlineExceeded: Test took 2067.71ms, which exceeds the deadline of 200.00ms +------------------------------------ __________________ MutableSharedTests.test_read_with_no_range __________________ 'NoneType' object is not iterable During handling of the above exception, another exception occurred: NOTE: Incompatible Exception Representation, displaying natively: testtools.testresult.real._StringException: + Exception Group Traceback (most recent call last): | File "/usr/lib/python3/dist-packages/twisted/internet/defer.py", line 216, in maybeDeferred | result = f(*args, **kwargs) | File "/usr/lib/python3/dist-packages/testtools/testcase.py", line 756, in _run_test_method | return self._get_test_method()() | ~~~~~~~~~~~~~~~~~~~~~~~^^ | File "/build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/eliotutil.py", line 156, in run_with_logging | return test_method(*args, **kwargs) | File "/build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_http.py", line 1836, in test_read_with_no_range | def test_read_with_no_range(self, data_length): | ^^^^^^^ | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 1837, in wrapped_test | raise the_error_hypothesis_found | hypothesis.errors.FlakyFailure: Hypothesis test_read_with_no_range(self=, data_length=143563) produces unreliable results: Falsified on the first call but did not on a subsequent one (1 sub-exception) | Falsifying example: test_read_with_no_range( | self=, | data_length=143563, | ) | Unreliable test timings! On an initial run, this test took 2597.25ms, which exceeded the deadline of 200.00ms, but on a subsequent run it took 19.37 ms, which did not. If you expect this sort of variability in your test timings, consider turning deadlines off for this test by setting deadline=None. +-+---------------- 1 ---------------- | Traceback (most recent call last): | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 1085, in _execute_once_for_engine | result = self.execute_once(data) | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 1022, in execute_once | result = self.test_runner(data, run) | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 729, in default_executor | return function(data) | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 996, in run | return test(*args, **kwargs) | File "/build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_http.py", line 1836, in test_read_with_no_range | def test_read_with_no_range(self, data_length): | ^^^^^^^^^^^^^^^^^^^^ | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 926, in test | raise DeadlineExceeded( | datetime.timedelta(seconds=runtime), self.settings.deadline | ) | hypothesis.errors.DeadlineExceeded: Test took 2597.25ms, which exceeds the deadline of 200.00ms +------------------------------------ ________________________ HTTPSystemTest.test_filesystem ________________________ result = b'UnrecoverableFileError: the directory (or mutable file) could not be retrieved, because there were insufficient good...server departure, hard drive failure, or disk corruption. You should perform a filecheck on this object to learn more.' gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1ca4896b80> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) else: > result = context.run(gen.send, result) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2017: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:48475/uri/URI:DIR2:45vss2cvnzanikrjqyhv5avglq:4redp4pnprrgl5fckwjlodo7nt4oalqripmbnumm76zogqlwjovq/subdir3/new.txt' kwargs = {'data': b'new.txt contents'} response = body = b'UnrecoverableFileError: the directory (or mutable file) could not be retrieved, because there were insufficient good...server departure, hard drive failure, or disk corruption. You should perform a filecheck on this object to learn more.' @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ response = yield treq.request(method, url, persistent=False, **kwargs) body = yield treq.content(response) # TODO: replace this with response.fail_for_status when # https://github.com/twisted/treq/pull/159 has landed if 400 <= response.code < 600: > raise VerboseError( response.code, response="For request {!r} to {!r}, got: {!r}".format( method, url, body)) E allmydata.test.common_web.VerboseError: 410 Gone For request 'put' to 'http://127.0.0.1:48475/uri/URI:DIR2:45vss2cvnzanikrjqyhv5avglq:4redp4pnprrgl5fckwjlodo7nt4oalqripmbnumm76zogqlwjovq/subdir3/new.txt', got: b'UnrecoverableFileError: the directory (or mutable file) could not be retrieved, because there were insufficient good shares. This might indicate that no servers were connected, insufficient servers were connected, the URI was corrupt, or that shares have been lost due to server departure, hard drive failure, or disk corruption. You should perform a filecheck on this object to learn more.' allmydata/test/common_web.py:62: VerboseError _______________________ HTTPSystemTest.test_mutable_mdmf _______________________ During handling of the above exception, another exception occurred: 'NoneType' object is not iterable During handling of the above exception, another exception occurred: NOTE: Incompatible Exception Representation, displaying natively: twisted.internet.defer.TimeoutError: (test_mutable_mdmf) still running at 300.0 secs _______________________ HTTPSystemTest.test_mutable_sdmf _______________________ result = gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6ea1dd80> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) allmydata/test/common_system.py:801: in set_up_nodes yield self._set_up_client_nodes(self.FORCE_FOOLSCAP_FOR_STORAGE) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) allmydata/test/common_system.py:841: in _set_up_client_nodes yield self.wait_for_connections() /usr/lib/python3/dist-packages/twisted/internet/defer.py:1088: in _runCallbacks current.result = callback( # type: ignore[misc] allmydata/util/pollmixin.py:35: in _convert_done f.trap(PollComplete) /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:216: in maybeDeferred result = f(*args, **kwargs) allmydata/util/pollmixin.py:57: in _poll self.fail("Errors snooped, terminating early") _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = msg = 'Errors snooped, terminating early' def fail(self, msg: Optional[object] = None) -> NoReturn: """ Absolutely fail the test. Do not pass go, do not collect $200. @param msg: the message that will be displayed as the reason for the failure """ > raise self.failureException(msg) E twisted.trial.unittest.FailTest: Errors snooped, terminating early /usr/lib/python3/dist-packages/twisted/trial/_synctest.py:381: FailTest ----------------------------- Captured stdout call ----------------------------- [] ----------------------------- Captured stderr call ----------------------------- Unhandled Error Traceback (most recent call last): File "/usr/lib/python3/dist-packages/twisted/python/log.py", line 96, in callWithLogger return callWithContext({"system": lp}, func, *args, **kw) File "/usr/lib/python3/dist-packages/twisted/python/log.py", line 80, in callWithContext return context.call({ILogContext: newCtx}, func, *args, **kw) File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 117, in callWithContext return self.currentContext().callWithContext(ctx, func, *args, **kw) File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 82, in callWithContext return func(*args, **kw) File "/usr/lib/python3/dist-packages/twisted/internet/posixbase.py", line 504, in _doReadOrWrite self._disconnectSelectable(selectable, why, inRead) File "/usr/lib/python3/dist-packages/twisted/internet/posixbase.py", line 112, in _disconnectSelectable selectable.connectionLost(f) File "/usr/lib/python3/dist-packages/twisted/internet/tcp.py", line 328, in connectionLost protocol.connectionLost(reason) File "/usr/lib/python3/dist-packages/twisted/protocols/tls.py", line 409, in connectionLost ProtocolWrapper.connectionLost(self, reason) File "/usr/lib/python3/dist-packages/twisted/protocols/policies.py", line 114, in connectionLost self.wrappedProtocol.connectionLost(reason) File "/usr/lib/python3/dist-packages/twisted/python/components.py", line 405, in __get__ original = getattr(oself, self.originalAttribute) builtins.AttributeError: '_GenericHTTPChannelProtocol' object has no attribute '_channel' ______________ HTTPSystemTest.test_upload_and_download_convergent ______________ result = > return True> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6e175680> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) allmydata/test/common_system.py:801: in set_up_nodes yield self._set_up_client_nodes(self.FORCE_FOOLSCAP_FOR_STORAGE) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) allmydata/test/common_system.py:841: in _set_up_client_nodes yield self.wait_for_connections() /usr/lib/python3/dist-packages/twisted/internet/defer.py:1088: in _runCallbacks current.result = callback( # type: ignore[misc] allmydata/util/pollmixin.py:35: in _convert_done f.trap(PollComplete) /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:216: in maybeDeferred result = f(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = check_f = > cutoff = 1788912650.9425046 def _poll(self, check_f, cutoff): if cutoff is not None and time.time() > cutoff: > raise TimeoutError("PollMixin never saw %s return True" % check_f) E allmydata.util.pollmixin.TimeoutError: PollMixin never saw > return True allmydata/util/pollmixin.py:42: TimeoutError ______________ HTTPSystemTest.test_upload_and_download_random_key ______________ result = > return True> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6de8ab80> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) allmydata/test/common_system.py:801: in set_up_nodes yield self._set_up_client_nodes(self.FORCE_FOOLSCAP_FOR_STORAGE) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) allmydata/test/common_system.py:841: in _set_up_client_nodes yield self.wait_for_connections() /usr/lib/python3/dist-packages/twisted/internet/defer.py:1088: in _runCallbacks current.result = callback( # type: ignore[misc] allmydata/util/pollmixin.py:35: in _convert_done f.trap(PollComplete) /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:216: in maybeDeferred result = f(*args, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = check_f = > cutoff = 1788912858.1526353 def _poll(self, check_f, cutoff): if cutoff is not None and time.time() > cutoff: > raise TimeoutError("PollMixin never saw %s return True" % check_f) E allmydata.util.pollmixin.TimeoutError: PollMixin never saw > return True allmydata/util/pollmixin.py:42: TimeoutError __________________________ HTTPConnections.test_rref ___________________________ result = gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c7d28e080> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) allmydata/test/common_system.py:801: in set_up_nodes yield self._set_up_client_nodes(self.FORCE_FOOLSCAP_FOR_STORAGE) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) allmydata/test/common_system.py:841: in _set_up_client_nodes yield self.wait_for_connections() /usr/lib/python3/dist-packages/twisted/internet/defer.py:1088: in _runCallbacks current.result = callback( # type: ignore[misc] allmydata/util/pollmixin.py:35: in _convert_done f.trap(PollComplete) /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:216: in maybeDeferred result = f(*args, **kwargs) allmydata/util/pollmixin.py:57: in _poll self.fail("Errors snooped, terminating early") _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = msg = 'Errors snooped, terminating early' def fail(self, msg: Optional[object] = None) -> NoReturn: """ Absolutely fail the test. Do not pass go, do not collect $200. @param msg: the message that will be displayed as the reason for the failure """ > raise self.failureException(msg) E twisted.trial.unittest.FailTest: Errors snooped, terminating early /usr/lib/python3/dist-packages/twisted/trial/_synctest.py:381: FailTest ----------------------------- Captured stdout call ----------------------------- [] ----------------------------- Captured stderr call ----------------------------- Unhandled Error Traceback (most recent call last): File "/usr/lib/python3/dist-packages/twisted/python/log.py", line 96, in callWithLogger return callWithContext({"system": lp}, func, *args, **kw) File "/usr/lib/python3/dist-packages/twisted/python/log.py", line 80, in callWithContext return context.call({ILogContext: newCtx}, func, *args, **kw) File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 117, in callWithContext return self.currentContext().callWithContext(ctx, func, *args, **kw) File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 82, in callWithContext return func(*args, **kw) File "/usr/lib/python3/dist-packages/twisted/internet/posixbase.py", line 504, in _doReadOrWrite self._disconnectSelectable(selectable, why, inRead) File "/usr/lib/python3/dist-packages/twisted/internet/posixbase.py", line 112, in _disconnectSelectable selectable.connectionLost(f) File "/usr/lib/python3/dist-packages/twisted/internet/tcp.py", line 328, in connectionLost protocol.connectionLost(reason) File "/usr/lib/python3/dist-packages/twisted/protocols/tls.py", line 409, in connectionLost ProtocolWrapper.connectionLost(self, reason) File "/usr/lib/python3/dist-packages/twisted/protocols/policies.py", line 114, in connectionLost self.wrappedProtocol.connectionLost(reason) File "/usr/lib/python3/dist-packages/twisted/python/components.py", line 405, in __get__ original = getattr(oself, self.originalAttribute) builtins.AttributeError: '_GenericHTTPChannelProtocol' object has no attribute '_channel' _________________________ IntroducerWeb.test_tahoe_css _________________________ 'NoneType' object is not iterable During handling of the above exception, another exception occurred: NOTE: Incompatible Exception Representation, displaying natively: testtools.testresult.real._StringException: traceback-1: {{{ Traceback (most recent call last): File "/usr/lib/python3/dist-packages/testtools/twistedsupport/_runtest.py", line 401, in _log_user_exception raise e testtools.twistedsupport._runtest.UncleanReactorError: The reactor still thinks it needs to do things. Close all connections, kill all processes and make sure all delayed calls have either fired or been cancelled: < of on 54405> < of on 51151> <_GenericHTTPChannelProtocol #0 on 54405> < to ('127.0.0.1', 54405) at 7f1c6e1e09b0> < of on 33471> }}} twisted-log: {{{ 2026-09-09 00:15:49.478Z [-] Foolscap logging initialized 2026-09-09 00:15:49.479Z [-] Note to developers: twistd.log does not receive very much. 2026-09-09 00:15:49.479Z [-] Use 'flogtool tail -c NODEDIR/private/logport.furl' instead 2026-09-09 00:15:49.479Z [-] and read docs/logging.rst 2026-09-09 00:15:49.484Z [-] My pid: 366028 2026-09-09 00:15:49.484Z [-] Listener starting on 33471 2026-09-09 00:15:49.484Z [-] Starting factory , _fd=75, _listened=True) with tub ai2rduldrveesbxm3dm2zylhfmzqsnpn> 2026-09-09 00:15:49.497Z [-] Listener starting on 51151 2026-09-09 00:15:49.497Z [-] Starting factory with tub hb7vaawrw2zaiqrhia4p3xj5rc3taofz> 2026-09-09 00:15:49.498Z [-] TahoeLAFSSite starting on 54405 2026-09-09 00:15:49.499Z [-] Starting factory 2026-09-09 00:15:49.499Z [-] introducer running 2026-09-09 00:15:49.525Z [-] Starting factory _HTTP11ClientFactory(.quiescentCallback at 0x7f1ca46963e0>, ) 2026-09-09 00:16:48.952Z [-] Main loop terminated. }}} Traceback (most recent call last): File "/usr/lib/python3/dist-packages/testtools/twistedsupport/_runtest.py", line 407, in _blocking_run_deferred return trap_unhandled_errors(spinner.run, self._timeout, self._run_deferred) File "/usr/lib/python3/dist-packages/testtools/twistedsupport/_spinner.py", line 95, in trap_unhandled_errors result = function(*args, **kwargs) File "/usr/lib/python3/dist-packages/testtools/twistedsupport/_spinner.py", line 53, in decorated return function(*args, **kwargs) File "/usr/lib/python3/dist-packages/testtools/twistedsupport/_spinner.py", line 327, in run return self._get_result() ~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3/dist-packages/testtools/twistedsupport/_spinner.py", line 187, in _get_result self._failure.raiseException() # type: ignore ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3/dist-packages/twisted/python/failure.py", line 455, in raiseException raise self.value.with_traceback(self.tb) testtools.twistedsupport._spinner.TimeoutError: > took longer than 60.0 seconds During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib/python3/dist-packages/testtools/twistedsupport/_runtest.py", line 401, in _log_user_exception raise e testtools.twistedsupport._spinner.TimeoutError: took longer than 60.0 seconds ______________________________ Web.test_CSS_FILE _______________________________ 'NoneType' object is not iterable During handling of the above exception, another exception occurred: NOTE: Incompatible Exception Representation, displaying natively: twisted.internet.defer.TimeoutError: (test_CSS_FILE) still running at 120.0 secs _______________________ Web.test_GET_DIRURL_json_format ________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6dee4a80> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:35759/uri/URI:DIR2:unooswgyyikj6inayksw4dynpm:j32fggb3jmlqlqktpvpazdky7fwfhaoyyyo4um7bjxxlp6dgw4ga/foo/sdmf.txt?format=sdmf' kwargs = {'data': b'newfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\...e contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\n', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ____________________ Web.test_GET_FILEURL_json_mutable_type ____________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c7d668d80> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put', url = 'http://127.0.0.1:46385/uri?format=mdmf' kwargs = {'data': b'newfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\...e contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\n', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ______________________________ Web.test_GET_etags ______________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6c533240> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:37387/uri/URI:DIR2:7yxbwozvbyjndr6zmhbwasej74:rj6je2yuuqyw5rvyiyonovlrqhvaeqwkkxzgj3wq7ybfet7f3ava/foo/newdir?t=mkdir-immutable' kwargs = {'allow_redirects': False, 'data': b'{"child-imm": ["filenode", {"ro_uri": "URI:CHK:w5gw7vjshy5m62qt2uzqedgy2m:qamyrri...2-LIT:ge3dumj2mewdcotyfqydulbshj5x2lbm"}], "dirchild-empty": ["dirnode", {"ro_uri": "URI:DIR2-LIT:"}]}', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed __________________________ Web.test_POST_DIRURL_check __________________________ self = @inlineCallbacks def test_POST_DIRURL_check(self): foo_url = self.public_url + "/foo" > res = yield self.POST(foo_url, t="check") allmydata/test/web/test_web.py:3238: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:37019/uri/URI:DIR2:vkl5vt6jismau7jgpcyxsh6vh4:qrrhflndbzovv44abrovxbkozcknqj734wz4qnfz6bu5rxszrrva/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-... name="t"\r\n\r\ncheck\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ____________________ Web.test_POST_DIRURL_check_and_repair _____________________ self = @inlineCallbacks def test_POST_DIRURL_check_and_repair(self): foo_url = self.public_url + "/foo" > res = yield self.POST(foo_url, t="check", repair="true") allmydata/test/web/test_web.py:3261: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:45347/uri/URI:DIR2:zi7ybrfmvosgshpsa5unkscgx4:f2qb4ivrtawfdzjebqvipixey46ux2hgl44ibzvbajai4xzfgyvq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...e="repair"\r\n\r\ntrue\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ________________________ Web.test_POST_DIRURL_deepcheck ________________________ self = @inlineCallbacks def test_POST_DIRURL_deepcheck(self): body, headers = self.build_form(t="start-deep-check", ophandle="123") > yield self.shouldRedirectTo(self.webish_url + self.public_url, self.webish_url + "/operations/123", method="post", data=body, headers=headers, code=http.FOUND) allmydata/test/web/test_web.py:3338: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://127.0.0.1:35423/uri/URI:DIR2:kzfsxxfhsar3eafptdxzqmwuam:il4uvdih6saojyon2wu2gbnrrvrqxfjkaplw3ajfedbec3v4zawq' target_location = 'http://127.0.0.1:35423/operations/123', method = 'post' code = 302 args = {'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n--boogabooga\r\nContent-Dis...="ophandle"\r\n\r\n123\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def shouldRedirectTo(self, url, target_location, method="get", code=None, **args): > response = yield treq.request(method, url, persistent=False, allow_redirects=False, **args) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/web/test_web.py:4342: RequestTransmissionFailed __________________ Web.test_POST_DIRURL_deepcheck_and_repair ___________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1ca7bb46c0> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'post' url = 'http://127.0.0.1:38711/uri/URI:DIR2:h2kyrlbeghrccrg5xgfcrqtkgy:r3wpsez2vghikhutajevoym4bko4o6mkhvnnpoc4p522w4ao4vpa' kwargs = {'allow_redirects': True, 'browser_like_redirects': True, 'data': b'--boogabooga\r\nContent-Disposition: form-data; na...e="output"\r\n\r\njson\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed __________________ Web.test_POST_DIRURL_deepcheck_no_ophandle __________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:45973/uri/URI:DIR2:wkogp47tjs3izqt5wcmvsnd6gq:w2pp4bmt2rkh3bskzaouqhlfdhsoauueelvor2zwihlvuxxq35kq' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...\n\r\nstart-deep-check\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed __________________ Web.test_POST_DIRURL_deepsize_no_ophandle ___________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:42813/uri/URI:DIR2:73gpkaa3sz5ofuwg5avemw4pk4:zns7iav3f42qrfv4twf6mhry743tngbiqbwuzlpazy3dgvaeh4dq' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...r\n\r\nstart-deep-size\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed __________________ Web.test_POST_DIRURL_deepstats_no_ophandle __________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:46585/uri/URI:DIR2:y6ztnz2srghyhvuv2nldx3q4ae:vzglrw5og4azoj4y3acicohzdvpui6ww2glfgspawtdvnfxf7z4a' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...\n\r\nstart-deep-stats\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed __________________ Web.test_POST_DIRURL_manifest_no_ophandle ___________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:45993/uri/URI:DIR2:2pyspch7y7mhcodu2vpbflxc34:3l3qdb6353ir6ptv6deydk6bbs7tc3u2zx6vjilngyl5bygtgesa' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...\r\n\r\nstart-manifest\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________________ Web.test_POST_FILEURL_bad_t __________________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:44993/uri/URI:DIR2:2lsdy4tv37ej4i53ypsaqrstie:2sdfxbga34ahkl7ocptlgfsrekv263fpvymlzyrsbk4665xwnnda/foo/bar.txt' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-... name="t"\r\n\r\nbogus\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________________ Web.test_POST_FILEURL_check __________________________ self = @inlineCallbacks def test_POST_FILEURL_check(self): bar_url = self.public_url + "/foo/bar.txt" > res = yield self.POST(bar_url, t="check") allmydata/test/web/test_web.py:3196: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:39915/uri/URI:DIR2:zz4pkaeo2bwnaxbw5muyjmn63q:fw6r7jkeqp6dyjrplos2b3tf3n3p33w5dujr3jedmdy2xr66yf2a/foo/bar.txt' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-... name="t"\r\n\r\ncheck\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ____________________ Web.test_POST_FILEURL_check_and_repair ____________________ self = @inlineCallbacks def test_POST_FILEURL_check_and_repair(self): bar_url = self.public_url + "/foo/bar.txt" > res = yield self.POST(bar_url, t="check", repair="true") allmydata/test/web/test_web.py:3219: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:33187/uri/URI:DIR2:o63bd4bcjlwgx63x5v3sstqt6u:vgdgi3qf3ekv7edbfvvnvx6zklac4lp3hrogb5dv5zvl56loi7bq/foo/bar.txt' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...e="repair"\r\n\r\ntrue\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _______________________ Web.test_POST_FILEURL_mdmf_check _______________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6cb77c40> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:43359/uri/URI%3AMDMF%3Alba22uilegglpd2un4jvbed35i%3Axacxcto7wxizfcllub6mptec4eedzxgjxt6c7t6vvmpffwjb4owa' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-... name="t"\r\n\r\ncheck\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________ Web.test_POST_FILEURL_mdmf_check_and_repair __________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6cb75840> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:38675/uri/URI%3AMDMF%3Ak3t2tppa64osue63hnq3h7wlo4%3Ar4565pl6u65pdekxq6sk7bscg5ayrsmu5ndpano5xn65ncjdw6ha' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...e="repair"\r\n\r\ntrue\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ______________________ Web.test_POST_NEWDIRURL_immutable _______________________ self = def _runCallbacks(self) -> None: """ Run the chain of callbacks once a result is available. This consists of a simple loop over all of the callbacks, calling each with the current result and making the current result equal to the return value (or raised exception) of that call. If L{_runningCallbacks} is true, this loop won't run at all, since it is already running above us on the call stack. If C{self.paused} is true, the loop also won't run, because that's what it means to be paused. The loop will terminate before processing all of the callbacks if a L{Deferred} without a result is encountered. If a L{Deferred} I{with} a result is encountered, that result is taken and the loop proceeds. @note: The implementation is complicated slightly by the fact that chaining (associating two L{Deferred}s with each other such that one will wait for the result of the other, as happens when a Deferred is returned from a callback on another L{Deferred}) is supported iteratively rather than recursively, to avoid running out of stack frames when processing long chains. """ if self._runningCallbacks: # Don't recursively run callbacks return # Keep track of all the Deferreds encountered while propagating results # up a chain. The way a Deferred gets onto this stack is by having # added its _continuation() to the callbacks list of a second Deferred # and then that second Deferred being fired. ie, if ever had _chainedTo # set to something other than None, you might end up on this stack. chain: List[Deferred[Any]] = [self] while chain: current = chain[-1] if current.paused: # This Deferred isn't going to produce a result at all. All the # Deferreds up the chain waiting on it will just have to... # wait. return finished = True current._chainedTo = None while current.callbacks: item = current.callbacks.pop(0) if not isinstance(current.result, Failure): callback, args, kwargs = item[0] else: # type note: Callback signature also works for Errbacks in # this context. callback, args, kwargs = item[1] # Avoid recursion if we can. if callback is _CONTINUE: # Give the waiting Deferred our current result and then # forget about that result ourselves. # We don't use cast() for performance reasons: chainee: Deferred[object] = args[0] # type: ignore[assignment] chainee.result = current.result current.result = None # Making sure to update _debugInfo if current._debugInfo is not None: current._debugInfo.failResult = None chainee.paused -= 1 chain.append(chainee) # Delay cleaning this Deferred and popping it from the chain # until after we've dealt with chainee. finished = False break try: current._runningCallbacks = True try: # type note: mypy sees `callback is _CONTINUE` above and # then decides that `callback` is not callable. # This goes away when we use `_Sentinel._CONTINUE` # instead, but we don't want to do that attribute # lookup in this hot code path, so we ignore the mypy # complaint here. > current.result = callback( # type: ignore[misc] current.result, *args, **kwargs ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:1088: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ allmydata/test/common.py:926: in explain_web_error f.trap(WebError) /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:42639/uri/URI:DIR2:zptid5prvl6iuzjvkudjd5owc4:6ma7ym3o5wdxqma54ktctwlxbnbhqq3auqfob7z2gzo57ftfwdrq/foo/newdir?t=mkdir-immutable' kwargs = {'allow_redirects': False, 'data': b'{"child-imm": ["filenode", {"ro_uri": "URI:CHK:beg457azw2mo4627dwuyyqlo7i:3ccisex...2-LIT:ge3dumj2mewdcotyfqydulbshj5x2lbm"}], "dirchild-empty": ["dirnode", {"ro_uri": "URI:DIR2-LIT:"}]}', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ____________________ Web.test_POST_NEWDIRURL_immutable_bad _____________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:38699/uri/URI:DIR2:wbfw2q4twcsoxzvgilq3yriqlm:5dev5q7dbm3cvzoiu2cncwwcowecyyuqxpjedy32szadugdcbzba/foo/newdir?t=mkdir-immutable' kwargs = {'allow_redirects': False, 'data': b'{"child-imm": ["filenode", {"rw_uri": "URI:CHK:yk2jh32woeyhqmjt6kvgjfv3mu:noox735...uri": "URI:MDMF-RO:74gntki3lbpzchph66himtzc44:mlsog6e4pfzzte2om6bcje5zktlkxb4qc2zdxp7zynquv3ckdyra"}]}', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ___________________ Web.test_POST_NEWDIRURL_initial_children ___________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6e69ac40> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:35291/uri/URI:DIR2:qzs4mk4d6lj4afky7odwlf43ba:ccbmhu5fvv6rc2hxwykgj4dzppnwpi7dkhlf4enlntkfs35uensa/foo/newdir?t=mkdir-with-children' kwargs = {'allow_redirects': False, 'data': b'{"child-imm": ["filenode", {"rw_uri": "URI:CHK:yohvpcrrtoitdypepxuox3zjze:gh2awg6...uri": "URI:MDMF-RO:hczehowamr7vlvxtqiteq7nrrq:3mdkilkk7sfnus2zqmb7qm4su2poxlqfhvo34wqqeex3vw6ipb3a"}]}', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________ Web.test_POST_NEWDIRURL_initial_children_bad_format ______________ self = @inlineCallbacks def test_POST_NEWDIRURL_initial_children_bad_format(self): (newkids, caps) = self._create_initial_children() url = (self.webish_url + self.public_url + "/foo/newdir?t=mkdir-with-children&format=foo") > yield self.assertHTTPError(url, 400, "Unknown format: foo", method="post", data=json.dumps(newkids).encode("utf-8")) allmydata/test/web/test_web.py:2477: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://127.0.0.1:43181/uri/URI:DIR2:rgh6yxmprerlgi6b62sevxu3uq:5bwayakbe5b34b632bovzger5gxjuhckl6rypquwqf6xs4wvqriq/foo/newdir?t=mkdir-with-children&format=foo' code = 400, response_substring = 'Unknown format: foo', method = 'post' persistent = False args = {'data': b'{"child-imm": ["filenode", {"rw_uri": "URI:CHK:jy43ooqgnlxdxc2ggahjh74lju:c5tbk6rw7ex7wmf4uscfx4soaaveetijf...byh2vweq", "ro_uri": "URI:MDMF-RO:pdr32uupoylbrld5dsxv3dfgou:fjystnivcbxrr2s74sybsap4gqb7tnp75tmdvtkejjgmbyh2vweq"}]}'} @inlineCallbacks def assertHTTPError(self, url, code, response_substring, method="get", persistent=False, **args): > response = yield treq.request(method, url, persistent=persistent, **args) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common.py:970: RequestTransmissionFailed ________________ Web.test_POST_NEWDIRURL_initial_children_mdmf _________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6e489ac0> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:35369/uri/URI:DIR2:vrmkf6lruemmbzxft7vouqcx3u:sfsnvu275exauof5x7576jdp3rdlukjq6wymkssl3kdlmzgrwt4q/foo/newdir?t=mkdir-with-children&format=mdmf' kwargs = {'allow_redirects': False, 'data': b'{"child-imm": ["filenode", {"rw_uri": "URI:CHK:evdcoc4koyywsh7ddmetap2jri:tfcskoc...uri": "URI:MDMF-RO:fg2bmpfgycl4vn5c4z3ovf544a:rzbull3a4oavc4yrddpcph2bu66s56ky2qxzig5t7vypwz57mbya"}]}', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ________________ Web.test_POST_NEWDIRURL_initial_children_sdmf _________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6c5aff00> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:46617/uri/URI:DIR2:prkwbjl3xla4jdnjfxcep2n2ta:tmqx5uscv5pwcd6fo6zpflu57ytoq3vvi4vcnprou74aznsesb4a/foo/newdir?t=mkdir-with-children&format=sdmf' kwargs = {'allow_redirects': False, 'data': b'{"child-imm": ["filenode", {"rw_uri": "URI:CHK:ivlvdqibnhrzokfgy7a7dnetju:ywtjva7...uri": "URI:MDMF-RO:mg5hdr5ge4tqnqimberf56t22m:yquthbsmemykzpnx56k55jepyucpnyreutbhij6iuuuprxwrwizq"}]}', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________________ Web.test_POST_bad_t ______________________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:43267/uri/URI:DIR2:72xebqumifae7nxmnvkdecei6q:5m5wbanz6523wqnmligse6rctpldyz5vgsbyxcl7ofrleaetev4q/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-... name="t"\r\n\r\nBOGUS\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________________ Web.test_POST_check ______________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6d089440> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:46345/uri/URI:DIR2:a3h62qqcltx3ylohbmpvsk6awu:pfpofvgp4bygpxw7spbjon3wlonf5sttkxj3y7yabtvk47akquxq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...="name"\r\n\r\nbar.txt\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________________ Web.test_POST_delete _____________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6c5aff00> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:35229/uri/URI:DIR2:xubwu5v25pp543pykwtmpwionu:neluiokksjc7qj2e3e2zmjmbaqinjn2zt3ezbap6vudz7hhugqnq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...="name"\r\n\r\nbar.txt\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ____________________________ Web.test_POST_link_uri ____________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6e489ac0> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:40761/uri/URI:DIR2:2dc2rb5otklrmammzy6zaturvq:q7yqipwfyz2sijckjghvymft4glcomt23jkesx72jftfkevannja/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...kzzjrcegmtzdya:3:10:19\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ___________________ Web.test_POST_link_uri_no_replace_field ____________________ self = res = ]> expected_failure = which = 'POST_link_uri_no_replace_field', substring = '409 Conflict' response_substring = 'There was already a child by that name, and you asked me to not replace it' def shouldFail(self, res, expected_failure, which, substring=None, response_substring=None): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:637: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:36167/uri/URI:DIR2:hgn4637orp4afrf7stfuh4433e:ukfefwr4ynp6shazzevcuc2cwzkxj5gfyp6ocl326cl6ivu7d4kq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...ms6lufipkms4wa:3:10:19\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed __________________ Web.test_POST_link_uri_no_replace_queryarg __________________ self = res = ]> expected_failure = which = 'POST_link_uri_no_replace_queryarg', substring = '409 Conflict' response_substring = 'There was already a child by that name, and you asked me to not replace it' def shouldFail(self, res, expected_failure, which, substring=None, response_substring=None): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:637: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:45707/uri/URI:DIR2:vm43w4ggvaimvby5fxakmk3mle:u5tba4bhamxq3kysscvnbgzp5p5m7srgx74vavjortibuhnv7oja/foo?replace=false' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...ftj7aoxpghtfka:3:10:19\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ________________________ Web.test_POST_link_uri_replace ________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6c5aff00> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:33185/uri/URI:DIR2:z657ojnimekn3im2i5jyxcgbbe:7z5yrsplvqhqhnx47yw4lhdodyfcw5k47nvcac5e3ecm7lej4lja/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...eeo4x24dghp3uq:3:10:19\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ______________________ Web.test_POST_link_uri_unknown_bad ______________________ self = res = ]> expected_failure = which = 'POST_link_uri_unknown_bad', substring = '400 Bad Request' response_substring = 'unknown cap in a write slot' def shouldFail(self, res, expected_failure, which, substring=None, response_substring=None): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:637: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:36539/uri/URI:DIR2:ngfccluvepfenor7t566qvwivi:av5znzbzlchdezmhjmcec4y5cj5xb2ooepazanothjhztuw5euxa/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...future_rw_\xe2\x98\xba\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ___________________ Web.test_POST_link_uri_unknown_imm_good ____________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c7d027240> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:36681/uri/URI:DIR2:efini4rr6veufsqtqgt5vgcjve:rwzbvo4ggzxzifgj7gxjlkupkmqyvzr4lc3tjsqfno7ukdiofwoq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...uture_imm_\xe2\x98\xba\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ____________________ Web.test_POST_link_uri_unknown_ro_good ____________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6cb75840> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:42531/uri/URI:DIR2:fjs2kwl5lpi5rpie5ouz7gtoze:ywqp5gdhep46wvqpjekzt7wyl4ujkr5ddo62nlubg2gfdfummlfq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...future_ro_\xe2\x98\xba\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________________ Web.test_POST_mkdir ______________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c7d027240> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:45773/uri/URI:DIR2:ww5s4ug4tmrrmsshwxk6eiuki4:mq3pdcozeme5brze6iopftqmyhmr4zuiudd4252oeyhlf4lur5xq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...e="name"\r\n\r\nnewdir\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ________________________ Web.test_POST_mkdir_immutable _________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6e489ac0> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:43121/uri/URI:DIR2:v6cv5a5s4xdv5u3jejia5kxt7u:4bu6c3zirju5iifqkcnahwfmt67byytsb5odh4jmyczo7esuyxva/foo?t=mkdir-immutable&name=newdir' kwargs = {'allow_redirects': False, 'data': b'{"child-imm": ["filenode", {"ro_uri": "URI:CHK:6azhik5xl5l4qkvs2xj5ar7xqa:ry6fqp3...2-LIT:ge3dumj2mewdcotyfqydulbshj5x2lbm"}], "dirchild-empty": ["dirnode", {"ro_uri": "URI:DIR2-LIT:"}]}', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ______________________ Web.test_POST_mkdir_immutable_bad _______________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:35891/uri/URI:DIR2:zuwxvd5g25gnfx34chuntxlzii:jsvb7enfleei6eddvgkjtjvujekvt3nyqmolc4cfdj3pwskwixbq/foo?t=mkdir-immutable&name=newdir' kwargs = {'allow_redirects': False, 'data': b'{"child-imm": ["filenode", {"rw_uri": "URI:CHK:t4brux6cndrx6aezcm3mcencha:a3vxy3l...uri": "URI:MDMF-RO:2xrrdwx3l2mn65vbxpk4pygg4e:5uiev7fehmkvwqvgmhgy7mqhkpskclaao7jebromkngff5e55ada"}]}', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________ Web.test_POST_mkdir_initial_children _____________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6c5aff00> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:41693/uri/URI:DIR2:ciwjimsqhxnsg6jejbrim6ela4:t3fuyblzlrulc33gjkoynydgfkuw5qfielcth7orxfznkdgp3bfa/foo?t=mkdir-with-children&name=newdir' kwargs = {'allow_redirects': False, 'data': b'{"child-imm": ["filenode", {"rw_uri": "URI:CHK:zi4e3llmvsin36kqtsctwbpsfu:bbrhfpi...uri": "URI:MDMF-RO:mc3yuk45jjd7qnjudrjmayud3q:dnx6t6vlv6myldy7r5nwqm3abamnrihb3fmpgmbibn3t3fhkatbq"}]}', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _______________ Web.test_POST_mkdir_initial_children_bad_format ________________ self = @inlineCallbacks def test_POST_mkdir_initial_children_bad_format(self): (newkids, caps) = self._create_initial_children() url = (self.webish_url + self.public_url + "/foo?t=mkdir-with-children&name=newdir&format=foo") > yield self.assertHTTPError(url, 400, "Unknown format: foo", method="post", data=json.dumps(newkids).encode("utf-8")) allmydata/test/web/test_web.py:3498: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://127.0.0.1:43647/uri/URI:DIR2:7egjxnzm3vk4mopzxeqbjv57gu:phz7g72bwyvn2ejycmj4fgw5vpaaeye6sxtldirlxoqdnnhytipq/foo?t=mkdir-with-children&name=newdir&format=foo' code = 400, response_substring = 'Unknown format: foo', method = 'post' persistent = False args = {'data': b'{"child-imm": ["filenode", {"rw_uri": "URI:CHK:v7x54zekjd6p3t42y3chydfqve:f7ju4kvnjaqjvhwkzvtgqoimiryn36oj2...aoye4iwa", "ro_uri": "URI:MDMF-RO:apsrjm25lhuxtnthabqo2i3xxa:bnxmz5hxfb7znu767uvsyllyu6hmvn6w6okvz3nhp7rkaoye4iwa"}]}'} @inlineCallbacks def assertHTTPError(self, url, code, response_substring, method="get", persistent=False, **args): > response = yield treq.request(method, url, persistent=persistent, **args) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common.py:970: RequestTransmissionFailed __________________ Web.test_POST_mkdir_initial_children_mdmf ___________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6c5aff00> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:40111/uri/URI:DIR2:pkgybh5q55ew5yy3ow2ebwkji4:tprgin5oye4riom2lhcbxsny7e2ynsfu6uquqv3ljmox3yzs4f2a/foo?t=mkdir-with-children&name=newdir&format=mdmf' kwargs = {'allow_redirects': False, 'data': b'{"child-imm": ["filenode", {"rw_uri": "URI:CHK:nwbi6z75sdmbd2lrecuihfirby:rrrjyhr...uri": "URI:MDMF-RO:sivhtbtrzt3i2mcvjavftj5e2u:qeriqxfvhocjylmiros65fe6jvnoxdnrlbegotb35xn3inbmuliq"}]}', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed __________________ Web.test_POST_mkdir_initial_children_sdmf ___________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6d089440> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:38349/uri/URI:DIR2:aolkbj4ykrofgnd7gfdhfbouh4:qd62qwvaka3r5lzy644kjkidmuiwmwhred3l7yn7shkhnghr2rrq/foo?t=mkdir-with-children&name=newdir&format=sdmf' kwargs = {'allow_redirects': False, 'data': b'{"child-imm": ["filenode", {"rw_uri": "URI:CHK:z5fbohly5z5z55lg2rtul4pewe:7eemotp...uri": "URI:MDMF-RO:t5sbto4fcnu6jhfd3csobekc5u:fusql4bcekqzryxqvrqd3dpvkwfvaoy54ucv2eltzithompldc5q"}]}', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed __________________ Web.test_POST_mkdir_no_parentdir_immutable __________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c7d027240> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST', url = 'http://127.0.0.1:36849/uri?t=mkdir-immutable' kwargs = {'allow_redirects': False, 'data': b'{"child-imm": ["filenode", {"ro_uri": "URI:CHK:aljfwf5yxl3yiz3egmlnxbasei:gb4gz54...2-LIT:ge3dumj2mewdcotyfqydulbshj5x2lbm"}], "dirchild-empty": ["dirnode", {"ro_uri": "URI:DIR2-LIT:"}]}', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ________________ Web.test_POST_mkdir_no_parentdir_immutable_bad ________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST', url = 'http://127.0.0.1:43001/uri?t=mkdir-immutable' kwargs = {'allow_redirects': False, 'data': b'{"child-imm": ["filenode", {"rw_uri": "URI:CHK:upjf7wrh6shlydswsjolhvogzm:4ouhkfj...uri": "URI:MDMF-RO:pjf4kqxlqhnlcfgar4sfye5mk4:ypwx3n6jlzmgkegnvjdwy6tqxuowrsk7ex2idsdj6h74cd2ppcha"}]}', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ______________ Web.test_POST_mkdir_no_parentdir_initial_children _______________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6cc05380> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST', url = 'http://127.0.0.1:45457/uri?t=mkdir-with-children' kwargs = {'allow_redirects': False, 'data': b'{"child-imm": ["filenode", {"rw_uri": "URI:CHK:thvocgxvj4ktb5veuimlub5tyy:wuhwhip...uri": "URI:MDMF-RO:h7bu32aumc45j5nqm7k2dtg3ni:f2655h5q35c2bdbwpqpw742w4ymot53245mmuymbptojltlncoza"}]}', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________ Web.test_POST_mkdir_no_parentdir_noredirect2 _________________ self = def _runCallbacks(self) -> None: """ Run the chain of callbacks once a result is available. This consists of a simple loop over all of the callbacks, calling each with the current result and making the current result equal to the return value (or raised exception) of that call. If L{_runningCallbacks} is true, this loop won't run at all, since it is already running above us on the call stack. If C{self.paused} is true, the loop also won't run, because that's what it means to be paused. The loop will terminate before processing all of the callbacks if a L{Deferred} without a result is encountered. If a L{Deferred} I{with} a result is encountered, that result is taken and the loop proceeds. @note: The implementation is complicated slightly by the fact that chaining (associating two L{Deferred}s with each other such that one will wait for the result of the other, as happens when a Deferred is returned from a callback on another L{Deferred}) is supported iteratively rather than recursively, to avoid running out of stack frames when processing long chains. """ if self._runningCallbacks: # Don't recursively run callbacks return # Keep track of all the Deferreds encountered while propagating results # up a chain. The way a Deferred gets onto this stack is by having # added its _continuation() to the callbacks list of a second Deferred # and then that second Deferred being fired. ie, if ever had _chainedTo # set to something other than None, you might end up on this stack. chain: List[Deferred[Any]] = [self] while chain: current = chain[-1] if current.paused: # This Deferred isn't going to produce a result at all. All the # Deferreds up the chain waiting on it will just have to... # wait. return finished = True current._chainedTo = None while current.callbacks: item = current.callbacks.pop(0) if not isinstance(current.result, Failure): callback, args, kwargs = item[0] else: # type note: Callback signature also works for Errbacks in # this context. callback, args, kwargs = item[1] # Avoid recursion if we can. if callback is _CONTINUE: # Give the waiting Deferred our current result and then # forget about that result ourselves. # We don't use cast() for performance reasons: chainee: Deferred[object] = args[0] # type: ignore[assignment] chainee.result = current.result current.result = None # Making sure to update _debugInfo if current._debugInfo is not None: current._debugInfo.failResult = None chainee.paused -= 1 chain.append(chainee) # Delay cleaning this Deferred and popping it from the chain # until after we've dealt with chainee. finished = False break try: current._runningCallbacks = True try: # type note: mypy sees `callback is _CONTINUE` above and # then decides that `callback` is not callable. # This goes away when we use `_Sentinel._CONTINUE` # instead, but we don't want to do that attribute # lookup in this hot code path, so we ignore the mypy # complaint here. > current.result = callback( # type: ignore[misc] current.result, *args, **kwargs ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:1088: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ allmydata/test/common.py:926: in explain_web_error f.trap(WebError) /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST', url = 'http://127.0.0.1:36645/uri' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-... name="t"\r\n\r\nmkdir\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed __________________ Web.test_POST_mkdir_no_parentdir_redirect2 __________________ self = @inlineCallbacks def test_POST_mkdir_no_parentdir_redirect2(self): body, headers = self.build_form(t="mkdir", redirect_to_result="true") > target = yield self.shouldRedirectTo(self.webish_url + "/uri", None, method="post", data=body, headers=headers, code=http.SEE_OTHER) allmydata/test/web/test_web.py:3600: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://127.0.0.1:40455/uri', target_location = None, method = 'post' code = 303 args = {'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n--boogabooga\r\nContent-Dis...to_result"\r\n\r\ntrue\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def shouldRedirectTo(self, url, target_location, method="get", code=None, **args): > response = yield treq.request(method, url, persistent=False, allow_redirects=False, **args) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/web/test_web.py:4342: RequestTransmissionFailed _____________ Web.test_POST_mkdir_no_parentdir_unexpected_children _____________ self = @inlineCallbacks def test_POST_mkdir_no_parentdir_unexpected_children(self): # the regular /uri?t=mkdir operation is specified to ignore its body. # Only t=mkdir-with-children pays attention to it. (newkids, caps) = self._create_initial_children() url = self.webish_url + "/uri?t=mkdir" # without children > yield self.assertHTTPError(url, 400, "t=mkdir does not accept children=, " "try t=mkdir-with-children instead", method="post", data=json.dumps(newkids).encode("utf-8")) allmydata/test/web/test_web.py:3713: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://127.0.0.1:36129/uri?t=mkdir', code = 400 response_substring = 't=mkdir does not accept children=, try t=mkdir-with-children instead' method = 'post', persistent = False args = {'data': b'{"child-imm": ["filenode", {"rw_uri": "URI:CHK:4rprw7mzupjvfo376nnjgzopca:whor4don3hbx2to5v7ykdr3z2qohxv5b4...rbnay6mq", "ro_uri": "URI:MDMF-RO:ctmvcuqkxzma5gmqz6roi45o5e:ab2xdttkpuhahpz324ubef5drhzh5iaungm5iprk5b4grbnay6mq"}]}'} @inlineCallbacks def assertHTTPError(self, url, code, response_substring, method="get", persistent=False, **args): > response = yield treq.request(method, url, persistent=persistent, **args) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common.py:970: RequestTransmissionFailed _____________________ Web.test_POST_mkdir_no_replace_field _____________________ self = res = ]> expected_failure = which = 'POST_mkdir_no_replace_field', substring = '409 Conflict' response_substring = 'There was already a child by that name, and you asked me to not replace it' def shouldFail(self, res, expected_failure, which, substring=None, response_substring=None): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:637: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:34933/uri/URI:DIR2:f2f5rgpb5mix5p4gd5cv6ld4aa:ebef6a4qlxkk5cq46gpx67eocwuq224hly74qezqd2ghdvfxisoq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-..."replace"\r\n\r\nfalse\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ___________________ Web.test_POST_mkdir_no_replace_queryarg ____________________ self = res = ]> expected_failure = which = 'POST_mkdir_no_replace_queryarg', substring = '409 Conflict' response_substring = 'There was already a child by that name, and you asked me to not replace it' def shouldFail(self, res, expected_failure, which, substring=None, response_substring=None): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:637: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:43907/uri/URI:DIR2:dde5felutesp2kjgokinv54ymi:smqmybcafurdrl55sstyo3zmn7o7z4dhd2sqqayoc6o374lpv7tq/foo?replace=false' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...name="name"\r\n\r\nsub\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________________ Web.test_POST_mkdir_replace __________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c7d027240> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:34509/uri/URI:DIR2:gsstcrwffbku6hlrrv4olauhfe:75qgxxyu6yetnvm2f2g7sxj6r3gynv7htyr6dq3qpztnwkxlaw2q/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...name="name"\r\n\r\nsub\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ______________________ Web.test_POST_mkdir_whendone_field ______________________ self = @inlineCallbacks def test_POST_mkdir_whendone_field(self): body, headers = self.build_form(t="mkdir", name="newdir", when_done="/THERE") > yield self.shouldRedirectTo(self.webish_url + self.public_url + "/foo", "/THERE", method="post", data=body, headers=headers, code=http.FOUND) allmydata/test/web/test_web.py:3821: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://127.0.0.1:33927/uri/URI:DIR2:4ztm5o5eueikcrpshl3spzt4ly:5kwrhr452atkttj4gkn5nfiadugxs5eihh7jpx3r24cro2zfatuq/foo' target_location = '/THERE', method = 'post', code = 302 args = {'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n--boogabooga\r\nContent-Dis...en_done"\r\n\r\n/THERE\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def shouldRedirectTo(self, url, target_location, method="get", code=None, **args): > response = yield treq.request(method, url, persistent=False, allow_redirects=False, **args) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/web/test_web.py:4342: RequestTransmissionFailed ____________________ Web.test_POST_mkdir_whendone_queryarg _____________________ self = @inlineCallbacks def test_POST_mkdir_whendone_queryarg(self): body, headers = self.build_form(t="mkdir", name="newdir") url = self.webish_url + self.public_url + "/foo?when_done=/THERE" > yield self.shouldRedirectTo(url, "/THERE", method="post", data=body, headers=headers, code=http.FOUND) allmydata/test/web/test_web.py:3832: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://127.0.0.1:36679/uri/URI:DIR2:yagxmgydxknc62k7ujxduylm4q:rsrlodsgqhxiaf2vvgj7bb77etp4lrgclvqvac5rrwuvb3zbpb4a/foo?when_done=/THERE' target_location = '/THERE', method = 'post', code = 302 args = {'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n--boogabooga\r\nContent-Dis...e="name"\r\n\r\nnewdir\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def shouldRedirectTo(self, url, target_location, method="get", code=None, **args): > response = yield treq.request(method, url, persistent=False, allow_redirects=False, **args) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/web/test_web.py:4342: RequestTransmissionFailed ___________________________ Web.test_POST_relink_dir ___________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1caade6200> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:38389/uri/URI:DIR2:fwqlkxhuxkczlyyyufmld2ja4e:dprh6proymgvwk32c6gh67amisfyxnnnbvvsnj5oyhspizy3ic7q/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...yhspizy3ic7q/foo/empty\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed __________________________ Web.test_POST_relink_file ___________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c7d027240> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:46059/uri/URI:DIR2:kypzup5l7o7bw4ajgit56aez7y:v4566t3ci4cyh2q52qozhcocwqef4fo5gu4tn5onx363z36z5aea/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...onx363z36z5aea/foo/sub\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ____________________ Web.test_POST_relink_file_bad_replace _____________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:33147/uri/URI:DIR2:kl3aefak6wvii5av5lguknhce4:rdo7dmpayuyxusdckr2ae4zt4mo4m2tz4mstvybazchjlfk3y5nq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...bazchjlfk3y5nq/foo/sub\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ________________ Web.test_POST_relink_file_explicitly_same_link ________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6e489ac0> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:33797/uri/URI:DIR2:nvukfqcuyffj4wj5flvtautuja:w5jabecm5lameyigplw6ypjrqqlkuyecxldce6ztfs5whmlkgwfa/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...dce6ztfs5whmlkgwfa/foo\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ________________ Web.test_POST_relink_file_implicitly_same_link ________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6ca6f9c0> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:45057/uri/URI:DIR2:td552fbven7wspdxvqcir63rv4:mketg44e5swdwlssk6lklmq4wbfglalftqfepjbvcilncnr2jciq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...m_name"\r\n\r\nbar.txt\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________ Web.test_POST_relink_file_into_file ______________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:39379/uri/URI:DIR2:ci6e6k4zgkrdtzqzcz5hyr3h3i:urc5u7osazw25bk75mo2nmtipsfjphk7shjwomphmzhjwrqr7fca/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...hjwrqr7fca/foo/baz.txt\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ____________________ Web.test_POST_relink_file_multi_level _____________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6cca1080> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:41997/uri/URI:DIR2:k4jucexg45tp77ypgm4e5n2qdq:hhv2d4272ap73f2o2ny4wdjr56x7cdkvqk64pzbanicnghr6lw7a/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...hr6lw7a/foo/sub/level2\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ______________________ Web.test_POST_relink_file_new_name ______________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1caade6200> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:38133/uri/URI:DIR2:ucaqsjbihmyfra7fujup5zrsz4:w3vqouwwbehv6wvmgyutcfdhpyfrb5krzfgg5mxpric62y7nl4xq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...xpric62y7nl4xq/foo/sub\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________ Web.test_POST_relink_file_no_replace _____________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:40679/uri/URI:DIR2:tkafbmogdyguj7uprrwas4rhim:zzc6i43ny2g3vnpfomizqofpklc5t7buqpqxjedakqdsrbbutiwa/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...dakqdsrbbutiwa/foo/sub\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed __________ Web.test_POST_relink_file_no_replace_explicitly_same_link ___________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1caade6200> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:42255/uri/URI:DIR2:4wzlis7kfci2yr3ecnnw3cr7n4:hhevwdvxc7crrx6p6xe77oghuvfiq6x6l2ksqepuiho654dn6avq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...ksqepuiho654dn6avq/foo\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ______________________ Web.test_POST_relink_file_replace _______________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6cca1080> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:35123/uri/URI:DIR2:vllhd3bgaarkmqxfbdxhdgxmee:wsotfvmqxig3z6rw5clyhzjw7q2qluftkzan7pkmbexamyfk2x6a/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...kmbexamyfk2x6a/foo/sub\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________ Web.test_POST_relink_file_replace_only_files _________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c7d027240> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:43265/uri/URI:DIR2:jpdbmyfol4ly33yspnlv2geh5i:xvzj5jo5avwl6s6ai3to5mmrlly7b3mw4aq76574uemcvi26x2ha/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...74uemcvi26x2ha/foo/sub\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ____________ Web.test_POST_relink_file_replace_only_files_conflict _____________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:35803/uri/URI:DIR2:dpo4qsmfui3gwqtzmg4schrr6u:liv2ovfq4ygs4x2v6fruz5co4gtt2a6bmqsqoniiz2qqk54eesma/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...sqoniiz2qqk54eesma/foo\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ______________________ Web.test_POST_relink_file_same_dir ______________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6caed2c0> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:34931/uri/URI:DIR2:xo6zrr3qkawdpieh4wby42xylm:4kgcszet63g4fbi62pzfmwn6t6rlxfee57t54mgynandfspdkhgq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...t54mgynandfspdkhgq/foo\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________ Web.test_POST_relink_file_to_bad_uri _____________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:37913/uri/URI:DIR2:kqndhpgsccr3wansgm4kbvqjcy:tlhtons6ygfnm6suco7rh3scducfvof7ydfn6rqu4g4v5ogb4zmq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...qffydnnul5hfa4j577arma\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________ Web.test_POST_relink_file_to_nonexistent_dir _________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:40521/uri/URI:DIR2:ngztney6h7z32jbub2ce4cc2vm:otkirru3eulzk6ympyhlfrfzowvrjfm6l4p6xqohqfxfwedoh6ga/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...edoh6ga/nopechucktesta\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ___________________ Web.test_POST_relink_file_to_slash_fail ____________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:32853/uri/URI:DIR2:myx57c7uj7jijcvxngctn64ipi:5rlzhpfr6wozl463arpzozxxwp25lpvtlmaqbibx6wllec6ahu3a/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...bx6wllec6ahu3a/foo/sub\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _______________________ Web.test_POST_relink_file_to_uri _______________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6cff1780> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:37179/uri/URI:DIR2:gcqayhzv2mulynjvzdhiqk2xje:rt7gvglfxky3nucdxcvd7qf4gpuzojvutebslgdbtjm2bbcnfpbq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...rz2qi7yzyxzfpk53d564la\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ___________________________ Web.test_POST_rename_dir ___________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1ca7b80e80> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:38031/uri/URI:DIR2:dsommndxceur2de5phwmwahshi:rq4cl3nym4epasjaelrmrow265nnwbx4aayayijp3y66s3yonn5q' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-..."to_name"\r\n\r\nplunk\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed __________________________ Web.test_POST_rename_file ___________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6c9dac40> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:34177/uri/URI:DIR2:ysoopdpeoqxntexlqsx76qytxi:dftx3b47z53yewefatx5pb6kqylvi4ipxytqbzz47kels6cpgfzq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...ame"\r\n\r\nwibble.txt\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed __________________ Web.test_POST_rename_file_from_slash_fail ___________________ self = res = ]> expected_failure = which = 'test_POST_rename_from_file_slash_fail', substring = '400 Bad Request' response_substring = 'from_name= may not contain a slash' def shouldFail(self, res, expected_failure, which, substring=None, response_substring=None): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:637: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:39041/uri/URI:DIR2:pjpylfjebdecnumyekleyemjha:e5r6rjx6a2diceteq2unkjojzzjv3376evzmnpyefyphl4fsgkyq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...name"\r\n\r\nspock.txt\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed __________________ Web.test_POST_rename_file_no_replace_field __________________ self = res = ]> expected_failure = which = 'POST_rename_file_no_replace_field', substring = '409 Conflict' response_substring = 'There was already a child by that name, and you asked me to not replace it' def shouldFail(self, res, expected_failure, which, substring=None, response_substring=None): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:637: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:41785/uri/URI:DIR2:wjy5rfx6ljep2v4zyl6dwewrfa:3xk5zao7dpx6z42szmmdco47xhyr46fgvrkhkov552r3znfurwka/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-..."to_name"\r\n\r\nempty\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ________________ Web.test_POST_rename_file_no_replace_queryarg _________________ self = res = ]> expected_failure = which = 'POST_rename_file_no_replace_queryarg', substring = '409 Conflict' response_substring = 'There was already a child by that name, and you asked me to not replace it' def shouldFail(self, res, expected_failure, which, substring=None, response_substring=None): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:637: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:35255/uri/URI:DIR2:v3qbvhqpntpe2cjlawaea2nt2u:hs6q7ztdrghw6xqhb56u2q4w47zkhjc4vgfuyagzpcndyfd3u6oa/foo?replace=false' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-..."to_name"\r\n\r\nempty\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ________________ Web.test_POST_rename_file_no_replace_same_link ________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1cf65bd2c0> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:38669/uri/URI:DIR2:gpe5rrn7c2fqtwnxp2y4sxdae4:2tiy4xrcu7amltimigfcjtmhnehlk4suetgems5zcgbc3defyqyq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...o_name"\r\n\r\nbar.txt\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________ Web.test_POST_rename_file_redundant ______________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c7d652580> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:38543/uri/URI:DIR2:digzlndrpuocics3w3am2ylht4:gswfnosikewtbfbqxp6rapfnulzfrlbcp25yjy2b46v7y2kgsxeq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...o_name"\r\n\r\nbar.txt\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ______________________ Web.test_POST_rename_file_replace _______________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6cff1780> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:38533/uri/URI:DIR2:4qfr6xdp5ie4rwxqcxf4sehiku:rxtilub4ra3dor732bflvhdvforngfrq5cuqygwsrx5ykub6j2lq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-..."to_name"\r\n\r\nempty\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________ Web.test_POST_rename_file_replace_only_files _________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1ca7b80e80> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:39283/uri/URI:DIR2:klweyai7wlxaslvls5wyjmquku:icmaebmn25durt7232bjjwz7v5zvthjvgdiv4zunbp4trb6nudaa/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...o_name"\r\n\r\nbaz.txt\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ____________ Web.test_POST_rename_file_replace_only_files_conflict _____________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:41677/uri/URI:DIR2:maczxvr4qbmiwrdotd3kk62daq:usjuktywiq4xofu74u5jtevbn7pmsme45ws232dyaenwieohvkna/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-..."to_name"\r\n\r\nempty\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ___________________ Web.test_POST_rename_file_to_slash_fail ____________________ self = res = ]> expected_failure = which = 'test_POST_rename_file_to_slash_fail', substring = '400 Bad Request' response_substring = 'to_name= may not contain a slash' def shouldFail(self, res, expected_failure, which, substring=None, response_substring=None): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:637: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:44453/uri/URI:DIR2:lnavj53d62etgaichla7v45uau:jmc3oxcaek7zw4xdkcmev46jzk3nupq5vszgdfwri2odki5xnvza/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...\r\n\r\nkirk/spock.txt\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed __________________________ Web.test_POST_set_children __________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1caae1e800> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'post' url = 'http://127.0.0.1:46727/uri/URI:DIR2:sodijhxjkdtt5kkzrbrx4obq74:tzogz3b5uv3fugzraheynzrapyhlgm7thbyrmqphjxs62w3jkvoq/foo?t=set_children' kwargs = {'data': b'{\n "atomic_added_1": [ "filenode", { "rw_uri": "URI:CHK:vkoziuocwto7jnvvqedurqjo5y:i2r... }\n } ]\n }'} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ____________________ Web.test_POST_set_children_with_hyphen ____________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1ca7b80e80> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'post' url = 'http://127.0.0.1:40553/uri/URI:DIR2:ta3di4recxqxqfrori5dbkigfu:2mtggiaq277x3v3ifmonxkvadfqjgvabb6s7ugf3yob5qgd7tu4q/foo?t=set-children' kwargs = {'data': b'{\n "atomic_added_1": [ "filenode", { "rw_uri": "URI:CHK:fvvxgckhqanhmryettzn6uybja:gpk... }\n } ]\n }'} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________________ Web.test_POST_unlink _____________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6cff1780> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:39511/uri/URI:DIR2:roiuwvg7fq4l3qpsuwezwnak3a:5q4sdf5ixksxv3plxbny434l2zr5kdkvag2qywvjlhhtjobilj4q/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...="name"\r\n\r\nbar.txt\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________________ Web.test_POST_upload _____________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c7d652580> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:35407/uri/URI:DIR2:i726etouxeuojzitjqfszfvesy:llg26hzcx3s5aw2i5qd5fy2m7bsyg5qhnohm5qqyrbtlv73iixha/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...\r\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _______________________ Web.test_POST_upload_bad_format ________________________ self = @inlineCallbacks def test_POST_upload_bad_format(self): url = self.webish_url + self.public_url + "/foo?t=upload&format=foo" body, headers = self.build_form(file=("foo.txt", self.NEWFILE_CONTENTS * 300000)) > yield self.assertHTTPError(url, 400, "Unknown format: foo", method="post", data=body, headers=headers) allmydata/test/web/test_web.py:2950: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://127.0.0.1:33277/uri/URI:DIR2:2e75fluchccdghvim3ybpdtpza:vgw6yym3j4m4rdk73dn3jsder2epbktie7knkladf4vjw3643wsa/foo?t=upload&format=foo' code = 400, response_substring = 'Unknown format: foo', method = 'post' persistent = False args = {'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n--boogabooga\r\nContent-Dis...ts\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def assertHTTPError(self, url, code, response_substring, method="get", persistent=False, **args): > response = yield treq.request(method, url, persistent=persistent, **args) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common.py:970: RequestTransmissionFailed ___________________ Web.test_POST_upload_bad_format_unlinked ___________________ self = @inlineCallbacks def test_POST_upload_bad_format_unlinked(self): url = self.webish_url + "/uri?t=upload&format=foo" body, headers = self.build_form(file=("foo.txt", self.NEWFILE_CONTENTS * 300000)) > yield self.assertHTTPError(url, 400, "Unknown format: foo", method="post", data=body, headers=headers) allmydata/test/web/test_web.py:2879: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://127.0.0.1:44785/uri?t=upload&format=foo', code = 400 response_substring = 'Unknown format: foo', method = 'post', persistent = False args = {'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n--boogabooga\r\nContent-Dis...ts\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def assertHTTPError(self, url, code, response_substring, method="get", persistent=False, **args): > response = yield treq.request(method, url, persistent=persistent, **args) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common.py:970: RequestTransmissionFailed _________________________ Web.test_POST_upload_format __________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1ca7b80e80> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:43517/uri/URI:DIR2:ze4452rasse5bqhur54lepq3qa:nglouqxejmvwvi2h44uizq6zcetzjvl2l4wzmgqdwbasipgsvsaa/foo?t=upload&format=chk' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...ts\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________ Web.test_POST_upload_format_unlinked _____________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1caae1e800> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST', url = 'http://127.0.0.1:44543/uri?t=upload&format=chk' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...ts\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________________ Web.test_POST_upload_keypair _________________________ self = async def test_POST_upload_keypair(self) -> None: """ A *POST* creating a new mutable object may include a *private-key* query argument giving a urlsafe-base64-encoded RSA private key to use as the "signature key". The given signature key is used, rather than a new one being generated. """ format = "sdmf" priv, pub = create_signing_keypair(2048) encoded_privkey = urlsafe_b64encode(der_string_from_signing_key(priv)).decode("ascii") filename = "predetermined-sdmf" expected_content = self.NEWFILE_CONTENTS * 100 > actual_cap = uri.from_string(await self.POST( self.public_url + f"/foo?t=upload&format={format}&private-key={encoded_privkey}", file=(filename, expected_content), )) allmydata/test/web/test_web.py:2895: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:1183: in __iter__ yield self /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:33807/uri/URI:DIR2:4rr54a3ftao7w63eaxkr3cok4y:gsfedv6vbbftrchx3yaokut4e5xyiop7fhua4ootiandccsfqhqq/f...8yhtOEwzGW-CBicP7PROxVizQtk_GFTzruAajzWDEIqR6b8s96oASAN0hIy6Aaak5i0-NnL8JnpaOU5aXdPFnh3xdXp5ueK4jTZiAcg9zIzn93MAj9974=' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...ts\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________________ Web.test_POST_upload_mutable _________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6ce06c80> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:37085/uri/URI:DIR2:tj5lsizlvsodacmvgbcu3dxu44:vgcacp3bsqazdhqvibtqkkpjvrqlhak463rwz3tmcfkj7xqva52q/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...\r\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________ Web.test_POST_upload_mutable_toobig ______________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6ce06e80> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:45349/uri/URI:DIR2:eduhjh3rf4geerazw4gyxs76ui:vrxpbewlaubt2cksamrw27ysig7cx777nmfoomjkpwnbsmmfcr7q/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...bbbbbbbbbbbbbbbbbbbbbb\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed __________________________ Web.test_POST_upload_named __________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6ca07c00> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:41619/uri/URI:DIR2:3nirdqru4t3ceymal7j2wqb26y:3j2z7cz4aos67hy47x5ngakuxnag3cviyjponzfwab2solvlp7wa/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...contents\n\xff\x00\xff\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ____________________ Web.test_POST_upload_named_badfilename ____________________ self = res = ]> expected_failure = which = 'test_POST_upload_named_badfilename', substring = '400 Bad Request' response_substring = 'name= may not contain a slash' def shouldFail(self, res, expected_failure, which, substring=None, response_substring=None): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:637: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:44831/uri/URI:DIR2:isuxpf2l6524pqqutsiklj23jm:6eypf5uypqcqwrauugz5tzcjw4abxu6oluwtrdefqvwobjki2cka/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...\r\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________________ Web.test_POST_upload_no_link _________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1ca7b80e80> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST', url = 'http://127.0.0.1:42081/uri' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...\r\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________ Web.test_POST_upload_no_link_mutable _____________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6cff1780> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST', url = 'http://127.0.0.1:41097/uri' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...\r\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________ Web.test_POST_upload_no_link_mutable_toobig __________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1ca7b80e80> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST', url = 'http://127.0.0.1:34125/uri' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...bbbbbbbbbbbbbbbbbbbbbb\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ____________________ Web.test_POST_upload_no_link_whendone _____________________ self = @inlineCallbacks def test_POST_upload_no_link_whendone(self): body, headers = self.build_form(t="upload", when_done="/", file=("new.txt", self.NEWFILE_CONTENTS)) > yield self.shouldRedirectTo(self.webish_url + "/uri", self.webish_url + "/", method="post", data=body, headers=headers, code=http.FOUND) allmydata/test/web/test_web.py:2789: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://127.0.0.1:39651/uri', target_location = 'http://127.0.0.1:39651/' method = 'post', code = 302 args = {'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n--boogabooga\r\nContent-Dis...\r\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def shouldRedirectTo(self, url, target_location, method="get", code=None, **args): > response = yield treq.request(method, url, persistent=False, allow_redirects=False, **args) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/web/test_web.py:4342: RequestTransmissionFailed ________________ Web.test_POST_upload_no_link_whendone_results _________________ self = @inlineCallbacks def test_POST_upload_no_link_whendone_results(self): # We encode "uri" as "%75ri" to exercise a case affected by ticket #1860 body, headers = self.build_form(t="upload", when_done="/%75ri/%(uri)s", file=("new.txt", self.NEWFILE_CONTENTS), ) > redir_url = yield self.shouldRedirectTo(self.webish_url + "/uri", None, method="post", data=body, headers=headers, code=http.FOUND) allmydata/test/web/test_web.py:2801: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://127.0.0.1:38407/uri', target_location = None, method = 'post' code = 302 args = {'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n--boogabooga\r\nContent-Dis...\r\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def shouldRedirectTo(self, url, target_location, method="get", code=None, **args): > response = yield treq.request(method, url, persistent=False, allow_redirects=False, **args) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/web/test_web.py:4342: RequestTransmissionFailed ____________________ Web.test_POST_upload_no_replace_field _____________________ self = res = ]> expected_failure = which = 'POST_upload_no_replace_field', substring = '409 Conflict' response_substring = 'There was already a child by that name, and you asked me to not replace it' def shouldFail(self, res, expected_failure, which, substring=None, response_substring=None): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:637: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:38037/uri/URI:DIR2:mkub6oyjwrxj6gbdva57ttkkhy:hsnf33wu6g4o6o2w4bo4qgx7ll2irzvkdvhhwglxjuswotfwllya/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...\r\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ______________________ Web.test_POST_upload_no_replace_ok ______________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6d3d1080> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:38385/uri/URI:DIR2:6yqpcxz2fhwxe4gbofp5f2oqu4:wzbdmpikrgqezmjlytxzugeooqsi6colsf7qqhg6ilsh2geco7ta/foo?replace=false' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...\r\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ___________________ Web.test_POST_upload_no_replace_queryarg ___________________ self = res = ]> expected_failure = which = 'POST_upload_no_replace_queryarg', substring = '409 Conflict' response_substring = 'There was already a child by that name, and you asked me to not replace it' def shouldFail(self, res, expected_failure, which, substring=None, response_substring=None): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:637: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:46253/uri/URI:DIR2:7khqwfbaqqlltfxys46gz2wq4u:ohdxqx7b44cyv3z7yikldh2sqy5jh7qp3qggojgwkohbro3juy6q/foo?replace=false' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...\r\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________________ Web.test_POST_upload_replace _________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c7d652580> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:40595/uri/URI:DIR2:4m53cn56vjked5zbxrjvtl4uvu:7p25n32h6vqtffcna6lcllen7ps5btmh5xgwvoenggdglibwvejq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...\r\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________________ Web.test_POST_upload_unicode _________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6ce06e80> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:46103/uri/URI:DIR2:xzjraunk7a3ylns6grelpqqhyi:heldip2nqbqiyz3rz23ouijz7i2ip5qwfwrcui5ef2v7hvqwgnuq/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...\r\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ______________________ Web.test_POST_upload_unicode_named ______________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6ca07c00> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST' url = 'http://127.0.0.1:43753/uri/URI:DIR2:gyaaoqa256fqj6xzsqfmicsanq:nez4hyd4rqtdgkx5qha5eic2kzgqsjlueyhx5bwad37kyeasoica/foo' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...\r\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ________________________ Web.test_POST_upload_whendone _________________________ self = @inlineCallbacks def test_POST_upload_whendone(self): body, headers = self.build_form(t="upload", when_done="/THERE", file=("new.txt", self.NEWFILE_CONTENTS)) > yield self.shouldRedirectTo(self.webish_url + self.public_url + "/foo", "/THERE", method="post", data=body, headers=headers, code=http.FOUND) allmydata/test/web/test_web.py:3157: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://127.0.0.1:34717/uri/URI:DIR2:qy3alorma7huo6hegduvpapbiq:v52wju75pdmztmkxwwqtk5olcc3bieez7hr56rz7wnlsf4xlj3xa/foo' target_location = '/THERE', method = 'post', code = 302 args = {'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n--boogabooga\r\nContent-Dis...\r\nnewfile contents\n\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def shouldRedirectTo(self, url, target_location, method="get", code=None, **args): > response = yield treq.request(method, url, persistent=False, allow_redirects=False, **args) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/web/test_web.py:4342: RequestTransmissionFailed ___________________________ Web.test_PUT_DIRURL_uri ____________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6ca07c00> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:37561/uri/URI:DIR2:dalnxz74gakuiej7l7pt3tx74a:6xczse7cv75m47ojlgsteg3s74kjl7mwucbox5goknmfvmntqdiq/foo?t=uri' kwargs = {'data': b'URI:DIR2:szy6xf62fszxpnap3ob32yxf3q:b2nf5rhom5uwlwkb4ix6uwjtb24ymjbvhij3rwzeemtotapkglrq', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ______________________ Web.test_PUT_DIRURL_uri_noreplace _______________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:42803/uri/URI:DIR2:lhulmwixnprt25df6opxkmmb2u:7s7z3m2idkc2omr34quiih2wwzpgunzp7qio5x6pe52qkv3bjwzq/foo?t=uri&replace=false' kwargs = {'data': b'URI:DIR2:pivtkf4swj6bxceiq2co57dyay:nzsqrlfwz6prajh6oufx3v42xjlkl66bns4j227xqff44sd7ur6q', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed __________________________ Web.test_PUT_FILE_URI_mdmf __________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6c57a000> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:46055/uri/URI%3AMDMF%3Ay4y5ngb5w5gfeybvqlddj6vgma%3A3u6uabsibokd3je2nyotvnbfia3ruuaule7p7kmws6jp7rnxqdfa' kwargs = {'data': b'new_contents', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ____________________ Web.test_PUT_FILE_URI_mdmf_extensions _____________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6cdf1540> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:40175/uri/URI%3AMDMF%3Aj7ccfvwod43vz72rt6d2sbc6kq%3Ap7h5gg4ghabygwbktdges3mfppfjsydw6p355tfja7eed4plx7qa%3AEXTENSIONSTUFF' kwargs = {'data': b'new_contents', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________ Web.test_PUT_FILE_URI_mdmf_readonly ______________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:38405/uri/URI:MDMF-RO:yljad3o32ex6fhfq54us23rcza:4t527wh7gt6l4ykourxlws35pxiulbn4iz22nckl6gj4uu5cdela' kwargs = {'data': b'new data', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________ Web.test_PUT_FILE_URI_sdmf_readonly ______________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:38589/uri/URI:SSK-RO:dri7ec622md62vtkh6n55olgbm:ft5zrjpq3x47yysayy7q2gqrrlpza6g2uhus5znom5lkh66ehwuq' kwargs = {'data': b'new_data', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ___________________________ Web.test_PUT_NEWFILEURL ____________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6c57a000> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:35159/uri/URI:DIR2:fnptvf2xwsyvaru7tp73tyhl3e:oiphx6uvfxqshgswcos5ngiei53eqygomtaejjdmvgddzwv4hfhq/foo/new.txt' kwargs = {'data': b'newfile contents\n', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ______________________ Web.test_PUT_NEWFILEURL_bad_format ______________________ self = @inlineCallbacks def test_PUT_NEWFILEURL_bad_format(self): new_contents = self.NEWFILE_CONTENTS * 300000 url = self.webish_url + self.public_url + "/foo/foo.txt?format=foo" > yield self.assertHTTPError(url, 400, "Unknown format: foo", method="put", data=new_contents) allmydata/test/web/test_web.py:4520: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://127.0.0.1:33223/uri/URI:DIR2:ocp2g3jf2rcjy7ul7l764qbrua:3q5uhymymae5gwdeozuydifbgzfufqscfertykfop2mbrrcqe4ea/foo/foo.txt?format=foo' code = 400, response_substring = 'Unknown format: foo', method = 'put' persistent = False args = {'data': b'newfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\...ontents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\n'} @inlineCallbacks def assertHTTPError(self, url, code, response_substring, method="get", persistent=False, **args): > response = yield treq.request(method, url, persistent=persistent, **args) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common.py:970: RequestTransmissionFailed ________________________ Web.test_PUT_NEWFILEURL_bad_t _________________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:33789/uri/URI:DIR2:h6hbro22sow573psqcnqdqxcxy:h2scgzdv3xjberqrw26ahpw4i3pyw6a46cavarftdd5nq45his7q/foo/bar.txt?t=bogus' kwargs = {'data': b'contents', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _______________________ Web.test_PUT_NEWFILEURL_blocked ________________________ self = res = ]> expected_failure = which = 'PUT_NEWFILEURL_blocked', substring = '409 Conflict' response_substring = "Unable to create directory 'blockingfile': a file was in the way" def shouldFail(self, res, expected_failure, which, substring=None, response_substring=None): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:637: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:35525/uri/URI:DIR2:pkjy6t4nghe74qd64mfjpmuyaq:3lyfyjxfgsj4trt3ij3fhxfcj3crmgdlj34jtftzgbguzixal7mq/foo/blockingfile/new.txt' kwargs = {'data': b'newfile contents\n', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________________ Web.test_PUT_NEWFILEURL_mdmf _________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6ca07c00> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:40961/uri/URI:DIR2:3rzcyhihhuapv6ej33ixnnadse:zn6iynazn4ag6liei6su3ee7m3jfl7ordiqtn3ja6diaeoyrr2uq/foo/mdmf.txt?format=mdmf' kwargs = {'data': b'newfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\...e contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\n', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ________________________ Web.test_PUT_NEWFILEURL_mkdirs ________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6cdd5540> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:39695/uri/URI:DIR2:llhsqvzq3yawnr4z2geok57wda:veezfclyuovc3kcekors6k3duwrq7brdfjhtafnanxcqipnxo2fa/foo/newdir/new.txt' kwargs = {'data': b'newfile contents\n', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _______________________ Web.test_PUT_NEWFILEURL_mutable ________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1cab19c600> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:43169/uri/URI:DIR2:r2fi4vzx6xev2jui22ppctviuy:vn3fjuqgsyr6r2ley6lamdj7a3sfff7mh2bebpu6wm2lludibjza/foo/new.txt?mutable=true' kwargs = {'data': b'newfile contents\n', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ____________________ Web.test_PUT_NEWFILEURL_mutable_toobig ____________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c7cd60540> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:43301/uri/URI:DIR2:bmu6g3gmnbpso3aw5sf757erf4:ow7n6k23izzwlaaqzpvnqmy5bhzprozrfujjfqvzdruizn2ggbsq/foo/new.txt?mutable=true' kwargs = {'data': b'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb...bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ______________________ Web.test_PUT_NEWFILEURL_no_replace ______________________ self = res = ]> expected_failure = which = 'PUT_NEWFILEURL_no_replace', substring = '409 Conflict' response_substring = 'There was already a child by that name, and you asked me to not replace it' def shouldFail(self, res, expected_failure, which, substring=None, response_substring=None): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:637: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:43567/uri/URI:DIR2:flf447brn3lt7uvepy3xrjbutq:le2x7otyjk6a25i3j775xtvmpyhnzm46pcvmhbgtkrclpm3nrqbq/foo/bar.txt?replace=false' kwargs = {'data': b'newfile contents\n', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________ Web.test_PUT_NEWFILEURL_not_mutable ______________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6df5b480> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:36031/uri/URI:DIR2:nkvdghe2fyiprqmxb6j6s2x4z4:wlmqpp7tg7fy5d22zamkynqvud6a6c3p2msqom5xnkf7scawxina/foo/new.txt?mutable=false' kwargs = {'data': b'newfile contents\n', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ______________________ Web.test_PUT_NEWFILEURL_range_bad _______________________ res = ]> def done(res): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:654: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:35259/uri/URI:DIR2:5vn7rlaepjc5l7rozynmawv2sy:2gqmrzvdtz63pti3wjr5grmzrjr7ddxkzr3wgtkqoqi6u27xhw2q/foo/new.txt' kwargs = {'data': b'ewfile con', 'headers': {'content-range': 'bytes 1-10/17'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _______________________ Web.test_PUT_NEWFILEURL_replace ________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6df5b480> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:41365/uri/URI:DIR2:2j4jcmqk3w3onf6p23e6sqv6ne:dlzyuzz4r3nkosk5yck6moel4qfr5cyotisuilynqtq7kwqlq4la/foo/bar.txt' kwargs = {'data': b'newfile contents\n', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________________ Web.test_PUT_NEWFILEURL_sdmf _________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6d2bc2c0> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:34365/uri/URI:DIR2:kybmmwp6cjr2ovr2ng2u24zwya:xhjkty2nkexufijwv3bwm57uhzlhsbvyakzjvxqcsohlgs47xtsq/foo/sdmf.txt?format=sdmf' kwargs = {'data': b'newfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\...e contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\n', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________ Web.test_PUT_NEWFILEURL_unlinked_bad_format __________________ self = @inlineCallbacks def test_PUT_NEWFILEURL_unlinked_bad_format(self): contents = self.NEWFILE_CONTENTS * 300000 > yield self.assertHTTPError(self.webish_url + "/uri?format=foo", 400, "Unknown format: foo", method="put", data=contents) allmydata/test/web/test_web.py:1782: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://127.0.0.1:45091/uri?format=foo', code = 400 response_substring = 'Unknown format: foo', method = 'put', persistent = False args = {'data': b'newfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\...ontents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\n'} @inlineCallbacks def assertHTTPError(self, url, code, response_substring, method="get", persistent=False, **args): > response = yield treq.request(method, url, persistent=persistent, **args) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common.py:970: RequestTransmissionFailed ____________________ Web.test_PUT_NEWFILEURL_unlinked_mdmf _____________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1cab1aca40> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put', url = 'http://127.0.0.1:38787/uri?format=mdmf' kwargs = {'data': b'newfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\...e contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\n', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ____________________ Web.test_PUT_NEWFILEURL_unlinked_sdmf _____________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6c9a1340> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put', url = 'http://127.0.0.1:41593/uri?format=sdmf' kwargs = {'data': b'newfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\...e contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\nnewfile contents\n', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________________ Web.test_PUT_NEWFILEURL_uri __________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1cab1aca40> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:42519/uri/URI:DIR2:v2u2qb6ut3zhih2owffkj2gfum:lfamgfoab4etxqoazikuocvhpfoeylivftek7oznu7zrpedwlt6q/foo/new.txt?t=uri' kwargs = {'data': b'URI:CHK:npvohgd6yxx47y7jslisdbach4:kgjprsvcfaudl3irnbq7xgjkphqthiefehg5ohlcuddvkmvkeqra:3:10:19', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ____________________ Web.test_PUT_NEWFILEURL_uri_no_replace ____________________ self = res = ]> expected_failure = which = 'PUT_NEWFILEURL_uri_no_replace', substring = '409 Conflict' response_substring = 'There was already a child by that name, and you asked me to not replace it' def shouldFail(self, res, expected_failure, which, substring=None, response_substring=None): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:637: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:44261/uri/URI:DIR2:fmejt4xn2j4j4qkietehby5xyy:z4a6pwdgiaetbq3rtaghzjodlr4w7o46uyictf5anvtcdgbbiy5a/foo/bar.txt?t=uri&replace=false' kwargs = {'data': b'URI:CHK:gprc4mwzjkkas72i6s4vxx3bka:wre44hiyriahtlcvuxh7v6afaihk22py5g66bawfmig3ssxou2eq:3:10:19', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________ Web.test_PUT_NEWFILEURL_uri_replace ______________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c7cd60540> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:37787/uri/URI:DIR2:nms4sns4be6vwpvsaneww6w3sq:2rqfugvqtfgms6ecuyyqquujhri5q3i3dxyll6pkpbpq2jevdv7a/foo/bar.txt?t=uri' kwargs = {'data': b'URI:CHK:jya4ymb2woxhqgraexipbrmmmi:2rinjyid3ejle3y3vr7ojrvr4nzlhubuxtyg5bkehkdc6zohx3ma:3:10:19', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ___________________ Web.test_PUT_NEWFILEURL_uri_unknown_bad ____________________ self = res = ]> expected_failure = which = 'POST_put_uri_unknown_bad', substring = '400 Bad Request' response_substring = 'unknown cap in a write slot' def shouldFail(self, res, expected_failure, which, substring=None, response_substring=None): if isinstance(res, failure.Failure): > res.trap(expected_failure) allmydata/test/web/test_web.py:637: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:431: in trap self.raiseException() /usr/lib/python3/dist-packages/twisted/python/failure.py:455: in raiseException raise self.value.with_traceback(self.tb) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:45795/uri/URI:DIR2:btn67isxvxc66o45yitrddz5bi:ajt667vwzqlhr7u5iahgjnqcly3i73ckald5j7rilrrcfqjidreq/foo/put-future.txt?t=uri' kwargs = {'data': b'lafs://from_the_future_rw_\xe2\x98\xba', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________ Web.test_PUT_NEWFILEURL_uri_unknown_imm_good _________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6df5b480> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:40689/uri/URI:DIR2:6qvusryf6vqnyhp67py5zeswtm:6pwbjpa7svacj2ybrjye2rfgfiaeeoffo2xq2dj5akxqlymdubmq/foo/put-future-imm.txt?t=uri' kwargs = {'data': b'imm.lafs://immutable_from_the_future_imm_\xe2\x98\xba', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _________________ Web.test_PUT_NEWFILEURL_uri_unknown_ro_good __________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6d2bc2c0> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:33701/uri/URI:DIR2:xfa34f4lqtvaa4lyb7gzlss5ki:2jz4cnwcxoyis73qgr7hqb2hbnvh4sgdsbdq4zf6rp4twgxmxe2a/foo/put-future-ro.txt?t=uri' kwargs = {'data': b'ro.lafs://readonly_from_the_future_ro_\xe2\x98\xba', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ___________________________ Web.test_PUT_NEWFILE_URI ___________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c7cd60540> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put', url = 'http://127.0.0.1:42741/uri' kwargs = {'data': b'New file contents here\n', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _______________________ Web.test_PUT_NEWFILE_URI_mutable _______________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1cab19c600> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put', url = 'http://127.0.0.1:46669/uri?mutable=true' kwargs = {'data': b'New file contents here\n', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _____________________ Web.test_PUT_NEWFILE_URI_not_mutable _____________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1cab1aca40> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put', url = 'http://127.0.0.1:35633/uri?mutable=false' kwargs = {'data': b'New file contents here\n', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ______________________ Web.test_PUT_overwrite_only_files _______________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c6e435980> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put' url = 'http://127.0.0.1:37469/uri/URI:DIR2:f6fcn4nmmryl2zw555rlop7qvu:3ssgczxp2gayaqesqlczwfyvskiwgdy66dqpbxaxojqnehyoufna/foo/dir/file1.txt' kwargs = {'data': b'newfile contents\n', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ____________________ Web.test_PUT_update_at_invalid_offset _____________________ self = @inlineCallbacks def test_PUT_update_at_invalid_offset(self): file_contents = b"test file" * 100000 # about 900 KiB > filecap = yield self.PUT("/uri?mutable=true", file_contents) allmydata/test/web/test_web.py:4708: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put', url = 'http://127.0.0.1:36489/uri?mutable=true' kwargs = {'data': b'test filetest filetest filetest filetest filetest filetest filetest filetest filetest filetest filetest fil...iletest filetest filetest filetest filetest filetest filetest filetest filetest filetest filetest file', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ________________________ Web.test_PUT_update_at_offset _________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1c7cd60540> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put', url = 'http://127.0.0.1:38053/uri?mutable=true' kwargs = {'data': b'test filetest filetest filetest filetest filetest filetest filetest filetest filetest filetest filetest fil...iletest filetest filetest filetest filetest filetest filetest filetest filetest filetest filetest file', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ___________________ Web.test_PUT_update_at_offset_immutable ____________________ self = @inlineCallbacks def test_PUT_update_at_offset_immutable(self): file_contents = b"Test file" * 100000 > filecap = yield self.PUT("/uri", file_contents) allmydata/test/web/test_web.py:4717: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: in _inlineCallbacks result = context.run( /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'put', url = 'http://127.0.0.1:36867/uri' kwargs = {'data': b'Test fileTest fileTest fileTest fileTest fileTest fileTest fileTest fileTest fileTest fileTest fileTest fil...ileTest fileTest fileTest fileTest fileTest fileTest fileTest fileTest fileTest fileTest fileTest file', 'headers': {}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed ______________________________ Web.test_incident _______________________________ result = ]> gen = status = _CancellationStatus(deferred=, waitingOn=) context = <_contextvars.Context object at 0x7f1caafc3240> @_extraneous def _inlineCallbacks( result: object, gen: Union[ Generator[Deferred[Any], Any, _T], Coroutine[Deferred[Any], Any, _T], ], status: _CancellationStatus[_T], context: _Context, ) -> None: """ Carry out the work of L{inlineCallbacks}. Iterate the generator produced by an C{@}L{inlineCallbacks}-decorated function, C{gen}, C{send()}ing it the results of each value C{yield}ed by that generator, until a L{Deferred} is yielded, at which point a callback is added to that L{Deferred} to call this function again. @param result: The last result seen by this generator. Note that this is never a L{Deferred} - by the time this function is invoked, the L{Deferred} has been called back and this will be a particular result at a point in its callback chain. @param gen: a generator object returned by calling a function or method decorated with C{@}L{inlineCallbacks} @param status: a L{_CancellationStatus} tracking the current status of C{gen} @param context: the contextvars context to run `gen` in """ # This function is complicated by the need to prevent unbounded recursion # arising from repeatedly yielding immediately ready deferreds. This while # loop and the waiting variable solve that by manually unfolding the # recursion. # waiting for result? # result waiting: List[Any] = [True, None] stopIteration: bool = False callbackValue: Any = None while 1: try: # Send the last result back as the result of the yield expression. isFailure = isinstance(result, Failure) if isFailure: > result = context.run( cast(Failure, result).throwExceptionIntoGenerator, gen ) /usr/lib/python3/dist-packages/twisted/internet/defer.py:2013: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3/dist-packages/twisted/python/failure.py:467: in throwExceptionIntoGenerator return g.throw(self.value.with_traceback(self.tb)) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ method = 'POST', url = 'http://127.0.0.1:39325/report_incident' kwargs = {'allow_redirects': False, 'data': b'--boogabooga\r\nContent-Disposition: form-data; name="_charset"\r\n\r\nUTF-8\r\n-...e="details"\r\n\r\neek\r\n--boogabooga--\r\n', 'headers': {'content-type': 'multipart/form-data; boundary=boogabooga'}} @inlineCallbacks def do_http(method, url, **kwargs): """ Run HTTP query, return Deferred of body as bytes. """ > response = yield treq.request(method, url, persistent=False, **kwargs) E twisted.web._newclient.RequestTransmissionFailed: [] allmydata/test/common_web.py:57: RequestTransmissionFailed _______________________________ Web.test_static ________________________________ 'NoneType' object is not iterable During handling of the above exception, another exception occurred: NOTE: Incompatible Exception Representation, displaying natively: twisted.internet.defer.TimeoutError: (test_static) still running at 120.0 secs ____________________ TahoeLAFSSiteTests.test_large_request _____________________ 'NoneType' object is not iterable During handling of the above exception, another exception occurred: NOTE: Incompatible Exception Representation, displaying natively: testtools.testresult.real._StringException: + Exception Group Traceback (most recent call last): | File "/usr/lib/python3/dist-packages/twisted/internet/defer.py", line 216, in maybeDeferred | result = f(*args, **kwargs) | File "/usr/lib/python3/dist-packages/testtools/testcase.py", line 756, in _run_test_method | return self._get_test_method()() | ~~~~~~~~~~~~~~~~~~~~~~~^^ | File "/build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/eliotutil.py", line 156, in run_with_logging | return test_method(*args, **kwargs) | File "/build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_webish.py", line 310, in test_large_request | def test_large_request(self, request_body_size): | ^^^^^^^ | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 1837, in wrapped_test | raise the_error_hypothesis_found | hypothesis.errors.FlakyFailure: Hypothesis test_large_request(self=, request_body_size=1057434) produces unreliable results: Falsified on the first call but did not on a subsequent one (1 sub-exception) | Falsifying example: test_large_request( | self=, | request_body_size=1057434, | ) | Unreliable test timings! On an initial run, this test took 251.07ms, which exceeded the deadline of 200.00ms, but on a subsequent run it took 81.56 ms, which did not. If you expect this sort of variability in your test timings, consider turning deadlines off for this test by setting deadline=None. +-+---------------- 1 ---------------- | Traceback (most recent call last): | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 1085, in _execute_once_for_engine | result = self.execute_once(data) | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 1022, in execute_once | result = self.test_runner(data, run) | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 729, in default_executor | return function(data) | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 996, in run | return test(*args, **kwargs) | File "/build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_webish.py", line 310, in test_large_request | def test_large_request(self, request_body_size): | ^^^^^^^^^^^^^^^^^^^^^^^^^^ | File "/usr/lib/python3/dist-packages/hypothesis/core.py", line 926, in test | raise DeadlineExceeded( | datetime.timedelta(seconds=runtime), self.settings.deadline | ) | hypothesis.errors.DeadlineExceeded: Test took 251.07ms, which exceeds the deadline of 200.00ms +------------------------------------ =============================== warnings summary =============================== ../../../../../../usr/lib/python3/dist-packages/_pytest/config/__init__.py:1441 /usr/lib/python3/dist-packages/_pytest/config/__init__.py:1441: PytestConfigWarning: Unknown config option: twisted self._warn_or_fail_if_strict(f"Unknown config option: {key}\n") ../../../../../../usr/lib/python3/dist-packages/eliot/_output.py:512 /usr/lib/python3/dist-packages/eliot/_output.py:512: DeprecationWarning: Using a JSON encoder subclass is no longer supported, please switch to using a default function FileDestination(file=output_file, encoder=encoder, json_default=json_default) ../../../../../../usr/lib/python3/dist-packages/pyutil/dictutil.py:185 /usr/lib/python3/dist-packages/pyutil/dictutil.py:185: DeprecationWarning: deprecated warnings.warn("deprecated", DeprecationWarning) ../../../../../../usr/lib/python3/dist-packages/twisted/web/static.py:35 /usr/lib/python3/dist-packages/twisted/web/static.py:35: DeprecationWarning: twisted.web.resource._UnsafeNoResource.__init__ was deprecated in Twisted 22.10.0; please use Use twisted.web.pages.notFound instead, which properly escapes HTML. instead dangerousPathError = resource._UnsafeNoResource("Invalid request URL.") ../../../../../../usr/lib/python3/dist-packages/twisted/web/static.py:264 /usr/lib/python3/dist-packages/twisted/web/static.py:264: DeprecationWarning: twisted.web.resource._UnsafeNoResource.__init__ was deprecated in Twisted 22.10.0; please use Use twisted.web.pages.notFound instead, which properly escapes HTML. instead childNotFound = resource._UnsafeNoResource("File not found.") ../../../../../../usr/lib/python3/dist-packages/twisted/web/static.py:265 /usr/lib/python3/dist-packages/twisted/web/static.py:265: DeprecationWarning: twisted.web.resource._UnsafeForbiddenResource.__init__ was deprecated in Twisted 22.10.0; please use Use twisted.web.pages.forbidden instead, which properly escapes HTML. instead forbidden = resource._UnsafeForbiddenResource() ../../../../../../usr/lib/python3/dist-packages/testtools/testcase.py:253 .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggedTestTests::test_fails .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggedTestTests::test_logs_non_utf_8_byte .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggedTestTests::test_returns_fired_deferred .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggedTestTests::test_returns_none .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggedTestTests::test_returns_unfired_deferred .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggedTestTests::test_unserializable_fails .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggingTests::test_skip_cleans_up .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggingTests::test_validation_failure /usr/lib/python3/dist-packages/testtools/testcase.py:253: FutureWarning: functools.partial will be a method descriptor in future Python versions; wrap it in staticmethod() if you want to preserve the old behavior runTest = getattr(test_method, "_run_test_with", self.run_tests_with) allmydata/test/cli/wormholetesting.py:107 /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/wormholetesting.py:107: PytestCollectionWarning: cannot collect test class 'TestingHelper' because it has a __init__ constructor (from: .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_invite.py) @frozen ../../../../../../usr/lib/python3/dist-packages/testtools/testresult/real.py:66 /usr/lib/python3/dist-packages/testtools/testresult/real.py:66: PytestCollectionWarning: cannot collect test class 'TestResult' because it has a __init__ constructor (from: .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py) class TestResult(unittest.TestResult): ../../../../../../usr/lib/python3/dist-packages/twisted/conch/ssh/transport.py:105 /usr/lib/python3/dist-packages/twisted/conch/ssh/transport.py:105: CryptographyDeprecationWarning: TripleDES has been moved to cryptography.hazmat.decrepit.ciphers.algorithms.TripleDES and will be removed from this module in 48.0.0. b"3des-cbc": (algorithms.TripleDES, 24, modes.CBC), ../../../../../../usr/lib/python3/dist-packages/twisted/conch/ssh/transport.py:112 /usr/lib/python3/dist-packages/twisted/conch/ssh/transport.py:112: CryptographyDeprecationWarning: TripleDES has been moved to cryptography.hazmat.decrepit.ciphers.algorithms.TripleDES and will be removed from this module in 48.0.0. b"3des-ctr": (algorithms.TripleDES, 24, modes.CTR), ../../../../../../usr/lib/python3/dist-packages/twisted/internet/_sslverify.py:799: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_run.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_client.py: 82 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_helper.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py: 31 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_iputil.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py: 175 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_multi_introducers.py: 10 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_node.py: 11 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_client.py: 14 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 258 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_introducer.py: 10 warnings /usr/lib/python3/dist-packages/twisted/internet/_sslverify.py:799: DeprecationWarning: CSR support in pyOpenSSL is deprecated. You should use the APIs in cryptography. req = crypto.X509Req() ../../../../../../usr/lib/python3/dist-packages/twisted/internet/_sslverify.py:587: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_run.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_client.py: 82 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_helper.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py: 31 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_iputil.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py: 175 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_multi_introducers.py: 10 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_node.py: 11 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_client.py: 14 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 258 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_introducer.py: 10 warnings /usr/lib/python3/dist-packages/twisted/internet/_sslverify.py:587: DeprecationWarning: CSR support in pyOpenSSL is deprecated. You should use the APIs in cryptography. return crypto.dump_certificate_request(format, self.original) ../../../../../../usr/lib/python3/dist-packages/twisted/internet/_sslverify.py:579: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_run.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_client.py: 82 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_helper.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py: 31 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_iputil.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py: 175 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_multi_introducers.py: 10 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_node.py: 11 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_client.py: 14 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 258 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_introducer.py: 10 warnings /usr/lib/python3/dist-packages/twisted/internet/_sslverify.py:579: DeprecationWarning: CSR support in pyOpenSSL is deprecated. You should use the APIs in cryptography. req = crypto.load_certificate_request(requestFormat, requestData) ../../../../../../usr/lib/python3/dist-packages/OpenSSL/crypto.py:2434: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_run.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_client.py: 82 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_helper.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py: 31 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_iputil.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py: 175 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_multi_introducers.py: 10 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_node.py: 11 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_client.py: 14 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 258 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_introducer.py: 10 warnings /usr/lib/python3/dist-packages/OpenSSL/crypto.py:2434: DeprecationWarning: CSR support in pyOpenSSL is deprecated. You should use the APIs in cryptography. x509req = X509Req.__new__(X509Req) allmydata/storage/http_client.py:1077 /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/storage/http_client.py:1077: PytestCollectionWarning: cannot collect test class 'TestWriteVectors' because it has a __init__ constructor (from: .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_http.py) @frozen allmydata/storage/http_client.py:1058 /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/storage/http_client.py:1058: PytestCollectionWarning: cannot collect test class 'TestVector' because it has a __init__ constructor (from: .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_http.py) @frozen allmydata/test/test_storage_http.py:263 /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_http.py:263: PytestCollectionWarning: cannot collect test class 'TestApp' because it has a __init__ constructor (from: .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_http.py) class TestApp(BaseApp): .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_admin.py: 7 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_run.py: 7 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_checker.py: 25 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_datahandle.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_different_encoding.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_exceptions.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_filehandle.py: 5 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_filenode.py: 25 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_interoperability.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_multiple_encodings.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_multiple_versions.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_problems.py: 13 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_repair.py: 17 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_roundtrip.py: 29 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_servermap.py: 8 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_update.py: 13 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_version.py: 19 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_client.py: 17 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_common_util.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_connection_status.py: 6 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_connections.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_consumer.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py: 13 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_grid_manager.py: 19 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_hashtree.py: 9 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_helper.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py: 19 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_iputil.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py: 69 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_openmetrics.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_runner.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py: 107 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_client.py: 5 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_http.py: 66 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_https.py: 5 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_testing.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_common.py: 10 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 12 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_introducer.py: 5 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_logs.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_private.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_root.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_webish.py: 12 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/eliotutil.py:150: DeprecationWarning: Using a JSON encoder subclass is no longer supported, please switch to using a default function validating_logger = MemoryLogger(encoder=AnyBytesJSONEncoder) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_alias.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_backup.py: 7 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_check.py: 5 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cli.py: 21 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cp.py: 13 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_create_alias.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_invite.py: 10 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_list.py: 6 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_mv.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_put.py: 13 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_status.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_interoperability.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_problems.py: 13 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_update.py: 13 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_version.py: 19 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_checker.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py: 6 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_dirnode.py: 22 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_download.py: 28 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_encode.py: 9 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_hung_server.py: 17 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_immutable.py: 20 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_no_network.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_repairer.py: 57 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_sftp.py: 13 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_upload.py: 31 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 14 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/no_network.py:393: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(c) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_alias.py: 24 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_backup.py: 112 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_check.py: 114 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cli.py: 224 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cp.py: 1130 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_create.py: 89 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_create_alias.py: 88 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_grid_manager.py: 18 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_invite.py: 101 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_list.py: 93 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_mv.py: 128 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_put.py: 390 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_status.py: 7 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py: 45 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_encodingutil.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_runner.py: 182 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 308 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/util/encodingutil.py:113: DeprecationWarning: This is unnecessary. warnings.warn("This is unnecessary.", DeprecationWarning) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_alias.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_backup.py: 48 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_check.py: 7 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cli.py: 21 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cp.py: 72 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_create_alias.py: 6 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_mv.py: 23 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_put.py: 46 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py: 14 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 53 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_common.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 15 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_root.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py: 66 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/web/common.py:594: DeprecationWarning: Message.log() is deprecated since 1.11.0, use Action.log() or eliot.log_message() instead. Message.log( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_backup.py: 129 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_check.py: 23 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cli.py: 40 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cp.py: 600 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_create_alias.py: 10 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_list.py: 25 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_mv.py: 75 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_put.py: 96 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py: 93 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 242 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 81 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py: 299 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/web/common.py:491: DeprecationWarning: Message.log() is deprecated since 1.11.0, use Action.log() or eliot.log_message() instead. Message.log( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_backup.py: 5 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cp.py: 7 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_list.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_mv.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py: 25 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/web/common.py:502: DeprecationWarning: twisted.web.resource._UnsafeErrorPage.__init__ was deprecated in Twisted 22.10.0; please use Use twisted.web.pages.errorPage instead, which properly escapes HTML. instead return resource.ErrorPage(code, "Error", text) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_backup.py: 11 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_check.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cli.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cp.py: 7 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_list.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_mv.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_put.py: 6 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_checker.py: 5 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py: 9 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_dirnode.py: 9 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_download.py: 11 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_encode.py: 8 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_hung_server.py: 11 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_immutable.py: 10 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_no_network.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_repairer.py: 35 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_sftp.py: 9 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 16 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_upload.py: 57 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 22 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/immutable/upload.py:720: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue((self.use_trackers, self.peer_selector.get_sharemap_of_preexisting_shares())) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_backup.py: 11 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_check.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cli.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cp.py: 7 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_list.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_mv.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_put.py: 6 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_checker.py: 5 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py: 9 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_dirnode.py: 9 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_download.py: 11 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_encode.py: 8 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_hung_server.py: 11 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_immutable.py: 10 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_no_network.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_repairer.py: 35 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_sftp.py: 9 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 16 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_upload.py: 57 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 22 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/immutable/upload.py:720: DeprecationWarning: returnValue() in 'get_shareholders' causing 'wrapper' to exit: returnValue should only be invoked by functions decorated with inlineCallbacks defer.returnValue((self.use_trackers, self.peer_selector.get_sharemap_of_preexisting_shares())) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_backup.py: 11 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_check.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cli.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cp.py: 7 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_list.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_mv.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_put.py: 6 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_checker.py: 5 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py: 9 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_dirnode.py: 9 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_download.py: 11 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_encode.py: 8 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_hung_server.py: 11 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_immutable.py: 10 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_no_network.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_repairer.py: 34 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_sftp.py: 9 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 16 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_upload.py: 52 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 22 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/immutable/upload.py:1286: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(results) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_backup.py: 11 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_check.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cli.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cp.py: 7 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_list.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_mv.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_put.py: 6 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_checker.py: 5 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py: 9 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_dirnode.py: 9 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_download.py: 11 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_encode.py: 8 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_hung_server.py: 11 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_immutable.py: 10 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_no_network.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_repairer.py: 34 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_sftp.py: 9 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 16 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_upload.py: 52 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 22 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/immutable/upload.py:1286: DeprecationWarning: returnValue() in 'start_encrypted' causing 'wrapper' to exit: returnValue should only be invoked by functions decorated with inlineCallbacks defer.returnValue(results) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_backup.py: 8 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_problems.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_download.py: 60 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py: 6 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_http.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_time_format.py: 10 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/util/time_format.py:31: DeprecationWarning: datetime.datetime.utcfromtimestamp() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.fromtimestamp(timestamp, datetime.UTC). return datetime.datetime.utcfromtimestamp(now).isoformat(sep) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_backup.py: 16 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_check.py: 15 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cli.py: 12 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cp.py: 239 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_create_alias.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_list.py: 15 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_mv.py: 14 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_put.py: 16 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_status.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_checker.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py: 56 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_openmetrics.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 57 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_common.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 24 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_root.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py: 12 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/web/common.py:588: DeprecationWarning: Message.log() is deprecated since 1.11.0, use Action.log() or eliot.log_message() instead. Message.log( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_backup.py: 12 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cp.py: 8 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_create_alias.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_list.py: 18 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_encodingutil.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 110 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/util/encodingutil.py:167: DeprecationWarning: This is unnecessary. warnings.warn("This is unnecessary.", DeprecationWarning) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_backup.py: 10 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_check.py: 13 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cli.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cp.py: 75 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_create_alias.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_mv.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_put.py: 17 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py: 58 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 48 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_common.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 33 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py: 35 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/web/common.py:582: DeprecationWarning: Message.log() is deprecated since 1.11.0, use Action.log() or eliot.log_message() instead. Message.log( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_backup.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cp.py: 74 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_create_alias.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_mv.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_put.py: 14 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 43 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_common.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py: 24 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/web/common.py:605: DeprecationWarning: Message.log() is deprecated since 1.11.0, use Action.log() or eliot.log_message() instead. Message.log( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_check.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cli.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py: 7 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_common.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py: 13 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/web/common.py:600: DeprecationWarning: Message.log() is deprecated since 1.11.0, use Action.log() or eliot.log_message() instead. Message.log( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_check.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cp.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_put.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_checker.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_dirnode.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_repairer.py: 6 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_upload.py: 20 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 3 warnings /usr/lib/python3/dist-packages/eliot/_traceback.py:42: DeprecationWarning: MessageType.__call__() is deprecated since 1.11.0, use MessageType.log() instead. msg = TRACEBACK_MESSAGE(reason=exception, traceback=traceback, exception=typ) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cli.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_cp.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_mv.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_common.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 11 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_root.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py: 13 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/web/common.py:568: DeprecationWarning: Message.log() is deprecated since 1.11.0, use Action.log() or eliot.log_message() instead. Message.log( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_create.py: 16 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_invite.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_runner.py: 8 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/scripts/create_node.py:515: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(0) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_create.py::Config::test_client_basedir_exists .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_create.py::Config::test_node_basedir_exists .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_runner.py::CreateNode::test_client .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_runner.py::CreateNode::test_node /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/scripts/create_node.py:461: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(-1) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_create.py::Config::test_introducer_basedir_exists .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_runner.py::CreateNode::test_introducer /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/scripts/create_node.py:536: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(-1) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_create.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_invite.py: 8 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_runner.py: 4 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/scripts/create_node.py:548: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(0) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_invite.py::Join::test_create_node_illegal_option .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_invite.py::Join::test_create_node_join /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/scripts/create_node.py:445: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(json.loads(remote_data)) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_invite.py::Invite::test_invite_no_client_abilities /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/scripts/tahoe_invite.py:63: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(1) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_invite.py::Invite::test_invite_no_server_abilities .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_invite.py::Invite::test_invite_wrong_server_abilities /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/scripts/create_node.py:473: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(1) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_invite.py::Invite::test_invite_wrong_client_abilities /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/scripts/tahoe_invite.py:66: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(1) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_run.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_client.py: 38 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py: 70 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_multi_introducers.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_node.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_client.py: 5 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 64 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/client.py:355: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(cls( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_run.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_client.py: 33 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py: 40 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py: 246 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_node.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_client.py: 5 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_https.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 582 warnings /usr/lib/python3/dist-packages/twisted/internet/_sslverify.py:1642: DeprecationWarning: Passing pyOpenSSL X509 objects is deprecated. You should use a cryptography.x509.Certificate instead. ctx.use_certificate(self.certificate) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_run.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_client.py: 33 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py: 40 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py: 246 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_node.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_client.py: 5 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_https.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 582 warnings /usr/lib/python3/dist-packages/twisted/internet/_sslverify.py:1643: DeprecationWarning: Passing pyOpenSSL PKey objects is deprecated. You should use a cryptography private key instead. ctx.use_privatekey(self.privateKey) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_run.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_client.py: 37 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py: 70 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_multi_introducers.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_node.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_client.py: 5 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 64 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/client.py:313: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(client) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/cli/test_status.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py: 72 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_client.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 34 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_introducer.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py: 37 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/common_web.py:65: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead returnValue(body) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_checker.py: 25 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_different_encoding.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_filenode.py: 25 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_interoperability.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_multiple_encodings.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_multiple_versions.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_problems.py: 13 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_repair.py: 17 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_roundtrip.py: 29 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_servermap.py: 8 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_update.py: 13 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_version.py: 19 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_client.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py: 10 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py: 16 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py: 69 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py: 59 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_client.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_https.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 12 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_introducer.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_logs.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_root.py: 1 warning /usr/lib/python3/dist-packages/testtools/twistedsupport/_runtest.py:338: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(last_exception) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_problems.py::Problems::test_bad_server /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_problems.py:235: DeprecationWarning: Please use assertEqual instead. d.addCallback(lambda res: self.assertEquals(res, b"contents 1")) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_problems.py::Problems::test_bad_server /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_problems.py:243: DeprecationWarning: Please use assertEqual instead. d.addCallback(lambda res: self.assertEquals(res, b"contents 2")) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_problems.py::Problems::test_bad_server_overlap /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_problems.py:275: DeprecationWarning: Please use assertEqual instead. d.addCallback(lambda res: self.assertEquals(res, b"contents 1")) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_problems.py::Problems::test_bad_server_overlap /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_problems.py:283: DeprecationWarning: Please use assertEqual instead. d.addCallback(lambda res: self.assertEquals(res, b"contents 2")) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_problems.py::Problems::test_block_and_hash_query_error /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_problems.py:414: DeprecationWarning: Please use assertEqual instead. self.assertEquals(data, CONTENTS)) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/mutable/test_repair.py::Repair::test_non_merge /usr/lib/python3/dist-packages/twisted/internet/defer.py:1088: DeprecationWarning: Please use assertEqual instead. current.result = callback( # type: ignore[misc] .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_client.py::StorageClients::test_invalid_static_server .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_client.py::StorageClients::test_static_servers .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::LogCallDeferredTests::test_raise_exception .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::LogCallDeferredTests::test_return_value /usr/lib/python3/dist-packages/eliot/testing.py:342: DeprecationWarning: Using a JSON encoder subclass is no longer supported, please switch to using a default function kwargs["logger"] = logger = MemoryLogger(encoder=encoder_) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_client.py: 5 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py: 37 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py: 2725 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_node.py: 2 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_client.py: 47 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_introducer.py: 80 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/node.py:113: DeprecationWarning: datetime.datetime.utcfromtimestamp() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.fromtimestamp(timestamp, datetime.UTC). d = datetime.datetime.utcfromtimestamp(when) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py: 11 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 19 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_common.py: 3 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 28 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py: 32 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/web/common.py:610: DeprecationWarning: Message.log() is deprecated since 1.11.0, use Action.log() or eliot.log_message() instead. Message.log( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py: 7 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 62 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/no_network.py:655: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(data) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py: 58 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py:172: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead returnValue((data,url)) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py::DeepCheckWebGood::test_good .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py::DeepCheckWebGood::test_good .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py::DeepCheckWebGood::test_good .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py::DeepCheckWebGood::test_good .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py::DeepCheckWebGood::test_good /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py:184: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead returnValue(data) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py::DeepCheckWebGood::test_good .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py::DeepCheckWebGood::test_good .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py::DeepCheckWebGood::test_good .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py::DeepCheckWebGood::test_good .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py::DeepCheckWebGood::test_good /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py:197: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead returnValue(data) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py::DeepCheckWebGood::test_good .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py::DeepCheckWebGood::test_good .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py::DeepCheckWebGood::test_good .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py::DeepCheckWebGood::test_good .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py::DeepCheckWebGood::test_good /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deepcheck.py:206: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead returnValue(data) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_deferredutil.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_repairer.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_upload.py: 23 warnings /usr/lib/python3/dist-packages/eliot/_generators.py:97: DeprecationWarning: the (type, exc, tb) signature of throw() is deprecated, use the single-arg signature instead. value_out = gen.throw(*value_in) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggedTestTests::test_logs_non_utf_8_byte /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py:120: DeprecationWarning: Message.log() is deprecated since 1.11.0, use Action.log() or eliot.log_message() instead. Message.log(hello=b"\xFF") .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggedTestTests::test_returns_fired_deferred /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py:142: DeprecationWarning: Message.log() is deprecated since 1.11.0, use Action.log() or eliot.log_message() instead. Message.log(hello="world") .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggedTestTests::test_returns_none /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py:131: DeprecationWarning: Message.log() is deprecated since 1.11.0, use Action.log() or eliot.log_message() instead. Message.log(hello="world") .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggedTestTests::test_returns_unfired_deferred /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py:154: DeprecationWarning: Message.log() is deprecated since 1.11.0, use Action.log() or eliot.log_message() instead. Message.log(hello="world") .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggedTestTests::test_returns_unfired_deferred /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py:159: DeprecationWarning: Message.log() is deprecated since 1.11.0, use Action.log() or eliot.log_message() instead. d.addCallback(lambda ignored: Message.log(goodbye="world")) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggedTestTests::test_unserializable_fails /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py:109: DeprecationWarning: Message.log() is deprecated since 1.11.0, use Action.log() or eliot.log_message() instead. Message.log(hello=world) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::ParseDestinationDescriptionTests::test_regular_file .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::ParseDestinationDescriptionTests::test_stdout /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/util/eliotutil.py:295: DeprecationWarning: Using a JSON encoder subclass is no longer supported, please switch to using a default function return lambda reactor: FileDestination(get_file(), encoder=AnyBytesJSONEncoder) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggingTests::test_stdlib_event_relayed .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggingTests::test_twisted_event_relayed /usr/lib/python3/dist-packages/eliot/logwriter.py:48: DeprecationWarning: add_destination is deprecated since 1.1.0. Use add_destinations instead. addDestination(self) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggingTests::test_stdlib_event_relayed /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/util/eliotutil.py:203: DeprecationWarning: Message.new() is deprecated since 1.11.0, use eliot.log_message() instead. Message.new( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggingTests::test_twisted_event_relayed /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/util/eliotutil.py:187: DeprecationWarning: Message.new() is deprecated since 1.11.0, use eliot.log_message() instead. Message.new( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py::EliotLoggingTests::test_validation_failure /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_eliotutil.py:260: DeprecationWarning: MessageType.__call__() is deprecated since 1.11.0, use MessageType.log() instead. MSG(foo="Hello").write() .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_hashtree.py::Complete::test_create /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_hashtree.py:28: DeprecationWarning: Please use assertRaises instead. self.failUnlessRaises(IndexError, ht.get_leaf, 8) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_hashtree.py::Complete::test_create /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_hashtree.py:30: DeprecationWarning: Please use assertRaises instead. self.failUnlessRaises(IndexError, ht.parent, 0) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_hashtree.py::Complete::test_create /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_hashtree.py:31: DeprecationWarning: Please use assertRaises instead. self.failUnlessRaises(IndexError, ht.needed_for, -1) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_hashtree.py::Incomplete::test_check /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_hashtree.py:209: DeprecationWarning: Please use assertRaises instead. self.failUnlessRaises(IndexError, ht.get_leaf, 8) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_hashtree.py::Incomplete::test_create /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_hashtree.py:78: DeprecationWarning: Please use assertRaises instead. self.failUnlessRaises(IndexError, ht.get_leaf, 8) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_i2p_provider.py::ConnectToI2P::test_connect .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_i2p_provider.py::ConnectToI2P::test_connect_endpoint /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/util/i2p_provider.py:109: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead returnValue(port) ; break # helps editor .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py::NonV1Server::test_failure .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py::FoolscapImmutableAPIsTests::test_non_matching_overlapping_writes .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py::FoolscapMutableAPIsTests::test_STARAW_write_enabler_must_match /usr/lib/python3/dist-packages/foolscap/call.py:887: DeprecationWarning: twisted.python.failure.Failure.stack was deprecated in Twisted 24.10.0 self.stack = [] .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py::Signatures::test_sign /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py:1014: DeprecationWarning: Please use assertRaises instead. self.failUnlessRaises(UnknownKeyError, .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py::Signatures::test_sign /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py:1016: DeprecationWarning: Please use assertRaises instead. self.failUnlessRaises(UnknownKeyError, .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py::Signatures::test_sign /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py:1021: DeprecationWarning: Please use assertRaises instead. self.failUnlessRaises(BadSignature, .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py::Signatures::test_sign /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py:1025: DeprecationWarning: Please use assertRaises instead. self.failUnlessRaises(UnknownKeyError, .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py::Signatures::test_sign /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_introducer.py:1027: DeprecationWarning: Please use assertRaises instead. self.failUnlessRaises(UnknownKeyError, .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py: 12 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py:414: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead returnValue((storage_index, renew_secret, cancel_secret)) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py: 18 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 4 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/storage_client.py:1606: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py: 22 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 20 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/storage_client.py:1530: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(None) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py: 45 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 55 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/storage_client.py:1503: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(result) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py: 5 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 16 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/storage_client.py:1627: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue({ .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py: 14 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_istorageserver.py:904: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead returnValue((secrets, storage_index)) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_multi_introducers.py::MultiIntroTests::test_reject_default_in_yaml /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/node.py:618: DeprecationWarning: tahoe.cfg [client]introducer.furl is deprecated; use private/introducers.yaml instead. warn( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_openmetrics.py::OpenMetrics::test_spec_compliance /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_openmetrics.py:224: DeprecationWarning: Using readBody with a transport that does not have an abortConnection method d = readBody(response) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py::Server::test_bad_container_version /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py:832: DeprecationWarning: Please use assertRaises instead. e = self.failUnlessRaises(UnknownImmutableContainerVersionError, .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py::Server::test_leases /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py:1088: DeprecationWarning: Please use assertRaises instead. self.failUnlessRaises(IndexError, ss.renew_lease, b"si0", cs0) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py::Server::test_leases /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py:1089: DeprecationWarning: Please use assertRaises instead. self.failUnlessRaises(IndexError, ss.renew_lease, b"si0", rs1) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py::MutableServer::test_allocate /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py:1537: DeprecationWarning: Please use assertRaises instead. f = self.failUnlessRaises(BadWriteEnablerError, .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py::MutableServer::test_bad_magic /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py:1401: DeprecationWarning: Please use assertRaises instead. e = self.failUnlessRaises(UnknownMutableContainerVersionError, .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py::MutableServer::test_container_size /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py:1426: DeprecationWarning: Please use assertRaises instead. self.failUnlessRaises(DataTooLargeError, .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py::MutableServer::test_leases /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py:1721: DeprecationWarning: Please use assertRaises instead. e = self.failUnlessRaises(IndexError, .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py::MDMFProxies::test_write_enforces_order_constraints /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage.py:2738: DeprecationWarning: Please use assertRaises instead. self.failUnlessRaises(LayoutInvalid, mw0.get_signable)) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_https.py::PinningHTTPSValidation::test_server_certificate_expired .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_https.py::PinningHTTPSValidation::test_server_certificate_has_wrong_hash .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_https.py::PinningHTTPSValidation::test_server_certificate_has_wrong_hash .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_https.py::PinningHTTPSValidation::test_server_certificate_not_valid_yet .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_https.py::PinningHTTPSValidation::test_success /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/certs.py:50: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). starts = datetime.datetime.utcnow() + datetime.timedelta(days=valid_in_days) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_https.py::PinningHTTPSValidation::test_server_certificate_expired .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_https.py::PinningHTTPSValidation::test_server_certificate_has_wrong_hash .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_https.py::PinningHTTPSValidation::test_server_certificate_has_wrong_hash .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_https.py::PinningHTTPSValidation::test_server_certificate_not_valid_yet .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_https.py::PinningHTTPSValidation::test_success /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/certs.py:51: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC). expires = datetime.datetime.utcnow() + datetime.timedelta(days=expires_days) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_web.py::LeaseCrawler::test_expire_cutoff_date .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_web.py::LeaseCrawler::test_expire_cutoff_date .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_web.py::LeaseCrawler::test_only_immutable .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_storage_web.py::LeaseCrawler::test_only_mutable .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_time_format.py::TimeFormat::test_iso_utc .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_time_format.py::TimeFormat::test_iso_utc /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/util/time_format.py:21: DeprecationWarning: datetime.datetime.utcfromtimestamp() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.fromtimestamp(timestamp, datetime.UTC). return datetime.datetime.utcfromtimestamp(now).isoformat()[:10] .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 10 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py: 7 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/web/directory.py:694: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(self.dirnode_children) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 4 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py: 10 warnings .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py: 7 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/web/directory.py:680: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(template) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py: 63 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py:1408: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue((out,err)) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py::SystemTest::test_upload_and_download_convergent .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_system.py::SystemTest::test_upload_and_download_random_key /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/common_system.py:968: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue(c) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_tor_provider.py::LaunchTor::test_launch .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_tor_provider.py::LaunchTor::test_launch_executable /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/util/tor_provider.py:137: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead returnValue((tor_control_endpoint_desc, tor)) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_tor_provider.py::ConnectToTor::test_connect .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_tor_provider.py::ConnectToTor::test_connect_endpoint /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/util/tor_provider.py:154: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead returnValue((port, tor_control_proto)) ; break # helps editor .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_tor_provider.py::Provider::test_handler_launch .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/test_tor_provider.py::Provider::test_handler_launch /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/util/tor_provider.py:301: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead returnValue(tor_control_endpoint) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_common.py::RenderExceptionTests::test_unknown /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/web/common.py:615: DeprecationWarning: Message.log() is deprecated since 1.11.0, use Action.log() or eliot.log_message() instead. Message.log( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py::Grid::test_mutant_dirnodes_are_omitted /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py:586: DeprecationWarning: Call to deprecated method findNextSibling. (Replaced by find_next_sibling) -- Deprecated since version 4.0.0. a = td.findNextSibling()(u"a")[0] .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py::Grid::test_mutant_dirnodes_are_omitted .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py::Grid::test_mutant_dirnodes_are_omitted /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_grid.py:590: DeprecationWarning: Call to deprecated method findNextSibling. (Replaced by find_next_sibling) -- Deprecated since version 4.0.0. self.assertThat(td.findNextSibling().findNextSibling().text, Equals(u"{}".format(len("one")))) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_introducer.py::IntroducerWeb::test_basic_information .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_introducer.py::IntroducerWeb::test_json_front_page .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_introducer.py::IntroducerWeb::test_tahoe_css .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_introducer.py::IntroducerWeb::test_welcome /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_introducer.py:97: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead defer.returnValue((intro_node, ws)) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_introducer.py::IntroducerRootTests::test_json /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_introducer.py:210: DeprecationWarning: Tub.listenOn('tcp:0') was deprecated in Foolscap 0.12.0; please use pre-allocated port numbers instead main_tub.listenOn(b"tcp:0") .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_logs.py::TestStreamingLogs::test_one_log /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/web/logs.py:51: DeprecationWarning: add_destination is deprecated since 1.1.0. Use add_destinations instead. eliot.add_destination(self._received_eliot_log) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_private.py: 1 warning .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_webish.py: 9 warnings /usr/lib/python3/dist-packages/twisted/web/resource.py:190: DeprecationWarning: twisted.web.resource._UnsafeNoResource.__init__ was deprecated in Twisted 22.10.0; please use Use twisted.web.pages.notFound instead, which properly escapes HTML. instead return _UnsafeNoResource() .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_root.py::RenderRoot::test_root_json /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_root.py:212: DeprecationWarning: Please use assertEqual instead. self.assertEquals(len(servers), 2) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::MultiFormatResourceTests::test_unknown_format /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/web/common.py:815: DeprecationWarning: twisted.web.resource._UnsafeErrorPage.__init__ was deprecated in Twisted 22.10.0; please use Use twisted.web.pages.errorPage instead, which properly escapes HTML. instead return resource.ErrorPage( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py: 79 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py:565: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead returnValue(data) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_GET_DIRURL .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_GET_DIRURL /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py:2082: DeprecationWarning: Call to deprecated method findNextSibling. (Replaced by find_next_sibling) -- Deprecated since version 4.0.0. td.findNextSibling()(u"a")[0][u"href"] == sub_url .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py: 18 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/common.py:978: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead returnValue(body) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_GET_DIRURL_literal /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py:2130: DeprecationWarning: Call to deprecated method findNextSibling. (Replaced by find_next_sibling) -- Deprecated since version 4.0.0. td.findNextSibling()(u"a")[0] .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_GET_DIRURL_readonly_dir /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py:2101: DeprecationWarning: Call to deprecated method findNextSibling. (Replaced by find_next_sibling) -- Deprecated since version 4.0.0. td.findNextSibling()(u"a")[0] .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py: 15 warnings /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py:562: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead returnValue( (data, str(response.code), response.headers) ) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_GET_FILE_URI_badchild /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/web/filenode.py:180: DeprecationWarning: twisted.web.resource._UnsafeErrorPage.__init__ was deprecated in Twisted 22.10.0; please use Use twisted.web.pages.errorPage instead, which properly escapes HTML. instead return ErrorPage( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_GET_URI_form .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_GET_URI_form .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_GET_URI_form .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_POST_mkdir_no_parentdir_redirect .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_welcome_page_mkdir_button /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py:4353: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead returnValue(location) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_HEAD_FILEURL .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_HEAD_FILEURL_partial_end_range .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_HEAD_FILEURL_partial_range .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_HEAD_FILEURL_range /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py:576: DeprecationWarning: twisted.internet.defer.returnValue was deprecated in Twisted 24.7.0; please use standard return statement instead returnValue( ("", response.code, response.headers) ) .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_PUT_FILE_URI_badchild /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/web/filenode.py:174: DeprecationWarning: twisted.web.resource._UnsafeErrorPage.__init__ was deprecated in Twisted 22.10.0; please use Use twisted.web.pages.errorPage instead, which properly escapes HTML. instead return ErrorPage( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_PUT_NEWDIRURL_blocked /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/web/directory.py:205: DeprecationWarning: twisted.web.resource._UnsafeErrorPage.__init__ was deprecated in Twisted 22.10.0; please use Use twisted.web.pages.errorPage instead, which properly escapes HTML. instead return ErrorPage( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_bad_method .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_short_url /usr/lib/python3/dist-packages/twisted/web/server.py:328: DeprecationWarning: twisted.web.resource._UnsafeErrorPage.__init__ was deprecated in Twisted 22.10.0; please use Use twisted.web.pages.errorPage instead, which properly escapes HTML. instead epage = resource._UnsafeErrorPage( .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_status_path_404_error .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_status_path_404_error .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_status_path_404_error .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_status_path_404_error .pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/test/web/test_web.py::Web::test_status_path_404_error /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build/allmydata/web/common.py:496: DeprecationWarning: twisted.web.resource._UnsafeNoResource.__init__ was deprecated in Twisted 22.10.0; please use Use twisted.web.pages.notFound instead, which properly escapes HTML. instead return resource.NoResource() -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED allmydata/test/test_storage.py::MutableShareFileTests::test_readv_reads_share_data FAILED allmydata/test/test_storage_http.py::ImmutableSharedTests::test_read_with_no_range FAILED allmydata/test/test_storage_http.py::MutableSharedTests::test_read_with_no_range FAILED allmydata/test/test_system.py::HTTPSystemTest::test_filesystem - allmy... FAILED allmydata/test/test_system.py::HTTPSystemTest::test_mutable_mdmf - Fai... FAILED allmydata/test/test_system.py::HTTPSystemTest::test_mutable_sdmf - twi... FAILED allmydata/test/test_system.py::HTTPSystemTest::test_upload_and_download_convergent FAILED allmydata/test/test_system.py::HTTPSystemTest::test_upload_and_download_random_key FAILED allmydata/test/test_system.py::HTTPConnections::test_rref - twisted.tr... FAILED allmydata/test/web/test_introducer.py::IntroducerWeb::test_tahoe_css FAILED allmydata/test/web/test_web.py::Web::test_CSS_FILE - Failed: NOTE: Inc... FAILED allmydata/test/web/test_web.py::Web::test_GET_DIRURL_json_format - twi... FAILED allmydata/test/web/test_web.py::Web::test_GET_FILEURL_json_mutable_type FAILED allmydata/test/web/test_web.py::Web::test_GET_etags - twisted.web._new... FAILED allmydata/test/web/test_web.py::Web::test_POST_DIRURL_check - twisted.... FAILED allmydata/test/web/test_web.py::Web::test_POST_DIRURL_check_and_repair FAILED allmydata/test/web/test_web.py::Web::test_POST_DIRURL_deepcheck - twis... FAILED allmydata/test/web/test_web.py::Web::test_POST_DIRURL_deepcheck_and_repair FAILED allmydata/test/web/test_web.py::Web::test_POST_DIRURL_deepcheck_no_ophandle FAILED allmydata/test/web/test_web.py::Web::test_POST_DIRURL_deepsize_no_ophandle FAILED allmydata/test/web/test_web.py::Web::test_POST_DIRURL_deepstats_no_ophandle FAILED allmydata/test/web/test_web.py::Web::test_POST_DIRURL_manifest_no_ophandle FAILED allmydata/test/web/test_web.py::Web::test_POST_FILEURL_bad_t - twisted... FAILED allmydata/test/web/test_web.py::Web::test_POST_FILEURL_check - twisted... FAILED allmydata/test/web/test_web.py::Web::test_POST_FILEURL_check_and_repair FAILED allmydata/test/web/test_web.py::Web::test_POST_FILEURL_mdmf_check - tw... FAILED allmydata/test/web/test_web.py::Web::test_POST_FILEURL_mdmf_check_and_repair FAILED allmydata/test/web/test_web.py::Web::test_POST_NEWDIRURL_immutable - t... FAILED allmydata/test/web/test_web.py::Web::test_POST_NEWDIRURL_immutable_bad FAILED allmydata/test/web/test_web.py::Web::test_POST_NEWDIRURL_initial_children FAILED allmydata/test/web/test_web.py::Web::test_POST_NEWDIRURL_initial_children_bad_format FAILED allmydata/test/web/test_web.py::Web::test_POST_NEWDIRURL_initial_children_mdmf FAILED allmydata/test/web/test_web.py::Web::test_POST_NEWDIRURL_initial_children_sdmf FAILED allmydata/test/web/test_web.py::Web::test_POST_bad_t - twisted.web._ne... FAILED allmydata/test/web/test_web.py::Web::test_POST_check - twisted.web._ne... FAILED allmydata/test/web/test_web.py::Web::test_POST_delete - twisted.web._n... FAILED allmydata/test/web/test_web.py::Web::test_POST_link_uri - twisted.web.... FAILED allmydata/test/web/test_web.py::Web::test_POST_link_uri_no_replace_field FAILED allmydata/test/web/test_web.py::Web::test_POST_link_uri_no_replace_queryarg FAILED allmydata/test/web/test_web.py::Web::test_POST_link_uri_replace - twis... FAILED allmydata/test/web/test_web.py::Web::test_POST_link_uri_unknown_bad - ... FAILED allmydata/test/web/test_web.py::Web::test_POST_link_uri_unknown_imm_good FAILED allmydata/test/web/test_web.py::Web::test_POST_link_uri_unknown_ro_good FAILED allmydata/test/web/test_web.py::Web::test_POST_mkdir - twisted.web._ne... FAILED allmydata/test/web/test_web.py::Web::test_POST_mkdir_immutable - twist... FAILED allmydata/test/web/test_web.py::Web::test_POST_mkdir_immutable_bad - t... FAILED allmydata/test/web/test_web.py::Web::test_POST_mkdir_initial_children FAILED allmydata/test/web/test_web.py::Web::test_POST_mkdir_initial_children_bad_format FAILED allmydata/test/web/test_web.py::Web::test_POST_mkdir_initial_children_mdmf FAILED allmydata/test/web/test_web.py::Web::test_POST_mkdir_initial_children_sdmf FAILED allmydata/test/web/test_web.py::Web::test_POST_mkdir_no_parentdir_immutable FAILED allmydata/test/web/test_web.py::Web::test_POST_mkdir_no_parentdir_immutable_bad FAILED allmydata/test/web/test_web.py::Web::test_POST_mkdir_no_parentdir_initial_children FAILED allmydata/test/web/test_web.py::Web::test_POST_mkdir_no_parentdir_noredirect2 FAILED allmydata/test/web/test_web.py::Web::test_POST_mkdir_no_parentdir_redirect2 FAILED allmydata/test/web/test_web.py::Web::test_POST_mkdir_no_parentdir_unexpected_children FAILED allmydata/test/web/test_web.py::Web::test_POST_mkdir_no_replace_field FAILED allmydata/test/web/test_web.py::Web::test_POST_mkdir_no_replace_queryarg FAILED allmydata/test/web/test_web.py::Web::test_POST_mkdir_replace - twisted... FAILED allmydata/test/web/test_web.py::Web::test_POST_mkdir_whendone_field - ... FAILED allmydata/test/web/test_web.py::Web::test_POST_mkdir_whendone_queryarg FAILED allmydata/test/web/test_web.py::Web::test_POST_relink_dir - twisted.we... FAILED allmydata/test/web/test_web.py::Web::test_POST_relink_file - twisted.w... FAILED allmydata/test/web/test_web.py::Web::test_POST_relink_file_bad_replace FAILED allmydata/test/web/test_web.py::Web::test_POST_relink_file_explicitly_same_link FAILED allmydata/test/web/test_web.py::Web::test_POST_relink_file_implicitly_same_link FAILED allmydata/test/web/test_web.py::Web::test_POST_relink_file_into_file FAILED allmydata/test/web/test_web.py::Web::test_POST_relink_file_multi_level FAILED allmydata/test/web/test_web.py::Web::test_POST_relink_file_new_name - ... FAILED allmydata/test/web/test_web.py::Web::test_POST_relink_file_no_replace FAILED allmydata/test/web/test_web.py::Web::test_POST_relink_file_no_replace_explicitly_same_link FAILED allmydata/test/web/test_web.py::Web::test_POST_relink_file_replace - t... FAILED allmydata/test/web/test_web.py::Web::test_POST_relink_file_replace_only_files FAILED allmydata/test/web/test_web.py::Web::test_POST_relink_file_replace_only_files_conflict FAILED allmydata/test/web/test_web.py::Web::test_POST_relink_file_same_dir - ... FAILED allmydata/test/web/test_web.py::Web::test_POST_relink_file_to_bad_uri FAILED allmydata/test/web/test_web.py::Web::test_POST_relink_file_to_nonexistent_dir FAILED allmydata/test/web/test_web.py::Web::test_POST_relink_file_to_slash_fail FAILED allmydata/test/web/test_web.py::Web::test_POST_relink_file_to_uri - tw... FAILED allmydata/test/web/test_web.py::Web::test_POST_rename_dir - twisted.we... FAILED allmydata/test/web/test_web.py::Web::test_POST_rename_file - twisted.w... FAILED allmydata/test/web/test_web.py::Web::test_POST_rename_file_from_slash_fail FAILED allmydata/test/web/test_web.py::Web::test_POST_rename_file_no_replace_field FAILED allmydata/test/web/test_web.py::Web::test_POST_rename_file_no_replace_queryarg FAILED allmydata/test/web/test_web.py::Web::test_POST_rename_file_no_replace_same_link FAILED allmydata/test/web/test_web.py::Web::test_POST_rename_file_redundant FAILED allmydata/test/web/test_web.py::Web::test_POST_rename_file_replace - t... FAILED allmydata/test/web/test_web.py::Web::test_POST_rename_file_replace_only_files FAILED allmydata/test/web/test_web.py::Web::test_POST_rename_file_replace_only_files_conflict FAILED allmydata/test/web/test_web.py::Web::test_POST_rename_file_to_slash_fail FAILED allmydata/test/web/test_web.py::Web::test_POST_set_children - twisted.... FAILED allmydata/test/web/test_web.py::Web::test_POST_set_children_with_hyphen FAILED allmydata/test/web/test_web.py::Web::test_POST_unlink - twisted.web._n... FAILED allmydata/test/web/test_web.py::Web::test_POST_upload - twisted.web._n... FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_bad_format - twi... FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_bad_format_unlinked FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_format - twisted... FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_format_unlinked FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_keypair - twiste... FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_mutable - twiste... FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_mutable_toobig FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_named - twisted.... FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_named_badfilename FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_no_link - twiste... FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_no_link_mutable FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_no_link_mutable_toobig FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_no_link_whendone FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_no_link_whendone_results FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_no_replace_field FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_no_replace_ok - ... FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_no_replace_queryarg FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_replace - twiste... FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_unicode - twiste... FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_unicode_named - ... FAILED allmydata/test/web/test_web.py::Web::test_POST_upload_whendone - twist... FAILED allmydata/test/web/test_web.py::Web::test_PUT_DIRURL_uri - twisted.web... FAILED allmydata/test/web/test_web.py::Web::test_PUT_DIRURL_uri_noreplace - t... FAILED allmydata/test/web/test_web.py::Web::test_PUT_FILE_URI_mdmf - twisted.... FAILED allmydata/test/web/test_web.py::Web::test_PUT_FILE_URI_mdmf_extensions FAILED allmydata/test/web/test_web.py::Web::test_PUT_FILE_URI_mdmf_readonly FAILED allmydata/test/web/test_web.py::Web::test_PUT_FILE_URI_sdmf_readonly FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL - twisted.web... FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_bad_format - ... FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_bad_t - twist... FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_blocked - twi... FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_mdmf - twiste... FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_mkdirs - twis... FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_mutable - twi... FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_mutable_toobig FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_no_replace - ... FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_not_mutable FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_range_bad - t... FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_replace - twi... FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_sdmf - twiste... FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_unlinked_bad_format FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_unlinked_mdmf FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_unlinked_sdmf FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_uri - twisted... FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_uri_no_replace FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_uri_replace FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_uri_unknown_bad FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_uri_unknown_imm_good FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILEURL_uri_unknown_ro_good FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILE_URI - twisted.we... FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILE_URI_mutable - tw... FAILED allmydata/test/web/test_web.py::Web::test_PUT_NEWFILE_URI_not_mutable FAILED allmydata/test/web/test_web.py::Web::test_PUT_overwrite_only_files - t... FAILED allmydata/test/web/test_web.py::Web::test_PUT_update_at_invalid_offset FAILED allmydata/test/web/test_web.py::Web::test_PUT_update_at_offset - twist... FAILED allmydata/test/web/test_web.py::Web::test_PUT_update_at_offset_immutable FAILED allmydata/test/web/test_web.py::Web::test_incident - twisted.web._newc... FAILED allmydata/test/web/test_web.py::Web::test_static - Failed: NOTE: Incom... FAILED allmydata/test/web/test_webish.py::TahoeLAFSSiteTests::test_large_request ERROR allmydata/test/test_system.py::HTTPSystemTest::test_mutable_mdmf - Fail... ERROR allmydata/test/test_system.py::HTTPSystemTest::test_mutable_sdmf - Attr... ERROR allmydata/test/test_system.py::HTTPConnections::test_rref - AttributeEr... ERROR allmydata/test/web/test_web.py::Web::test_CSS_FILE - Failed: NOTE: Inco... ERROR allmydata/test/web/test_web.py::Web::test_static - Failed: NOTE: Incomp... = 153 failed, 1688 passed, 5 skipped, 1 deselected, 17243 warnings, 5 errors in 11116.55s (3:05:16) = E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /build/reproducible-path/tahoe-lafs-1.20.0/.pybuild/cpython3_3.13_tahoe-lafs/build; python3.13 -m pytest -k 'not testing_tub' dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.13 returned exit code 13 make: *** [debian/rules:9: binary] Error 25 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/256089 and its subdirectories Wed Aug 6 20:20:09 UTC 2025 W: No second build log, what happened?