I: pbuilder: network access will be disabled during build I: Current time: Wed Oct 1 01:41:33 +14 2025 I: pbuilder-time-stamp: 1759232493 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 [python-falcon_4.0.2-2.dsc] I: copying [./python-falcon_4.0.2.orig.tar.xz] I: copying [./python-falcon_4.0.2-2.debian.tar.xz] I: Extracting source dpkg-source: warning: cannot verify inline signature for ./python-falcon_4.0.2-2.dsc: no acceptable signature found dpkg-source: info: extracting python-falcon in python-falcon-4.0.2 dpkg-source: info: unpacking python-falcon_4.0.2.orig.tar.xz dpkg-source: info: unpacking python-falcon_4.0.2-2.debian.tar.xz dpkg-source: info: using patch list from debian/patches/series dpkg-source: info: applying fix-non-ascii-in-doc.patch dpkg-source: info: applying remove-test_cythonized_asgi.py.patch I: Not using root during the build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/2442647/tmp/hooks/D01_modify_environment starting debug: Running on codethink04-arm64. I: Changing host+domainname to test build reproducibility I: Adding a custom variable just for the fun of it... I: Changing /bin/sh to bash '/bin/sh' -> '/bin/bash' lrwxrwxrwx 1 root root 9 Sep 30 11:41 /bin/sh -> /bin/bash I: Setting pbuilder2's login shell to /bin/bash I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other I: user script /srv/workspace/pbuilder/2442647/tmp/hooks/D01_modify_environment finished I: user script /srv/workspace/pbuilder/2442647/tmp/hooks/D02_print_environment starting I: set BASH=/bin/sh BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath BASH_ALIASES=() BASH_ARGC=() BASH_ARGV=() BASH_CMDS=() BASH_LINENO=([0]="12" [1]="0") BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") BASH_VERSINFO=([0]="5" [1]="3" [2]="3" [3]="1" [4]="release" [5]="aarch64-unknown-linux-gnu") BASH_VERSION='5.3.3(1)-release' BUILDDIR=/build/reproducible-path BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' BUILDUSERNAME=pbuilder2 BUILD_ARCH=arm64 DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 ' DIRSTACK=() DISTRIBUTION=unstable EUID=0 FUNCNAME=([0]="Echo" [1]="main") GROUPS=() HOME=/root HOSTNAME=i-capture-the-hostname HOSTTYPE=aarch64 HOST_ARCH=arm64 IFS=' ' INVOCATION_ID=44af85d80f4a4febb9504555c01f59f4 LANG=C LANGUAGE=nl_BE:nl LC_ALL=C MACHTYPE=aarch64-unknown-linux-gnu MAIL=/var/mail/root OPTERR=1 OPTIND=1 OSTYPE=linux-gnu PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path PBCURRENTCOMMANDLINEOPERATION=build PBUILDER_OPERATION=build PBUILDER_PKGDATADIR=/usr/share/pbuilder PBUILDER_PKGLIBDIR=/usr/lib/pbuilder PBUILDER_SYSCONFDIR=/etc PIPESTATUS=([0]="0") POSIXLY_CORRECT=y PPID=2442647 PS4='+ ' PWD=/ SHELL=/bin/bash SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix SHLVL=3 SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.wz9ApgxA/pbuilderrc_0sip --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.wz9ApgxA/b2 --logfile b2/build.log python-falcon_4.0.2-2.dsc' SUDO_GID=109 SUDO_HOME=/var/lib/jenkins SUDO_UID=104 SUDO_USER=jenkins TERM=unknown TZ=/usr/share/zoneinfo/Etc/GMT-14 UID=0 USER=root _='I: set' http_proxy=http://192.168.101.4:3128 I: uname -a Linux i-capture-the-hostname 6.12.48+deb13-cloud-arm64 #1 SMP Debian 6.12.48-1 (2025-09-20) aarch64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Aug 10 12:30 /bin -> usr/bin I: user script /srv/workspace/pbuilder/2442647/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: arm64 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: cython3, debhelper-compat (= 11), dh-python, lsb-release, openstack-pkg-tools, python3-aiofiles, python3-all, python3-all-dev, python3-asgiref, python3-cbor2, python3-coverage, python3-ddt, python3-httpx, python3-jsonschema, python3-mimeparse, python3-msgpack, python3-mujson, python3-pytest, python3-rapidjson, python3-requests, python3-setuptools, python3-testtools, python3-ujson, python3-uvicorn, python3-websockets, python3-yaml, uvicorn dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19965 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 cython3; however: Package cython3 is not installed. pbuilder-satisfydepends-dummy depends on debhelper-compat (= 11); however: Package debhelper-compat is not installed. pbuilder-satisfydepends-dummy depends on dh-python; however: Package dh-python is not installed. pbuilder-satisfydepends-dummy depends on lsb-release; however: Package lsb-release is not installed. pbuilder-satisfydepends-dummy depends on openstack-pkg-tools; however: Package openstack-pkg-tools is not installed. pbuilder-satisfydepends-dummy depends on python3-aiofiles; however: Package python3-aiofiles is not installed. pbuilder-satisfydepends-dummy depends on python3-all; however: Package python3-all is not installed. pbuilder-satisfydepends-dummy depends on python3-all-dev; however: Package python3-all-dev is not installed. pbuilder-satisfydepends-dummy depends on python3-asgiref; however: Package python3-asgiref is not installed. pbuilder-satisfydepends-dummy depends on python3-cbor2; however: Package python3-cbor2 is not installed. pbuilder-satisfydepends-dummy depends on python3-coverage; however: Package python3-coverage is not installed. pbuilder-satisfydepends-dummy depends on python3-ddt; however: Package python3-ddt is not installed. pbuilder-satisfydepends-dummy depends on python3-httpx; however: Package python3-httpx is not installed. pbuilder-satisfydepends-dummy depends on python3-jsonschema; however: Package python3-jsonschema is not installed. pbuilder-satisfydepends-dummy depends on python3-mimeparse; however: Package python3-mimeparse is not installed. pbuilder-satisfydepends-dummy depends on python3-msgpack; however: Package python3-msgpack is not installed. pbuilder-satisfydepends-dummy depends on python3-mujson; however: Package python3-mujson is not installed. pbuilder-satisfydepends-dummy depends on python3-pytest; however: Package python3-pytest is not installed. pbuilder-satisfydepends-dummy depends on python3-rapidjson; however: Package python3-rapidjson is not installed. pbuilder-satisfydepends-dummy depends on python3-requests; however: Package python3-requests is not installed. pbuilder-satisfydepends-dummy depends on python3-setuptools; however: Package python3-setuptools is not installed. pbuilder-satisfydepends-dummy depends on python3-testtools; however: Package python3-testtools is not installed. pbuilder-satisfydepends-dummy depends on python3-ujson; however: Package python3-ujson is not installed. pbuilder-satisfydepends-dummy depends on python3-uvicorn; however: Package python3-uvicorn is not installed. pbuilder-satisfydepends-dummy depends on python3-websockets; however: Package python3-websockets is not installed. pbuilder-satisfydepends-dummy depends on python3-yaml; however: Package python3-yaml is not installed. pbuilder-satisfydepends-dummy depends on uvicorn; however: Package uvicorn is not installed. Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... Reading package lists... Building dependency tree... Reading state information... Initializing package states... Writing extended state information... Building tag database... pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) The following NEW packages will be installed: autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdextrautils{a} ca-certificates{a} cython3{a} debhelper{a} dh-autoreconf{a} dh-python{a} dh-strip-nondeterminism{a} dwz{a} file{a} gettext{a} gettext-base{a} groff-base{a} intltool-debian{a} jq{a} libarchive-zip-perl{a} libdebhelper-perl{a} libdouble-conversion3{a} libelf1t64{a} libexpat1{a} libexpat1-dev{a} libffi8{a} libfile-stripnondeterminism-perl{a} libjq1{a} libjs-sphinxdoc{a} libmagic-mgc{a} libmagic1t64{a} libonig5{a} libpipeline1{a} libpython3-all-dev{a} libpython3-dev{a} libpython3-stdlib{a} libpython3.13{a} libpython3.13-dev{a} libpython3.13-minimal{a} libpython3.13-stdlib{a} libreadline8t64{a} libtool{a} libuchardet0{a} libunistring5{a} libuv1t64{a} libxml2-16{a} libyaml-0-2{a} lsb-release{a} m4{a} man-db{a} media-types{a} netbase{a} openssl{a} openstack-pkg-tools{a} po-debconf{a} python3{a} python3-aiofiles{a} python3-all{a} python3-all-dev{a} python3-anyio{a} python3-asgiref{a} python3-attr{a} python3-autocommand{a} python3-cbor2{a} python3-certifi{a} python3-chardet{a} python3-charset-normalizer{a} python3-click{a} python3-coverage{a} python3-ddt{a} python3-dev{a} python3-h11{a} python3-httpcore{a} python3-httpx{a} python3-idna{a} python3-inflect{a} python3-iniconfig{a} python3-jaraco.context{a} python3-jaraco.functools{a} python3-jaraco.text{a} python3-jsonschema{a} python3-jsonschema-specifications{a} python3-linkify-it{a} python3-markdown-it{a} python3-mdurl{a} python3-mimeparse{a} python3-minimal{a} python3-more-itertools{a} python3-msgpack{a} python3-mujson{a} python3-packaging{a} python3-pip{a} python3-pkg-resources{a} python3-pluggy{a} python3-pygments{a} python3-pytest{a} python3-rapidjson{a} python3-referencing{a} python3-requests{a} python3-rich{a} python3-rpds-py{a} python3-setuptools{a} python3-sniffio{a} python3-testtools{a} python3-typeguard{a} python3-typing-extensions{a} python3-uc-micro{a} python3-ujson{a} python3-urllib3{a} python3-uvicorn{a} python3-uvloop{a} python3-websockets{a} python3-wheel{a} python3-wsproto{a} python3-yaml{a} python3-zipp{a} python3.13{a} python3.13-dev{a} python3.13-minimal{a} readline-common{a} sensible-utils{a} tzdata{a} uvicorn{a} zlib1g-dev{a} The following packages are RECOMMENDED but will NOT be installed: autopkgtest curl libarchive-cpio-perl libltdl-dev libmail-sendmail-perl lynx madison-lite pristine-tar python3-fqdn python3-isoduration python3-json-pointer python3-rfc3339-validator python3-rfc3986-validator python3-rfc3987 python3-uritemplate python3-webcolors wget 0 packages upgraded, 123 newly installed, 0 to remove and 0 not upgraded. Need to get 37.3 MB of archives. After unpacking 163 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian unstable/main arm64 libexpat1 arm64 2.7.3-1 [96.5 kB] Get: 2 http://deb.debian.org/debian unstable/main arm64 libpython3.13-minimal arm64 3.13.7-1 [857 kB] Get: 3 http://deb.debian.org/debian unstable/main arm64 python3.13-minimal arm64 3.13.7-1 [2001 kB] Get: 4 http://deb.debian.org/debian unstable/main arm64 python3-minimal arm64 3.13.7-1 [27.2 kB] Get: 5 http://deb.debian.org/debian unstable/main arm64 media-types all 13.0.0 [29.3 kB] Get: 6 http://deb.debian.org/debian unstable/main arm64 netbase all 6.5 [12.4 kB] Get: 7 http://deb.debian.org/debian unstable/main arm64 tzdata all 2025b-5 [260 kB] Get: 8 http://deb.debian.org/debian unstable/main arm64 libffi8 arm64 3.5.2-2 [21.5 kB] Get: 9 http://deb.debian.org/debian unstable/main arm64 readline-common all 8.3-3 [74.8 kB] Get: 10 http://deb.debian.org/debian unstable/main arm64 libreadline8t64 arm64 8.3-3 [169 kB] Get: 11 http://deb.debian.org/debian unstable/main arm64 libpython3.13-stdlib arm64 3.13.7-1 [1895 kB] Get: 12 http://deb.debian.org/debian unstable/main arm64 python3.13 arm64 3.13.7-1 [761 kB] Get: 13 http://deb.debian.org/debian unstable/main arm64 libpython3-stdlib arm64 3.13.7-1 [10.2 kB] Get: 14 http://deb.debian.org/debian unstable/main arm64 python3 arm64 3.13.7-1 [28.3 kB] Get: 15 http://deb.debian.org/debian unstable/main arm64 sensible-utils all 0.0.26 [27.0 kB] Get: 16 http://deb.debian.org/debian unstable/main arm64 openssl arm64 3.5.3-1 [1457 kB] Get: 17 http://deb.debian.org/debian unstable/main arm64 ca-certificates all 20250419 [162 kB] Get: 18 http://deb.debian.org/debian unstable/main arm64 libmagic-mgc arm64 1:5.46-5 [338 kB] Get: 19 http://deb.debian.org/debian unstable/main arm64 libmagic1t64 arm64 1:5.46-5 [103 kB] Get: 20 http://deb.debian.org/debian unstable/main arm64 file arm64 1:5.46-5 [43.7 kB] Get: 21 http://deb.debian.org/debian unstable/main arm64 gettext-base arm64 0.23.1-2+b1 [241 kB] Get: 22 http://deb.debian.org/debian unstable/main arm64 libuchardet0 arm64 0.0.8-2 [69.0 kB] Get: 23 http://deb.debian.org/debian unstable/main arm64 groff-base arm64 1.23.0-9 [1130 kB] Get: 24 http://deb.debian.org/debian unstable/main arm64 bsdextrautils arm64 2.41.2-3 [96.7 kB] Get: 25 http://deb.debian.org/debian unstable/main arm64 libpipeline1 arm64 1.5.8-1 [40.2 kB] Get: 26 http://deb.debian.org/debian unstable/main arm64 man-db arm64 2.13.1-1 [1453 kB] Get: 27 http://deb.debian.org/debian unstable/main arm64 m4 arm64 1.4.20-1 [316 kB] Get: 28 http://deb.debian.org/debian unstable/main arm64 autoconf all 2.72-3.1 [494 kB] Get: 29 http://deb.debian.org/debian unstable/main arm64 autotools-dev all 20240727.1 [60.2 kB] Get: 30 http://deb.debian.org/debian unstable/main arm64 automake all 1:1.17-4 [862 kB] Get: 31 http://deb.debian.org/debian unstable/main arm64 autopoint all 0.23.1-2 [770 kB] Get: 32 http://deb.debian.org/debian unstable/main arm64 cython3 arm64 3.0.11+dfsg-2+b1 [2255 kB] Get: 33 http://deb.debian.org/debian unstable/main arm64 libdebhelper-perl all 13.28 [92.4 kB] Get: 34 http://deb.debian.org/debian unstable/main arm64 libtool all 2.5.4-5 [540 kB] Get: 35 http://deb.debian.org/debian unstable/main arm64 dh-autoreconf all 21 [12.2 kB] Get: 36 http://deb.debian.org/debian unstable/main arm64 libarchive-zip-perl all 1.68-1 [104 kB] Get: 37 http://deb.debian.org/debian unstable/main arm64 libfile-stripnondeterminism-perl all 1.15.0-1 [19.9 kB] Get: 38 http://deb.debian.org/debian unstable/main arm64 dh-strip-nondeterminism all 1.15.0-1 [8812 B] Get: 39 http://deb.debian.org/debian unstable/main arm64 libelf1t64 arm64 0.193-3 [189 kB] Get: 40 http://deb.debian.org/debian unstable/main arm64 dwz arm64 0.16-2 [100 kB] Get: 41 http://deb.debian.org/debian unstable/main arm64 libunistring5 arm64 1.3-2 [453 kB] Get: 42 http://deb.debian.org/debian unstable/main arm64 libxml2-16 arm64 2.14.5+dfsg-0.2 [582 kB] Get: 43 http://deb.debian.org/debian unstable/main arm64 gettext arm64 0.23.1-2+b1 [1612 kB] Get: 44 http://deb.debian.org/debian unstable/main arm64 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 45 http://deb.debian.org/debian unstable/main arm64 po-debconf all 1.0.21+nmu1 [248 kB] Get: 46 http://deb.debian.org/debian unstable/main arm64 debhelper all 13.28 [941 kB] Get: 47 http://deb.debian.org/debian unstable/main arm64 dh-python all 6.20250414 [116 kB] Get: 48 http://deb.debian.org/debian unstable/main arm64 libonig5 arm64 6.9.10-1 [187 kB] Get: 49 http://deb.debian.org/debian unstable/main arm64 libjq1 arm64 1.8.1-4 [150 kB] Get: 50 http://deb.debian.org/debian unstable/main arm64 jq arm64 1.8.1-4 [84.7 kB] Get: 51 http://deb.debian.org/debian unstable/main arm64 libdouble-conversion3 arm64 3.3.1-1 [37.3 kB] Get: 52 http://deb.debian.org/debian unstable/main arm64 libexpat1-dev arm64 2.7.3-1 [150 kB] Get: 53 http://deb.debian.org/debian unstable/main arm64 libjs-sphinxdoc all 8.2.3-6 [27.5 kB] Get: 54 http://deb.debian.org/debian unstable/main arm64 libpython3.13 arm64 3.13.7-1 [1978 kB] Get: 55 http://deb.debian.org/debian unstable/main arm64 zlib1g-dev arm64 1:1.3.dfsg+really1.3.1-1+b1 [917 kB] Get: 56 http://deb.debian.org/debian unstable/main arm64 libpython3.13-dev arm64 3.13.7-1 [4924 kB] Get: 57 http://deb.debian.org/debian unstable/main arm64 libpython3-dev arm64 3.13.7-1 [10.5 kB] Get: 58 http://deb.debian.org/debian unstable/main arm64 libpython3-all-dev arm64 3.13.7-1 [1068 B] Get: 59 http://deb.debian.org/debian unstable/main arm64 libuv1t64 arm64 1.51.0-2 [150 kB] Get: 60 http://deb.debian.org/debian unstable/main arm64 libyaml-0-2 arm64 0.2.5-2 [49.2 kB] Get: 61 http://deb.debian.org/debian unstable/main arm64 lsb-release all 12.1-1 [5912 B] Get: 62 http://deb.debian.org/debian unstable/main arm64 python3-packaging all 25.0-1 [56.6 kB] Get: 63 http://deb.debian.org/debian unstable/main arm64 python3-wheel all 0.46.1-2 [21.7 kB] Get: 64 http://deb.debian.org/debian unstable/main arm64 python3-pip all 25.2+dfsg-1 [1386 kB] Get: 65 http://deb.debian.org/debian unstable/main arm64 openstack-pkg-tools all 135 [98.7 kB] Get: 66 http://deb.debian.org/debian unstable/main arm64 python3-aiofiles all 24.1.0-2 [10.7 kB] Get: 67 http://deb.debian.org/debian unstable/main arm64 python3-all arm64 3.13.7-1 [1044 B] Get: 68 http://deb.debian.org/debian unstable/main arm64 python3.13-dev arm64 3.13.7-1 [504 kB] Get: 69 http://deb.debian.org/debian unstable/main arm64 python3-dev arm64 3.13.7-1 [26.1 kB] Get: 70 http://deb.debian.org/debian unstable/main arm64 python3-all-dev arm64 3.13.7-1 [1068 B] Get: 71 http://deb.debian.org/debian unstable/main arm64 python3-idna all 3.10-1 [42.0 kB] Get: 72 http://deb.debian.org/debian unstable/main arm64 python3-sniffio all 1.3.1-1 [7120 B] Get: 73 http://deb.debian.org/debian unstable/main arm64 python3-typing-extensions all 4.15.0-1 [92.4 kB] Get: 74 http://deb.debian.org/debian unstable/main arm64 python3-anyio all 4.11.0-2 [72.8 kB] Get: 75 http://deb.debian.org/debian unstable/main arm64 python3-asgiref all 3.9.1-2 [29.3 kB] Get: 76 http://deb.debian.org/debian unstable/main arm64 python3-attr all 25.3.0-1 [69.5 kB] Get: 77 http://deb.debian.org/debian unstable/main arm64 python3-autocommand all 2.2.2-3 [13.6 kB] Get: 78 http://deb.debian.org/debian unstable/main arm64 python3-cbor2 arm64 5.7.0-1 [21.1 kB] Get: 79 http://deb.debian.org/debian unstable/main arm64 python3-certifi all 2025.1.31+ds-1 [9652 B] Get: 80 http://deb.debian.org/debian unstable/main arm64 python3-chardet all 5.2.0+dfsg-2 [108 kB] Get: 81 http://deb.debian.org/debian unstable/main arm64 python3-charset-normalizer arm64 3.4.3-1 [123 kB] Get: 82 http://deb.debian.org/debian unstable/main arm64 python3-click all 8.2.0+0.really.8.1.8-1 [95.4 kB] Get: 83 http://deb.debian.org/debian unstable/main arm64 python3-coverage arm64 7.8.2+dfsg1-1 [182 kB] Get: 84 http://deb.debian.org/debian unstable/main arm64 python3-ddt all 1.7.2-4 [8668 B] Get: 85 http://deb.debian.org/debian unstable/main arm64 python3-h11 all 0.14.0-1.1 [50.6 kB] Get: 86 http://deb.debian.org/debian unstable/main arm64 python3-httpcore all 1.0.7-1 [44.7 kB] Get: 87 http://deb.debian.org/debian unstable/main arm64 python3-pygments all 2.18.0+dfsg-2 [836 kB] Get: 88 http://deb.debian.org/debian unstable/main arm64 python3-mdurl all 0.1.2-1 [9444 B] Get: 89 http://deb.debian.org/debian unstable/main arm64 python3-uc-micro all 1.0.3-1 [5744 B] Get: 90 http://deb.debian.org/debian unstable/main arm64 python3-linkify-it all 2.0.3-1 [18.7 kB] Get: 91 http://deb.debian.org/debian unstable/main arm64 python3-markdown-it all 3.0.0-3 [59.5 kB] Get: 92 http://deb.debian.org/debian unstable/main arm64 python3-rich all 13.9.4-1 [203 kB] Get: 93 http://deb.debian.org/debian unstable/main arm64 python3-httpx all 0.28.1-1 [76.2 kB] Get: 94 http://deb.debian.org/debian unstable/main arm64 python3-more-itertools all 10.8.0-1 [71.7 kB] Get: 95 http://deb.debian.org/debian unstable/main arm64 python3-typeguard all 4.4.4-1 [37.1 kB] Get: 96 http://deb.debian.org/debian unstable/main arm64 python3-inflect all 7.5.0-1 [33.0 kB] Get: 97 http://deb.debian.org/debian unstable/main arm64 python3-iniconfig all 1.1.1-2 [6396 B] Get: 98 http://deb.debian.org/debian unstable/main arm64 python3-jaraco.functools all 4.1.0-1 [12.0 kB] Get: 99 http://deb.debian.org/debian unstable/main arm64 python3-pkg-resources all 78.1.1-0.1 [224 kB] Get: 100 http://deb.debian.org/debian unstable/main arm64 python3-jaraco.text all 4.0.0-1 [11.4 kB] Get: 101 http://deb.debian.org/debian unstable/main arm64 python3-zipp all 3.23.0-1 [11.0 kB] Get: 102 http://deb.debian.org/debian unstable/main arm64 python3-setuptools all 78.1.1-0.1 [738 kB] Get: 103 http://deb.debian.org/debian unstable/main arm64 python3-jaraco.context all 6.0.1-1 [8276 B] Get: 104 http://deb.debian.org/debian unstable/main arm64 python3-rpds-py arm64 0.21.0-2+b1 [226 kB] Get: 105 http://deb.debian.org/debian unstable/main arm64 python3-referencing all 0.36.2-1 [23.7 kB] Get: 106 http://deb.debian.org/debian unstable/main arm64 python3-jsonschema-specifications all 2023.12.1-2 [9020 B] Get: 107 http://deb.debian.org/debian unstable/main arm64 python3-jsonschema all 4.25.1-2 [75.7 kB] Get: 108 http://deb.debian.org/debian unstable/main arm64 python3-mimeparse all 2.0.0-2 [6860 B] Get: 109 http://deb.debian.org/debian unstable/main arm64 python3-msgpack arm64 1.0.3-3+b5 [77.4 kB] Get: 110 http://deb.debian.org/debian unstable/main arm64 python3-mujson all 1.4-4 [7632 B] Get: 111 http://deb.debian.org/debian unstable/main arm64 python3-pluggy all 1.6.0-1 [27.1 kB] Get: 112 http://deb.debian.org/debian unstable/main arm64 python3-pytest all 8.4.2-1 [266 kB] Get: 113 http://deb.debian.org/debian unstable/main arm64 python3-rapidjson arm64 1.4-3+b1 [154 kB] Get: 114 http://deb.debian.org/debian unstable/main arm64 python3-urllib3 all 2.5.0-1 [116 kB] Get: 115 http://deb.debian.org/debian unstable/main arm64 python3-requests all 2.32.5+dfsg-1 [72.4 kB] Get: 116 http://deb.debian.org/debian unstable/main arm64 python3-testtools all 2.7.2-5 [123 kB] Get: 117 http://deb.debian.org/debian unstable/main arm64 python3-ujson arm64 5.11.0-1 [25.3 kB] Get: 118 http://deb.debian.org/debian unstable/main arm64 python3-wsproto all 1.2.0-1 [25.4 kB] Get: 119 http://deb.debian.org/debian unstable/main arm64 python3-uvloop arm64 0.21.0+ds1-3 [498 kB] Get: 120 http://deb.debian.org/debian unstable/main arm64 python3-uvicorn all 0.32.0-3 [50.9 kB] Get: 121 http://deb.debian.org/debian unstable/main arm64 python3-websockets arm64 15.0.1-1 [96.3 kB] Get: 122 http://deb.debian.org/debian unstable/main arm64 python3-yaml arm64 6.0.2-2 [122 kB] Get: 123 http://deb.debian.org/debian unstable/main arm64 uvicorn all 0.32.0-3 [14.7 kB] Fetched 37.3 MB in 0s (152 MB/s) Preconfiguring packages ... Selecting previously unselected package libexpat1:arm64. (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 ... 19965 files and directories currently installed.) Preparing to unpack .../libexpat1_2.7.3-1_arm64.deb ... Unpacking libexpat1:arm64 (2.7.3-1) ... Selecting previously unselected package libpython3.13-minimal:arm64. Preparing to unpack .../libpython3.13-minimal_3.13.7-1_arm64.deb ... Unpacking libpython3.13-minimal:arm64 (3.13.7-1) ... Selecting previously unselected package python3.13-minimal. Preparing to unpack .../python3.13-minimal_3.13.7-1_arm64.deb ... Unpacking python3.13-minimal (3.13.7-1) ... Setting up libpython3.13-minimal:arm64 (3.13.7-1) ... Setting up libexpat1:arm64 (2.7.3-1) ... Setting up python3.13-minimal (3.13.7-1) ... 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 ... 20299 files and directories currently installed.) Preparing to unpack .../0-python3-minimal_3.13.7-1_arm64.deb ... Unpacking python3-minimal (3.13.7-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-5_all.deb ... Unpacking tzdata (2025b-5) ... Selecting previously unselected package libffi8:arm64. Preparing to unpack .../4-libffi8_3.5.2-2_arm64.deb ... Unpacking libffi8:arm64 (3.5.2-2) ... Selecting previously unselected package readline-common. Preparing to unpack .../5-readline-common_8.3-3_all.deb ... Unpacking readline-common (8.3-3) ... Selecting previously unselected package libreadline8t64:arm64. Preparing to unpack .../6-libreadline8t64_8.3-3_arm64.deb ... Adding 'diversion of /lib/aarch64-linux-gnu/libhistory.so.8 to /lib/aarch64-linux-gnu/libhistory.so.8.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/aarch64-linux-gnu/libhistory.so.8.2 to /lib/aarch64-linux-gnu/libhistory.so.8.2.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/aarch64-linux-gnu/libreadline.so.8 to /lib/aarch64-linux-gnu/libreadline.so.8.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/aarch64-linux-gnu/libreadline.so.8.2 to /lib/aarch64-linux-gnu/libreadline.so.8.2.usr-is-merged by libreadline8t64' Unpacking libreadline8t64:arm64 (8.3-3) ... Selecting previously unselected package libpython3.13-stdlib:arm64. Preparing to unpack .../7-libpython3.13-stdlib_3.13.7-1_arm64.deb ... Unpacking libpython3.13-stdlib:arm64 (3.13.7-1) ... Selecting previously unselected package python3.13. Preparing to unpack .../8-python3.13_3.13.7-1_arm64.deb ... Unpacking python3.13 (3.13.7-1) ... Selecting previously unselected package libpython3-stdlib:arm64. Preparing to unpack .../9-libpython3-stdlib_3.13.7-1_arm64.deb ... Unpacking libpython3-stdlib:arm64 (3.13.7-1) ... Setting up python3-minimal (3.13.7-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 ... 21314 files and directories currently installed.) Preparing to unpack .../000-python3_3.13.7-1_arm64.deb ... Unpacking python3 (3.13.7-1) ... Selecting previously unselected package sensible-utils. Preparing to unpack .../001-sensible-utils_0.0.26_all.deb ... Unpacking sensible-utils (0.0.26) ... Selecting previously unselected package openssl. Preparing to unpack .../002-openssl_3.5.3-1_arm64.deb ... Unpacking openssl (3.5.3-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_arm64.deb ... Unpacking libmagic-mgc (1:5.46-5) ... Selecting previously unselected package libmagic1t64:arm64. Preparing to unpack .../005-libmagic1t64_1%3a5.46-5_arm64.deb ... Unpacking libmagic1t64:arm64 (1:5.46-5) ... Selecting previously unselected package file. Preparing to unpack .../006-file_1%3a5.46-5_arm64.deb ... Unpacking file (1:5.46-5) ... Selecting previously unselected package gettext-base. Preparing to unpack .../007-gettext-base_0.23.1-2+b1_arm64.deb ... Unpacking gettext-base (0.23.1-2+b1) ... Selecting previously unselected package libuchardet0:arm64. Preparing to unpack .../008-libuchardet0_0.0.8-2_arm64.deb ... Unpacking libuchardet0:arm64 (0.0.8-2) ... Selecting previously unselected package groff-base. Preparing to unpack .../009-groff-base_1.23.0-9_arm64.deb ... Unpacking groff-base (1.23.0-9) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../010-bsdextrautils_2.41.2-3_arm64.deb ... Unpacking bsdextrautils (2.41.2-3) ... Selecting previously unselected package libpipeline1:arm64. Preparing to unpack .../011-libpipeline1_1.5.8-1_arm64.deb ... Unpacking libpipeline1:arm64 (1.5.8-1) ... Selecting previously unselected package man-db. Preparing to unpack .../012-man-db_2.13.1-1_arm64.deb ... Unpacking man-db (2.13.1-1) ... Selecting previously unselected package m4. Preparing to unpack .../013-m4_1.4.20-1_arm64.deb ... Unpacking m4 (1.4.20-1) ... Selecting previously unselected package autoconf. Preparing to unpack .../014-autoconf_2.72-3.1_all.deb ... Unpacking autoconf (2.72-3.1) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../015-autotools-dev_20240727.1_all.deb ... Unpacking autotools-dev (20240727.1) ... Selecting previously unselected package automake. Preparing to unpack .../016-automake_1%3a1.17-4_all.deb ... Unpacking automake (1:1.17-4) ... Selecting previously unselected package autopoint. Preparing to unpack .../017-autopoint_0.23.1-2_all.deb ... Unpacking autopoint (0.23.1-2) ... Selecting previously unselected package cython3. Preparing to unpack .../018-cython3_3.0.11+dfsg-2+b1_arm64.deb ... Unpacking cython3 (3.0.11+dfsg-2+b1) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../019-libdebhelper-perl_13.28_all.deb ... Unpacking libdebhelper-perl (13.28) ... Selecting previously unselected package libtool. Preparing to unpack .../020-libtool_2.5.4-5_all.deb ... Unpacking libtool (2.5.4-5) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../021-dh-autoreconf_21_all.deb ... Unpacking dh-autoreconf (21) ... 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.15.0-1_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.15.0-1) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../024-dh-strip-nondeterminism_1.15.0-1_all.deb ... Unpacking dh-strip-nondeterminism (1.15.0-1) ... Selecting previously unselected package libelf1t64:arm64. Preparing to unpack .../025-libelf1t64_0.193-3_arm64.deb ... Unpacking libelf1t64:arm64 (0.193-3) ... Selecting previously unselected package dwz. Preparing to unpack .../026-dwz_0.16-2_arm64.deb ... Unpacking dwz (0.16-2) ... Selecting previously unselected package libunistring5:arm64. Preparing to unpack .../027-libunistring5_1.3-2_arm64.deb ... Unpacking libunistring5:arm64 (1.3-2) ... Selecting previously unselected package libxml2-16:arm64. Preparing to unpack .../028-libxml2-16_2.14.5+dfsg-0.2_arm64.deb ... Unpacking libxml2-16:arm64 (2.14.5+dfsg-0.2) ... Selecting previously unselected package gettext. Preparing to unpack .../029-gettext_0.23.1-2+b1_arm64.deb ... Unpacking gettext (0.23.1-2+b1) ... 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.28_all.deb ... Unpacking debhelper (13.28) ... 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 libonig5:arm64. Preparing to unpack .../034-libonig5_6.9.10-1_arm64.deb ... Unpacking libonig5:arm64 (6.9.10-1) ... Selecting previously unselected package libjq1:arm64. Preparing to unpack .../035-libjq1_1.8.1-4_arm64.deb ... Unpacking libjq1:arm64 (1.8.1-4) ... Selecting previously unselected package jq. Preparing to unpack .../036-jq_1.8.1-4_arm64.deb ... Unpacking jq (1.8.1-4) ... Selecting previously unselected package libdouble-conversion3:arm64. Preparing to unpack .../037-libdouble-conversion3_3.3.1-1_arm64.deb ... Unpacking libdouble-conversion3:arm64 (3.3.1-1) ... Selecting previously unselected package libexpat1-dev:arm64. Preparing to unpack .../038-libexpat1-dev_2.7.3-1_arm64.deb ... Unpacking libexpat1-dev:arm64 (2.7.3-1) ... Selecting previously unselected package libjs-sphinxdoc. Preparing to unpack .../039-libjs-sphinxdoc_8.2.3-6_all.deb ... Unpacking libjs-sphinxdoc (8.2.3-6) ... Selecting previously unselected package libpython3.13:arm64. Preparing to unpack .../040-libpython3.13_3.13.7-1_arm64.deb ... Unpacking libpython3.13:arm64 (3.13.7-1) ... Selecting previously unselected package zlib1g-dev:arm64. Preparing to unpack .../041-zlib1g-dev_1%3a1.3.dfsg+really1.3.1-1+b1_arm64.deb ... Unpacking zlib1g-dev:arm64 (1:1.3.dfsg+really1.3.1-1+b1) ... Selecting previously unselected package libpython3.13-dev:arm64. Preparing to unpack .../042-libpython3.13-dev_3.13.7-1_arm64.deb ... Unpacking libpython3.13-dev:arm64 (3.13.7-1) ... Selecting previously unselected package libpython3-dev:arm64. Preparing to unpack .../043-libpython3-dev_3.13.7-1_arm64.deb ... Unpacking libpython3-dev:arm64 (3.13.7-1) ... Selecting previously unselected package libpython3-all-dev:arm64. Preparing to unpack .../044-libpython3-all-dev_3.13.7-1_arm64.deb ... Unpacking libpython3-all-dev:arm64 (3.13.7-1) ... Selecting previously unselected package libuv1t64:arm64. Preparing to unpack .../045-libuv1t64_1.51.0-2_arm64.deb ... Unpacking libuv1t64:arm64 (1.51.0-2) ... Selecting previously unselected package libyaml-0-2:arm64. Preparing to unpack .../046-libyaml-0-2_0.2.5-2_arm64.deb ... Unpacking libyaml-0-2:arm64 (0.2.5-2) ... Selecting previously unselected package lsb-release. Preparing to unpack .../047-lsb-release_12.1-1_all.deb ... Unpacking lsb-release (12.1-1) ... Selecting previously unselected package python3-packaging. Preparing to unpack .../048-python3-packaging_25.0-1_all.deb ... Unpacking python3-packaging (25.0-1) ... Selecting previously unselected package python3-wheel. Preparing to unpack .../049-python3-wheel_0.46.1-2_all.deb ... Unpacking python3-wheel (0.46.1-2) ... Selecting previously unselected package python3-pip. Preparing to unpack .../050-python3-pip_25.2+dfsg-1_all.deb ... Unpacking python3-pip (25.2+dfsg-1) ... Selecting previously unselected package openstack-pkg-tools. Preparing to unpack .../051-openstack-pkg-tools_135_all.deb ... Unpacking openstack-pkg-tools (135) ... Selecting previously unselected package python3-aiofiles. Preparing to unpack .../052-python3-aiofiles_24.1.0-2_all.deb ... Unpacking python3-aiofiles (24.1.0-2) ... Selecting previously unselected package python3-all. Preparing to unpack .../053-python3-all_3.13.7-1_arm64.deb ... Unpacking python3-all (3.13.7-1) ... Selecting previously unselected package python3.13-dev. Preparing to unpack .../054-python3.13-dev_3.13.7-1_arm64.deb ... Unpacking python3.13-dev (3.13.7-1) ... Selecting previously unselected package python3-dev. Preparing to unpack .../055-python3-dev_3.13.7-1_arm64.deb ... Unpacking python3-dev (3.13.7-1) ... Selecting previously unselected package python3-all-dev. Preparing to unpack .../056-python3-all-dev_3.13.7-1_arm64.deb ... Unpacking python3-all-dev (3.13.7-1) ... Selecting previously unselected package python3-idna. Preparing to unpack .../057-python3-idna_3.10-1_all.deb ... Unpacking python3-idna (3.10-1) ... Selecting previously unselected package python3-sniffio. Preparing to unpack .../058-python3-sniffio_1.3.1-1_all.deb ... Unpacking python3-sniffio (1.3.1-1) ... Selecting previously unselected package python3-typing-extensions. Preparing to unpack .../059-python3-typing-extensions_4.15.0-1_all.deb ... Unpacking python3-typing-extensions (4.15.0-1) ... Selecting previously unselected package python3-anyio. Preparing to unpack .../060-python3-anyio_4.11.0-2_all.deb ... Unpacking python3-anyio (4.11.0-2) ... Selecting previously unselected package python3-asgiref. Preparing to unpack .../061-python3-asgiref_3.9.1-2_all.deb ... Unpacking python3-asgiref (3.9.1-2) ... Selecting previously unselected package python3-attr. Preparing to unpack .../062-python3-attr_25.3.0-1_all.deb ... Unpacking python3-attr (25.3.0-1) ... Selecting previously unselected package python3-autocommand. Preparing to unpack .../063-python3-autocommand_2.2.2-3_all.deb ... Unpacking python3-autocommand (2.2.2-3) ... Selecting previously unselected package python3-cbor2. Preparing to unpack .../064-python3-cbor2_5.7.0-1_arm64.deb ... Unpacking python3-cbor2 (5.7.0-1) ... Selecting previously unselected package python3-certifi. Preparing to unpack .../065-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 .../066-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 .../067-python3-charset-normalizer_3.4.3-1_arm64.deb ... Unpacking python3-charset-normalizer (3.4.3-1) ... Selecting previously unselected package python3-click. Preparing to unpack .../068-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-coverage. Preparing to unpack .../069-python3-coverage_7.8.2+dfsg1-1_arm64.deb ... Unpacking python3-coverage (7.8.2+dfsg1-1) ... Selecting previously unselected package python3-ddt. Preparing to unpack .../070-python3-ddt_1.7.2-4_all.deb ... Unpacking python3-ddt (1.7.2-4) ... Selecting previously unselected package python3-h11. Preparing to unpack .../071-python3-h11_0.14.0-1.1_all.deb ... Unpacking python3-h11 (0.14.0-1.1) ... Selecting previously unselected package python3-httpcore. Preparing to unpack .../072-python3-httpcore_1.0.7-1_all.deb ... Unpacking python3-httpcore (1.0.7-1) ... Selecting previously unselected package python3-pygments. Preparing to unpack .../073-python3-pygments_2.18.0+dfsg-2_all.deb ... Unpacking python3-pygments (2.18.0+dfsg-2) ... Selecting previously unselected package python3-mdurl. Preparing to unpack .../074-python3-mdurl_0.1.2-1_all.deb ... Unpacking python3-mdurl (0.1.2-1) ... Selecting previously unselected package python3-uc-micro. Preparing to unpack .../075-python3-uc-micro_1.0.3-1_all.deb ... Unpacking python3-uc-micro (1.0.3-1) ... Selecting previously unselected package python3-linkify-it. Preparing to unpack .../076-python3-linkify-it_2.0.3-1_all.deb ... Unpacking python3-linkify-it (2.0.3-1) ... Selecting previously unselected package python3-markdown-it. Preparing to unpack .../077-python3-markdown-it_3.0.0-3_all.deb ... Unpacking python3-markdown-it (3.0.0-3) ... Selecting previously unselected package python3-rich. Preparing to unpack .../078-python3-rich_13.9.4-1_all.deb ... Unpacking python3-rich (13.9.4-1) ... Selecting previously unselected package python3-httpx. Preparing to unpack .../079-python3-httpx_0.28.1-1_all.deb ... Unpacking python3-httpx (0.28.1-1) ... Selecting previously unselected package python3-more-itertools. Preparing to unpack .../080-python3-more-itertools_10.8.0-1_all.deb ... Unpacking python3-more-itertools (10.8.0-1) ... Selecting previously unselected package python3-typeguard. Preparing to unpack .../081-python3-typeguard_4.4.4-1_all.deb ... Unpacking python3-typeguard (4.4.4-1) ... Selecting previously unselected package python3-inflect. Preparing to unpack .../082-python3-inflect_7.5.0-1_all.deb ... Unpacking python3-inflect (7.5.0-1) ... Selecting previously unselected package python3-iniconfig. Preparing to unpack .../083-python3-iniconfig_1.1.1-2_all.deb ... Unpacking python3-iniconfig (1.1.1-2) ... Selecting previously unselected package python3-jaraco.functools. Preparing to unpack .../084-python3-jaraco.functools_4.1.0-1_all.deb ... Unpacking python3-jaraco.functools (4.1.0-1) ... Selecting previously unselected package python3-pkg-resources. Preparing to unpack .../085-python3-pkg-resources_78.1.1-0.1_all.deb ... Unpacking python3-pkg-resources (78.1.1-0.1) ... Selecting previously unselected package python3-jaraco.text. Preparing to unpack .../086-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 .../087-python3-zipp_3.23.0-1_all.deb ... Unpacking python3-zipp (3.23.0-1) ... Selecting previously unselected package python3-setuptools. Preparing to unpack .../088-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 .../089-python3-jaraco.context_6.0.1-1_all.deb ... Unpacking python3-jaraco.context (6.0.1-1) ... Selecting previously unselected package python3-rpds-py. Preparing to unpack .../090-python3-rpds-py_0.21.0-2+b1_arm64.deb ... Unpacking python3-rpds-py (0.21.0-2+b1) ... Selecting previously unselected package python3-referencing. Preparing to unpack .../091-python3-referencing_0.36.2-1_all.deb ... Unpacking python3-referencing (0.36.2-1) ... Selecting previously unselected package python3-jsonschema-specifications. Preparing to unpack .../092-python3-jsonschema-specifications_2023.12.1-2_all.deb ... Unpacking python3-jsonschema-specifications (2023.12.1-2) ... Selecting previously unselected package python3-jsonschema. Preparing to unpack .../093-python3-jsonschema_4.25.1-2_all.deb ... Unpacking python3-jsonschema (4.25.1-2) ... Selecting previously unselected package python3-mimeparse. Preparing to unpack .../094-python3-mimeparse_2.0.0-2_all.deb ... Unpacking python3-mimeparse (2.0.0-2) ... Selecting previously unselected package python3-msgpack. Preparing to unpack .../095-python3-msgpack_1.0.3-3+b5_arm64.deb ... Unpacking python3-msgpack (1.0.3-3+b5) ... Selecting previously unselected package python3-mujson. Preparing to unpack .../096-python3-mujson_1.4-4_all.deb ... Unpacking python3-mujson (1.4-4) ... Selecting previously unselected package python3-pluggy. Preparing to unpack .../097-python3-pluggy_1.6.0-1_all.deb ... Unpacking python3-pluggy (1.6.0-1) ... Selecting previously unselected package python3-pytest. Preparing to unpack .../098-python3-pytest_8.4.2-1_all.deb ... Unpacking python3-pytest (8.4.2-1) ... Selecting previously unselected package python3-rapidjson. Preparing to unpack .../099-python3-rapidjson_1.4-3+b1_arm64.deb ... Unpacking python3-rapidjson (1.4-3+b1) ... Selecting previously unselected package python3-urllib3. Preparing to unpack .../100-python3-urllib3_2.5.0-1_all.deb ... Unpacking python3-urllib3 (2.5.0-1) ... Selecting previously unselected package python3-requests. Preparing to unpack .../101-python3-requests_2.32.5+dfsg-1_all.deb ... Unpacking python3-requests (2.32.5+dfsg-1) ... Selecting previously unselected package python3-testtools. Preparing to unpack .../102-python3-testtools_2.7.2-5_all.deb ... Unpacking python3-testtools (2.7.2-5) ... Selecting previously unselected package python3-ujson:arm64. Preparing to unpack .../103-python3-ujson_5.11.0-1_arm64.deb ... Unpacking python3-ujson:arm64 (5.11.0-1) ... Selecting previously unselected package python3-wsproto. Preparing to unpack .../104-python3-wsproto_1.2.0-1_all.deb ... Unpacking python3-wsproto (1.2.0-1) ... Selecting previously unselected package python3-uvloop. Preparing to unpack .../105-python3-uvloop_0.21.0+ds1-3_arm64.deb ... Unpacking python3-uvloop (0.21.0+ds1-3) ... Selecting previously unselected package python3-uvicorn. Preparing to unpack .../106-python3-uvicorn_0.32.0-3_all.deb ... Unpacking python3-uvicorn (0.32.0-3) ... Selecting previously unselected package python3-websockets. Preparing to unpack .../107-python3-websockets_15.0.1-1_arm64.deb ... Unpacking python3-websockets (15.0.1-1) ... Selecting previously unselected package python3-yaml. Preparing to unpack .../108-python3-yaml_6.0.2-2_arm64.deb ... Unpacking python3-yaml (6.0.2-2) ... Selecting previously unselected package uvicorn. Preparing to unpack .../109-uvicorn_0.32.0-3_all.deb ... Unpacking uvicorn (0.32.0-3) ... Setting up media-types (13.0.0) ... Setting up libpipeline1:arm64 (1.5.8-1) ... Setting up libdouble-conversion3:arm64 (3.3.1-1) ... Setting up bsdextrautils (2.41.2-3) ... Setting up libmagic-mgc (1:5.46-5) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libyaml-0-2:arm64 (0.2.5-2) ... Setting up libxml2-16:arm64 (2.14.5+dfsg-0.2) ... Setting up libdebhelper-perl (13.28) ... Setting up libuv1t64:arm64 (1.51.0-2) ... Setting up libmagic1t64:arm64 (1:5.46-5) ... Setting up gettext-base (0.23.1-2+b1) ... Setting up m4 (1.4.20-1) ... Setting up file (1:5.46-5) ... Setting up libelf1t64:arm64 (0.193-3) ... Setting up tzdata (2025b-5) ... Current default time zone: 'Etc/UTC' Local time is now: Tue Sep 30 11:42:00 UTC 2025. Universal Time is now: Tue Sep 30 11:42:00 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up autotools-dev (20240727.1) ... Setting up libexpat1-dev:arm64 (2.7.3-1) ... Setting up libunistring5:arm64 (1.3-2) ... Setting up autopoint (0.23.1-2) ... Setting up libjs-sphinxdoc (8.2.3-6) ... Setting up autoconf (2.72-3.1) ... Setting up zlib1g-dev:arm64 (1:1.3.dfsg+really1.3.1-1+b1) ... Setting up libffi8:arm64 (3.5.2-2) ... Setting up dwz (0.16-2) ... Setting up sensible-utils (0.0.26) ... Setting up libuchardet0:arm64 (0.0.8-2) ... Setting up netbase (6.5) ... Setting up lsb-release (12.1-1) ... Setting up openssl (3.5.3-1) ... Setting up readline-common (8.3-3) ... Setting up libonig5:arm64 (6.9.10-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.15.0-1) ... Setting up gettext (0.23.1-2+b1) ... Setting up libtool (2.5.4-5) ... Setting up libjq1:arm64 (1.8.1-4) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (21) ... Setting up ca-certificates (20250419) ... Updating certificates in /etc/ssl/certs... 150 added, 0 removed; done. Setting up libreadline8t64:arm64 (8.3-3) ... Setting up dh-strip-nondeterminism (1.15.0-1) ... Setting up groff-base (1.23.0-9) ... Setting up jq (1.8.1-4) ... Setting up libpython3.13-stdlib:arm64 (3.13.7-1) ... Setting up libpython3-stdlib:arm64 (3.13.7-1) ... Setting up libpython3.13:arm64 (3.13.7-1) ... Setting up python3.13 (3.13.7-1) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up python3 (3.13.7-1) ... Setting up python3-zipp (3.23.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-uc-micro (1.0.3-1) ... Setting up python3-ujson:arm64 (5.11.0-1) ... Setting up python3-pygments (2.18.0+dfsg-2) ... Setting up python3-packaging (25.0-1) ... Setting up python3-chardet (5.2.0+dfsg-2) ... Setting up python3-certifi (2025.1.31+ds-1) ... Setting up libpython3.13-dev:arm64 (3.13.7-1) ... Setting up python3-mdurl (0.1.2-1) ... Setting up python3-idna (3.10-1) ... Setting up cython3 (3.0.11+dfsg-2+b1) ... Setting up python3-h11 (0.14.0-1.1) ... Setting up python3-typing-extensions (4.15.0-1) ... Setting up python3-cbor2 (5.7.0-1) ... Setting up python3-uvloop (0.21.0+ds1-3) ... Setting up python3-urllib3 (2.5.0-1) ... Setting up python3-pluggy (1.6.0-1) ... Setting up python3-rpds-py (0.21.0-2+b1) ... Setting up python3-linkify-it (2.0.3-1) ... Setting up python3-msgpack (1.0.3-3+b5) ... Setting up python3-mujson (1.4-4) ... Setting up python3-mimeparse (2.0.0-2) ... Setting up python3-asgiref (3.9.1-2) ... Setting up python3-websockets (15.0.1-1) ... Setting up dh-python (6.20250414) ... Setting up python3-more-itertools (10.8.0-1) ... Setting up python3-httpcore (1.0.7-1) ... Setting up python3-iniconfig (1.1.1-2) ... Setting up python3-sniffio (1.3.1-1) ... Setting up python3-attr (25.3.0-1) ... Setting up python3-ddt (1.7.2-4) ... Setting up libpython3-dev:arm64 (3.13.7-1) ... Setting up python3-aiofiles (24.1.0-2) ... Setting up python3-jaraco.functools (4.1.0-1) ... Setting up python3-wsproto (1.2.0-1) ... Setting up python3-jaraco.context (6.0.1-1) ... Setting up python3-anyio (4.11.0-2) ... Setting up python3-charset-normalizer (3.4.3-1) ... Setting up python3.13-dev (3.13.7-1) ... Setting up python3-pytest (8.4.2-1) ... Setting up python3-typeguard (4.4.4-1) ... Setting up python3-rapidjson (1.4-3+b1) ... Setting up python3-all (3.13.7-1) ... Setting up python3-coverage (7.8.2+dfsg1-1) ... Setting up python3-yaml (6.0.2-2) ... Setting up debhelper (13.28) ... Setting up python3-wheel (0.46.1-2) ... Setting up python3-inflect (7.5.0-1) ... Setting up libpython3-all-dev:arm64 (3.13.7-1) ... Setting up python3-jaraco.text (4.0.0-1) ... Setting up python3-dev (3.13.7-1) ... Setting up python3-requests (2.32.5+dfsg-1) ... Setting up python3-pip (25.2+dfsg-1) ... Setting up python3-markdown-it (3.0.0-3) ... Setting up python3-referencing (0.36.2-1) ... Setting up python3-pkg-resources (78.1.1-0.1) ... Setting up python3-all-dev (3.13.7-1) ... Setting up python3-uvicorn (0.32.0-3) ... Setting up python3-setuptools (78.1.1-0.1) ... Setting up python3-rich (13.9.4-1) ... Setting up openstack-pkg-tools (135) ... Setting up python3-httpx (0.28.1-1) ... Setting up python3-jsonschema-specifications (2023.12.1-2) ... Setting up uvicorn (0.32.0-3) ... Setting up python3-testtools (2.7.2-5) ... Setting up python3-jsonschema (4.25.1-2) ... 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: user script /srv/workspace/pbuilder/2442647/tmp/hooks/A99_set_merged_usr starting Not re-configuring usrmerge for unstable I: user script /srv/workspace/pbuilder/2442647/tmp/hooks/A99_set_merged_usr finished hostname: Name or service not known I: Running cd /build/reproducible-path/python-falcon-4.0.2/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../python-falcon_4.0.2-2_source.changes dpkg-buildpackage: info: source package python-falcon dpkg-buildpackage: info: source version 4.0.2-2 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Thomas Goirand dpkg-source --before-build . dpkg-buildpackage: info: host architecture arm64 dpkg-source: info: using options from python-falcon-4.0.2/debian/source/options: --extend-diff-ignore=^[.]gitreview$ debian/rules clean make: pyversions: No such file or directory py3versions: no X-Python3-Version in control file, using supported versions debian/rules:40: warning: overriding recipe for target 'override_dh_installchangelogs' /usr/share/openstack-pkg-tools/pkgos.make:59: warning: ignoring old recipe for target 'override_dh_installchangelogs' dh clean --buildsystem=python_distutils --with python3 debian/rules override_dh_auto_clean make[1]: Entering directory '/build/reproducible-path/python-falcon-4.0.2' make[1]: pyversions: No such file or directory py3versions: no X-Python3-Version in control file, using supported versions debian/rules:40: warning: overriding recipe for target 'override_dh_installchangelogs' /usr/share/openstack-pkg-tools/pkgos.make:59: warning: ignoring old recipe for target 'override_dh_installchangelogs' rm -rf build .stestr *.egg-info .pytest_cache find falcon/ -iname '*.c' -delete find . -iname '*.pyc' -delete for i in $(find . -type d -iname __pycache__) ; do rm -rf $i ; done make[1]: Leaving directory '/build/reproducible-path/python-falcon-4.0.2' dh_autoreconf_clean -O--buildsystem=python_distutils dh_clean -O--buildsystem=python_distutils debian/rules binary make: pyversions: No such file or directory py3versions: no X-Python3-Version in control file, using supported versions debian/rules:40: warning: overriding recipe for target 'override_dh_installchangelogs' /usr/share/openstack-pkg-tools/pkgos.make:59: warning: ignoring old recipe for target 'override_dh_installchangelogs' dh binary --buildsystem=python_distutils --with python3 dh_update_autotools_config -O--buildsystem=python_distutils dh_autoreconf -O--buildsystem=python_distutils dh_auto_configure -O--buildsystem=python_distutils dh_auto_configure: warning: Please use the third-party "pybuild" build system instead of python-distutils dh_auto_configure: warning: This feature will be removed in compat 12. debian/rules override_dh_auto_build make[1]: Entering directory '/build/reproducible-path/python-falcon-4.0.2' make[1]: pyversions: No such file or directory py3versions: no X-Python3-Version in control file, using supported versions debian/rules:40: warning: overriding recipe for target 'override_dh_installchangelogs' /usr/share/openstack-pkg-tools/pkgos.make:59: warning: ignoring old recipe for target 'override_dh_installchangelogs' echo "Do nothing..." Do nothing... make[1]: Leaving directory '/build/reproducible-path/python-falcon-4.0.2' debian/rules override_dh_auto_test make[1]: Entering directory '/build/reproducible-path/python-falcon-4.0.2' make[1]: pyversions: No such file or directory py3versions: no X-Python3-Version in control file, using supported versions debian/rules:40: warning: overriding recipe for target 'override_dh_installchangelogs' /usr/share/openstack-pkg-tools/pkgos.make:59: warning: ignoring old recipe for target 'override_dh_installchangelogs' echo "Do nothing..." Do nothing... make[1]: Leaving directory '/build/reproducible-path/python-falcon-4.0.2' create-stamp debian/debhelper-build-stamp dh_testroot -O--buildsystem=python_distutils dh_prep -O--buildsystem=python_distutils debian/rules override_dh_auto_install make[1]: Entering directory '/build/reproducible-path/python-falcon-4.0.2' make[1]: pyversions: No such file or directory py3versions: no X-Python3-Version in control file, using supported versions debian/rules:40: warning: overriding recipe for target 'override_dh_installchangelogs' /usr/share/openstack-pkg-tools/pkgos.make:59: warning: ignoring old recipe for target 'override_dh_installchangelogs' pkgos-dh_auto_install --no-py2 --in-tmp + PKGOS_IN_TMP=no + for i in $@ + case "${1}" in + echo 'WARNING: --no-py2 is deprecated and always on.' WARNING: --no-py2 is deprecated and always on. + shift + for i in $@ + case "${1}" in + PKGOS_IN_TMP=yes + shift ++ dpkg-parsechangelog -SSource + SRC_PKG_NAME=python-falcon ++ echo python-falcon ++ sed s/python-// + PY_MODULE_NAME=falcon ++ py3versions -vr + PYTHON3S=3.13 + '[' yes = yes ']' + TARGET_DIR=tmp + for pyvers in ${PYTHON3S} ++ pwd + python3.13 setup.py install --install-layout=deb --root /build/reproducible-path/python-falcon-4.0.2/debian/tmp /usr/lib/python3/dist-packages/setuptools/config/_apply_pyprojecttoml.py:82: SetuptoolsDeprecationWarning: `project.license` as a TOML table is deprecated !! ******************************************************************************** Please use a simple string containing a SPDX expression for `project.license`. You can also use `project.license-files`. (Both options available on setuptools>=77.0.0). By 2026-Feb-18, you need to update your project and remove deprecated calls or your builds will no longer be supported. See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! corresp(dist, value, root_dir) /usr/lib/python3/dist-packages/setuptools/config/_apply_pyprojecttoml.py:55: SetuptoolsDeprecationWarning: 'tool.setuptools.license-files' is deprecated in favor of 'project.license-files' (available on setuptools>=77.0.0). !! ******************************************************************************** By 2026-Feb-18, you need to update your project and remove deprecated calls or your builds will no longer be supported. See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license-files for details. ******************************************************************************** !! _apply_tool_table(dist, config, filename) /usr/lib/python3/dist-packages/setuptools/config/_apply_pyprojecttoml.py:61: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: Apache Software License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! dist._finalize_license_expression() /usr/lib/python3/dist-packages/setuptools/dist.py:759: SetuptoolsDeprecationWarning: License classifiers are deprecated. !! ******************************************************************************** Please consider removing the following classifiers in favor of a SPDX license expression: License :: OSI Approved :: Apache Software License See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. ******************************************************************************** !! self._finalize_license_expression() running install /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:90: SetuptoolsDeprecationWarning: setup.py install is deprecated. !! ******************************************************************************** Please avoid running ``setup.py`` directly. Instead, use pypa/build, pypa/installer or other standards-based tools. See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details. ******************************************************************************** !! self.initialize_options() running build running build_py creating build/lib.linux-aarch64-cpython-313/falcon copying falcon/version.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/uri.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/typing.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/stream.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/status_codes.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/response_helpers.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/response.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/responders.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/request_helpers.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/request.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/redirects.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/middleware.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/inspect.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/http_status.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/http_error.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/hooks.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/forwarded.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/errors.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/constants.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/asgi_spec.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/app_helpers.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/app.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/_typing.py -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon creating build/lib.linux-aarch64-cpython-313/falcon/util copying falcon/util/uri.py -> build/lib.linux-aarch64-cpython-313/falcon/util copying falcon/util/time.py -> build/lib.linux-aarch64-cpython-313/falcon/util copying falcon/util/sync.py -> build/lib.linux-aarch64-cpython-313/falcon/util copying falcon/util/structures.py -> build/lib.linux-aarch64-cpython-313/falcon/util copying falcon/util/reader.py -> build/lib.linux-aarch64-cpython-313/falcon/util copying falcon/util/misc.py -> build/lib.linux-aarch64-cpython-313/falcon/util copying falcon/util/mediatypes.py -> build/lib.linux-aarch64-cpython-313/falcon/util copying falcon/util/deprecation.py -> build/lib.linux-aarch64-cpython-313/falcon/util copying falcon/util/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/util creating build/lib.linux-aarch64-cpython-313/falcon/testing copying falcon/testing/test_case.py -> build/lib.linux-aarch64-cpython-313/falcon/testing copying falcon/testing/srmock.py -> build/lib.linux-aarch64-cpython-313/falcon/testing copying falcon/testing/resource.py -> build/lib.linux-aarch64-cpython-313/falcon/testing copying falcon/testing/helpers.py -> build/lib.linux-aarch64-cpython-313/falcon/testing copying falcon/testing/client.py -> build/lib.linux-aarch64-cpython-313/falcon/testing copying falcon/testing/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/testing creating build/lib.linux-aarch64-cpython-313/falcon/routing copying falcon/routing/util.py -> build/lib.linux-aarch64-cpython-313/falcon/routing copying falcon/routing/static.py -> build/lib.linux-aarch64-cpython-313/falcon/routing copying falcon/routing/converters.py -> build/lib.linux-aarch64-cpython-313/falcon/routing copying falcon/routing/compiled.py -> build/lib.linux-aarch64-cpython-313/falcon/routing copying falcon/routing/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/routing creating build/lib.linux-aarch64-cpython-313/falcon/media copying falcon/media/urlencoded.py -> build/lib.linux-aarch64-cpython-313/falcon/media copying falcon/media/multipart.py -> build/lib.linux-aarch64-cpython-313/falcon/media copying falcon/media/msgpack.py -> build/lib.linux-aarch64-cpython-313/falcon/media copying falcon/media/json.py -> build/lib.linux-aarch64-cpython-313/falcon/media copying falcon/media/handlers.py -> build/lib.linux-aarch64-cpython-313/falcon/media copying falcon/media/base.py -> build/lib.linux-aarch64-cpython-313/falcon/media copying falcon/media/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/media creating build/lib.linux-aarch64-cpython-313/falcon/cyutil copying falcon/cyutil/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/cyutil creating build/lib.linux-aarch64-cpython-313/falcon/cmd copying falcon/cmd/inspect_app.py -> build/lib.linux-aarch64-cpython-313/falcon/cmd copying falcon/cmd/bench.py -> build/lib.linux-aarch64-cpython-313/falcon/cmd copying falcon/cmd/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/cmd creating build/lib.linux-aarch64-cpython-313/falcon/bench copying falcon/bench/create.py -> build/lib.linux-aarch64-cpython-313/falcon/bench copying falcon/bench/bench.py -> build/lib.linux-aarch64-cpython-313/falcon/bench copying falcon/bench/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/bench creating build/lib.linux-aarch64-cpython-313/falcon/asgi copying falcon/asgi/ws.py -> build/lib.linux-aarch64-cpython-313/falcon/asgi copying falcon/asgi/structures.py -> build/lib.linux-aarch64-cpython-313/falcon/asgi copying falcon/asgi/stream.py -> build/lib.linux-aarch64-cpython-313/falcon/asgi copying falcon/asgi/response.py -> build/lib.linux-aarch64-cpython-313/falcon/asgi copying falcon/asgi/request.py -> build/lib.linux-aarch64-cpython-313/falcon/asgi copying falcon/asgi/reader.py -> build/lib.linux-aarch64-cpython-313/falcon/asgi copying falcon/asgi/multipart.py -> build/lib.linux-aarch64-cpython-313/falcon/asgi copying falcon/asgi/app.py -> build/lib.linux-aarch64-cpython-313/falcon/asgi copying falcon/asgi/_request_helpers.py -> build/lib.linux-aarch64-cpython-313/falcon/asgi copying falcon/asgi/_asgi_helpers.py -> build/lib.linux-aarch64-cpython-313/falcon/asgi copying falcon/asgi/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/asgi creating build/lib.linux-aarch64-cpython-313/falcon/media/validators copying falcon/media/validators/jsonschema.py -> build/lib.linux-aarch64-cpython-313/falcon/media/validators copying falcon/media/validators/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/media/validators creating build/lib.linux-aarch64-cpython-313/falcon/bench/queues copying falcon/bench/queues/stats.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/queues copying falcon/bench/queues/queues.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/queues copying falcon/bench/queues/messages.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/queues copying falcon/bench/queues/claims.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/queues copying falcon/bench/queues/api.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/queues copying falcon/bench/queues/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/queues creating build/lib.linux-aarch64-cpython-313/falcon/bench/nuts copying falcon/bench/nuts/setup.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/nuts copying falcon/bench/nuts/config.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/nuts copying falcon/bench/nuts/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/nuts creating build/lib.linux-aarch64-cpython-313/falcon/bench/dj copying falcon/bench/dj/manage.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/dj copying falcon/bench/dj/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/dj creating build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts copying falcon/bench/nuts/nuts/app.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts copying falcon/bench/nuts/nuts/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts creating build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/tests copying falcon/bench/nuts/nuts/tests/test_units.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/tests copying falcon/bench/nuts/nuts/tests/test_functional.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/tests copying falcon/bench/nuts/nuts/tests/config.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/tests copying falcon/bench/nuts/nuts/tests/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/tests creating build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/model copying falcon/bench/nuts/nuts/model/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/model creating build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/controllers copying falcon/bench/nuts/nuts/controllers/root.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/controllers copying falcon/bench/nuts/nuts/controllers/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/controllers creating build/lib.linux-aarch64-cpython-313/falcon/bench/dj/hello copying falcon/bench/dj/hello/views.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/dj/hello copying falcon/bench/dj/hello/tests.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/dj/hello copying falcon/bench/dj/hello/models.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/dj/hello copying falcon/bench/dj/hello/apps.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/dj/hello copying falcon/bench/dj/hello/admin.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/dj/hello copying falcon/bench/dj/hello/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/dj/hello creating build/lib.linux-aarch64-cpython-313/falcon/bench/dj/dj copying falcon/bench/dj/dj/wsgi.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/dj/dj copying falcon/bench/dj/dj/urls.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/dj/dj copying falcon/bench/dj/dj/settings.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/dj/dj copying falcon/bench/dj/dj/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/dj/dj creating build/lib.linux-aarch64-cpython-313/falcon/bench/dj/hello/migrations copying falcon/bench/dj/hello/migrations/__init__.py -> build/lib.linux-aarch64-cpython-313/falcon/bench/dj/hello/migrations running egg_info creating falcon.egg-info writing falcon.egg-info/PKG-INFO writing dependency_links to falcon.egg-info/dependency_links.txt writing entry points to falcon.egg-info/entry_points.txt writing requirements to falcon.egg-info/requires.txt writing top-level names to falcon.egg-info/top_level.txt writing manifest file 'falcon.egg-info/SOURCES.txt' reading manifest file 'falcon.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' no previously-included directories found matching 'docs/_build' adding license file 'LICENSE' writing manifest file 'falcon.egg-info/SOURCES.txt' copying falcon/py.typed -> build/lib.linux-aarch64-cpython-313/falcon copying falcon/cyutil/misc.pyx -> build/lib.linux-aarch64-cpython-313/falcon/cyutil copying falcon/cyutil/reader.pyx -> build/lib.linux-aarch64-cpython-313/falcon/cyutil copying falcon/cyutil/uri.pyx -> build/lib.linux-aarch64-cpython-313/falcon/cyutil running build_ext Compiling falcon/version.py because it changed. [1/1] Cythonizing falcon/version.py building 'falcon.version' extension creating build/temp.linux-aarch64-cpython-313/falcon aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/version.c -o build/temp.linux-aarch64-cpython-313/falcon/version.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/version.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/version.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/uri.py because it changed. [1/1] Cythonizing falcon/uri.py building 'falcon.uri' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/uri.c -o build/temp.linux-aarch64-cpython-313/falcon/uri.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/uri.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/uri.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/typing.py because it changed. [1/1] Cythonizing falcon/typing.py building 'falcon.typing' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/typing.c -o build/temp.linux-aarch64-cpython-313/falcon/typing.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/typing.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/typing.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/stream.py because it changed. [1/1] Cythonizing falcon/stream.py building 'falcon.stream' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/stream.c -o build/temp.linux-aarch64-cpython-313/falcon/stream.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/stream.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/stream.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/status_codes.py because it changed. [1/1] Cythonizing falcon/status_codes.py building 'falcon.status_codes' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/status_codes.c -o build/temp.linux-aarch64-cpython-313/falcon/status_codes.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/status_codes.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/status_codes.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/response_helpers.py because it changed. [1/1] Cythonizing falcon/response_helpers.py building 'falcon.response_helpers' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/response_helpers.c -o build/temp.linux-aarch64-cpython-313/falcon/response_helpers.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/response_helpers.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/response_helpers.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/response.py because it changed. [1/1] Cythonizing falcon/response.py building 'falcon.response' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/response.c -o build/temp.linux-aarch64-cpython-313/falcon/response.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/response.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/response.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/request_helpers.py because it changed. [1/1] Cythonizing falcon/request_helpers.py building 'falcon.request_helpers' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/request_helpers.c -o build/temp.linux-aarch64-cpython-313/falcon/request_helpers.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/request_helpers.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/request_helpers.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/request.py because it changed. [1/1] Cythonizing falcon/request.py building 'falcon.request' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/request.c -o build/temp.linux-aarch64-cpython-313/falcon/request.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/request.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/request.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/redirects.py because it changed. [1/1] Cythonizing falcon/redirects.py building 'falcon.redirects' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/redirects.c -o build/temp.linux-aarch64-cpython-313/falcon/redirects.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/redirects.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/redirects.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/middleware.py because it changed. [1/1] Cythonizing falcon/middleware.py building 'falcon.middleware' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/middleware.c -o build/temp.linux-aarch64-cpython-313/falcon/middleware.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/middleware.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/middleware.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/http_status.py because it changed. [1/1] Cythonizing falcon/http_status.py building 'falcon.http_status' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/http_status.c -o build/temp.linux-aarch64-cpython-313/falcon/http_status.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/http_status.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/http_status.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/http_error.py because it changed. [1/1] Cythonizing falcon/http_error.py building 'falcon.http_error' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/http_error.c -o build/temp.linux-aarch64-cpython-313/falcon/http_error.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/http_error.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/http_error.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/forwarded.py because it changed. [1/1] Cythonizing falcon/forwarded.py building 'falcon.forwarded' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/forwarded.c -o build/temp.linux-aarch64-cpython-313/falcon/forwarded.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/forwarded.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/forwarded.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/errors.py because it changed. [1/1] Cythonizing falcon/errors.py building 'falcon.errors' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/errors.c -o build/temp.linux-aarch64-cpython-313/falcon/errors.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/errors.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/errors.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/constants.py because it changed. [1/1] Cythonizing falcon/constants.py building 'falcon.constants' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/constants.c -o build/temp.linux-aarch64-cpython-313/falcon/constants.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/constants.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/constants.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/asgi_spec.py because it changed. [1/1] Cythonizing falcon/asgi_spec.py building 'falcon.asgi_spec' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/asgi_spec.c -o build/temp.linux-aarch64-cpython-313/falcon/asgi_spec.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/asgi_spec.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/asgi_spec.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/app_helpers.py because it changed. [1/1] Cythonizing falcon/app_helpers.py building 'falcon.app_helpers' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/app_helpers.c -o build/temp.linux-aarch64-cpython-313/falcon/app_helpers.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/app_helpers.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/app_helpers.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/app.py because it changed. [1/1] Cythonizing falcon/app.py building 'falcon.app' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/app.c -o build/temp.linux-aarch64-cpython-313/falcon/app.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/app.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/app.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/_typing.py because it changed. [1/1] Cythonizing falcon/_typing.py building 'falcon._typing' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/_typing.c -o build/temp.linux-aarch64-cpython-313/falcon/_typing.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/_typing.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/_typing.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/cyutil/uri.pyx because it changed. [1/1] Cythonizing falcon/cyutil/uri.pyx building 'falcon.cyutil.uri' extension creating build/temp.linux-aarch64-cpython-313/falcon/cyutil aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/cyutil/uri.c -o build/temp.linux-aarch64-cpython-313/falcon/cyutil/uri.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/cyutil/uri.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/cyutil/uri.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/cyutil/reader.pyx because it changed. [1/1] Cythonizing falcon/cyutil/reader.pyx building 'falcon.cyutil.reader' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/cyutil/reader.c -o build/temp.linux-aarch64-cpython-313/falcon/cyutil/reader.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/cyutil/reader.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/cyutil/reader.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/cyutil/misc.pyx because it changed. [1/1] Cythonizing falcon/cyutil/misc.pyx building 'falcon.cyutil.misc' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/cyutil/misc.c -o build/temp.linux-aarch64-cpython-313/falcon/cyutil/misc.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/cyutil/misc.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/cyutil/misc.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/media/urlencoded.py because it changed. [1/1] Cythonizing falcon/media/urlencoded.py building 'falcon.media.urlencoded' extension creating build/temp.linux-aarch64-cpython-313/falcon/media aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/media/urlencoded.c -o build/temp.linux-aarch64-cpython-313/falcon/media/urlencoded.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/media/urlencoded.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/media/urlencoded.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/media/multipart.py because it changed. [1/1] Cythonizing falcon/media/multipart.py building 'falcon.media.multipart' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/media/multipart.c -o build/temp.linux-aarch64-cpython-313/falcon/media/multipart.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/media/multipart.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/media/multipart.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/media/msgpack.py because it changed. [1/1] Cythonizing falcon/media/msgpack.py building 'falcon.media.msgpack' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/media/msgpack.c -o build/temp.linux-aarch64-cpython-313/falcon/media/msgpack.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/media/msgpack.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/media/msgpack.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/media/json.py because it changed. [1/1] Cythonizing falcon/media/json.py building 'falcon.media.json' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/media/json.c -o build/temp.linux-aarch64-cpython-313/falcon/media/json.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/media/json.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/media/json.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/media/handlers.py because it changed. [1/1] Cythonizing falcon/media/handlers.py building 'falcon.media.handlers' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/media/handlers.c -o build/temp.linux-aarch64-cpython-313/falcon/media/handlers.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/media/handlers.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/media/handlers.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/media/base.py because it changed. [1/1] Cythonizing falcon/media/base.py building 'falcon.media.base' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/media/base.c -o build/temp.linux-aarch64-cpython-313/falcon/media/base.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/media/base.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/media/base.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/routing/util.py because it changed. [1/1] Cythonizing falcon/routing/util.py building 'falcon.routing.util' extension creating build/temp.linux-aarch64-cpython-313/falcon/routing aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/routing/util.c -o build/temp.linux-aarch64-cpython-313/falcon/routing/util.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/routing/util.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/routing/util.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/routing/static.py because it changed. [1/1] Cythonizing falcon/routing/static.py building 'falcon.routing.static' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/routing/static.c -o build/temp.linux-aarch64-cpython-313/falcon/routing/static.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/routing/static.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/routing/static.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/routing/converters.py because it changed. [1/1] Cythonizing falcon/routing/converters.py building 'falcon.routing.converters' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/routing/converters.c -o build/temp.linux-aarch64-cpython-313/falcon/routing/converters.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/routing/converters.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/routing/converters.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/routing/compiled.py because it changed. [1/1] Cythonizing falcon/routing/compiled.py building 'falcon.routing.compiled' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/routing/compiled.c -o build/temp.linux-aarch64-cpython-313/falcon/routing/compiled.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/routing/compiled.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/routing/compiled.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/util/uri.py because it changed. [1/1] Cythonizing falcon/util/uri.py building 'falcon.util.uri' extension creating build/temp.linux-aarch64-cpython-313/falcon/util aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/util/uri.c -o build/temp.linux-aarch64-cpython-313/falcon/util/uri.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/util/uri.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/util/uri.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/util/time.py because it changed. [1/1] Cythonizing falcon/util/time.py building 'falcon.util.time' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/util/time.c -o build/temp.linux-aarch64-cpython-313/falcon/util/time.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/util/time.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/util/time.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/util/structures.py because it changed. [1/1] Cythonizing falcon/util/structures.py building 'falcon.util.structures' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/util/structures.c -o build/temp.linux-aarch64-cpython-313/falcon/util/structures.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/util/structures.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/util/structures.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/util/misc.py because it changed. [1/1] Cythonizing falcon/util/misc.py building 'falcon.util.misc' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/util/misc.c -o build/temp.linux-aarch64-cpython-313/falcon/util/misc.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/util/misc.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/util/misc.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/util/mediatypes.py because it changed. [1/1] Cythonizing falcon/util/mediatypes.py building 'falcon.util.mediatypes' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/util/mediatypes.c -o build/temp.linux-aarch64-cpython-313/falcon/util/mediatypes.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/util/mediatypes.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/util/mediatypes.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. Compiling falcon/util/deprecation.py because it changed. [1/1] Cythonizing falcon/util/deprecation.py building 'falcon.util.deprecation' extension aarch64-linux-gnu-gcc -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.13 -c falcon/util/deprecation.c -o build/temp.linux-aarch64-cpython-313/falcon/util/deprecation.o aarch64-linux-gnu-gcc -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-z,relro -g -fwrapv -O2 -Wl,-z,relro -Wl,-z,now -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/reproducible-path/python-falcon-4.0.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -Wdate-time -D_FORTIFY_SOURCE=2 build/temp.linux-aarch64-cpython-313/falcon/util/deprecation.o -L/usr/lib/aarch64-linux-gnu -o build/lib.linux-aarch64-cpython-313/falcon/util/deprecation.cpython-313-aarch64-linux-gnu.so /lib/aarch64-linux-gnu/libc.so.6: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. /lib/ld-linux-aarch64.so.1: warning: GCS is required by -z gcs, but this shared library lacks the necessary property note. The dynamic loader might not enable GCS or refuse to load the program unless all the shared library dependencies have the GCS marking. running install_lib creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/_typing.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/app.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/app_helpers.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/asgi_spec.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/constants.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/errors.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/forwarded.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/http_error.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/http_status.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/middleware.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/redirects.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/request.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/request_helpers.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/response.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/response_helpers.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/status_codes.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/stream.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/typing.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/uri.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/version.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/py.typed -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi copying build/lib.linux-aarch64-cpython-313/falcon/asgi/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi copying build/lib.linux-aarch64-cpython-313/falcon/asgi/_asgi_helpers.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi copying build/lib.linux-aarch64-cpython-313/falcon/asgi/_request_helpers.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi copying build/lib.linux-aarch64-cpython-313/falcon/asgi/app.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi copying build/lib.linux-aarch64-cpython-313/falcon/asgi/multipart.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi copying build/lib.linux-aarch64-cpython-313/falcon/asgi/reader.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi copying build/lib.linux-aarch64-cpython-313/falcon/asgi/request.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi copying build/lib.linux-aarch64-cpython-313/falcon/asgi/response.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi copying build/lib.linux-aarch64-cpython-313/falcon/asgi/stream.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi copying build/lib.linux-aarch64-cpython-313/falcon/asgi/structures.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi copying build/lib.linux-aarch64-cpython-313/falcon/asgi/ws.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/dj copying build/lib.linux-aarch64-cpython-313/falcon/bench/dj/dj/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/dj copying build/lib.linux-aarch64-cpython-313/falcon/bench/dj/dj/settings.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/dj copying build/lib.linux-aarch64-cpython-313/falcon/bench/dj/dj/urls.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/dj copying build/lib.linux-aarch64-cpython-313/falcon/bench/dj/dj/wsgi.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/dj creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/hello creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/hello/migrations copying build/lib.linux-aarch64-cpython-313/falcon/bench/dj/hello/migrations/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/hello/migrations copying build/lib.linux-aarch64-cpython-313/falcon/bench/dj/hello/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/hello copying build/lib.linux-aarch64-cpython-313/falcon/bench/dj/hello/admin.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/hello copying build/lib.linux-aarch64-cpython-313/falcon/bench/dj/hello/apps.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/hello copying build/lib.linux-aarch64-cpython-313/falcon/bench/dj/hello/models.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/hello copying build/lib.linux-aarch64-cpython-313/falcon/bench/dj/hello/tests.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/hello copying build/lib.linux-aarch64-cpython-313/falcon/bench/dj/hello/views.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/hello copying build/lib.linux-aarch64-cpython-313/falcon/bench/dj/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj copying build/lib.linux-aarch64-cpython-313/falcon/bench/dj/manage.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/controllers copying build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/controllers/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/controllers copying build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/controllers/root.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/controllers creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/model copying build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/model/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/model creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/tests copying build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/tests/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/tests copying build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/tests/config.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/tests copying build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/tests/test_functional.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/tests copying build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/tests/test_units.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/tests copying build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts copying build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/nuts/app.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts copying build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts copying build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/config.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts copying build/lib.linux-aarch64-cpython-313/falcon/bench/nuts/setup.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/queues copying build/lib.linux-aarch64-cpython-313/falcon/bench/queues/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/queues copying build/lib.linux-aarch64-cpython-313/falcon/bench/queues/api.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/queues copying build/lib.linux-aarch64-cpython-313/falcon/bench/queues/claims.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/queues copying build/lib.linux-aarch64-cpython-313/falcon/bench/queues/messages.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/queues copying build/lib.linux-aarch64-cpython-313/falcon/bench/queues/queues.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/queues copying build/lib.linux-aarch64-cpython-313/falcon/bench/queues/stats.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/queues copying build/lib.linux-aarch64-cpython-313/falcon/bench/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench copying build/lib.linux-aarch64-cpython-313/falcon/bench/bench.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench copying build/lib.linux-aarch64-cpython-313/falcon/bench/create.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/cmd copying build/lib.linux-aarch64-cpython-313/falcon/cmd/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/cmd copying build/lib.linux-aarch64-cpython-313/falcon/cmd/bench.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/cmd copying build/lib.linux-aarch64-cpython-313/falcon/cmd/inspect_app.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/cmd creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/cyutil copying build/lib.linux-aarch64-cpython-313/falcon/cyutil/misc.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/cyutil copying build/lib.linux-aarch64-cpython-313/falcon/cyutil/reader.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/cyutil copying build/lib.linux-aarch64-cpython-313/falcon/cyutil/uri.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/cyutil copying build/lib.linux-aarch64-cpython-313/falcon/cyutil/uri.pyx -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/cyutil copying build/lib.linux-aarch64-cpython-313/falcon/cyutil/reader.pyx -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/cyutil copying build/lib.linux-aarch64-cpython-313/falcon/cyutil/misc.pyx -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/cyutil copying build/lib.linux-aarch64-cpython-313/falcon/cyutil/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/cyutil creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media copying build/lib.linux-aarch64-cpython-313/falcon/media/base.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media copying build/lib.linux-aarch64-cpython-313/falcon/media/handlers.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media copying build/lib.linux-aarch64-cpython-313/falcon/media/json.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media copying build/lib.linux-aarch64-cpython-313/falcon/media/msgpack.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media copying build/lib.linux-aarch64-cpython-313/falcon/media/multipart.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media copying build/lib.linux-aarch64-cpython-313/falcon/media/urlencoded.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media/validators copying build/lib.linux-aarch64-cpython-313/falcon/media/validators/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media/validators copying build/lib.linux-aarch64-cpython-313/falcon/media/validators/jsonschema.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media/validators copying build/lib.linux-aarch64-cpython-313/falcon/media/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media copying build/lib.linux-aarch64-cpython-313/falcon/media/base.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media copying build/lib.linux-aarch64-cpython-313/falcon/media/handlers.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media copying build/lib.linux-aarch64-cpython-313/falcon/media/json.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media copying build/lib.linux-aarch64-cpython-313/falcon/media/msgpack.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media copying build/lib.linux-aarch64-cpython-313/falcon/media/multipart.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media copying build/lib.linux-aarch64-cpython-313/falcon/media/urlencoded.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/routing copying build/lib.linux-aarch64-cpython-313/falcon/routing/compiled.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/routing copying build/lib.linux-aarch64-cpython-313/falcon/routing/converters.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/routing copying build/lib.linux-aarch64-cpython-313/falcon/routing/static.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/routing copying build/lib.linux-aarch64-cpython-313/falcon/routing/util.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/routing copying build/lib.linux-aarch64-cpython-313/falcon/routing/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/routing copying build/lib.linux-aarch64-cpython-313/falcon/routing/compiled.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/routing copying build/lib.linux-aarch64-cpython-313/falcon/routing/converters.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/routing copying build/lib.linux-aarch64-cpython-313/falcon/routing/static.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/routing copying build/lib.linux-aarch64-cpython-313/falcon/routing/util.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/routing creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/testing copying build/lib.linux-aarch64-cpython-313/falcon/testing/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/testing copying build/lib.linux-aarch64-cpython-313/falcon/testing/client.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/testing copying build/lib.linux-aarch64-cpython-313/falcon/testing/helpers.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/testing copying build/lib.linux-aarch64-cpython-313/falcon/testing/resource.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/testing copying build/lib.linux-aarch64-cpython-313/falcon/testing/srmock.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/testing copying build/lib.linux-aarch64-cpython-313/falcon/testing/test_case.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/testing creating /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util copying build/lib.linux-aarch64-cpython-313/falcon/util/deprecation.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util copying build/lib.linux-aarch64-cpython-313/falcon/util/mediatypes.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util copying build/lib.linux-aarch64-cpython-313/falcon/util/misc.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util copying build/lib.linux-aarch64-cpython-313/falcon/util/structures.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util copying build/lib.linux-aarch64-cpython-313/falcon/util/time.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util copying build/lib.linux-aarch64-cpython-313/falcon/util/uri.cpython-313-aarch64-linux-gnu.so -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util copying build/lib.linux-aarch64-cpython-313/falcon/util/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util copying build/lib.linux-aarch64-cpython-313/falcon/util/deprecation.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util copying build/lib.linux-aarch64-cpython-313/falcon/util/mediatypes.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util copying build/lib.linux-aarch64-cpython-313/falcon/util/misc.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util copying build/lib.linux-aarch64-cpython-313/falcon/util/reader.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util copying build/lib.linux-aarch64-cpython-313/falcon/util/structures.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util copying build/lib.linux-aarch64-cpython-313/falcon/util/sync.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util copying build/lib.linux-aarch64-cpython-313/falcon/util/time.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util copying build/lib.linux-aarch64-cpython-313/falcon/util/uri.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util copying build/lib.linux-aarch64-cpython-313/falcon/__init__.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/_typing.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/app.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/app_helpers.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/asgi_spec.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/constants.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/errors.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/forwarded.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/hooks.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/http_error.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/http_status.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/inspect.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/middleware.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/redirects.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/request.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/request_helpers.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/responders.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/response.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/response_helpers.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/status_codes.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/stream.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/typing.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/uri.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon copying build/lib.linux-aarch64-cpython-313/falcon/version.py -> /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi/_asgi_helpers.py to _asgi_helpers.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi/_request_helpers.py to _request_helpers.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi/app.py to app.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi/multipart.py to multipart.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi/reader.py to reader.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi/request.py to request.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi/response.py to response.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi/stream.py to stream.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi/structures.py to structures.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi/ws.py to ws.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/dj/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/dj/settings.py to settings.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/dj/urls.py to urls.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/dj/wsgi.py to wsgi.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/hello/migrations/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/hello/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/hello/admin.py to admin.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/hello/apps.py to apps.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/hello/models.py to models.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/hello/tests.py to tests.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/hello/views.py to views.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/dj/manage.py to manage.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/controllers/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/controllers/root.py to root.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/model/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/tests/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/tests/config.py to config.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/tests/test_functional.py to test_functional.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/tests/test_units.py to test_units.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/nuts/app.py to app.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/config.py to config.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/nuts/setup.py to setup.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/queues/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/queues/api.py to api.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/queues/claims.py to claims.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/queues/messages.py to messages.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/queues/queues.py to queues.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/queues/stats.py to stats.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/bench.py to bench.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/bench/create.py to create.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/cmd/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/cmd/bench.py to bench.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/cmd/inspect_app.py to inspect_app.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/cyutil/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media/validators/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media/validators/jsonschema.py to jsonschema.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media/base.py to base.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media/handlers.py to handlers.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media/json.py to json.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media/msgpack.py to msgpack.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media/multipart.py to multipart.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/media/urlencoded.py to urlencoded.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/routing/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/routing/compiled.py to compiled.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/routing/converters.py to converters.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/routing/static.py to static.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/routing/util.py to util.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/testing/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/testing/client.py to client.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/testing/helpers.py to helpers.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/testing/resource.py to resource.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/testing/srmock.py to srmock.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/testing/test_case.py to test_case.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util/deprecation.py to deprecation.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util/mediatypes.py to mediatypes.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util/misc.py to misc.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util/reader.py to reader.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util/structures.py to structures.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util/sync.py to sync.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util/time.py to time.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/util/uri.py to uri.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/__init__.py to __init__.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/_typing.py to _typing.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/app.py to app.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/app_helpers.py to app_helpers.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/asgi_spec.py to asgi_spec.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/constants.py to constants.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/errors.py to errors.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/forwarded.py to forwarded.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/hooks.py to hooks.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/http_error.py to http_error.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/http_status.py to http_status.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/inspect.py to inspect.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/middleware.py to middleware.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/redirects.py to redirects.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/request.py to request.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/request_helpers.py to request_helpers.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/responders.py to responders.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/response.py to response.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/response_helpers.py to response_helpers.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/status_codes.py to status_codes.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/stream.py to stream.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/typing.py to typing.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/uri.py to uri.cpython-313.pyc byte-compiling /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon/version.py to version.cpython-313.pyc running install_egg_info Copying falcon.egg-info to /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages/falcon-4.0.2.egg-info Skipping SOURCES.txt running install_scripts Installing falcon-bench script to /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/bin Installing falcon-inspect-app script to /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/bin Installing falcon-print-routes script to /build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/bin ++ pwd + rm -rf '/build/reproducible-path/python-falcon-4.0.2/debian/python*/usr/lib/python*/dist-packages/*.pth' ++ pwd + rm -rf '/build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python*/dist-packages/*.pth' for i in 3.13 ; do \ PYTHONPATH=/build/reproducible-path/python-falcon-4.0.2/debian/tmp/usr/lib/python3/dist-packages PYTHON=python$i python$i -m pytest tests -v --ignore-glob=tests/asgi/test_asgi_servers.py ; \ done ============================= test session starts ============================== platform linux -- Python 3.13.7, pytest-8.4.2, pluggy-1.6.0 -- /usr/bin/python3.13 cachedir: .pytest_cache rootdir: /build/reproducible-path/python-falcon-4.0.2 configfile: pyproject.toml plugins: typeguard-4.4.4, anyio-4.11.0 collecting ... collected 3915 items tests/asgi/test_asgi_conductor.py::test_default_headers PASSED [ 0%] tests/asgi/test_asgi_conductor.py::test_generic_request[request] PASSED [ 0%] tests/asgi/test_asgi_conductor.py::test_generic_request[simulate_request] PASSED [ 0%] tests/asgi/test_asgi_conductor.py::test_wsgi_not_supported PASSED [ 0%] tests/asgi/test_asgi_conductor.py::test_responders[alias-get] PASSED [ 0%] tests/asgi/test_asgi_conductor.py::test_responders[alias-head] PASSED [ 0%] tests/asgi/test_asgi_conductor.py::test_responders[alias-post] PASSED [ 0%] tests/asgi/test_asgi_conductor.py::test_responders[alias-put] PASSED [ 0%] tests/asgi/test_asgi_conductor.py::test_responders[alias-options] PASSED [ 0%] tests/asgi/test_asgi_conductor.py::test_responders[alias-patch] PASSED [ 0%] tests/asgi/test_asgi_conductor.py::test_responders[alias-delete] PASSED [ 0%] tests/asgi/test_asgi_conductor.py::test_responders[simulate-get] PASSED [ 0%] tests/asgi/test_asgi_conductor.py::test_responders[simulate-head] PASSED [ 0%] tests/asgi/test_asgi_conductor.py::test_responders[simulate-post] PASSED [ 0%] tests/asgi/test_asgi_conductor.py::test_responders[simulate-put] PASSED [ 0%] tests/asgi/test_asgi_conductor.py::test_responders[simulate-options] PASSED [ 0%] tests/asgi/test_asgi_conductor.py::test_responders[simulate-patch] PASSED [ 0%] tests/asgi/test_asgi_conductor.py::test_responders[simulate-delete] PASSED [ 0%] tests/asgi/test_asgi_helpers.py::test_intricate_app PASSED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[True-True-empty] PASSED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[True-True-null] PASSED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[True-True-null-ff] PASSED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[True-True-normal] PASSED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[True-True-long] PASSED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[True-True-random] PASSED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[True-True-random-large] PASSED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[True-False-empty] PASSED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[True-False-null] PASSED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[True-False-null-ff] PASSED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[True-False-normal] PASSED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[True-False-long] PASSED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[True-False-random] PASSED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[True-False-random-large] PASSED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[False-True-empty] SKIPPED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[False-True-null] SKIPPED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[False-True-null-ff] SKIPPED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[False-True-normal] SKIPPED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[False-True-long] SKIPPED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[False-True-random] SKIPPED [ 0%] tests/asgi/test_boundedstream_asgi.py::test_read_all[False-True-random-large] SKIPPED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_all[False-False-empty] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_all[False-False-null] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_all[False-False-null-ff] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_all[False-False-normal] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_all[False-False-long] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_all[False-False-random] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_all[False-False-random-large] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_filelike PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_iterate_streaming_request PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[1-empty] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[1-null] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[1-null-ff] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[1-normal] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[1-long] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[1-random] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[2-empty] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[2-null] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[2-null-ff] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[2-normal] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[2-long] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[2-random] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[10-empty] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[10-null] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[10-null-ff] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[10-normal] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[10-long] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[10-random] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[64-empty] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[64-null] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[64-null-ff] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[64-normal] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[64-long] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[64-random] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[100-empty] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[100-null] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[100-null-ff] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[100-normal] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[100-long] PASSED [ 1%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[100-random] PASSED [ 2%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[1000-empty] PASSED [ 2%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[1000-null] PASSED [ 2%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[1000-null-ff] PASSED [ 2%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[1000-normal] PASSED [ 2%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[1000-long] PASSED [ 2%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[1000-random] PASSED [ 2%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[10000-empty] PASSED [ 2%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[10000-null] PASSED [ 2%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[10000-null-ff] PASSED [ 2%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[10000-normal] PASSED [ 2%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[10000-long] PASSED [ 2%] tests/asgi/test_boundedstream_asgi.py::test_read_chunks[10000-random] PASSED [ 2%] tests/asgi/test_boundedstream_asgi.py::test_exhaust_with_disconnect PASSED [ 2%] tests/asgi/test_boundedstream_asgi.py::test_exhaust PASSED [ 2%] tests/asgi/test_boundedstream_asgi.py::test_iteration_already_started PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_basic_aiter PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_aiter_from_buffer PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_delimit[H-expected0] PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_delimit[Hello-expected1] PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_delimit[o-expected2] PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_delimit[ting-expected3] PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_delimit[404-expected4] PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_exhaust PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_peek[1] PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_peek[2] PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_peek[3] PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_peek[5] PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_peek[7] PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_peek[8] PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_peek_at_eof PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_pipe PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_pipe_until_delimiter_not_found PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_read[sizes0-expected0] PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_read[sizes1-expected1] PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_read[sizes2-expected2] PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_read[sizes3-expected3] PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_varying_read_size[1] PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_varying_read_size[16777216] PASSED [ 2%] tests/asgi/test_buffered_reader.py::test_readall[0] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_readall[1] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_readall[8] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[0-, -4-Hell-False] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[0-, -4-Hell-True] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[0-, -5-Hello-False] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[0-, -5-Hello-True] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[0-, --1-Hello-False] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[0-, --1-Hello-True] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[20- -4-esti-False] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[20- -4-esti-True] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[20- -5-estin-False] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[20- -5-estin-True] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[20- -6-esting-False] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[20- -6-esting-True] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[20- -20-esting-False] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[20- -20-esting-True] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[20- -None-esting-False] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[20- -None-esting-True] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[0-Hell-13--False] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[0-Hell-13--True] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[1-ell-13--False] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[1-ell-13--True] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[2-ll-13--False] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[2-ll-13--True] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[3-l-13--False] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[3-l-13--True] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[2-l-13--False] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[2-l-13--True] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[0-good-13-Hello, World!-False] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[0-good-13-Hello, World!-True] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[7-good-19-World!\nJust testing-False] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[7-good-19-World!\nJust testing-True] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[7-good-33-World!\nJust testing some iterator-False] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[7-good-33-World!\nJust testing some iterator-True] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[7-good-34-World!\nJust testing some iterator -False] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[7-good-34-World!\nJust testing some iterator -True] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[7-good-1337-World!\nJust testing some iterator -False] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[7-good-1337-World!\nJust testing some iterator -True] PASSED [ 3%] tests/asgi/test_buffered_reader.py::test_read_until[7-good--1-World!\nJust testing some iterator -False] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until[7-good--1-World!\nJust testing some iterator -True] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until_with_buffer_edge_case PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_placeholder_methods PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_iteration_started PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_invalid_delimiter_length PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_irregular_large_read_until[11003077-22000721] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_irregular_large_read_until[13372477-51637898] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until_shared_boundary[46] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until_shared_boundary[47] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until_shared_boundary[48] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until_shared_boundary[49] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until_shared_boundary[50] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until_shared_boundary[51] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until_shared_boundary[52] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until_shared_boundary[53] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until_shared_boundary[54] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until_shared_boundary[55] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until_shared_boundary[56] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until_shared_boundary[57] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until_shared_boundary[58] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until_shared_boundary[59] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until_shared_boundary[60] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until_shared_boundary[61] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_read_until_shared_boundary[62] PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_small_reads PASSED [ 4%] tests/asgi/test_buffered_reader.py::test_small_reads_with_delimiter PASSED [ 4%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_env_headers_list_of_tuples PASSED [ 4%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_root_route PASSED [ 4%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_no_route PASSED [ 4%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_body[/body-resource0-] PASSED [ 4%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_body[/bytes-resource1-] PASSED [ 4%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_body[/data-resource2-] PASSED [ 4%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_no_body_on_head PASSED [ 4%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_stream_chunked PASSED [ 4%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_stream_known_len PASSED [ 4%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_filelike PASSED [ 4%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_genfunc_error PASSED [ 4%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_nongenfunc_error PASSED [ 4%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_filelike_closing[DataReader-True] PASSED [ 5%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_filelike_closing[DataReaderWithoutClose-False] PASSED [ 5%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_filelike_closing_aiofiles PASSED [ 5%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_filelike_using_helper PASSED [ 5%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_closing_stream[10-3-3\n3\n3\n1\n-None] PASSED [ 5%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_closing_stream[10-7-7\n3\n-None] PASSED [ 5%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_closing_stream[10-17-10\n-None] PASSED [ 5%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_closing_stream[20-0--ZeroDivisionError] PASSED [ 5%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_status_not_set PASSED [ 5%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_coroutine_required PASSED [ 5%] tests/asgi/test_hello_asgi.py::TestHelloWorld::test_noncoroutine_required PASSED [ 5%] tests/asgi/test_lifespan_handlers.py::test_at_least_one_event_method_required PASSED [ 5%] tests/asgi/test_lifespan_handlers.py::test_startup_only PASSED [ 5%] tests/asgi/test_lifespan_handlers.py::test_startup_raises PASSED [ 5%] tests/asgi/test_lifespan_handlers.py::test_shutdown_raises PASSED [ 5%] tests/asgi/test_lifespan_handlers.py::test_shutdown_only PASSED [ 5%] tests/asgi/test_lifespan_handlers.py::test_multiple_handlers PASSED [ 5%] tests/asgi/test_lifespan_handlers.py::test_asgi_conductor_raised_error_skips_shutdown PASSED [ 5%] tests/asgi/test_middleware_asgi.py::test_raise_on_incompatible[middleware0] PASSED [ 5%] tests/asgi/test_middleware_asgi.py::test_raise_on_incompatible[middleware1] PASSED [ 5%] tests/asgi/test_middleware_asgi.py::test_raise_on_incompatible[middleware2] PASSED [ 5%] tests/asgi/test_middleware_asgi.py::test_raise_on_incompatible[middleware3] PASSED [ 5%] tests/asgi/test_misc.py::test_http_status_not_impl PASSED [ 5%] tests/asgi/test_misc.py::test_http_error_not_impl PASSED [ 5%] tests/asgi/test_misc.py::test_python_error_not_impl PASSED [ 5%] tests/asgi/test_request_asgi.py::test_missing_server_in_scope PASSED [ 5%] tests/asgi/test_request_asgi.py::test_log_error_not_supported PASSED [ 5%] tests/asgi/test_request_asgi.py::test_env_not_supported PASSED [ 5%] tests/asgi/test_request_body_asgi.py::TestRequestBody::test_empty_body PASSED [ 5%] tests/asgi/test_request_body_asgi.py::TestRequestBody::test_tiny_body PASSED [ 5%] tests/asgi/test_request_body_asgi.py::TestRequestBody::test_tiny_body_overflow PASSED [ 5%] tests/asgi/test_request_body_asgi.py::TestRequestBody::test_content_length_smaller_than_body[1-0] PASSED [ 5%] tests/asgi/test_request_body_asgi.py::TestRequestBody::test_content_length_smaller_than_body[2-1] PASSED [ 5%] tests/asgi/test_request_body_asgi.py::TestRequestBody::test_content_length_smaller_than_body[3-2] PASSED [ 5%] tests/asgi/test_request_body_asgi.py::TestRequestBody::test_content_length_smaller_than_body[100-None] PASSED [ 5%] tests/asgi/test_request_body_asgi.py::TestRequestBody::test_content_length_smaller_than_body[100-50] PASSED [ 5%] tests/asgi/test_request_body_asgi.py::TestRequestBody::test_content_length_smaller_than_body[8192-50] PASSED [ 5%] tests/asgi/test_request_body_asgi.py::TestRequestBody::test_read_body PASSED [ 5%] tests/asgi/test_request_body_asgi.py::TestRequestBody::test_bounded_stream_alias PASSED [ 5%] tests/asgi/test_request_body_asgi.py::TestRequestBody::test_request_repr PASSED [ 6%] tests/asgi/test_request_context_asgi.py::TestRequestContext::test_default_request_context PASSED [ 6%] tests/asgi/test_request_context_asgi.py::TestRequestContext::test_custom_request_context PASSED [ 6%] tests/asgi/test_request_context_asgi.py::TestRequestContext::test_custom_request_context_failure PASSED [ 6%] tests/asgi/test_request_context_asgi.py::TestRequestContext::test_custom_request_context_request_access PASSED [ 6%] tests/asgi/test_response_media_asgi.py::test_json[*/*] PASSED [ 6%] tests/asgi/test_response_media_asgi.py::test_json[application/json] PASSED [ 6%] tests/asgi/test_response_media_asgi.py::test_json[application/json; charset=utf-8] PASSED [ 6%] tests/asgi/test_response_media_asgi.py::test_non_ascii_json_serialization[] PASSED [ 6%] tests/asgi/test_response_media_asgi.py::test_non_ascii_json_serialization[I am a \u1d0a\ua731\u1d0f\u0274 string.] PASSED [ 6%] tests/asgi/test_response_media_asgi.py::test_non_ascii_json_serialization[document2] PASSED [ 6%] tests/asgi/test_response_media_asgi.py::test_non_ascii_json_serialization[document3] PASSED [ 6%] tests/asgi/test_response_media_asgi.py::test_non_ascii_json_serialization[document4] PASSED [ 6%] tests/asgi/test_response_media_asgi.py::test_msgpack[application/msgpack] PASSED [ 6%] tests/asgi/test_response_media_asgi.py::test_msgpack[application/msgpack; charset=utf-8] PASSED [ 6%] tests/asgi/test_response_media_asgi.py::test_msgpack[application/x-msgpack] PASSED [ 6%] tests/asgi/test_response_media_asgi.py::test_custom_media_handler PASSED [ 6%] tests/asgi/test_response_media_asgi.py::test_unknown_media_type PASSED [ 6%] tests/asgi/test_response_media_asgi.py::test_default_media_type PASSED [ 6%] tests/asgi/test_response_media_asgi.py::test_mimeparse_edgecases PASSED [ 6%] tests/asgi/test_response_media_asgi.py::TestRenderBodyPrecedence::test_text PASSED [ 6%] tests/asgi/test_response_media_asgi.py::TestRenderBodyPrecedence::test_data PASSED [ 6%] tests/asgi/test_response_media_asgi.py::TestRenderBodyPrecedence::test_data_masquerading_as_text PASSED [ 6%] tests/asgi/test_response_media_asgi.py::TestRenderBodyPrecedence::test_media PASSED [ 6%] tests/asgi/test_response_media_asgi.py::test_media_rendered_cached PASSED [ 6%] tests/asgi/test_response_media_asgi.py::test_custom_render_body PASSED [ 6%] tests/asgi/test_scheduled_callbacks.py::test_multiple PASSED [ 6%] tests/asgi/test_scheduled_callbacks.py::test_callback[GET-/-Hello, World!\n] PASSED [ 6%] tests/asgi/test_scheduled_callbacks.py::test_callback[HEAD-/-] PASSED [ 6%] tests/asgi/test_scheduled_callbacks.py::test_callback[GET-/sse-: ping\n\n] PASSED [ 6%] tests/asgi/test_scheduled_callbacks.py::test_callback[GET-/stream-One\nTwo\nThree\n] PASSED [ 6%] tests/asgi/test_scope.py::test_missing_asgi_version PASSED [ 6%] tests/asgi/test_scope.py::test_unsupported_http_version[0.9] PASSED [ 6%] tests/asgi/test_scope.py::test_unsupported_http_version[1.9] PASSED [ 6%] tests/asgi/test_scope.py::test_unsupported_http_version[4.0] PASSED [ 6%] tests/asgi/test_scope.py::test_unsupported_http_version[1337] PASSED [ 6%] tests/asgi/test_scope.py::test_supported_asgi_version[3.0-True] PASSED [ 6%] tests/asgi/test_scope.py::test_supported_asgi_version[3.1-True] PASSED [ 6%] tests/asgi/test_scope.py::test_supported_asgi_version[3.10-True] PASSED [ 6%] tests/asgi/test_scope.py::test_supported_asgi_version[30.0-False] PASSED [ 6%] tests/asgi/test_scope.py::test_supported_asgi_version[31.0-False] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_asgi_version[4.0-False] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_asgi_version[4.1-False] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_asgi_version[4.10-False] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_asgi_version[40.0-False] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_asgi_version[41.0-False] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_asgi_version[2.0-False] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_asgi_version[2.1-False] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_asgi_version[2.10-False] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_asgi_version[None-False] PASSED [ 7%] tests/asgi/test_scope.py::test_unsupported_scope_type[tubes] PASSED [ 7%] tests/asgi/test_scope.py::test_unsupported_scope_type[http3] PASSED [ 7%] tests/asgi/test_scope.py::test_unsupported_scope_type[htt] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_http_spec[0.0-False] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_http_spec[1.0-False] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_http_spec[11.0-False] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_http_spec[2.0-True] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_http_spec[2.1-True] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_http_spec[2.10-True] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_http_spec[20.0-False] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_http_spec[22.0-False] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_http_spec[3.0-False] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_http_spec[3.1-False] PASSED [ 7%] tests/asgi/test_scope.py::test_supported_http_spec[30.0-False] PASSED [ 7%] tests/asgi/test_scope.py::test_lifespan_scope_default_version PASSED [ 7%] tests/asgi/test_scope.py::test_lifespan_scope_version[0.0-False] PASSED [ 7%] tests/asgi/test_scope.py::test_lifespan_scope_version[1.0-True] PASSED [ 7%] tests/asgi/test_scope.py::test_lifespan_scope_version[1.1-True] PASSED [ 7%] tests/asgi/test_scope.py::test_lifespan_scope_version[1.10-True] PASSED [ 7%] tests/asgi/test_scope.py::test_lifespan_scope_version[2.0-True] PASSED [ 7%] tests/asgi/test_scope.py::test_lifespan_scope_version[2.1-True] PASSED [ 7%] tests/asgi/test_scope.py::test_lifespan_scope_version[2.10-True] PASSED [ 7%] tests/asgi/test_scope.py::test_lifespan_scope_version[3.0-False] PASSED [ 7%] tests/asgi/test_scope.py::test_lifespan_scope_version[4.0-False] PASSED [ 7%] tests/asgi/test_scope.py::test_lifespan_scope_version[11.0-False] PASSED [ 7%] tests/asgi/test_scope.py::test_lifespan_scope_version[22.0-False] PASSED [ 7%] tests/asgi/test_scope.py::test_query_string_values PASSED [ 7%] tests/asgi/test_scope.py::test_scheme[http-True] PASSED [ 7%] tests/asgi/test_scope.py::test_scheme[https-True] PASSED [ 7%] tests/asgi/test_scope.py::test_scheme[htt-False] PASSED [ 8%] tests/asgi/test_scope.py::test_scheme[http:-False] PASSED [ 8%] tests/asgi/test_scope.py::test_scheme[https:-False] PASSED [ 8%] tests/asgi/test_scope.py::test_scheme[ftp-False] PASSED [ 8%] tests/asgi/test_scope.py::test_scheme[gopher-False] PASSED [ 8%] tests/asgi/test_scope.py::test_cookies[cookies0] PASSED [ 8%] tests/asgi/test_scope.py::test_cookies[cookies1] PASSED [ 8%] tests/asgi/test_scope.py::test_cookies_options_meathod PASSED [ 8%] tests/asgi/test_sse.py::test_no_events PASSED [ 8%] tests/asgi/test_sse.py::test_single_event PASSED [ 8%] tests/asgi/test_sse.py::test_multiple_events PASSED [ 8%] tests/asgi/test_sse.py::test_multiple_events_early_disconnect PASSED [ 8%] tests/asgi/test_sse.py::TestSerializeJson::test_use_media_handler_dumps PASSED [ 8%] tests/asgi/test_sse.py::TestSerializeJson::test_no_json_media_handler PASSED [ 8%] tests/asgi/test_sse.py::test_invalid_event_values PASSED [ 8%] tests/asgi/test_sse.py::test_non_iterable PASSED [ 8%] tests/asgi/test_sync.py::test_sync_helpers PASSED [ 8%] tests/asgi/test_sync.py::test_sync_asyncio_aliases PASSED [ 8%] tests/asgi/test_testing_asgi.py::test_asgi_request_event_emitter_hang PASSED [ 8%] tests/asgi/test_testing_asgi.py::test_ignore_extra_asgi_events PASSED [ 8%] tests/asgi/test_testing_asgi.py::test_invalid_asgi_events PASSED [ 8%] tests/asgi/test_testing_asgi.py::test_is_asgi_app_cls PASSED [ 8%] tests/asgi/test_testing_asgi.py::test_cookies_jar PASSED [ 8%] tests/asgi/test_testing_asgi.py::test_create_scope_default_ua PASSED [ 8%] tests/asgi/test_testing_asgi.py::test_create_scope_default_ua_override PASSED [ 8%] tests/asgi/test_testing_asgi.py::test_create_scope_default_ua_modify_global PASSED [ 8%] tests/asgi/test_testing_asgi.py::test_missing_header_is_none PASSED [ 8%] tests/asgi/test_testing_asgi.py::test_immediate_disconnect PASSED [ 8%] tests/asgi/test_ws.py::test_ws_not_accepted[/ws/yes] PASSED [ 8%] tests/asgi/test_ws.py::test_ws_not_accepted[/ws/no] PASSED [ 8%] tests/asgi/test_ws.py::test_echo PASSED [ 8%] tests/asgi/test_ws.py::test_path_not_found PASSED [ 8%] tests/asgi/test_ws.py::test_responder_raises_unhandled_error[True] PASSED [ 8%] tests/asgi/test_ws.py::test_responder_raises_unhandled_error[False] PASSED [ 8%] tests/asgi/test_ws.py::test_client_disconnect_early[True-True-send] PASSED [ 8%] tests/asgi/test_ws.py::test_client_disconnect_early[True-True-receive] PASSED [ 8%] tests/asgi/test_ws.py::test_client_disconnect_early[True-False-send] PASSED [ 8%] tests/asgi/test_ws.py::test_client_disconnect_early[True-False-receive] PASSED [ 8%] tests/asgi/test_ws.py::test_client_disconnect_early[False-True-send] PASSED [ 8%] tests/asgi/test_ws.py::test_client_disconnect_early[False-True-receive] PASSED [ 9%] tests/asgi/test_ws.py::test_client_disconnect_early[False-False-send] PASSED [ 9%] tests/asgi/test_ws.py::test_client_disconnect_early[False-False-receive] PASSED [ 9%] tests/asgi/test_ws.py::test_media[True-True] PASSED [ 9%] tests/asgi/test_ws.py::test_media[True-False] PASSED [ 9%] tests/asgi/test_ws.py::test_media[False-True] PASSED [ 9%] tests/asgi/test_ws.py::test_media[False-False] PASSED [ 9%] tests/asgi/test_ws.py::test_send_receive_data[123] PASSED [ 9%] tests/asgi/test_ws.py::test_send_receive_data[] PASSED [ 9%] tests/asgi/test_ws.py::test_send_receive_data[\xe1\x9a\xa0\xe1] PASSED [ 9%] tests/asgi/test_ws.py::test_send_receive_data[\x00] PASSED [ 9%] tests/asgi/test_ws.py::test_subprotocol[subprotocols0] PASSED [ 9%] tests/asgi/test_ws.py::test_subprotocol[subprotocols1] PASSED [ 9%] tests/asgi/test_ws.py::test_subprotocol[subprotocols2] PASSED [ 9%] tests/asgi/test_ws.py::test_subprotocol[None] PASSED [ 9%] tests/asgi/test_ws.py::test_accept_with_headers[None] PASSED [ 9%] tests/asgi/test_ws.py::test_accept_with_headers[headers1] PASSED [ 9%] tests/asgi/test_ws.py::test_accept_with_headers[headers2] PASSED [ 9%] tests/asgi/test_ws.py::test_accept_with_headers[headers3] PASSED [ 9%] tests/asgi/test_ws.py::test_accept_with_headers[headers4] PASSED [ 9%] tests/asgi/test_ws.py::test_accept_with_headers[headers5] PASSED [ 9%] tests/asgi/test_ws.py::test_accept_with_headers[headers6] PASSED [ 9%] tests/asgi/test_ws.py::test_accept_with_bad_headers[headers0] PASSED [ 9%] tests/asgi/test_ws.py::test_accept_with_bad_headers[headers1] PASSED [ 9%] tests/asgi/test_ws.py::test_accept_with_bad_headers[headers2] PASSED [ 9%] tests/asgi/test_ws.py::test_accept_with_headers_not_supported PASSED [ 9%] tests/asgi/test_ws.py::test_missing_ws_handler PASSED [ 9%] tests/asgi/test_ws.py::test_unexpected_param PASSED [ 9%] tests/asgi/test_ws.py::test_subprotocol_bad_type[DEADBEEF] PASSED [ 9%] tests/asgi/test_ws.py::test_subprotocol_bad_type[subprotocol1] PASSED [ 9%] tests/asgi/test_ws.py::test_subprotocol_bad_type[subprotocol2] PASSED [ 9%] tests/asgi/test_ws.py::test_subprotocol_bad_type[subprotocol3] PASSED [ 9%] tests/asgi/test_ws.py::test_subprotocol_bad_type[subprotocol4] PASSED [ 9%] tests/asgi/test_ws.py::test_subprotocol_bad_type[OK] PASSED [ 9%] tests/asgi/test_ws.py::test_send_receive_wrong_type PASSED [ 9%] tests/asgi/test_ws.py::test_client_disconnect_uncaught_error[999] PASSED [ 9%] tests/asgi/test_ws.py::test_client_disconnect_uncaught_error[100] PASSED [ 9%] tests/asgi/test_ws.py::test_client_disconnect_uncaught_error[0] PASSED [ 9%] tests/asgi/test_ws.py::test_client_disconnect_uncaught_error[-1] PASSED [ 9%] tests/asgi/test_ws.py::test_client_disconnect_uncaught_error[1004] PASSED [ 10%] tests/asgi/test_ws.py::test_client_disconnect_uncaught_error[1005] PASSED [ 10%] tests/asgi/test_ws.py::test_client_disconnect_uncaught_error[1006] PASSED [ 10%] tests/asgi/test_ws.py::test_client_disconnect_uncaught_error[1015] PASSED [ 10%] tests/asgi/test_ws.py::test_client_disconnect_uncaught_error[1016] PASSED [ 10%] tests/asgi/test_ws.py::test_client_disconnect_uncaught_error[1017] PASSED [ 10%] tests/asgi/test_ws.py::test_client_disconnect_uncaught_error[1050] PASSED [ 10%] tests/asgi/test_ws.py::test_client_disconnect_uncaught_error[1099] PASSED [ 10%] tests/asgi/test_ws.py::test_client_disconnect_uncaught_error[NaN] PASSED [ 10%] tests/asgi/test_ws.py::test_mw_methods_must_be_coroutines PASSED [ 10%] tests/asgi/test_ws.py::test_bad_spec_version[1.9] PASSED [ 10%] tests/asgi/test_ws.py::test_bad_spec_version[20.5] PASSED [ 10%] tests/asgi/test_ws.py::test_bad_spec_version[3.0] PASSED [ 10%] tests/asgi/test_ws.py::test_bad_spec_version[3.1] PASSED [ 10%] tests/asgi/test_ws.py::test_bad_http_version[1.0] PASSED [ 10%] tests/asgi/test_ws.py::test_bad_http_version[1] PASSED [ 10%] tests/asgi/test_ws.py::test_bad_first_event[2.1] PASSED [ 10%] tests/asgi/test_ws.py::test_bad_first_event[2.3] PASSED [ 10%] tests/asgi/test_ws.py::test_bad_first_event[2.10.3] PASSED [ 10%] tests/asgi/test_ws.py::test_missing_http_version PASSED [ 10%] tests/asgi/test_ws.py::test_missing_spec_version PASSED [ 10%] tests/asgi/test_ws.py::test_translate_webserver_error PASSED [ 10%] tests/asgi/test_ws.py::test_ws_base_not_implemented PASSED [ 10%] tests/asgi/test_ws.py::test_ws_context_timeout PASSED [ 10%] tests/asgi/test_ws.py::test_ws_simulator_client_require_accepted PASSED [ 10%] tests/asgi/test_ws.py::test_ws_simulator_collect_edge_cases PASSED [ 10%] tests/asgi/test_ws.py::test_ws_responder_never_ready PASSED [ 10%] tests/asgi/test_ws.py::test_msgpack_missing SKIPPED (test requires m...) [ 10%] tests/asgi/test_ws.py::test_client_close_with_reason[Client closing connection] PASSED [ 10%] tests/asgi/test_ws.py::test_client_close_with_reason[] PASSED [ 10%] tests/asgi/test_ws.py::test_client_close_with_reason[None] PASSED [ 10%] tests/asgi/test_ws.py::test_close_with_reason_no_cm[PEBCAK] PASSED [ 10%] tests/asgi/test_ws.py::test_close_with_reason_no_cm[wow such reason] PASSED [ 10%] tests/asgi/test_ws.py::test_close_with_reason_no_cm[] PASSED [ 10%] tests/asgi/test_ws.py::test_close_with_reason_no_cm[None] PASSED [ 10%] tests/asgi/test_ws.py::test_close_with_reason[2.2-PEBCAK] PASSED [ 10%] tests/asgi/test_ws.py::test_close_with_reason[2.2-wow such reason] PASSED [ 10%] tests/asgi/test_ws.py::test_close_with_reason[2.2-] PASSED [ 10%] tests/asgi/test_ws.py::test_close_with_reason[2.2-None] PASSED [ 10%] tests/asgi/test_ws.py::test_close_with_reason[2.3-PEBCAK] PASSED [ 11%] tests/asgi/test_ws.py::test_close_with_reason[2.3-wow such reason] PASSED [ 11%] tests/asgi/test_ws.py::test_close_with_reason[2.3-] PASSED [ 11%] tests/asgi/test_ws.py::test_close_with_reason[2.3-None] PASSED [ 11%] tests/asgi/test_ws.py::test_close_with_reason[2.4-PEBCAK] PASSED [ 11%] tests/asgi/test_ws.py::test_close_with_reason[2.4-wow such reason] PASSED [ 11%] tests/asgi/test_ws.py::test_close_with_reason[2.4-] PASSED [ 11%] tests/asgi/test_ws.py::test_close_with_reason[2.4-None] PASSED [ 11%] tests/asgi/test_ws.py::test_reason_mapping[None-Normal Closure-True] PASSED [ 11%] tests/asgi/test_ws.py::test_reason_mapping[None-Normal Closure-False] PASSED [ 11%] tests/asgi/test_ws.py::test_reason_mapping[1011-Internal Server Error-True] PASSED [ 11%] tests/asgi/test_ws.py::test_reason_mapping[1011-Internal Server Error-False] PASSED [ 11%] tests/asgi/test_ws.py::test_reason_mapping[3405-Method Not Allowed-True] PASSED [ 11%] tests/asgi/test_ws.py::test_reason_mapping[3405-Method Not Allowed-False] PASSED [ 11%] tests/asgi/test_ws.py::test_reason_mapping[3701--True] PASSED [ 11%] tests/asgi/test_ws.py::test_reason_mapping[3701--False] PASSED [ 11%] tests/asgi/test_ws.py::test_reason_mapping[3702-Emacs-True] PASSED [ 11%] tests/asgi/test_ws.py::test_reason_mapping[3702-Emacs-False] PASSED [ 11%] tests/asgi/test_ws.py::test_reason_mapping[4042--True] PASSED [ 11%] tests/asgi/test_ws.py::test_reason_mapping[4042--False] PASSED [ 11%] tests/asgi/test_ws.py::test_reason_mapping[4099-wow such reason-True] PASSED [ 11%] tests/asgi/test_ws.py::test_reason_mapping[4099-wow such reason-False] PASSED [ 11%] tests/asgi/test_ws.py::test_ws_http_error_or_status_response[True-HTTPStatus-200] PASSED [ 11%] tests/asgi/test_ws.py::test_ws_http_error_or_status_response[True-HTTPStatus-500] PASSED [ 11%] tests/asgi/test_ws.py::test_ws_http_error_or_status_response[True-HTTPStatus-422] PASSED [ 11%] tests/asgi/test_ws.py::test_ws_http_error_or_status_response[True-HTTPStatus-400] PASSED [ 11%] tests/asgi/test_ws.py::test_ws_http_error_or_status_response[True-HTTPError-200] PASSED [ 11%] tests/asgi/test_ws.py::test_ws_http_error_or_status_response[True-HTTPError-500] PASSED [ 11%] tests/asgi/test_ws.py::test_ws_http_error_or_status_response[True-HTTPError-422] PASSED [ 11%] tests/asgi/test_ws.py::test_ws_http_error_or_status_response[True-HTTPError-400] PASSED [ 11%] tests/asgi/test_ws.py::test_ws_http_error_or_status_response[False-HTTPStatus-200] PASSED [ 11%] tests/asgi/test_ws.py::test_ws_http_error_or_status_response[False-HTTPStatus-500] PASSED [ 11%] tests/asgi/test_ws.py::test_ws_http_error_or_status_response[False-HTTPStatus-422] PASSED [ 11%] tests/asgi/test_ws.py::test_ws_http_error_or_status_response[False-HTTPStatus-400] PASSED [ 11%] tests/asgi/test_ws.py::test_ws_http_error_or_status_response[False-HTTPError-200] PASSED [ 11%] tests/asgi/test_ws.py::test_ws_http_error_or_status_response[False-HTTPError-500] PASSED [ 11%] tests/asgi/test_ws.py::test_ws_http_error_or_status_response[False-HTTPError-422] PASSED [ 11%] tests/asgi/test_ws.py::test_ws_http_error_or_status_response[False-HTTPError-400] PASSED [ 11%] tests/asgi/test_ws.py::test_ws_http_error_or_status_middleware[request-HTTPStatus-200] PASSED [ 11%] tests/asgi/test_ws.py::test_ws_http_error_or_status_middleware[request-HTTPStatus-500] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_middleware[request-HTTPStatus-422] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_middleware[request-HTTPStatus-400] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_middleware[request-HTTPError-200] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_middleware[request-HTTPError-500] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_middleware[request-HTTPError-422] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_middleware[request-HTTPError-400] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_middleware[resource-HTTPStatus-200] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_middleware[resource-HTTPStatus-500] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_middleware[resource-HTTPStatus-422] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_middleware[resource-HTTPStatus-400] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_middleware[resource-HTTPError-200] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_middleware[resource-HTTPError-500] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_middleware[resource-HTTPError-422] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_middleware[resource-HTTPError-400] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-request-HTTPStatus-200] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-request-HTTPStatus-500] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-request-HTTPStatus-422] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-request-HTTPStatus-400] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-request-HTTPError-200] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-request-HTTPError-500] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-request-HTTPError-422] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-request-HTTPError-400] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-resource-HTTPStatus-200] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-resource-HTTPStatus-500] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-resource-HTTPStatus-422] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-resource-HTTPStatus-400] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-resource-HTTPError-200] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-resource-HTTPError-500] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-resource-HTTPError-422] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-resource-HTTPError-400] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-ws_before_accept-HTTPStatus-200] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-ws_before_accept-HTTPStatus-500] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-ws_before_accept-HTTPStatus-422] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-ws_before_accept-HTTPStatus-400] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-ws_before_accept-HTTPError-200] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-ws_before_accept-HTTPError-500] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-ws_before_accept-HTTPError-422] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-ws_before_accept-HTTPError-400] PASSED [ 12%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-ws_after_accept-HTTPStatus-200] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-ws_after_accept-HTTPStatus-500] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-ws_after_accept-HTTPStatus-422] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-ws_after_accept-HTTPStatus-400] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-ws_after_accept-HTTPError-200] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-ws_after_accept-HTTPError-500] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-ws_after_accept-HTTPError-422] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[True-ws_after_accept-HTTPError-400] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-request-HTTPStatus-200] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-request-HTTPStatus-500] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-request-HTTPStatus-422] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-request-HTTPStatus-400] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-request-HTTPError-200] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-request-HTTPError-500] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-request-HTTPError-422] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-request-HTTPError-400] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-resource-HTTPStatus-200] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-resource-HTTPStatus-500] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-resource-HTTPStatus-422] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-resource-HTTPStatus-400] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-resource-HTTPError-200] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-resource-HTTPError-500] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-resource-HTTPError-422] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-resource-HTTPError-400] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-ws_before_accept-HTTPStatus-200] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-ws_before_accept-HTTPStatus-500] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-ws_before_accept-HTTPStatus-422] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-ws_before_accept-HTTPStatus-400] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-ws_before_accept-HTTPError-200] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-ws_before_accept-HTTPError-500] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-ws_before_accept-HTTPError-422] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-ws_before_accept-HTTPError-400] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-ws_after_accept-HTTPStatus-200] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-ws_after_accept-HTTPStatus-500] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-ws_after_accept-HTTPStatus-422] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-ws_after_accept-HTTPStatus-400] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-ws_after_accept-HTTPError-200] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-ws_after_accept-HTTPError-500] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-ws_after_accept-HTTPError-422] PASSED [ 13%] tests/asgi/test_ws.py::test_ws_http_error_or_status_error_handler[False-ws_after_accept-HTTPError-400] PASSED [ 13%] tests/asgi/test_ws.py::test_max_receive_queue_sizes[0] PASSED [ 14%] tests/asgi/test_ws.py::test_max_receive_queue_sizes[1] PASSED [ 14%] tests/asgi/test_ws.py::test_max_receive_queue_sizes[4] PASSED [ 14%] tests/asgi/test_ws.py::test_max_receive_queue_sizes[7] PASSED [ 14%] tests/asgi/test_ws.py::test_max_receive_queue_sizes[17] PASSED [ 14%] tests/test_after_hooks.py::test_output_validator[asgi] PASSED [ 14%] tests/test_after_hooks.py::test_output_validator[wsgi] PASSED [ 14%] tests/test_after_hooks.py::test_serializer[asgi] PASSED [ 14%] tests/test_after_hooks.py::test_serializer[wsgi] PASSED [ 14%] tests/test_after_hooks.py::test_hook_as_callable_class[asgi] PASSED [ 14%] tests/test_after_hooks.py::test_hook_as_callable_class[wsgi] PASSED [ 14%] tests/test_after_hooks.py::test_resource_with_uri_fields[asgi-resource0] PASSED [ 14%] tests/test_after_hooks.py::test_resource_with_uri_fields[asgi-resource1] PASSED [ 14%] tests/test_after_hooks.py::test_resource_with_uri_fields[wsgi-resource0] PASSED [ 14%] tests/test_after_hooks.py::test_resource_with_uri_fields[wsgi-resource1] PASSED [ 14%] tests/test_after_hooks.py::test_resource_with_uri_fields_async PASSED [ 14%] tests/test_after_hooks.py::test_wrapped_resource[asgi-resource0] PASSED [ 14%] tests/test_after_hooks.py::test_wrapped_resource[asgi-resource1] PASSED [ 14%] tests/test_after_hooks.py::test_wrapped_resource[wsgi-resource0] PASSED [ 14%] tests/test_after_hooks.py::test_wrapped_resource[wsgi-resource1] PASSED [ 14%] tests/test_after_hooks.py::test_wrapped_resource_with_hooks_aware_of_resource[asgi] PASSED [ 14%] tests/test_after_hooks.py::test_wrapped_resource_with_hooks_aware_of_resource[wsgi] PASSED [ 14%] tests/test_after_hooks.py::test_after_hooks_on_suffixed_resource[paper-/once-paper, rock, scissors] PASSED [ 14%] tests/test_after_hooks.py::test_after_hooks_on_suffixed_resource[scissors-/twice-scissors, paper, rock, scissors] PASSED [ 14%] tests/test_after_hooks.py::test_after_hooks_on_suffixed_resource[rock-/thrice-rock, scissors, paper, rock, scissors] PASSED [ 14%] tests/test_after_hooks.py::test_after_hooks_on_suffixed_resource[paper-/thrice-paper, rock, scissors, paper, rock] PASSED [ 14%] tests/test_alias.py::test_cookies PASSED [ 14%] tests/test_alias.py::test_alias_equals_to_app PASSED [ 14%] tests/test_app_initializers.py::test_api_media_type_overriding[App] PASSED [ 14%] tests/test_app_initializers.py::test_api_media_type_overriding[API] PASSED [ 14%] tests/test_before_hooks.py::test_multiple_resource_hooks[asgi-resource0] PASSED [ 14%] tests/test_before_hooks.py::test_multiple_resource_hooks[asgi-resource1] PASSED [ 14%] tests/test_before_hooks.py::test_multiple_resource_hooks[wsgi-resource0] PASSED [ 14%] tests/test_before_hooks.py::test_multiple_resource_hooks[wsgi-resource1] PASSED [ 14%] tests/test_before_hooks.py::test_input_validator[asgi] PASSED [ 14%] tests/test_before_hooks.py::test_input_validator[wsgi] PASSED [ 14%] tests/test_before_hooks.py::test_input_validator_inherited[asgi] PASSED [ 14%] tests/test_before_hooks.py::test_input_validator_inherited[wsgi] PASSED [ 14%] tests/test_before_hooks.py::test_param_validator[asgi] PASSED [ 14%] tests/test_before_hooks.py::test_param_validator[wsgi] PASSED [ 15%] tests/test_before_hooks.py::test_field_validator[asgi-resource0] PASSED [ 15%] tests/test_before_hooks.py::test_field_validator[asgi-resource1] PASSED [ 15%] tests/test_before_hooks.py::test_field_validator[asgi-resource2] PASSED [ 15%] tests/test_before_hooks.py::test_field_validator[wsgi-resource0] PASSED [ 15%] tests/test_before_hooks.py::test_field_validator[wsgi-resource1] PASSED [ 15%] tests/test_before_hooks.py::test_field_validator[wsgi-resource2] PASSED [ 15%] tests/test_before_hooks.py::test_parser_sync[{"animal": "falcon"}-doc0] PASSED [ 15%] tests/test_before_hooks.py::test_parser_sync[{}-doc1] PASSED [ 15%] tests/test_before_hooks.py::test_parser_sync[-None] PASSED [ 15%] tests/test_before_hooks.py::test_parser_sync[None-None] PASSED [ 15%] tests/test_before_hooks.py::test_parser_async[{"animal": "falcon"}-doc0] PASSED [ 15%] tests/test_before_hooks.py::test_parser_async[{}-doc1] PASSED [ 15%] tests/test_before_hooks.py::test_parser_async[-None] PASSED [ 15%] tests/test_before_hooks.py::test_parser_async[None-None] PASSED [ 15%] tests/test_before_hooks.py::test_wrapped_resource[asgi] PASSED [ 15%] tests/test_before_hooks.py::test_wrapped_resource[wsgi] PASSED [ 15%] tests/test_before_hooks.py::test_wrapped_resource_with_hooks_aware_of_resource[asgi] PASSED [ 15%] tests/test_before_hooks.py::test_wrapped_resource_with_hooks_aware_of_resource[wsgi] PASSED [ 15%] tests/test_before_hooks.py::test_piggybacking_resource_post_item[asgi] PASSED [ 15%] tests/test_before_hooks.py::test_piggybacking_resource_post_item[wsgi] PASSED [ 15%] tests/test_before_hooks.py::test_piggybacking_resource_post_and_delete[asgi] PASSED [ 15%] tests/test_before_hooks.py::test_piggybacking_resource_post_and_delete[wsgi] PASSED [ 15%] tests/test_before_hooks.py::test_decorable_name_pattern PASSED [ 15%] tests/test_boundedstream.py::test_not_writable PASSED [ 15%] tests/test_boundedstream.py::test_exhausted PASSED [ 15%] tests/test_buffered_reader.py::test_peek PASSED [ 15%] tests/test_buffered_reader.py::test_peek_eof PASSED [ 15%] tests/test_buffered_reader.py::test_bounded_read PASSED [ 15%] tests/test_buffered_reader.py::test_read_from_buffer[0] PASSED [ 15%] tests/test_buffered_reader.py::test_read_from_buffer[1] PASSED [ 15%] tests/test_buffered_reader.py::test_read_from_buffer[2] PASSED [ 15%] tests/test_buffered_reader.py::test_read_from_buffer[7] PASSED [ 15%] tests/test_buffered_reader.py::test_read_from_buffer[62] PASSED [ 15%] tests/test_buffered_reader.py::test_read_from_buffer[63] PASSED [ 15%] tests/test_buffered_reader.py::test_read_from_buffer[64] PASSED [ 15%] tests/test_buffered_reader.py::test_read_from_buffer[65] PASSED [ 15%] tests/test_buffered_reader.py::test_read_from_buffer[126] PASSED [ 15%] tests/test_buffered_reader.py::test_read_from_buffer[127] PASSED [ 15%] tests/test_buffered_reader.py::test_read_from_buffer[128] PASSED [ 16%] tests/test_buffered_reader.py::test_read_from_buffer[129] PASSED [ 16%] tests/test_buffered_reader.py::test_read_from_buffer[1000] PASSED [ 16%] tests/test_buffered_reader.py::test_read_from_buffer[10000] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_delimiter_size_check PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_with_size[0] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_with_size[1] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_with_size[2] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_with_size[7] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_with_size[62] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_with_size[63] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_with_size[64] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_with_size[65] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_with_size[126] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_with_size[127] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_with_size[128] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_with_size[129] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_with_size[1000] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_with_size[10000] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until PASSED [ 16%] tests/test_buffered_reader.py::test_irregular_large_read_until[11003077-22000721] PASSED [ 16%] tests/test_buffered_reader.py::test_irregular_large_read_until[13372477-51637898] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_from_buffer[0] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_from_buffer[1] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_from_buffer[2] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_from_buffer[7] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_from_buffer[62] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_from_buffer[63] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_from_buffer[64] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_from_buffer[65] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_from_buffer[126] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_from_buffer[127] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_from_buffer[128] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_from_buffer[129] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_from_buffer[1000] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_missing_delimiter PASSED [ 16%] tests/test_buffered_reader.py::test_consume_delimiter PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_shared_boundary[46] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_shared_boundary[47] PASSED [ 16%] tests/test_buffered_reader.py::test_read_until_shared_boundary[48] PASSED [ 17%] tests/test_buffered_reader.py::test_read_until_shared_boundary[49] PASSED [ 17%] tests/test_buffered_reader.py::test_read_until_shared_boundary[50] PASSED [ 17%] tests/test_buffered_reader.py::test_read_until_shared_boundary[51] PASSED [ 17%] tests/test_buffered_reader.py::test_read_until_shared_boundary[52] PASSED [ 17%] tests/test_buffered_reader.py::test_read_until_shared_boundary[53] PASSED [ 17%] tests/test_buffered_reader.py::test_read_until_shared_boundary[54] PASSED [ 17%] tests/test_buffered_reader.py::test_read_until_shared_boundary[55] PASSED [ 17%] tests/test_buffered_reader.py::test_read_until_shared_boundary[56] PASSED [ 17%] tests/test_buffered_reader.py::test_read_until_shared_boundary[57] PASSED [ 17%] tests/test_buffered_reader.py::test_read_until_shared_boundary[58] PASSED [ 17%] tests/test_buffered_reader.py::test_read_until_shared_boundary[59] PASSED [ 17%] tests/test_buffered_reader.py::test_read_until_shared_boundary[60] PASSED [ 17%] tests/test_buffered_reader.py::test_read_until_shared_boundary[61] PASSED [ 17%] tests/test_buffered_reader.py::test_read_until_shared_boundary[62] PASSED [ 17%] tests/test_buffered_reader.py::test_pipe PASSED [ 17%] tests/test_buffered_reader.py::test_pipe_until PASSED [ 17%] tests/test_buffered_reader.py::test_pipe_until_without_destination PASSED [ 17%] tests/test_buffered_reader.py::test_exhaust PASSED [ 17%] tests/test_buffered_reader.py::test_readline PASSED [ 17%] tests/test_buffered_reader.py::test_readline_with_size PASSED [ 17%] tests/test_buffered_reader.py::test_readlines PASSED [ 17%] tests/test_buffered_reader.py::test_readlines_hint[8] PASSED [ 17%] tests/test_buffered_reader.py::test_readlines_hint[16] PASSED [ 17%] tests/test_buffered_reader.py::test_readlines_hint[256] PASSED [ 17%] tests/test_buffered_reader.py::test_readlines_hint[1024] PASSED [ 17%] tests/test_buffered_reader.py::test_readlines_hint[65536] PASSED [ 17%] tests/test_buffered_reader.py::test_duck_compatibility_with_io_base PASSED [ 17%] tests/test_buffered_reader.py::test_fragmented_reads PASSED [ 17%] tests/test_cmd_inspect_app.py::TestMakeParser::test_make_parser[args0-exp0] PASSED [ 17%] tests/test_cmd_inspect_app.py::TestMakeParser::test_make_parser[args1-exp1] PASSED [ 17%] tests/test_cmd_inspect_app.py::TestMakeParser::test_make_parser[args2-exp2] PASSED [ 17%] tests/test_cmd_inspect_app.py::TestMakeParser::test_make_parser[args3-exp3] PASSED [ 17%] tests/test_cmd_inspect_app.py::TestMakeParser::test_make_parser[args4-exp4] PASSED [ 17%] tests/test_cmd_inspect_app.py::TestMakeParser::test_make_parser[args5-exp5] PASSED [ 17%] tests/test_cmd_inspect_app.py::TestMakeParser::test_make_parser[args6-exp6] PASSED [ 17%] tests/test_cmd_inspect_app.py::TestMakeParser::test_make_parser[args7-exp7] PASSED [ 17%] tests/test_cmd_inspect_app.py::TestMakeParser::test_make_parser_error PASSED [ 17%] tests/test_cmd_inspect_app.py::TestLoadApp::test_load_app[_APP] PASSED [ 17%] tests/test_cmd_inspect_app.py::TestLoadApp::test_load_app[make_app] PASSED [ 18%] tests/test_cmd_inspect_app.py::TestLoadApp::test_load_app_error[foo] PASSED [ 18%] tests/test_cmd_inspect_app.py::TestLoadApp::test_load_app_error[_MODULE] PASSED [ 18%] tests/test_cmd_inspect_app.py::TestLoadApp::test_load_app_error[DummyResource] PASSED [ 18%] tests/test_cmd_inspect_app.py::TestLoadApp::test_load_app_module_error PASSED [ 18%] tests/test_cmd_inspect_app.py::TestMain::test_routes_only[internal-verbose] PASSED [ 18%] tests/test_cmd_inspect_app.py::TestMain::test_routes_only[internal-not-verbose] PASSED [ 18%] tests/test_cmd_inspect_app.py::TestMain::test_routes_only[not-internal-verbose] PASSED [ 18%] tests/test_cmd_inspect_app.py::TestMain::test_routes_only[not-internal-not-verbose] PASSED [ 18%] tests/test_cmd_inspect_app.py::TestMain::test_inspect[internal-verbose] PASSED [ 18%] tests/test_cmd_inspect_app.py::TestMain::test_inspect[internal-not-verbose] PASSED [ 18%] tests/test_cmd_inspect_app.py::TestMain::test_inspect[not-internal-verbose] PASSED [ 18%] tests/test_cmd_inspect_app.py::TestMain::test_inspect[not-internal-not-verbose] PASSED [ 18%] tests/test_cmd_inspect_app.py::test_route_main PASSED [ 18%] tests/test_compiled_router.py::test_find_src PASSED [ 18%] tests/test_compiled_router.py::test_no_compile_kw[kwargs0] PASSED [ 18%] tests/test_compiled_router.py::test_no_compile_kw[kwargs1] PASSED [ 18%] tests/test_compiled_router.py::test_no_compile_kw[kwargs2] PASSED [ 18%] tests/test_compiled_router.py::test_no_compile_kw[kwargs3] PASSED [ 18%] tests/test_compiled_router.py::test_compile PASSED [ 18%] tests/test_compiled_router.py::test_add_route_after_first_request PASSED [ 18%] tests/test_compiled_router.py::test_multithread_compile PASSED [ 18%] tests/test_compiled_router.py::test_cannot_replace_compiled PASSED [ 18%] tests/test_compiled_router.py::test_converter_not_subclass PASSED [ 18%] tests/test_compiled_router.py::test_base_classes PASSED [ 18%] tests/test_cookies.py::test_response_base_case[asgi] PASSED [ 18%] tests/test_cookies.py::test_response_base_case[wsgi] PASSED [ 18%] tests/test_cookies.py::test_response_disable_secure_globally[asgi] PASSED [ 18%] tests/test_cookies.py::test_response_disable_secure_globally[wsgi] PASSED [ 18%] tests/test_cookies.py::test_response_complex_case[asgi] PASSED [ 18%] tests/test_cookies.py::test_response_complex_case[wsgi] PASSED [ 18%] tests/test_cookies.py::test_unset_cookies[asgi] PASSED [ 18%] tests/test_cookies.py::test_unset_cookies[wsgi] PASSED [ 18%] tests/test_cookies.py::test_unset_cookies_samesite[asgi] PASSED [ 18%] tests/test_cookies.py::test_unset_cookies_samesite[wsgi] PASSED [ 18%] tests/test_cookies.py::test_cookie_expires_naive[asgi] PASSED [ 18%] tests/test_cookies.py::test_cookie_expires_naive[wsgi] PASSED [ 18%] tests/test_cookies.py::test_cookie_expires_aware[asgi] PASSED [ 18%] tests/test_cookies.py::test_cookie_expires_aware[wsgi] PASSED [ 18%] tests/test_cookies.py::test_cookies_setable PASSED [ 19%] tests/test_cookies.py::test_cookie_max_age_float_and_string[asgi-foofloat] PASSED [ 19%] tests/test_cookies.py::test_cookie_max_age_float_and_string[asgi-foostring] PASSED [ 19%] tests/test_cookies.py::test_cookie_max_age_float_and_string[wsgi-foofloat] PASSED [ 19%] tests/test_cookies.py::test_cookie_max_age_float_and_string[wsgi-foostring] PASSED [ 19%] tests/test_cookies.py::test_response_unset_cookie PASSED [ 19%] tests/test_cookies.py::test_request_cookie_parsing PASSED [ 19%] tests/test_cookies.py::test_invalid_cookies_are_ignored PASSED [ 19%] tests/test_cookies.py::test_duplicate_cookie PASSED [ 19%] tests/test_cookies.py::test_cookie_header_is_missing PASSED [ 19%] tests/test_cookies.py::test_unicode_inside_ascii_range PASSED [ 19%] tests/test_cookies.py::test_non_ascii_name[Unicode_\xc3\xa6\xc3\xb8] PASSED [ 19%] tests/test_cookies.py::test_non_ascii_name[Unicode_\xc3\x83\xc2\xa6\xc3\x83\xc2\xb8] PASSED [ 19%] tests/test_cookies.py::test_non_ascii_name[42] PASSED [ 19%] tests/test_cookies.py::test_non_ascii_value[Unicode_\xc3\xa6\xc3\xb8] PASSED [ 19%] tests/test_cookies.py::test_non_ascii_value[Unicode_\xc3\x83\xc2\xa6\xc3\x83\xc2\xb8] PASSED [ 19%] tests/test_cookies.py::test_non_ascii_value[42] PASSED [ 19%] tests/test_cookies.py::test_lax_same_site_value[asgi] PASSED [ 19%] tests/test_cookies.py::test_lax_same_site_value[wsgi] PASSED [ 19%] tests/test_cookies.py::test_strict_same_site_value[asgi] PASSED [ 19%] tests/test_cookies.py::test_strict_same_site_value[wsgi] PASSED [ 19%] tests/test_cookies.py::test_none_same_site_value[asgi] PASSED [ 19%] tests/test_cookies.py::test_none_same_site_value[wsgi] PASSED [ 19%] tests/test_cookies.py::test_same_site_empty_string[asgi] PASSED [ 19%] tests/test_cookies.py::test_same_site_empty_string[wsgi] PASSED [ 19%] tests/test_cookies.py::test_same_site_value_case_insensitive[laX] PASSED [ 19%] tests/test_cookies.py::test_same_site_value_case_insensitive[lax] PASSED [ 19%] tests/test_cookies.py::test_same_site_value_case_insensitive[STRICT] PASSED [ 19%] tests/test_cookies.py::test_same_site_value_case_insensitive[strict] PASSED [ 19%] tests/test_cookies.py::test_same_site_value_case_insensitive[None] PASSED [ 19%] tests/test_cookies.py::test_same_site_value_case_insensitive[none] PASSED [ 19%] tests/test_cookies.py::test_invalid_same_site_value[bogus] PASSED [ 19%] tests/test_cookies.py::test_invalid_same_site_value[laxx] PASSED [ 19%] tests/test_cookies.py::test_invalid_same_site_value[stric] PASSED [ 19%] tests/test_cookies.py::test_partitioned_value[asgi] PASSED [ 19%] tests/test_cookies.py::test_partitioned_value[wsgi] PASSED [ 19%] tests/test_cors_middleware.py::TestCorsMiddleware::test_disabled_cors_should_not_add_any_extra_headers[asgi] PASSED [ 19%] tests/test_cors_middleware.py::TestCorsMiddleware::test_disabled_cors_should_not_add_any_extra_headers[wsgi] PASSED [ 19%] tests/test_cors_middleware.py::TestCorsMiddleware::test_enabled_cors_no_origin[asgi] PASSED [ 19%] tests/test_cors_middleware.py::TestCorsMiddleware::test_enabled_cors_no_origin[wsgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCorsMiddleware::test_enabled_cors_should_add_extra_headers_on_response[asgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCorsMiddleware::test_enabled_cors_should_add_extra_headers_on_response[wsgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCorsMiddleware::test_enabled_cors_should_accept_all_origins_requests[asgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCorsMiddleware::test_enabled_cors_should_accept_all_origins_requests[wsgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCorsMiddleware::test_enabled_cors_handles_preflighting[asgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCorsMiddleware::test_enabled_cors_handles_preflighting[wsgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCorsMiddleware::test_enabled_cors_handles_preflight_custom_option[asgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCorsMiddleware::test_enabled_cors_handles_preflight_custom_option[wsgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCorsMiddleware::test_enabled_cors_handles_preflighting_no_headers_in_req[asgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCorsMiddleware::test_enabled_cors_handles_preflighting_no_headers_in_req[wsgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCorsMiddleware::test_enabled_cors_static_route[asgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCorsMiddleware::test_enabled_cors_static_route[wsgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCorsMiddleware::test_enabled_cors_sink_route[asgi-True] PASSED [ 20%] tests/test_cors_middleware.py::TestCorsMiddleware::test_enabled_cors_sink_route[asgi-False] PASSED [ 20%] tests/test_cors_middleware.py::TestCorsMiddleware::test_enabled_cors_sink_route[wsgi-True] PASSED [ 20%] tests/test_cors_middleware.py::TestCorsMiddleware::test_enabled_cors_sink_route[wsgi-False] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_raises PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_allow_origin[asgi-*-fail_origins0-success_origins0] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_allow_origin[asgi-test-fail_origins1-success_origins1] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_allow_origin[asgi-allow2-fail_origins2-success_origins2] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_allow_origin[wsgi-*-fail_origins0-success_origins0] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_allow_origin[wsgi-test-fail_origins1-success_origins1] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_allow_origin[wsgi-allow2-fail_origins2-success_origins2] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_allow_credential_wildcard[asgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_allow_credential_wildcard[wsgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_allow_credential_list_or_str[asgi-allow0-successOrigin0] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_allow_credential_list_or_str[asgi-foo-successOrigin1] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_allow_credential_list_or_str[wsgi-allow0-successOrigin0] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_allow_credential_list_or_str[wsgi-foo-successOrigin1] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_allow_credential_existing_origin[asgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_allow_credential_existing_origin[wsgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_allow_origin_allow_credential[asgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_allow_origin_allow_credential[wsgi] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_expose_headers[asgi-foo-foo] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_expose_headers[asgi-foo, bar-foo, bar] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_expose_headers[asgi-attr2-foo, bar] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_expose_headers[wsgi-foo-foo] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_expose_headers[wsgi-foo, bar-foo, bar] PASSED [ 20%] tests/test_cors_middleware.py::TestCustomCorsMiddleware::test_expose_headers[wsgi-attr2-foo, bar] PASSED [ 20%] tests/test_custom_router.py::test_custom_router_add_route_should_be_used[asgi] PASSED [ 21%] tests/test_custom_router.py::test_custom_router_add_route_should_be_used[wsgi] PASSED [ 21%] tests/test_custom_router.py::test_custom_router_find_should_be_used[asgi] PASSED [ 21%] tests/test_custom_router.py::test_custom_router_find_should_be_used[wsgi] PASSED [ 21%] tests/test_custom_router.py::test_can_pass_additional_params_to_add_route[asgi] PASSED [ 21%] tests/test_custom_router.py::test_can_pass_additional_params_to_add_route[wsgi] PASSED [ 21%] tests/test_custom_router.py::test_custom_router_takes_req_positional_argument[asgi] PASSED [ 21%] tests/test_custom_router.py::test_custom_router_takes_req_positional_argument[wsgi] PASSED [ 21%] tests/test_custom_router.py::test_custom_router_takes_req_keyword_argument[asgi] PASSED [ 21%] tests/test_custom_router.py::test_custom_router_takes_req_keyword_argument[wsgi] PASSED [ 21%] tests/test_default_router.py::test_user_regression_versioned_url PASSED [ 21%] tests/test_default_router.py::test_user_regression_recipes PASSED [ 21%] tests/test_default_router.py::test_user_regression_special_chars[/serviceRoot/People|{field}-/serviceRoot/People|susie-expected_params0] PASSED [ 21%] tests/test_default_router.py::test_user_regression_special_chars[/serviceRoot/People[{field}]-/serviceRoot/People['calvin']-expected_params1] PASSED [ 21%] tests/test_default_router.py::test_user_regression_special_chars[/serviceRoot/People({field})-/serviceRoot/People('hobbes')-expected_params2] PASSED [ 21%] tests/test_default_router.py::test_user_regression_special_chars[/serviceRoot/People({field})-/serviceRoot/People('hob)bes')-expected_params3] PASSED [ 21%] tests/test_default_router.py::test_user_regression_special_chars[/serviceRoot/People({field})(z)-/serviceRoot/People(hobbes)(z)-expected_params4] PASSED [ 21%] tests/test_default_router.py::test_user_regression_special_chars[/serviceRoot/People('{field}')-/serviceRoot/People('rosalyn')-expected_params5] PASSED [ 21%] tests/test_default_router.py::test_user_regression_special_chars[/^{field}-/^42-expected_params6] PASSED [ 21%] tests/test_default_router.py::test_user_regression_special_chars[/+{field}-/+42-expected_params7] PASSED [ 21%] tests/test_default_router.py::test_user_regression_special_chars[/foo/{first}_{second}/bar-/foo/abc_def_ghijk/bar-expected_params8] PASSED [ 21%] tests/test_default_router.py::test_user_regression_special_chars[/items/{x}?{y}-/items/1080?768-expected_params9] PASSED [ 21%] tests/test_default_router.py::test_user_regression_special_chars[/items/{x}|{y}-/items/1080|768-expected_params10] PASSED [ 21%] tests/test_default_router.py::test_user_regression_special_chars[/items/{x},{y}-/items/1080,768-expected_params11] PASSED [ 21%] tests/test_default_router.py::test_user_regression_special_chars[/items/{x}^^{y}-/items/1080^^768-expected_params12] PASSED [ 21%] tests/test_default_router.py::test_user_regression_special_chars[/items/{x}*{y}*-/items/1080*768*-expected_params13] PASSED [ 21%] tests/test_default_router.py::test_user_regression_special_chars[/thing-2/something+{field}+-/thing-2/something+42+-expected_params14] PASSED [ 21%] tests/test_default_router.py::test_user_regression_special_chars[/thing-2/something*{field}/notes-/thing-2/something*42/notes-expected_params15] PASSED [ 21%] tests/test_default_router.py::test_user_regression_special_chars[/thing-2/something+{field}|{q}/notes-/thing-2/something+else|z/notes-expected_params16] PASSED [ 21%] tests/test_default_router.py::test_user_regression_special_chars[serviceRoot/$metadata#Airports('{field}')/Name-serviceRoot/$metadata#Airports('KSFO')/Name-expected_params17] PASSED [ 21%] tests/test_default_router.py::test_not_str[asgi-uri_template0] PASSED [ 21%] tests/test_default_router.py::test_not_str[asgi-uri_template1] PASSED [ 21%] tests/test_default_router.py::test_not_str[asgi-uri_template2] PASSED [ 21%] tests/test_default_router.py::test_not_str[wsgi-uri_template0] PASSED [ 21%] tests/test_default_router.py::test_not_str[wsgi-uri_template1] PASSED [ 21%] tests/test_default_router.py::test_not_str[wsgi-uri_template2] PASSED [ 21%] tests/test_default_router.py::test_root_path PASSED [ 21%] tests/test_default_router.py::test_duplicate_field_names[/{field}{field}] PASSED [ 21%] tests/test_default_router.py::test_duplicate_field_names[/{field}...{field}] PASSED [ 21%] tests/test_default_router.py::test_duplicate_field_names[/{field}/{another}/{field}] PASSED [ 22%] tests/test_default_router.py::test_duplicate_field_names[/{field}/something/something/{field}/something] PASSED [ 22%] tests/test_default_router.py::test_match_entire_path[/items/thing-/items/t] PASSED [ 22%] tests/test_default_router.py::test_match_entire_path[/items/{x}|{y}|-/items/1080|768] PASSED [ 22%] tests/test_default_router.py::test_match_entire_path[/items/{x}*{y}foo-/items/1080*768foobar] PASSED [ 22%] tests/test_default_router.py::test_match_entire_path[/items/{x}*768*-/items/1080*768***] PASSED [ 22%] tests/test_default_router.py::test_conflict[/teams/{conflict}] PASSED [ 22%] tests/test_default_router.py::test_conflict[/emojis/signs/{id_too}] PASSED [ 22%] tests/test_default_router.py::test_conflict[/repos/{org}/{repo}/compare/{complex}:{vs}...{complex2}:{conflict}] PASSED [ 22%] tests/test_default_router.py::test_conflict[/teams/{id:int}/settings] PASSED [ 22%] tests/test_default_router.py::test_non_conflict[/repos/{org}/{repo}/compare/{simple_vs_complex}] PASSED [ 22%] tests/test_default_router.py::test_non_conflict[/repos/{complex}.{vs}.{simple}] PASSED [ 22%] tests/test_default_router.py::test_non_conflict[/repos/{org}/{repo}/compare/{complex}:{vs}...{complex2}/full] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/{}] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/repos/{org}/{repo}/compare/{}] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/repos/{complex}.{}.{thing}] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/{9v}] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/{524hello}/world] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/hello/{1world}] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/repos/{complex}.{9v}.{thing}/etc] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/{*kgriffs}] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/{@kgriffs}] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/repos/{complex}.{v}.{@thing}/etc] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/{-kgriffs}] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/repos/{complex}.{-v}.{thing}/etc] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/repos/{simple-thing}/etc] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/this and that] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/this\tand\tthat/this\nand\nthat/{thing }/world] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/{thing\t}/world] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/{\nthing}/world] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/{th\x0bing}/world] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/{ thing}/world] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/{ thing }/world] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/{thing}/wo rld] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/{thing} /world] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/repos/{or g}/{repo}/compare/{thing}] PASSED [ 22%] tests/test_default_router.py::test_invalid_field_name[/repos/{org}/{repo}/compare/{th\ting}] PASSED [ 22%] tests/test_default_router.py::test_print_src PASSED [ 22%] tests/test_default_router.py::test_override PASSED [ 22%] tests/test_default_router.py::test_literal_segment PASSED [ 23%] tests/test_default_router.py::test_dead_segment[/teams] PASSED [ 23%] tests/test_default_router.py::test_dead_segment[/emojis/signs] PASSED [ 23%] tests/test_default_router.py::test_dead_segment[/gists] PASSED [ 23%] tests/test_default_router.py::test_dead_segment[/gists/42] PASSED [ 23%] tests/test_default_router.py::test_malformed_pattern[/repos/racker/falcon/compare/foo] PASSED [ 23%] tests/test_default_router.py::test_malformed_pattern[/repos/racker/falcon/compare/foo/full] PASSED [ 23%] tests/test_default_router.py::test_literal PASSED [ 23%] tests/test_default_router.py::test_converters[/cvt/teams/007-expected_params0] PASSED [ 23%] tests/test_default_router.py::test_converters[/cvt/teams/1234/members-expected_params1] PASSED [ 23%] tests/test_default_router.py::test_converters[/cvt/teams/default/members/700-5-expected_params2] PASSED [ 23%] tests/test_default_router.py::test_converters[/cvt/repos/org/repo/compare/xkcd:353-expected_params3] PASSED [ 23%] tests/test_default_router.py::test_converters[/cvt/repos/org/repo/compare/gunmachan:1234...kumamon:5678/part-expected_params4] PASSED [ 23%] tests/test_default_router.py::test_converters[/cvt/repos/xkcd/353/compare/susan:0001/full-expected_params5] PASSED [ 23%] tests/test_default_router.py::test_converters_with_invalid_options[/foo/{bar:int(0)}] PASSED [ 23%] tests/test_default_router.py::test_converters_with_invalid_options[/foo/{bar:int(num_digits=0)}] PASSED [ 23%] tests/test_default_router.py::test_converters_with_invalid_options[/foo/{bar:int(-1)}/baz] PASSED [ 23%] tests/test_default_router.py::test_converters_with_invalid_options[/foo/{bar:int(num_digits=-1)}/baz] PASSED [ 23%] tests/test_default_router.py::test_converters_malformed_specification[/foo/{bar:}] PASSED [ 23%] tests/test_default_router.py::test_converters_malformed_specification[/foo/{bar:unknown}/baz] PASSED [ 23%] tests/test_default_router.py::test_variable PASSED [ 23%] tests/test_default_router.py::test_single_character_field_name PASSED [ 23%] tests/test_default_router.py::test_literal_vs_variable[/teams/default-19] PASSED [ 23%] tests/test_default_router.py::test_literal_vs_variable[/teams/default/members-7] PASSED [ 23%] tests/test_default_router.py::test_literal_vs_variable[/cvt/teams/default-31] PASSED [ 23%] tests/test_default_router.py::test_literal_vs_variable[/cvt/teams/default/members/1234-10-32] PASSED [ 23%] tests/test_default_router.py::test_literal_vs_variable[/teams/1234-6] PASSED [ 23%] tests/test_default_router.py::test_literal_vs_variable[/teams/1234/members-7] PASSED [ 23%] tests/test_default_router.py::test_literal_vs_variable[/gists/first-20] PASSED [ 23%] tests/test_default_router.py::test_literal_vs_variable[/gists/first/raw-18] PASSED [ 23%] tests/test_default_router.py::test_literal_vs_variable[/gists/first/pdf-21] PASSED [ 23%] tests/test_default_router.py::test_literal_vs_variable[/gists/1776/pdf-21] PASSED [ 23%] tests/test_default_router.py::test_literal_vs_variable[/emojis/signs/78-13] PASSED [ 23%] tests/test_default_router.py::test_literal_vs_variable[/emojis/signs/78/small.png-24] PASSED [ 23%] tests/test_default_router.py::test_literal_vs_variable[/emojis/signs/78/small(png)-25] PASSED [ 23%] tests/test_default_router.py::test_literal_vs_variable[/emojis/signs/78/small_png-26] PASSED [ 23%] tests/test_default_router.py::test_not_found[/this/does/not/exist] PASSED [ 23%] tests/test_default_router.py::test_not_found[/user/bogus] PASSED [ 23%] tests/test_default_router.py::test_not_found[/repos/racker/falcon/compare/johndoe:master...janedoe:dev/bogus] PASSED [ 23%] tests/test_default_router.py::test_not_found[/teams] PASSED [ 24%] tests/test_default_router.py::test_not_found[/teams/42/members/undefined] PASSED [ 24%] tests/test_default_router.py::test_not_found[/teams/42/undefined] PASSED [ 24%] tests/test_default_router.py::test_not_found[/teams/42/undefined/segments] PASSED [ 24%] tests/test_default_router.py::test_not_found[/teams/default/members/undefined] PASSED [ 24%] tests/test_default_router.py::test_not_found[/teams/default/members/thing/undefined] PASSED [ 24%] tests/test_default_router.py::test_not_found[/teams/default/members/thing/undefined/segments] PASSED [ 24%] tests/test_default_router.py::test_not_found[/teams/default/undefined] PASSED [ 24%] tests/test_default_router.py::test_not_found[/teams/default/undefined/segments] PASSED [ 24%] tests/test_default_router.py::test_not_found[/cvt/teams/default/members] PASSED [ 24%] tests/test_default_router.py::test_not_found[/cvt/teams/NaN] PASSED [ 24%] tests/test_default_router.py::test_not_found[/cvt/teams/default/members/NaN] PASSED [ 24%] tests/test_default_router.py::test_not_found[/emojis/signs] PASSED [ 24%] tests/test_default_router.py::test_not_found[/emojis/signs/0/small] PASSED [ 24%] tests/test_default_router.py::test_not_found[/emojis/signs/0/undefined] PASSED [ 24%] tests/test_default_router.py::test_not_found[/emojis/signs/0/undefined/segments] PASSED [ 24%] tests/test_default_router.py::test_not_found[/emojis/signs/20/small] PASSED [ 24%] tests/test_default_router.py::test_not_found[/emojis/signs/20/undefined] PASSED [ 24%] tests/test_default_router.py::test_not_found[/emojis/signs/42/undefined] PASSED [ 24%] tests/test_default_router.py::test_not_found[/emojis/signs/78/undefined] PASSED [ 24%] tests/test_default_router.py::test_subsegment_not_found PASSED [ 24%] tests/test_default_router.py::test_multivar PASSED [ 24%] tests/test_default_router.py::test_complex[-5] PASSED [ 24%] tests/test_default_router.py::test_complex[/full-10] PASSED [ 24%] tests/test_default_router.py::test_complex[/part-15] PASSED [ 24%] tests/test_default_router.py::test_complex_alt[-16-/repos/{org}/{repo}/compare/{usr0}:{branch0}] PASSED [ 24%] tests/test_default_router.py::test_complex_alt[/full-17-/repos/{org}/{repo}/compare/{usr0}:{branch0}/full] PASSED [ 24%] tests/test_default_router.py::test_options_converters_set PASSED [ 24%] tests/test_default_router.py::test_options_converters_update[spam] PASSED [ 24%] tests/test_default_router.py::test_options_converters_update[spam_2] PASSED [ 24%] tests/test_default_router.py::test_options_converters_invalid_name[has whitespace] PASSED [ 24%] tests/test_default_router.py::test_options_converters_invalid_name[whitespace ] PASSED [ 24%] tests/test_default_router.py::test_options_converters_invalid_name[ whitespace ] PASSED [ 24%] tests/test_default_router.py::test_options_converters_invalid_name[ whitespace] PASSED [ 24%] tests/test_default_router.py::test_options_converters_invalid_name[funky$character] PASSED [ 24%] tests/test_default_router.py::test_options_converters_invalid_name[42istheanswer] PASSED [ 24%] tests/test_default_router.py::test_options_converters_invalid_name[with-hyphen] PASSED [ 24%] tests/test_default_router.py::test_options_converters_invalid_name_on_update PASSED [ 24%] tests/test_default_router.py::test_params_in_non_taken_branches[/c/foo/arg/baz-expected0-1] PASSED [ 24%] tests/test_default_router.py::test_params_in_non_taken_branches[/c/foo/bar/other-expected1-2] PASSED [ 25%] tests/test_default_router.py::test_params_in_non_taken_branches[/c/foo/42-7/baz-expected2-1] PASSED [ 25%] tests/test_default_router.py::test_params_in_non_taken_branches[/upload/youtube/auth/token-expected3-4] PASSED [ 25%] tests/test_default_router.py::test_params_in_non_taken_branches[/x/y/o.o/w-expected4-7] PASSED [ 25%] tests/test_default_router.py::test_capture_path_no_children PASSED [ 25%] tests/test_default_router.py::test_capture_path_complex[/foo/{bar:path}-x] PASSED [ 25%] tests/test_default_router.py::test_capture_path_complex[/foo/x-{bar:path}] PASSED [ 25%] tests/test_default_router.py::test_capture_path_complex[/foo/{x}-{bar:path}] PASSED [ 25%] tests/test_default_router.py::test_capture_path_complex[/foo/{bar:path}-{x}] PASSED [ 25%] tests/test_default_router.py::test_capture_path[/foo/bar/baz-expected0-1] PASSED [ 25%] tests/test_default_router.py::test_capture_path[/foo/some/path/here-expected1-2] PASSED [ 25%] tests/test_default_router.py::test_capture_path[/foo/bar/bar-expected2-3] PASSED [ 25%] tests/test_default_router.py::test_capture_path[/foo/bar/bar-1/2/3/4/5/5/6/7/8/98/9/0/-/9/-expected3-3] PASSED [ 25%] tests/test_default_router.py::test_capture_path[/x/1/2/3-expected4-5] PASSED [ 25%] tests/test_default_router.py::test_capture_path[/x/1/2/3/4/5/6-expected5-5] PASSED [ 25%] tests/test_default_router.py::test_capture_path[/upload/youtube/auth/token-expected6-4] PASSED [ 25%] tests/test_default_router.py::test_capture_path[/x/y/o.o/w-expected7-4] PASSED [ 25%] tests/test_default_router.py::test_capture_path[/foo-expected8-4] PASSED [ 25%] tests/test_default_router.py::test_capture_path[/foo/-expected9-2] PASSED [ 25%] tests/test_default_router.py::test_capture_path[/foo/bar-expected10-2] PASSED [ 25%] tests/test_default_router.py::test_capture_path[/foo/bar/-expected11-3] PASSED [ 25%] tests/test_default_router.py::test_capture_path[/foo/bar/baz/other-expected12-3] PASSED [ 25%] tests/test_default_router.py::test_capture_path[/y/1/2/3-expected13-6] PASSED [ 25%] tests/test_default_router.py::test_capture_path[/y/1/a/3-expected14-4] PASSED [ 25%] tests/test_default_router.py::test_capture_path_no_match PASSED [ 25%] tests/test_error.py::test_with_default_title_and_desc[HTTPBadRequest-400 Bad Request] PASSED [ 25%] tests/test_error.py::test_with_default_title_and_desc[HTTPUnauthorized-401 Unauthorized] PASSED [ 25%] tests/test_error.py::test_with_default_title_and_desc[HTTPForbidden-403 Forbidden] PASSED [ 25%] tests/test_error.py::test_with_default_title_and_desc[HTTPNotFound-404 Not Found] PASSED [ 25%] tests/test_error.py::test_with_default_title_and_desc[HTTPRouteNotFound-404 Not Found] PASSED [ 25%] tests/test_error.py::test_with_default_title_and_desc[HTTPNotAcceptable-406 Not Acceptable] PASSED [ 25%] tests/test_error.py::test_with_default_title_and_desc[HTTPConflict-409 Conflict] PASSED [ 25%] tests/test_error.py::test_with_default_title_and_desc[HTTPGone-410 Gone] PASSED [ 25%] tests/test_error.py::test_with_default_title_and_desc[HTTPLengthRequired-411 Length Required] PASSED [ 25%] tests/test_error.py::test_with_default_title_and_desc[HTTPPreconditionFailed-412 Precondition Failed] PASSED [ 25%] tests/test_error.py::test_with_default_title_and_desc[HTTPContentTooLarge-413 Content Too Large] PASSED [ 25%] tests/test_error.py::test_with_default_title_and_desc[HTTPUriTooLong-414 URI Too Long] PASSED [ 25%] tests/test_error.py::test_with_default_title_and_desc[HTTPUnsupportedMediaType-415 Unsupported Media Type] PASSED [ 25%] tests/test_error.py::test_with_default_title_and_desc[HTTPUnprocessableEntity-422 Unprocessable Entity] PASSED [ 25%] tests/test_error.py::test_with_default_title_and_desc[HTTPLocked-423 Locked] PASSED [ 26%] tests/test_error.py::test_with_default_title_and_desc[HTTPFailedDependency-424 Failed Dependency] PASSED [ 26%] tests/test_error.py::test_with_default_title_and_desc[HTTPPreconditionRequired-428 Precondition Required] PASSED [ 26%] tests/test_error.py::test_with_default_title_and_desc[HTTPTooManyRequests-429 Too Many Requests] PASSED [ 26%] tests/test_error.py::test_with_default_title_and_desc[HTTPRequestHeaderFieldsTooLarge-431 Request Header Fields Too Large] PASSED [ 26%] tests/test_error.py::test_with_default_title_and_desc[HTTPUnavailableForLegalReasons-451 Unavailable For Legal Reasons] PASSED [ 26%] tests/test_error.py::test_with_default_title_and_desc[HTTPInternalServerError-500 Internal Server Error] PASSED [ 26%] tests/test_error.py::test_with_default_title_and_desc[HTTPNotImplemented-501 Not Implemented] PASSED [ 26%] tests/test_error.py::test_with_default_title_and_desc[HTTPBadGateway-502 Bad Gateway] PASSED [ 26%] tests/test_error.py::test_with_default_title_and_desc[HTTPServiceUnavailable-503 Service Unavailable] PASSED [ 26%] tests/test_error.py::test_with_default_title_and_desc[HTTPGatewayTimeout-504 Gateway Timeout] PASSED [ 26%] tests/test_error.py::test_with_default_title_and_desc[HTTPVersionNotSupported-505 HTTP Version Not Supported] PASSED [ 26%] tests/test_error.py::test_with_default_title_and_desc[HTTPInsufficientStorage-507 Insufficient Storage] PASSED [ 26%] tests/test_error.py::test_with_default_title_and_desc[HTTPLoopDetected-508 Loop Detected] PASSED [ 26%] tests/test_error.py::test_with_default_title_and_desc[HTTPNetworkAuthenticationRequired-511 Network Authentication Required] PASSED [ 26%] tests/test_error.py::test_with_default_title_and_desc_args[HTTPMethodNotAllowed-405 Method Not Allowed-args0] PASSED [ 26%] tests/test_error.py::test_with_default_title_and_desc_args[HTTPRangeNotSatisfiable-416 Range Not Satisfiable-args1] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPBadRequest] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPUnauthorized] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPForbidden] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPNotFound] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPRouteNotFound] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPNotAcceptable] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPConflict] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPGone] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPLengthRequired] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPPreconditionFailed] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPContentTooLarge] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPUriTooLong] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPUnsupportedMediaType] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPUnprocessableEntity] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPLocked] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPFailedDependency] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPPreconditionRequired] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPTooManyRequests] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPRequestHeaderFieldsTooLarge] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPUnavailableForLegalReasons] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPInternalServerError] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPNotImplemented] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPBadGateway] PASSED [ 26%] tests/test_error.py::test_with_title_desc_and_headers[HTTPServiceUnavailable] PASSED [ 27%] tests/test_error.py::test_with_title_desc_and_headers[HTTPGatewayTimeout] PASSED [ 27%] tests/test_error.py::test_with_title_desc_and_headers[HTTPVersionNotSupported] PASSED [ 27%] tests/test_error.py::test_with_title_desc_and_headers[HTTPInsufficientStorage] PASSED [ 27%] tests/test_error.py::test_with_title_desc_and_headers[HTTPLoopDetected] PASSED [ 27%] tests/test_error.py::test_with_title_desc_and_headers[HTTPNetworkAuthenticationRequired] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPBadRequest] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPUnauthorized] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPForbidden] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPNotFound] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPRouteNotFound] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPNotAcceptable] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPConflict] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPGone] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPLengthRequired] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPPreconditionFailed] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPContentTooLarge] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPUriTooLong] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPUnsupportedMediaType] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPUnprocessableEntity] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPLocked] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPFailedDependency] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPPreconditionRequired] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPTooManyRequests] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPRequestHeaderFieldsTooLarge] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPUnavailableForLegalReasons] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPInternalServerError] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPNotImplemented] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPBadGateway] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPServiceUnavailable] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPGatewayTimeout] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPVersionNotSupported] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPInsufficientStorage] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPLoopDetected] PASSED [ 27%] tests/test_error.py::test_kw_only[HTTPNetworkAuthenticationRequired] PASSED [ 27%] tests/test_error.py::test_with_title_desc_and_headers_args[HTTPMethodNotAllowed-args0] PASSED [ 27%] tests/test_error.py::test_with_title_desc_and_headers_args[HTTPRangeNotSatisfiable-args1] PASSED [ 27%] tests/test_error.py::test_args_kw_only[HTTPMethodNotAllowed-args0] PASSED [ 27%] tests/test_error.py::test_args_kw_only[HTTPRangeNotSatisfiable-args1] PASSED [ 27%] tests/test_error.py::test_args_kw_only[HTTPInvalidHeader-args2] PASSED [ 28%] tests/test_error.py::test_args_kw_only[HTTPMissingHeader-args3] PASSED [ 28%] tests/test_error.py::test_args_kw_only[HTTPInvalidParam-args4] PASSED [ 28%] tests/test_error.py::test_args_kw_only[HTTPMissingParam-args5] PASSED [ 28%] tests/test_error.py::test_with_retry_after[HTTPServiceUnavailable] PASSED [ 28%] tests/test_error.py::test_with_retry_after[HTTPTooManyRequests] PASSED [ 28%] tests/test_error.py::test_with_retry_after[HTTPContentTooLarge] PASSED [ 28%] tests/test_error.py::test_with_retry_after_and_headers[HTTPServiceUnavailable] PASSED [ 28%] tests/test_error.py::test_with_retry_after_and_headers[HTTPTooManyRequests] PASSED [ 28%] tests/test_error.py::test_with_retry_after_and_headers[HTTPContentTooLarge] PASSED [ 28%] tests/test_error.py::test_http_error_repr PASSED [ 28%] tests/test_error.py::test_custom_400[HTTPInvalidHeader-args0-Invalid header value-The value provided for the "bar" header is invalid. foo] PASSED [ 28%] tests/test_error.py::test_custom_400[HTTPMissingHeader-args1-Missing header value-The "foo" header is required.] PASSED [ 28%] tests/test_error.py::test_custom_400[HTTPInvalidParam-args2-Invalid parameter-The "bar" parameter is invalid. foo] PASSED [ 28%] tests/test_error.py::test_custom_400[HTTPMissingParam-args3-Missing parameter-The "foo" parameter is required.] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_no_header[HTTPUnauthorized-WWW-Authenticate-challenges-args0-a, b-False] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_no_header[HTTPMethodNotAllowed-Allow-allowed_methods-args1-a, b-True] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_no_header[HTTPContentTooLarge-Retry-After-retry_after-123-123-False] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_no_header[HTTPRangeNotSatisfiable-Content-Range-resource_length-123-bytes */123-True] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_no_header[HTTPTooManyRequests-Retry-After-retry_after-123-123-False] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_no_header[HTTPServiceUnavailable-Retry-After-retry_after-123-123-False] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_other_header[HTTPUnauthorized-WWW-Authenticate-challenges-args0-a, b-False] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_other_header[HTTPMethodNotAllowed-Allow-allowed_methods-args1-a, b-True] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_other_header[HTTPContentTooLarge-Retry-After-retry_after-123-123-False] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_other_header[HTTPRangeNotSatisfiable-Content-Range-resource_length-123-bytes */123-True] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_other_header[HTTPTooManyRequests-Retry-After-retry_after-123-123-False] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_other_header[HTTPServiceUnavailable-Retry-After-retry_after-123-123-False] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_override_header[HTTPUnauthorized-WWW-Authenticate-challenges-args0-a, b-False] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_override_header[HTTPMethodNotAllowed-Allow-allowed_methods-args1-a, b-True] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_override_header[HTTPContentTooLarge-Retry-After-retry_after-123-123-False] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_override_header[HTTPRangeNotSatisfiable-Content-Range-resource_length-123-bytes */123-True] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_override_header[HTTPTooManyRequests-Retry-After-retry_after-123-123-False] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_override_header[HTTPServiceUnavailable-Retry-After-retry_after-123-123-False] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_other_header_list[HTTPUnauthorized-WWW-Authenticate-challenges-args0-a, b-False] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_other_header_list[HTTPMethodNotAllowed-Allow-allowed_methods-args1-a, b-True] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_other_header_list[HTTPContentTooLarge-Retry-After-retry_after-123-123-False] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_other_header_list[HTTPRangeNotSatisfiable-Content-Range-resource_length-123-bytes */123-True] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_other_header_list[HTTPTooManyRequests-Retry-After-retry_after-123-123-False] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_other_header_list[HTTPServiceUnavailable-Retry-After-retry_after-123-123-False] PASSED [ 28%] tests/test_error.py::TestErrorsWithHeadersKW::test_override_header_list[HTTPUnauthorized-WWW-Authenticate-challenges-args0-a, b-False] PASSED [ 29%] tests/test_error.py::TestErrorsWithHeadersKW::test_override_header_list[HTTPMethodNotAllowed-Allow-allowed_methods-args1-a, b-True] PASSED [ 29%] tests/test_error.py::TestErrorsWithHeadersKW::test_override_header_list[HTTPContentTooLarge-Retry-After-retry_after-123-123-False] PASSED [ 29%] tests/test_error.py::TestErrorsWithHeadersKW::test_override_header_list[HTTPRangeNotSatisfiable-Content-Range-resource_length-123-bytes */123-True] PASSED [ 29%] tests/test_error.py::TestErrorsWithHeadersKW::test_override_header_list[HTTPTooManyRequests-Retry-After-retry_after-123-123-False] PASSED [ 29%] tests/test_error.py::TestErrorsWithHeadersKW::test_override_header_list[HTTPServiceUnavailable-Retry-After-retry_after-123-123-False] PASSED [ 29%] tests/test_error.py::test_http_payload_too_large_deprecation PASSED [ 29%] tests/test_error_handlers.py::TestErrorHandler::test_caught_error[asgi] PASSED [ 29%] tests/test_error_handlers.py::TestErrorHandler::test_caught_error[wsgi] PASSED [ 29%] tests/test_error_handlers.py::TestErrorHandler::test_uncaught_python_error[asgi-None-application/json-{"] PASSED [ 29%] tests/test_error_handlers.py::TestErrorHandler::test_uncaught_python_error[asgi-get_headers1-application/json-{"] PASSED [ 29%] tests/test_error_handlers.py::TestErrorHandler::test_uncaught_python_error[asgi-get_headers2-application/xml-; rel=alternate] PASSED [ 33%] tests/test_headers.py::TestHeaders::test_append_link_crossorigin[asgi-anonymous-; rel=alternate; crossorigin] PASSED [ 33%] tests/test_headers.py::TestHeaders::test_append_link_crossorigin[asgi-Anonymous-; rel=alternate; crossorigin] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_append_link_crossorigin[asgi-AnOnYmOUs-; rel=alternate; crossorigin] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_append_link_crossorigin[asgi-Use-Credentials-; rel=alternate; crossorigin="use-credentials"] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_append_link_crossorigin[asgi-use-credentials-; rel=alternate; crossorigin="use-credentials"] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_append_link_crossorigin[wsgi-None-; rel=alternate] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_append_link_crossorigin[wsgi-anonymous-; rel=alternate; crossorigin] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_append_link_crossorigin[wsgi-Anonymous-; rel=alternate; crossorigin] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_append_link_crossorigin[wsgi-AnOnYmOUs-; rel=alternate; crossorigin] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_append_link_crossorigin[wsgi-Use-Credentials-; rel=alternate; crossorigin="use-credentials"] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_append_link_crossorigin[wsgi-use-credentials-; rel=alternate; crossorigin="use-credentials"] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_append_link_invalid_crossorigin_value[*] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_append_link_invalid_crossorigin_value[Allow-all] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_append_link_invalid_crossorigin_value[Lax] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_append_link_invalid_crossorigin_value[MUST-REVALIDATE] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_append_link_invalid_crossorigin_value[Strict] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_append_link_invalid_crossorigin_value[deny] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_append_link_with_link_extension[asgi] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_append_link_with_link_extension[wsgi] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_content_length_options[asgi] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_content_length_options[wsgi] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_set_headers_with_custom_class[asgi] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_set_headers_with_custom_class[wsgi] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_headers_with_custom_class_not_callable[asgi] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_headers_with_custom_class_not_callable[wsgi] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_request_multiple_header[asgi] PASSED [ 34%] tests/test_headers.py::TestHeaders::test_request_multiple_header[wsgi] PASSED [ 34%] tests/test_hello.py::TestHelloWorld::test_env_headers_list_of_tuples PASSED [ 34%] tests/test_hello.py::TestHelloWorld::test_root_route PASSED [ 34%] tests/test_hello.py::TestHelloWorld::test_no_route PASSED [ 34%] tests/test_hello.py::TestHelloWorld::test_body[/body-resource0-] PASSED [ 34%] tests/test_hello.py::TestHelloWorld::test_body[/bytes-resource1-] PASSED [ 34%] tests/test_hello.py::TestHelloWorld::test_body[/data-resource2-] PASSED [ 34%] tests/test_hello.py::TestHelloWorld::test_no_body_on_head PASSED [ 34%] tests/test_hello.py::TestHelloWorld::test_stream_chunked PASSED [ 34%] tests/test_hello.py::TestHelloWorld::test_stream_known_len PASSED [ 34%] tests/test_hello.py::TestHelloWorld::test_filelike PASSED [ 34%] tests/test_hello.py::TestHelloWorld::test_filelike_closing[ClosingBytesIO-True] PASSED [ 34%] tests/test_hello.py::TestHelloWorld::test_filelike_closing[NonClosingBytesIO-False] PASSED [ 34%] tests/test_hello.py::TestHelloWorld::test_filelike_using_helper PASSED [ 34%] tests/test_hello.py::TestHelloWorld::test_status_not_set PASSED [ 35%] tests/test_http_custom_method_routing.py::test_map_http_methods[asgi] PASSED [ 35%] tests/test_http_custom_method_routing.py::test_map_http_methods[wsgi] PASSED [ 35%] tests/test_http_custom_method_routing.py::test_environment_override[foo-expected0] SKIPPED [ 35%] tests/test_http_custom_method_routing.py::test_environment_override[FOO-expected1] SKIPPED [ 35%] tests/test_http_custom_method_routing.py::test_environment_override[FOO,-expected2] SKIPPED [ 35%] tests/test_http_custom_method_routing.py::test_environment_override[FOO,BAR-expected3] SKIPPED [ 35%] tests/test_http_custom_method_routing.py::test_environment_override[FOO, BAR-expected4] SKIPPED [ 35%] tests/test_http_custom_method_routing.py::test_environment_override[ foo , BAR -expected5] SKIPPED [ 35%] tests/test_http_custom_method_routing.py::test_foo[asgi] PASSED [ 35%] tests/test_http_custom_method_routing.py::test_foo[wsgi] PASSED [ 35%] tests/test_http_custom_method_routing.py::test_bar[asgi] PASSED [ 35%] tests/test_http_custom_method_routing.py::test_bar[wsgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_get[asgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_get[wsgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_put[asgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_put[wsgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_post_not_allowed[asgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_post_not_allowed[wsgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_report[asgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_report[wsgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_misc[asgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_misc[wsgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_methods_not_allowed_simple[asgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_methods_not_allowed_simple[wsgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_methods_not_allowed_complex[asgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_methods_not_allowed_complex[wsgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_method_not_allowed_with_param[asgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_method_not_allowed_with_param[wsgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_default_on_options[asgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_default_on_options[wsgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_on_options[asgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_on_options[wsgi] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_meta_and_others_disallowed[asgi-WEBSOCKET] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_meta_and_others_disallowed[asgi-SETECASTRONOMY] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_meta_and_others_disallowed[wsgi-WEBSOCKET] PASSED [ 35%] tests/test_http_method_routing.py::TestHttpMethodRouting::test_meta_and_others_disallowed[wsgi-SETECASTRONOMY] PASSED [ 35%] tests/test_httperror.py::TestHTTPError::test_base_class[asgi] PASSED [ 35%] tests/test_httperror.py::TestHTTPError::test_base_class[wsgi] PASSED [ 35%] tests/test_httperror.py::TestHTTPError::test_no_description_json[asgi] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_no_description_json[wsgi] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_no_description_xml[asgi] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_no_description_xml[wsgi] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_xml_enable[with_xml-asgi-True] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_xml_enable[with_xml-asgi-False] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_xml_enable[with_xml-wsgi-True] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_xml_enable[with_xml-wsgi-False] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_xml_enable[without_xml-asgi-True] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_xml_enable[without_xml-asgi-False] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_xml_enable[without_xml-wsgi-True] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_xml_enable[without_xml-wsgi-False] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_xml_enable[default_xml-asgi-True] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_xml_enable[default_xml-asgi-False] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_xml_enable[default_xml-wsgi-True] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_xml_enable[default_xml-wsgi-False] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_to_xml_deprecated PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_client_does_not_accept_json_or_xml[asgi] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_client_does_not_accept_json_or_xml[wsgi] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_custom_error_serializer[asgi] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_custom_error_serializer[wsgi] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_custom_error_serializer_optional_representation[asgi-GET-/404-404] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_custom_error_serializer_optional_representation[asgi-GET-/notfound-404] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_custom_error_serializer_optional_representation[asgi-REPORT-/404-405] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_custom_error_serializer_optional_representation[asgi-BREW-/notfound-400] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_custom_error_serializer_optional_representation[wsgi-GET-/404-404] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_custom_error_serializer_optional_representation[wsgi-GET-/notfound-404] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_custom_error_serializer_optional_representation[wsgi-REPORT-/404-405] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_custom_error_serializer_optional_representation[wsgi-BREW-/notfound-400] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_custom_serializer_no_representation[asgi] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_custom_serializer_no_representation[wsgi] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_client_does_not_accept_anything[asgi] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_client_does_not_accept_anything[wsgi] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_forbidden[asgi-application/json] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_forbidden[asgi-application/vnd.company.system.project.resource+json;v=1.1] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_forbidden[asgi-application/json-patch+json] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_forbidden[wsgi-application/json] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_forbidden[wsgi-application/vnd.company.system.project.resource+json;v=1.1] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_forbidden[wsgi-application/json-patch+json] PASSED [ 36%] tests/test_httperror.py::TestHTTPError::test_epic_fail_json[asgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_epic_fail_json[wsgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_epic_fail_xml[asgi-text/xml] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_epic_fail_xml[asgi-application/xml] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_epic_fail_xml[asgi-application/vnd.company.system.project.resource+xml;v=1.1] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_epic_fail_xml[asgi-application/atom+xml] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_epic_fail_xml[wsgi-text/xml] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_epic_fail_xml[wsgi-application/xml] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_epic_fail_xml[wsgi-application/vnd.company.system.project.resource+xml;v=1.1] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_epic_fail_xml[wsgi-application/atom+xml] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_unicode_json[asgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_unicode_json[wsgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_unicode_xml[asgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_unicode_xml[wsgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_401[asgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_401[wsgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_404_without_body[asgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_404_without_body[wsgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_404_with_body[asgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_404_with_body[wsgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_405_without_body[asgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_405_without_body[wsgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_405_without_body_with_extra_headers[asgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_405_without_body_with_extra_headers[wsgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_405_without_body_with_extra_headers_double_check[asgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_405_without_body_with_extra_headers_double_check[wsgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_405_with_body[asgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_405_with_body[wsgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_410_without_body[asgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_410_without_body[wsgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_410_with_body[asgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_410_with_body[wsgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_411[asgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_411[wsgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_413[asgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_413[wsgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_temporary_413_integer_retry_after[asgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_temporary_413_integer_retry_after[wsgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_temporary_413_datetime_retry_after[asgi] PASSED [ 37%] tests/test_httperror.py::TestHTTPError::test_temporary_413_datetime_retry_after[wsgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_414[asgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_414[wsgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_414_with_title[asgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_414_with_title[wsgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_414_with_description[asgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_414_with_description[wsgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_414_with_custom_kwargs[asgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_414_with_custom_kwargs[wsgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_416[asgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_416[wsgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_429_no_retry_after[asgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_429_no_retry_after[wsgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_429[asgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_429[wsgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_429_datetime[asgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_429_datetime[wsgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_503_integer_retry_after[asgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_503_integer_retry_after[wsgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_503_datetime_retry_after[asgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_503_datetime_retry_after[wsgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_invalid_header[asgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_invalid_header[wsgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_missing_header[asgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_missing_header[wsgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_invalid_param[asgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_invalid_param[wsgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_missing_param[asgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_missing_param[wsgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_misc[asgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_misc[wsgi] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_title_default_message_if_none[asgi-503 Service Unavailable-str] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_title_default_message_if_none[asgi-503 Service Unavailable-bytes] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_title_default_message_if_none[asgi-503-int] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_title_default_message_if_none[asgi-503-str] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_title_default_message_if_none[asgi-503-bytes] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_title_default_message_if_none[asgi-503-HTTPStatus] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_title_default_message_if_none[wsgi-503 Service Unavailable-str] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_title_default_message_if_none[wsgi-503 Service Unavailable-bytes] PASSED [ 38%] tests/test_httperror.py::TestHTTPError::test_title_default_message_if_none[wsgi-503-int] PASSED [ 39%] tests/test_httperror.py::TestHTTPError::test_title_default_message_if_none[wsgi-503-str] PASSED [ 39%] tests/test_httperror.py::TestHTTPError::test_title_default_message_if_none[wsgi-503-bytes] PASSED [ 39%] tests/test_httperror.py::TestHTTPError::test_title_default_message_if_none[wsgi-503-HTTPStatus] PASSED [ 39%] tests/test_httperror.py::TestHTTPError::test_to_json_dumps PASSED [ 39%] tests/test_httperror.py::TestHTTPError::test_serialize_error_uses_media_handler[asgi] PASSED [ 39%] tests/test_httperror.py::TestHTTPError::test_serialize_error_uses_media_handler[wsgi] PASSED [ 39%] tests/test_httperror.py::TestHTTPError::test_serialize_no_json_media_handler[asgi] PASSED [ 39%] tests/test_httperror.py::TestHTTPError::test_serialize_no_json_media_handler[wsgi] PASSED [ 39%] tests/test_httperror.py::TestHTTPError::test_MediaMalformedError PASSED [ 39%] tests/test_httperror.py::TestHTTPError::test_kw_only PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_unknown_accept[asgi] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_unknown_accept[wsgi] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_defaults_to_json[asgi-True] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_defaults_to_json[asgi-False] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_defaults_to_json[wsgi-True] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_defaults_to_json[wsgi-False] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_serializes_error_to_preferred_by_sender[asgi-application/json-application/json-{"title": "410 Gone"}] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_serializes_error_to_preferred_by_sender[asgi-application/xml-application/xml-410 Gone] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_serializes_error_to_preferred_by_sender[asgi-custom/any+json-application/json-{"title": "410 Gone"}] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_serializes_error_to_preferred_by_sender[asgi-custom/any+xml-application/xml-410 Gone] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_serializes_error_to_preferred_by_sender[asgi-application/yaml-application/yaml-title: 410 Gone!] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_serializes_error_to_preferred_by_sender[asgi-application/only_async-application/only_async-this is async] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_serializes_error_to_preferred_by_sender[asgi-application/async_with_sync-application/async_with_sync-this is sync instead] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_serializes_error_to_preferred_by_sender[wsgi-application/json-application/json-{"title": "410 Gone"}] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_serializes_error_to_preferred_by_sender[wsgi-application/xml-application/xml-410 Gone] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_serializes_error_to_preferred_by_sender[wsgi-custom/any+json-application/json-{"title": "410 Gone"}] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_serializes_error_to_preferred_by_sender[wsgi-custom/any+xml-application/xml-410 Gone] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_serializes_error_to_preferred_by_sender[wsgi-application/yaml-application/yaml-title: 410 Gone!] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_serializes_error_to_preferred_by_sender[wsgi-application/only_async-application/only_async-this is async] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_serializes_error_to_preferred_by_sender[wsgi-application/async_with_sync-application/async_with_sync-this is sync instead] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_json_async_only_error PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_add_xml_handler[with_xml-asgi-application/xml] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_add_xml_handler[with_xml-asgi-application/xhtml+xml] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_add_xml_handler[with_xml-wsgi-application/xml] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_add_xml_handler[with_xml-wsgi-application/xhtml+xml] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_add_xml_handler[without_xml-asgi-application/xml] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_add_xml_handler[without_xml-asgi-application/xhtml+xml] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_add_xml_handler[without_xml-wsgi-application/xml] PASSED [ 39%] tests/test_httperror.py::TestDefaultSerializeError::test_add_xml_handler[without_xml-wsgi-application/xhtml+xml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_add_xml_handler[default_xml-asgi-application/xml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_add_xml_handler[default_xml-asgi-application/xhtml+xml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_add_xml_handler[default_xml-wsgi-application/xml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_add_xml_handler[default_xml-wsgi-application/xhtml+xml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[with_xml-asgi-text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/png,image/svg+xml,*/*;q=0.8-application/xml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[with_xml-asgi-text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8-application/xml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[with_xml-asgi-text/html, application/xhtml+xml, image/jxr, */*-application/json] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[with_xml-asgi-text/html,application/yaml;q=0.8,*/*;q=0.7-application/yaml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[with_xml-asgi-text/html,application/yaml;q=0.8,application/json;q=0.8-application/json] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[with_xml-wsgi-text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/png,image/svg+xml,*/*;q=0.8-application/xml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[with_xml-wsgi-text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8-application/xml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[with_xml-wsgi-text/html, application/xhtml+xml, image/jxr, */*-application/json] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[with_xml-wsgi-text/html,application/yaml;q=0.8,*/*;q=0.7-application/yaml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[with_xml-wsgi-text/html,application/yaml;q=0.8,application/json;q=0.8-application/json] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[without_xml-asgi-text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/png,image/svg+xml,*/*;q=0.8-application/xml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[without_xml-asgi-text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8-application/xml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[without_xml-asgi-text/html, application/xhtml+xml, image/jxr, */*-application/json] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[without_xml-asgi-text/html,application/yaml;q=0.8,*/*;q=0.7-application/yaml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[without_xml-asgi-text/html,application/yaml;q=0.8,application/json;q=0.8-application/json] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[without_xml-wsgi-text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/png,image/svg+xml,*/*;q=0.8-application/xml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[without_xml-wsgi-text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8-application/xml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[without_xml-wsgi-text/html, application/xhtml+xml, image/jxr, */*-application/json] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[without_xml-wsgi-text/html,application/yaml;q=0.8,*/*;q=0.7-application/yaml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[without_xml-wsgi-text/html,application/yaml;q=0.8,application/json;q=0.8-application/json] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[default_xml-asgi-text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/png,image/svg+xml,*/*;q=0.8-application/xml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[default_xml-asgi-text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8-application/xml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[default_xml-asgi-text/html, application/xhtml+xml, image/jxr, */*-application/json] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[default_xml-asgi-text/html,application/yaml;q=0.8,*/*;q=0.7-application/yaml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[default_xml-asgi-text/html,application/yaml;q=0.8,application/json;q=0.8-application/json] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[default_xml-wsgi-text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/png,image/svg+xml,*/*;q=0.8-application/xml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[default_xml-wsgi-text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8-application/xml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[default_xml-wsgi-text/html, application/xhtml+xml, image/jxr, */*-application/json] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[default_xml-wsgi-text/html,application/yaml;q=0.8,*/*;q=0.7-application/yaml] PASSED [ 40%] tests/test_httperror.py::TestDefaultSerializeError::test_hard_content_types[default_xml-wsgi-text/html,application/yaml;q=0.8,application/json;q=0.8-application/json] PASSED [ 40%] tests/test_httpstatus.py::TestHTTPStatus::test_raise_status_in_before_hook[asgi] PASSED [ 40%] tests/test_httpstatus.py::TestHTTPStatus::test_raise_status_in_before_hook[wsgi] PASSED [ 40%] tests/test_httpstatus.py::TestHTTPStatus::test_raise_status_in_responder[asgi] PASSED [ 40%] tests/test_httpstatus.py::TestHTTPStatus::test_raise_status_in_responder[wsgi] PASSED [ 40%] tests/test_httpstatus.py::TestHTTPStatus::test_raise_status_runs_after_hooks[asgi] PASSED [ 40%] tests/test_httpstatus.py::TestHTTPStatus::test_raise_status_runs_after_hooks[wsgi] PASSED [ 41%] tests/test_httpstatus.py::TestHTTPStatus::test_raise_status_survives_after_hooks[asgi] PASSED [ 41%] tests/test_httpstatus.py::TestHTTPStatus::test_raise_status_survives_after_hooks[wsgi] PASSED [ 41%] tests/test_httpstatus.py::TestHTTPStatus::test_raise_status_empty_body[asgi] PASSED [ 41%] tests/test_httpstatus.py::TestHTTPStatus::test_raise_status_empty_body[wsgi] PASSED [ 41%] tests/test_httpstatus.py::TestHTTPStatusWithMiddleware::test_raise_status_in_process_request[asgi] PASSED [ 41%] tests/test_httpstatus.py::TestHTTPStatusWithMiddleware::test_raise_status_in_process_request[wsgi] PASSED [ 41%] tests/test_httpstatus.py::TestHTTPStatusWithMiddleware::test_raise_status_in_process_resource[asgi] PASSED [ 41%] tests/test_httpstatus.py::TestHTTPStatusWithMiddleware::test_raise_status_in_process_resource[wsgi] PASSED [ 41%] tests/test_httpstatus.py::TestHTTPStatusWithMiddleware::test_raise_status_runs_process_response[asgi] PASSED [ 41%] tests/test_httpstatus.py::TestHTTPStatusWithMiddleware::test_raise_status_runs_process_response[wsgi] PASSED [ 41%] tests/test_httpstatus.py::TestNoBodyWithStatus::test_data_is_set[asgi] PASSED [ 41%] tests/test_httpstatus.py::TestNoBodyWithStatus::test_data_is_set[wsgi] PASSED [ 41%] tests/test_httpstatus.py::TestNoBodyWithStatus::test_media_is_set[asgi] PASSED [ 41%] tests/test_httpstatus.py::TestNoBodyWithStatus::test_media_is_set[wsgi] PASSED [ 41%] tests/test_httpstatus.py::TestNoBodyWithStatus::test_body_is_set[asgi] PASSED [ 41%] tests/test_httpstatus.py::TestNoBodyWithStatus::test_body_is_set[wsgi] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[asgi-200-200_0] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[asgi-202-202] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[asgi-403-403] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[asgi-500-500_0] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[asgi-200-200_1] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[asgi-305-305] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[asgi-404-404] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[asgi-501-501] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[asgi-200-200_2] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[asgi-307-307] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[asgi-500-500_1] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[asgi-702-702] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[asgi-200 OK-200] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[asgi-702 Emacs-702] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[wsgi-200-200_0] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[wsgi-202-202] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[wsgi-403-403] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[wsgi-500-500_0] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[wsgi-200-200_1] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[wsgi-305-305] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[wsgi-404-404] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[wsgi-501-501] PASSED [ 41%] tests/test_httpstatus.py::test_non_string_status[wsgi-200-200_2] PASSED [ 42%] tests/test_httpstatus.py::test_non_string_status[wsgi-307-307] PASSED [ 42%] tests/test_httpstatus.py::test_non_string_status[wsgi-500-500_1] PASSED [ 42%] tests/test_httpstatus.py::test_non_string_status[wsgi-702-702] PASSED [ 42%] tests/test_httpstatus.py::test_non_string_status[wsgi-200 OK-200] PASSED [ 42%] tests/test_httpstatus.py::test_non_string_status[wsgi-702 Emacs-702] PASSED [ 42%] tests/test_httpstatus.py::test_deprecated_body PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_empty_app[asgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_empty_app[wsgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_dependent_middleware[asgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_dependent_middleware[wsgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_app[asgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_app[wsgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_routes[asgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_routes[wsgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_routes_empty_paths[asgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_routes_empty_paths[wsgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_static_routes[asgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_static_routes[wsgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_sink[asgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_sink[wsgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_error_handler[asgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_error_handler[wsgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_middleware[asgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_middleware[wsgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_middleware_tree[asgi] PASSED [ 42%] tests/test_inspect.py::TestInspectApp::test_middleware_tree[wsgi] PASSED [ 42%] tests/test_inspect.py::test_route_method_info_suffix PASSED [ 42%] tests/test_inspect.py::TestRouter::test_compiled_partial PASSED [ 42%] tests/test_inspect.py::TestRouter::test_compiled_no_method_map PASSED [ 42%] tests/test_inspect.py::TestRouter::test_register_router_not_found PASSED [ 42%] tests/test_inspect.py::TestRouter::test_register_other_router PASSED [ 42%] tests/test_inspect.py::TestRouter::test_register_router_multiple_time PASSED [ 42%] tests/test_inspect.py::test_info_class_repr_to_string PASSED [ 42%] tests/test_inspect.py::TestInspectVisitor::test_inspect_visitor PASSED [ 42%] tests/test_inspect.py::TestInspectVisitor::test_process PASSED [ 42%] tests/test_inspect.py::test_string_visitor_class PASSED [ 42%] tests/test_inspect.py::TestStringVisitor::test_route_method[True] PASSED [ 42%] tests/test_inspect.py::TestStringVisitor::test_route_method[False] PASSED [ 42%] tests/test_inspect.py::TestStringVisitor::test_route_method_verbose[True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_route_method_verbose[False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_route[True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_route[False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_route_verbose[True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_route_verbose[False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_route_no_methods[True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_route_no_methods[False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_static_route[True-True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_static_route[True-False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_static_route[False-True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_static_route[False-False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_sink[True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_sink[False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_sink_verbose[True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_sink_verbose[False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_error_handler[True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_error_handler[False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_error_handler_verbose[True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_error_handler_verbose[False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_method[True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_method[False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_method_verbose[True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_method_verbose[False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_class[True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_class[False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_class_verbose[True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_class_verbose[False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_class_no_methods[True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_class_no_methods[False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_tree_item[True-True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_tree_item[True-False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_tree_item[False-True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_tree_item[False-False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_tree[True-True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_tree[True-False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_tree[False-True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_tree[False-False] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_tree_response_only[True] PASSED [ 43%] tests/test_inspect.py::TestStringVisitor::test_middleware_tree_response_only[False] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_middleware_tree_no_response[True] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_middleware_tree_no_response[False] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_middleware_tree_no_resource[True] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_middleware_tree_no_resource[False] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_middleware[True] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_middleware[False] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_middleware_verbose[True] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_middleware_verbose[False] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app[True-True] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app[True-False] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app[False-True] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app[False-False] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_no_routes[True-True] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_no_routes[True-False] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_no_routes[False-True] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_no_routes[False-False] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_no_middleware[True-True] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_no_middleware[True-False] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_no_middleware[False-True] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_no_middleware[False-False] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_static_routes[True-True] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_static_routes[True-False] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_static_routes[False-True] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_static_routes[False-False] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_no_sink[True-True] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_no_sink[True-False] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_no_sink[False-True] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_no_sink[False-False] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_no_errors[True-True] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_no_errors[True-False] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_no_errors[False-True] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_no_errors[False-False] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_name[True] PASSED [ 44%] tests/test_inspect.py::TestStringVisitor::test_app_name[False] PASSED [ 44%] tests/test_inspect.py::test_is_internal PASSED [ 44%] tests/test_media_handlers.py::test_check_json_library[mujson] PASSED [ 44%] tests/test_media_handlers.py::test_check_json_library[orjson] SKIPPED [ 44%] tests/test_media_handlers.py::test_check_json_library[rapidjson] PASSED [ 44%] tests/test_media_handlers.py::test_check_json_library[ujson] PASSED [ 45%] tests/test_media_handlers.py::test_serialization[asgi-None-body0-{"test":"value"}] PASSED [ 45%] tests/test_media_handlers.py::test_serialization[asgi-func1-body1-[{"test":"value"},{"ensure_ascii":true}]] PASSED [ 45%] tests/test_media_handlers.py::test_serialization[asgi-None-body2-{"yen":"\xc2\xa5"}] PASSED [ 45%] tests/test_media_handlers.py::test_serialization[asgi-func3-body3-{"test":"value"}] PASSED [ 45%] tests/test_media_handlers.py::test_serialization[asgi-dumps-body4-{"test":"value"}] PASSED [ 45%] tests/test_media_handlers.py::test_serialization[asgi-dumps-body5-{"test":"value"}] PASSED [ 45%] tests/test_media_handlers.py::test_serialization[wsgi-None-body0-{"test":"value"}] PASSED [ 45%] tests/test_media_handlers.py::test_serialization[wsgi-func1-body1-[{"test":"value"},{"ensure_ascii":true}]] PASSED [ 45%] tests/test_media_handlers.py::test_serialization[wsgi-None-body2-{"yen":"\xc2\xa5"}] PASSED [ 45%] tests/test_media_handlers.py::test_serialization[wsgi-func3-body3-{"test":"value"}] PASSED [ 45%] tests/test_media_handlers.py::test_serialization[wsgi-dumps-body4-{"test":"value"}] PASSED [ 45%] tests/test_media_handlers.py::test_serialization[wsgi-dumps-body5-{"test":"value"}] PASSED [ 45%] tests/test_media_handlers.py::test_deserialization[asgi-None-[1, 2]-expected0] PASSED [ 45%] tests/test_media_handlers.py::test_deserialization[asgi-func1-{"key": "value"}-expected1] PASSED [ 45%] tests/test_media_handlers.py::test_deserialization[asgi-temp_json_func-{"test": "value"}-expected2] PASSED [ 45%] tests/test_media_handlers.py::test_deserialization[asgi-loads-{"test": "value"}-expected3] PASSED [ 45%] tests/test_media_handlers.py::test_deserialization[asgi-loads-{"test": "value"}-expected4] PASSED [ 45%] tests/test_media_handlers.py::test_deserialization[wsgi-None-[1, 2]-expected0] PASSED [ 45%] tests/test_media_handlers.py::test_deserialization[wsgi-func1-{"key": "value"}-expected1] PASSED [ 45%] tests/test_media_handlers.py::test_deserialization[wsgi-temp_json_func-{"test": "value"}-expected2] PASSED [ 45%] tests/test_media_handlers.py::test_deserialization[wsgi-loads-{"test": "value"}-expected3] PASSED [ 45%] tests/test_media_handlers.py::test_deserialization[wsgi-loads-{"test": "value"}-expected4] PASSED [ 45%] tests/test_media_handlers.py::test_full_app[asgi-True-stdlib] PASSED [ 45%] tests/test_media_handlers.py::test_full_app[asgi-True-mujson] PASSED [ 45%] tests/test_media_handlers.py::test_full_app[asgi-True-rapidjson] PASSED [ 45%] tests/test_media_handlers.py::test_full_app[asgi-True-ujson] PASSED [ 45%] tests/test_media_handlers.py::test_full_app[asgi-False-stdlib] PASSED [ 45%] tests/test_media_handlers.py::test_full_app[asgi-False-mujson] PASSED [ 45%] tests/test_media_handlers.py::test_full_app[asgi-False-rapidjson] PASSED [ 45%] tests/test_media_handlers.py::test_full_app[asgi-False-ujson] PASSED [ 45%] tests/test_media_handlers.py::test_full_app[wsgi-True-stdlib] PASSED [ 45%] tests/test_media_handlers.py::test_full_app[wsgi-True-mujson] PASSED [ 45%] tests/test_media_handlers.py::test_full_app[wsgi-True-rapidjson] PASSED [ 45%] tests/test_media_handlers.py::test_full_app[wsgi-True-ujson] PASSED [ 45%] tests/test_media_handlers.py::test_full_app[wsgi-False-stdlib] PASSED [ 45%] tests/test_media_handlers.py::test_full_app[wsgi-False-mujson] PASSED [ 45%] tests/test_media_handlers.py::test_full_app[wsgi-False-rapidjson] PASSED [ 45%] tests/test_media_handlers.py::test_full_app[wsgi-False-ujson] PASSED [ 45%] tests/test_media_handlers.py::test_deserialization_raises[asgi-application/json] PASSED [ 46%] tests/test_media_handlers.py::test_deserialization_raises[asgi-application/json; answer=42] PASSED [ 46%] tests/test_media_handlers.py::test_deserialization_raises[wsgi-application/json] PASSED [ 46%] tests/test_media_handlers.py::test_deserialization_raises[wsgi-application/json; answer=42] PASSED [ 46%] tests/test_media_handlers.py::test_sync_methods_not_overridden[asgi] PASSED [ 46%] tests/test_media_handlers.py::test_sync_methods_not_overridden[wsgi] PASSED [ 46%] tests/test_media_handlers.py::test_async_methods_not_overridden PASSED [ 46%] tests/test_media_handlers.py::test_async_handler_returning_none PASSED [ 46%] tests/test_media_handlers.py::test_json_err_no_handler[asgi] PASSED [ 46%] tests/test_media_handlers.py::test_json_err_no_handler[wsgi] PASSED [ 46%] tests/test_media_handlers.py::test_handlers_include_new_media_handlers_in_resolving PASSED [ 46%] tests/test_media_handlers.py::TestBaseHandler::test_defaultError PASSED [ 46%] tests/test_media_handlers.py::TestBaseHandler::test_json PASSED [ 46%] tests/test_media_multipart.py::test_parse[5b11af82ab65407ba8cdccf37d2a9c4f] PASSED [ 46%] tests/test_media_multipart.py::test_parse[---------------------------1574247108204320607285918568] PASSED [ 46%] tests/test_media_multipart.py::test_parse[BOUNDARY] PASSED [ 46%] tests/test_media_multipart.py::test_parse[boundary] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[32-7] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[32-8] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[32-9] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[32-10] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[32-32] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[32-64] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[32-128] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[32-256] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[64-7] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[64-8] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[64-9] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[64-10] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[64-32] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[64-64] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[64-128] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[64-256] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[128-7] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[128-8] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[128-9] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[128-10] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[128-32] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[128-64] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[128-128] PASSED [ 46%] tests/test_media_multipart.py::test_parsing_correctness[128-256] PASSED [ 47%] tests/test_media_multipart.py::test_parsing_correctness[256-7] PASSED [ 47%] tests/test_media_multipart.py::test_parsing_correctness[256-8] PASSED [ 47%] tests/test_media_multipart.py::test_parsing_correctness[256-9] PASSED [ 47%] tests/test_media_multipart.py::test_parsing_correctness[256-10] PASSED [ 47%] tests/test_media_multipart.py::test_parsing_correctness[256-32] PASSED [ 47%] tests/test_media_multipart.py::test_parsing_correctness[256-64] PASSED [ 47%] tests/test_media_multipart.py::test_parsing_correctness[256-128] PASSED [ 47%] tests/test_media_multipart.py::test_parsing_correctness[256-256] PASSED [ 47%] tests/test_media_multipart.py::test_missing_boundary PASSED [ 47%] tests/test_media_multipart.py::test_empty_input PASSED [ 47%] tests/test_media_multipart.py::test_serialize PASSED [ 47%] tests/test_media_multipart.py::test_invalid_text_or_charset[utf-8-Impossible byte: \xff] PASSED [ 47%] tests/test_media_multipart.py::test_invalid_text_or_charset[utf-8-Overlong... \xfc\x83\xbf\xbf\xbf\xbf ... sequence] PASSED [ 47%] tests/test_media_multipart.py::test_invalid_text_or_charset[ascii-\x80\x80\x80] PASSED [ 47%] tests/test_media_multipart.py::test_invalid_text_or_charset[pecyn-AAHEHlRoZSBGYWxjb24gV2ViIEZyYW1ld29yaywgMjAxOQ==] PASSED [ 47%] tests/test_media_multipart.py::test_unknown_header PASSED [ 47%] tests/test_media_multipart.py::test_from_buffered_stream PASSED [ 47%] tests/test_media_multipart.py::test_body_part_media PASSED [ 47%] tests/test_media_multipart.py::test_body_part_properties PASSED [ 47%] tests/test_media_multipart.py::test_empty_or_missing_filename PASSED [ 47%] tests/test_media_multipart.py::test_upload_multipart[asgi] PASSED [ 47%] tests/test_media_multipart.py::test_upload_multipart[wsgi] PASSED [ 47%] tests/test_media_multipart.py::test_epilogue[asgi-] PASSED [ 47%] tests/test_media_multipart.py::test_epilogue[asgi---] PASSED [ 47%] tests/test_media_multipart.py::test_epilogue[asgi-\n] PASSED [ 47%] tests/test_media_multipart.py::test_epilogue[asgi-\n\n] PASSED [ 47%] tests/test_media_multipart.py::test_epilogue[asgi- <-- no CRLF] PASSED [ 47%] tests/test_media_multipart.py::test_epilogue[asgi-\U0001f4a5] PASSED [ 47%] tests/test_media_multipart.py::test_epilogue[wsgi-] PASSED [ 47%] tests/test_media_multipart.py::test_epilogue[wsgi---] PASSED [ 47%] tests/test_media_multipart.py::test_epilogue[wsgi-\n] PASSED [ 47%] tests/test_media_multipart.py::test_epilogue[wsgi-\n\n] PASSED [ 47%] tests/test_media_multipart.py::test_epilogue[wsgi- <-- no CRLF] PASSED [ 47%] tests/test_media_multipart.py::test_epilogue[wsgi-\U0001f4a5] PASSED [ 47%] tests/test_media_multipart.py::test_truncated_form[asgi-1] PASSED [ 47%] tests/test_media_multipart.py::test_truncated_form[asgi-2] PASSED [ 47%] tests/test_media_multipart.py::test_truncated_form[asgi-3] PASSED [ 47%] tests/test_media_multipart.py::test_truncated_form[asgi-4] PASSED [ 47%] tests/test_media_multipart.py::test_truncated_form[wsgi-1] PASSED [ 48%] tests/test_media_multipart.py::test_truncated_form[wsgi-2] PASSED [ 48%] tests/test_media_multipart.py::test_truncated_form[wsgi-3] PASSED [ 48%] tests/test_media_multipart.py::test_truncated_form[wsgi-4] PASSED [ 48%] tests/test_media_multipart.py::test_unexpected_form_structure[asgi] PASSED [ 48%] tests/test_media_multipart.py::test_unexpected_form_structure[wsgi] PASSED [ 48%] tests/test_media_multipart.py::test_data_too_large[asgi] PASSED [ 48%] tests/test_media_multipart.py::test_data_too_large[wsgi] PASSED [ 48%] tests/test_media_multipart.py::test_too_many_body_parts[asgi-0] PASSED [ 48%] tests/test_media_multipart.py::test_too_many_body_parts[asgi-1] PASSED [ 48%] tests/test_media_multipart.py::test_too_many_body_parts[asgi-2] PASSED [ 48%] tests/test_media_multipart.py::test_too_many_body_parts[asgi-3] PASSED [ 48%] tests/test_media_multipart.py::test_too_many_body_parts[asgi-4] PASSED [ 48%] tests/test_media_multipart.py::test_too_many_body_parts[asgi-5] PASSED [ 48%] tests/test_media_multipart.py::test_too_many_body_parts[asgi-6] PASSED [ 48%] tests/test_media_multipart.py::test_too_many_body_parts[asgi-100] PASSED [ 48%] tests/test_media_multipart.py::test_too_many_body_parts[asgi-1000] PASSED [ 48%] tests/test_media_multipart.py::test_too_many_body_parts[wsgi-0] PASSED [ 48%] tests/test_media_multipart.py::test_too_many_body_parts[wsgi-1] PASSED [ 48%] tests/test_media_multipart.py::test_too_many_body_parts[wsgi-2] PASSED [ 48%] tests/test_media_multipart.py::test_too_many_body_parts[wsgi-3] PASSED [ 48%] tests/test_media_multipart.py::test_too_many_body_parts[wsgi-4] PASSED [ 48%] tests/test_media_multipart.py::test_too_many_body_parts[wsgi-5] PASSED [ 48%] tests/test_media_multipart.py::test_too_many_body_parts[wsgi-6] PASSED [ 48%] tests/test_media_multipart.py::test_too_many_body_parts[wsgi-100] PASSED [ 48%] tests/test_media_multipart.py::test_too_many_body_parts[wsgi-1000] PASSED [ 48%] tests/test_media_multipart.py::test_random_form[asgi---] PASSED [ 48%] tests/test_media_multipart.py::test_random_form[asgi---\r\n] PASSED [ 48%] tests/test_media_multipart.py::test_random_form[wsgi---] PASSED [ 48%] tests/test_media_multipart.py::test_random_form[wsgi---\r\n] PASSED [ 48%] tests/test_media_multipart.py::test_invalid_random_form[asgi] PASSED [ 48%] tests/test_media_multipart.py::test_invalid_random_form[wsgi] PASSED [ 48%] tests/test_media_multipart.py::test_nested_multipart_mixed PASSED [ 48%] tests/test_media_multipart.py::test_content_transfer_encoding_header[asgi] PASSED [ 48%] tests/test_media_multipart.py::test_content_transfer_encoding_header[wsgi] PASSED [ 48%] tests/test_media_multipart.py::test_unsupported_charset[asgi] PASSED [ 48%] tests/test_media_multipart.py::test_unsupported_charset[wsgi] PASSED [ 48%] tests/test_media_multipart.py::test_filename_star[asgi] PASSED [ 48%] tests/test_media_multipart.py::test_filename_star[wsgi] PASSED [ 48%] tests/test_media_multipart.py::test_headers_edge_cases[asgi-64] PASSED [ 49%] tests/test_media_multipart.py::test_headers_edge_cases[asgi-140] PASSED [ 49%] tests/test_media_multipart.py::test_headers_edge_cases[asgi-141] PASSED [ 49%] tests/test_media_multipart.py::test_headers_edge_cases[asgi-142] PASSED [ 49%] tests/test_media_multipart.py::test_headers_edge_cases[asgi-256] PASSED [ 49%] tests/test_media_multipart.py::test_headers_edge_cases[asgi-1024] PASSED [ 49%] tests/test_media_multipart.py::test_headers_edge_cases[wsgi-64] PASSED [ 49%] tests/test_media_multipart.py::test_headers_edge_cases[wsgi-140] PASSED [ 49%] tests/test_media_multipart.py::test_headers_edge_cases[wsgi-141] PASSED [ 49%] tests/test_media_multipart.py::test_headers_edge_cases[wsgi-142] PASSED [ 49%] tests/test_media_multipart.py::test_headers_edge_cases[wsgi-256] PASSED [ 49%] tests/test_media_multipart.py::test_headers_edge_cases[wsgi-1024] PASSED [ 49%] tests/test_media_multipart.py::test_deserialize_part_media[asgi] PASSED [ 49%] tests/test_media_multipart.py::test_deserialize_part_media[wsgi] PASSED [ 49%] tests/test_media_multipart.py::test_deserialize_custom_media[asgi] PASSED [ 49%] tests/test_media_multipart.py::test_deserialize_custom_media[wsgi] PASSED [ 49%] tests/test_media_multipart.py::test_multipart_parse_options_default_handlers_unique PASSED [ 49%] tests/test_media_urlencoded.py::test_deserialize_empty_form PASSED [ 49%] tests/test_media_urlencoded.py::test_deserialize_invalid_unicode PASSED [ 49%] tests/test_media_urlencoded.py::test_urlencoded_form_handler_serialize[data0-hello=world] PASSED [ 49%] tests/test_media_urlencoded.py::test_urlencoded_form_handler_serialize[data1-number=1&number=2] PASSED [ 49%] tests/test_media_urlencoded.py::test_empty_form[asgi] PASSED [ 49%] tests/test_media_urlencoded.py::test_empty_form[wsgi] PASSED [ 49%] tests/test_media_urlencoded.py::test_urlencoded_form[asgi-a=1&b=&c=3-expected0] PASSED [ 49%] tests/test_media_urlencoded.py::test_urlencoded_form[asgi-param=undefined-expected1] PASSED [ 49%] tests/test_media_urlencoded.py::test_urlencoded_form[asgi-color=green&color=black-expected2] PASSED [ 49%] tests/test_media_urlencoded.py::test_urlencoded_form[asgi-food=hamburger+%28%F0%9F%8D%94%29&sauce=BBQ-expected3] PASSED [ 49%] tests/test_media_urlencoded.py::test_urlencoded_form[asgi-flag%1&flag%2&flag%1&flag%2-expected4] PASSED [ 49%] tests/test_media_urlencoded.py::test_urlencoded_form[wsgi-a=1&b=&c=3-expected0] PASSED [ 49%] tests/test_media_urlencoded.py::test_urlencoded_form[wsgi-param=undefined-expected1] PASSED [ 49%] tests/test_media_urlencoded.py::test_urlencoded_form[wsgi-color=green&color=black-expected2] PASSED [ 49%] tests/test_media_urlencoded.py::test_urlencoded_form[wsgi-food=hamburger+%28%F0%9F%8D%94%29&sauce=BBQ-expected3] PASSED [ 49%] tests/test_media_urlencoded.py::test_urlencoded_form[wsgi-flag%1&flag%2&flag%1&flag%2-expected4] PASSED [ 49%] tests/test_mediatypes.py::test_parse_header[-expected0] PASSED [ 49%] tests/test_mediatypes.py::test_parse_header[strange-expected1] PASSED [ 49%] tests/test_mediatypes.py::test_parse_header[text/plain-expected2] PASSED [ 49%] tests/test_mediatypes.py::test_parse_header[text/plain -expected3] PASSED [ 49%] tests/test_mediatypes.py::test_parse_header[ text/plain-expected4] PASSED [ 49%] tests/test_mediatypes.py::test_parse_header[ text/plain -expected5] PASSED [ 49%] tests/test_mediatypes.py::test_parse_header[ text/plain -expected6] PASSED [ 50%] tests/test_mediatypes.py::test_parse_header[falcon/peregrine; key1; key2=value; key3-expected7] PASSED [ 50%] tests/test_mediatypes.py::test_parse_header[audio/pcm;rate=48000;encoding=float;bits=32-expected8] PASSED [ 50%] tests/test_mediatypes.py::test_parse_header[falcon/*; genus=falco; family=falconidae; class=aves; -expected9] PASSED [ 50%] tests/test_mediatypes.py::test_parse_header["falcon/peregrine" ; key="value"-expected10] PASSED [ 50%] tests/test_mediatypes.py::test_parse_header[falcon/peregrine; empty=""-expected11] PASSED [ 50%] tests/test_mediatypes.py::test_parse_header[falcon/peregrine; quote="-expected12] PASSED [ 50%] tests/test_mediatypes.py::test_parse_header[text/plain; charset=utf-8-expected13] PASSED [ 50%] tests/test_mediatypes.py::test_parse_header[stuff/strange; missing-value; missing-another-expected14] PASSED [ 50%] tests/test_mediatypes.py::test_parse_header[stuff/strange; missing-value\\missing-another-expected15] PASSED [ 50%] tests/test_mediatypes.py::test_parse_header[application/falcon; P1 = "key; value"; P2="\\""-expected16] PASSED [ 50%] tests/test_mediatypes.py::test_media_type_private_cls PASSED [ 50%] tests/test_mediatypes.py::test_media_range_private_cls PASSED [ 50%] tests/test_mediatypes.py::test_quality_rfc_examples[RFC-7231-text/html;level=1-1.0] PASSED [ 50%] tests/test_mediatypes.py::test_quality_rfc_examples[RFC-7231-text/html-0.7] PASSED [ 50%] tests/test_mediatypes.py::test_quality_rfc_examples[RFC-7231-text/plain-0.3] PASSED [ 50%] tests/test_mediatypes.py::test_quality_rfc_examples[RFC-7231-image/jpeg-0.5] PASSED [ 50%] tests/test_mediatypes.py::test_quality_rfc_examples[RFC-7231-text/html;level=2-0.4] PASSED [ 50%] tests/test_mediatypes.py::test_quality_rfc_examples[RFC-7231-text/html;level=3-0.7] PASSED [ 50%] tests/test_mediatypes.py::test_quality_rfc_examples[RFC-9110-text/html;level=1-1.0] PASSED [ 50%] tests/test_mediatypes.py::test_quality_rfc_examples[RFC-9110-text/html-0.7] PASSED [ 50%] tests/test_mediatypes.py::test_quality_rfc_examples[RFC-9110-text/plain-0.3] PASSED [ 50%] tests/test_mediatypes.py::test_quality_rfc_examples[RFC-9110-image/jpeg-0.5] PASSED [ 50%] tests/test_mediatypes.py::test_quality_rfc_examples[RFC-9110-text/html;level=2-0.4] PASSED [ 50%] tests/test_mediatypes.py::test_quality_rfc_examples[RFC-9110-text/html;level=3-0.7] PASSED [ 50%] tests/test_mediatypes.py::test_quality[application/*, */wildcard; q=0.7, */*; q=0.25-test/wildcard; expect=pass-0.7] PASSED [ 50%] tests/test_mediatypes.py::test_quality[application/*, */wildcard; q=0.7, */*; q=0.25-application/wildcard; expect=pass-1.0] PASSED [ 50%] tests/test_mediatypes.py::test_quality[application/*, */wildcard; q=0.7, */*; q=0.25-test/something; expect=pass-0.25] PASSED [ 50%] tests/test_mediatypes.py::test_quality[text/x-python, text/*; q=0.33, text/plain; format=fixed-text/plain; format=flowed-0.33] PASSED [ 50%] tests/test_mediatypes.py::test_quality[text/*;q=0.3, text/html;level=1, text/html;q=0.7, text/html;level=2;q=0.4, */*;q=0.5-text/html; level=3-0.7] PASSED [ 50%] tests/test_mediatypes.py::test_quality_prefer_exact_match[foo/bar, test/app; q=0.2, test/app; p=1; q=0.9, test/app;p=1;r=2-test/app] PASSED [ 50%] tests/test_mediatypes.py::test_quality_prefer_exact_match[test/app; q=0.1, test/app; p=1; q=0.2, test/app;p=1;r=2-test/app; p=1] PASSED [ 50%] tests/test_mediatypes.py::test_quality_prefer_exact_match[*/app; q=0.1, simple/app; test=true; q=0.2, simple/app; color=blue-simple/app; test=true] PASSED [ 50%] tests/test_mediatypes.py::test_quality_none_matches[application/json-application/yaml] PASSED [ 50%] tests/test_mediatypes.py::test_quality_none_matches[audio/*; q=0.2, audio/basic-video/mp3] PASSED [ 50%] tests/test_mediatypes.py::test_quality_none_matches[falcon/peregrine; speed=high; unladen=true-falcon/peregrine; speed=average] PASSED [ 50%] tests/test_mediatypes.py::test_quality_none_matches[text/html, text/plain-text/x-python] PASSED [ 50%] tests/test_mediatypes.py::test_quality_none_matches[*/json; q=0.2, application/json-application/msgpack] PASSED [ 50%] tests/test_mediatypes.py::test_quality_none_matches[text/x-python, image/*; q=0.33, text/plain; format=fixed-text/plain; format=flowed] PASSED [ 50%] tests/test_mediatypes.py::test_best_match[media_types0-application/json-application/json] PASSED [ 51%] tests/test_mediatypes.py::test_best_match[media_types1-application/json; charset=utf-8-application/json] PASSED [ 51%] tests/test_mediatypes.py::test_best_match[media_types2-application/json, */*; q=0.2-application/json] PASSED [ 51%] tests/test_mediatypes.py::test_best_match_none_matches[media_types0-application/yaml] PASSED [ 51%] tests/test_mediatypes.py::test_best_match_none_matches[media_types1-video/mp3] PASSED [ 51%] tests/test_mediatypes.py::test_best_match_none_matches[media_types2-falcon/peregrine; speed=average] PASSED [ 51%] tests/test_mediatypes.py::test_best_match_none_matches[media_types3-text/x-python] PASSED [ 51%] tests/test_mediatypes.py::test_best_match_none_matches[media_types4-application/msgpack] PASSED [ 51%] tests/test_mediatypes.py::test_best_match_none_matches[media_types5-text/plain; format=flowed] PASSED [ 51%] tests/test_mediatypes.py::test_best_match_none_matches[media_types6-application/xml, text/*; q=0.7] PASSED [ 51%] tests/test_mediatypes.py::test_best_match_none_matches[media_types7-falcon/peregrine; load=heavy] PASSED [ 51%] tests/test_mediatypes.py::test_invalid_media_type[] PASSED [ 51%] tests/test_mediatypes.py::test_invalid_media_type[word document] PASSED [ 51%] tests/test_mediatypes.py::test_invalid_media_type[text] PASSED [ 51%] tests/test_mediatypes.py::test_invalid_media_range[] PASSED [ 51%] tests/test_mediatypes.py::test_invalid_media_range[word document] PASSED [ 51%] tests/test_mediatypes.py::test_invalid_media_range[text] PASSED [ 51%] tests/test_mediatypes.py::test_invalid_media_range[text/plain; q=high] PASSED [ 51%] tests/test_mediatypes.py::test_invalid_media_range[*/*; q=inf] PASSED [ 51%] tests/test_mediatypes.py::test_invalid_media_range[*/*; q=-inf] PASSED [ 51%] tests/test_mediatypes.py::test_invalid_media_range[*/*; q=nan] PASSED [ 51%] tests/test_mediatypes.py::test_invalid_media_range[application/very-important; q=1337.0] PASSED [ 51%] tests/test_mediatypes.py::test_empty_media_types[media_types0-*/*] PASSED [ 51%] tests/test_mediatypes.py::test_empty_media_types[media_types0-application/xml, text/*; q=0.7, */*; q=0.3] PASSED [ 51%] tests/test_mediatypes.py::test_empty_media_types[media_types1-*/*] PASSED [ 51%] tests/test_mediatypes.py::test_empty_media_types[media_types1-application/xml, text/*; q=0.7, */*; q=0.3] PASSED [ 51%] tests/test_mediatypes.py::test_empty_media_types[media_types2-*/*] PASSED [ 51%] tests/test_mediatypes.py::test_empty_media_types[media_types2-application/xml, text/*; q=0.7, */*; q=0.3] PASSED [ 51%] tests/test_mediatypes.py::test_empty_media_types[_generate_strings-*/*] PASSED [ 51%] tests/test_mediatypes.py::test_empty_media_types[_generate_strings-application/xml, text/*; q=0.7, */*; q=0.3] PASSED [ 51%] tests/test_middleware.py::TestRequestTimeMiddleware::test_skip_process_resource[asgi] PASSED [ 51%] tests/test_middleware.py::TestRequestTimeMiddleware::test_skip_process_resource[wsgi] PASSED [ 51%] tests/test_middleware.py::TestRequestTimeMiddleware::test_add_invalid_middleware[asgi] PASSED [ 51%] tests/test_middleware.py::TestRequestTimeMiddleware::test_add_invalid_middleware[wsgi] PASSED [ 51%] tests/test_middleware.py::TestRequestTimeMiddleware::test_response_middleware_raises_exception[asgi] PASSED [ 51%] tests/test_middleware.py::TestRequestTimeMiddleware::test_response_middleware_raises_exception[wsgi] PASSED [ 51%] tests/test_middleware.py::TestRequestTimeMiddleware::test_log_get_request[asgi-True] PASSED [ 51%] tests/test_middleware.py::TestRequestTimeMiddleware::test_log_get_request[asgi-False] PASSED [ 51%] tests/test_middleware.py::TestRequestTimeMiddleware::test_log_get_request[wsgi-True] PASSED [ 51%] tests/test_middleware.py::TestRequestTimeMiddleware::test_log_get_request[wsgi-False] PASSED [ 52%] tests/test_middleware.py::TestTransactionIdMiddleware::test_generate_trans_id_with_request[asgi] PASSED [ 52%] tests/test_middleware.py::TestTransactionIdMiddleware::test_generate_trans_id_with_request[wsgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_generate_trans_id_and_time_with_request[asgi-True] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_generate_trans_id_and_time_with_request[asgi-False] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_generate_trans_id_and_time_with_request[wsgi-True] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_generate_trans_id_and_time_with_request[wsgi-False] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_legacy_middleware_called_with_correct_args[asgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_legacy_middleware_called_with_correct_args[wsgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_middleware_execution_order[asgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_middleware_execution_order[wsgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_independent_middleware_execution_order[asgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_independent_middleware_execution_order[wsgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_multiple_response_mw_throw_exception[asgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_multiple_response_mw_throw_exception[wsgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_inner_mw_throw_exception[asgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_inner_mw_throw_exception[wsgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_inner_mw_throw_exception_while_processing_resp[asgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_inner_mw_throw_exception_while_processing_resp[wsgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_inner_mw_with_ex_handler_throw_exception[asgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_inner_mw_with_ex_handler_throw_exception[wsgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_outer_mw_with_ex_handler_throw_exception[asgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_outer_mw_with_ex_handler_throw_exception[wsgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_order_mw_executed_when_exception_in_resp[asgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_order_mw_executed_when_exception_in_resp[wsgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_order_independent_mw_executed_when_exception_in_resp[asgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_order_independent_mw_executed_when_exception_in_resp[wsgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_order_mw_executed_when_exception_in_req[asgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_order_mw_executed_when_exception_in_req[wsgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_order_independent_mw_executed_when_exception_in_req[asgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_order_independent_mw_executed_when_exception_in_req[wsgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_order_mw_executed_when_exception_in_rsrc[asgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_order_mw_executed_when_exception_in_rsrc[wsgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_order_independent_mw_executed_when_exception_in_rsrc[asgi] PASSED [ 52%] tests/test_middleware.py::TestSeveralMiddlewares::test_order_independent_mw_executed_when_exception_in_rsrc[wsgi] PASSED [ 52%] tests/test_middleware.py::TestRemoveBasePathMiddleware::test_base_path_is_removed_before_routing[asgi] PASSED [ 52%] tests/test_middleware.py::TestRemoveBasePathMiddleware::test_base_path_is_removed_before_routing[wsgi] PASSED [ 52%] tests/test_middleware.py::TestResourceMiddleware::test_can_access_resource_params[asgi-True] PASSED [ 52%] tests/test_middleware.py::TestResourceMiddleware::test_can_access_resource_params[asgi-False] PASSED [ 52%] tests/test_middleware.py::TestResourceMiddleware::test_can_access_resource_params[wsgi-True] PASSED [ 53%] tests/test_middleware.py::TestResourceMiddleware::test_can_access_resource_params[wsgi-False] PASSED [ 53%] tests/test_middleware.py::TestEmptySignatureMiddleware::test_dont_need_params_in_signature[asgi] PASSED [ 53%] tests/test_middleware.py::TestEmptySignatureMiddleware::test_dont_need_params_in_signature[wsgi] PASSED [ 53%] tests/test_middleware.py::TestErrorHandling::test_error_composed_before_resp_middleware_called[asgi] PASSED [ 53%] tests/test_middleware.py::TestErrorHandling::test_error_composed_before_resp_middleware_called[wsgi] PASSED [ 53%] tests/test_middleware.py::TestErrorHandling::test_http_status_raised_from_error_handler[asgi] PASSED [ 53%] tests/test_middleware.py::TestErrorHandling::test_http_status_raised_from_error_handler[wsgi] PASSED [ 53%] tests/test_middleware.py::TestShortCircuiting::test_process_request_not_cached[asgi] PASSED [ 53%] tests/test_middleware.py::TestShortCircuiting::test_process_request_not_cached[wsgi] PASSED [ 53%] tests/test_middleware.py::TestShortCircuiting::test_process_request_cached[asgi-True] PASSED [ 53%] tests/test_middleware.py::TestShortCircuiting::test_process_request_cached[asgi-False] PASSED [ 53%] tests/test_middleware.py::TestShortCircuiting::test_process_request_cached[wsgi-True] PASSED [ 53%] tests/test_middleware.py::TestShortCircuiting::test_process_request_cached[wsgi-False] PASSED [ 53%] tests/test_middleware.py::TestShortCircuiting::test_process_resource_cached[asgi-True] PASSED [ 53%] tests/test_middleware.py::TestShortCircuiting::test_process_resource_cached[asgi-False] PASSED [ 53%] tests/test_middleware.py::TestShortCircuiting::test_process_resource_cached[wsgi-True] PASSED [ 53%] tests/test_middleware.py::TestShortCircuiting::test_process_resource_cached[wsgi-False] PASSED [ 53%] tests/test_middleware.py::TestCORSMiddlewareWithAnotherMiddleware::test_api_initialization_with_cors_enabled_and_middleware_param[asgi-mw0-True] PASSED [ 53%] tests/test_middleware.py::TestCORSMiddlewareWithAnotherMiddleware::test_api_initialization_with_cors_enabled_and_middleware_param[asgi-mw1-True] PASSED [ 53%] tests/test_middleware.py::TestCORSMiddlewareWithAnotherMiddleware::test_api_initialization_with_cors_enabled_and_middleware_param[asgi-mw2-True] PASSED [ 53%] tests/test_middleware.py::TestCORSMiddlewareWithAnotherMiddleware::test_api_initialization_with_cors_enabled_and_middleware_param[asgi-mw3-True] PASSED [ 53%] tests/test_middleware.py::TestCORSMiddlewareWithAnotherMiddleware::test_api_initialization_with_cors_enabled_and_middleware_param[asgi-mw4-False] PASSED [ 53%] tests/test_middleware.py::TestCORSMiddlewareWithAnotherMiddleware::test_api_initialization_with_cors_enabled_and_middleware_param[asgi-mw5-False] PASSED [ 53%] tests/test_middleware.py::TestCORSMiddlewareWithAnotherMiddleware::test_api_initialization_with_cors_enabled_and_middleware_param[wsgi-mw0-True] PASSED [ 53%] tests/test_middleware.py::TestCORSMiddlewareWithAnotherMiddleware::test_api_initialization_with_cors_enabled_and_middleware_param[wsgi-mw1-True] PASSED [ 53%] tests/test_middleware.py::TestCORSMiddlewareWithAnotherMiddleware::test_api_initialization_with_cors_enabled_and_middleware_param[wsgi-mw2-True] PASSED [ 53%] tests/test_middleware.py::TestCORSMiddlewareWithAnotherMiddleware::test_api_initialization_with_cors_enabled_and_middleware_param[wsgi-mw3-True] PASSED [ 53%] tests/test_middleware.py::TestCORSMiddlewareWithAnotherMiddleware::test_api_initialization_with_cors_enabled_and_middleware_param[wsgi-mw4-False] PASSED [ 53%] tests/test_middleware.py::TestCORSMiddlewareWithAnotherMiddleware::test_api_initialization_with_cors_enabled_and_middleware_param[wsgi-mw5-False] PASSED [ 53%] tests/test_middleware.py::test_async_postfix_method_must_be_coroutine SKIPPED [ 53%] tests/test_options.py::TestRequestOptions::test_option_defaults PASSED [ 53%] tests/test_options.py::TestRequestOptions::test_options_toggle[keep_blank_qs_values] PASSED [ 53%] tests/test_options.py::TestRequestOptions::test_options_toggle[auto_parse_form_urlencoded] PASSED [ 53%] tests/test_options.py::TestRequestOptions::test_options_toggle[auto_parse_qs_csv] PASSED [ 53%] tests/test_options.py::TestRequestOptions::test_options_toggle[strip_url_path_trailing_slash] PASSED [ 53%] tests/test_options.py::TestRequestOptions::test_incorrect_options PASSED [ 53%] tests/test_python_version_requirements.py::test_asgi PASSED [ 53%] tests/test_query_params.py::TestQueryParams::test_none[simulate_request_get_query_params-asgi] PASSED [ 53%] tests/test_query_params.py::TestQueryParams::test_none[simulate_request_get_query_params-wsgi] PASSED [ 53%] tests/test_query_params.py::TestQueryParams::test_default[simulate_request_get_query_params-asgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_default[simulate_request_get_query_params-wsgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_blank[simulate_request_get_query_params-asgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_blank[simulate_request_get_query_params-wsgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_simple[simulate_request_get_query_params-asgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_simple[simulate_request_get_query_params-wsgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_percent_encoded[simulate_request_get_query_params-asgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_percent_encoded[simulate_request_get_query_params-wsgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_simple_false[simulate_request_get_query_params-asgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_simple_false[simulate_request_get_query_params-wsgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_simple_true[simulate_request_get_query_params-asgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_simple_true[simulate_request_get_query_params-wsgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_false[simulate_request_get_query_params-asgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_false[simulate_request_get_query_params-wsgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_get_query_params-asgi-t=1&t=3,4-False-expected0] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_get_query_params-asgi-t=1&t=2&t=3,4-False-expected1] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_get_query_params-asgi-t=1,2&t=3,4-False-expected2] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_get_query_params-asgi-t=1,,2&t=3,4-False-expected3] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_get_query_params-asgi-t=1,,2&t=3,4-True-expected4] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_get_query_params-asgi-t=1,2&t=3,4,,5-False-expected5] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_get_query_params-asgi-t=1&t=,1,4,,5-False-expected6] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_get_query_params-asgi-t=1&t=,1,4,,5-True-expected7] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_get_query_params-asgi-t=1&t=,1,4,,5&t=a,b,c-True-expected8] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_get_query_params-wsgi-t=1&t=3,4-False-expected0] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_get_query_params-wsgi-t=1&t=2&t=3,4-False-expected1] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_get_query_params-wsgi-t=1,2&t=3,4-False-expected2] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_get_query_params-wsgi-t=1,,2&t=3,4-False-expected3] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_get_query_params-wsgi-t=1,,2&t=3,4-True-expected4] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_get_query_params-wsgi-t=1,2&t=3,4,,5-False-expected5] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_get_query_params-wsgi-t=1&t=,1,4,,5-False-expected6] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_get_query_params-wsgi-t=1&t=,1,4,,5-True-expected7] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_get_query_params-wsgi-t=1&t=,1,4,,5&t=a,b,c-True-expected8] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_complex_false[simulate_request_get_query_params-asgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_complex_false[simulate_request_get_query_params-wsgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_default_auto_parse_csv_behaviour[simulate_request_get_query_params-asgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_default_auto_parse_csv_behaviour[simulate_request_get_query_params-wsgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_bad_percentage[simulate_request_get_query_params-asgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_bad_percentage[simulate_request_get_query_params-wsgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_allowed_names[simulate_request_get_query_params-asgi] PASSED [ 54%] tests/test_query_params.py::TestQueryParams::test_allowed_names[simulate_request_get_query_params-wsgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_get_query_params-asgi-get_param] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_get_query_params-asgi-get_param_as_int] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_get_query_params-asgi-get_param_as_float] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_get_query_params-asgi-get_param_as_uuid] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_get_query_params-asgi-get_param_as_bool] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_get_query_params-asgi-get_param_as_list] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_get_query_params-wsgi-get_param] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_get_query_params-wsgi-get_param_as_int] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_get_query_params-wsgi-get_param_as_float] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_get_query_params-wsgi-get_param_as_uuid] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_get_query_params-wsgi-get_param_as_bool] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_get_query_params-wsgi-get_param_as_list] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_int[simulate_request_get_query_params-asgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_int[simulate_request_get_query_params-wsgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_int_neg[simulate_request_get_query_params-asgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_int_neg[simulate_request_get_query_params-wsgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_float[simulate_request_get_query_params-asgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_float[simulate_request_get_query_params-wsgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_float_neg[simulate_request_get_query_params-asgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_float_neg[simulate_request_get_query_params-wsgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_uuid[simulate_request_get_query_params-asgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_uuid[simulate_request_get_query_params-wsgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_boolean[simulate_request_get_query_params-asgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_boolean[simulate_request_get_query_params-wsgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_boolean_blank[simulate_request_get_query_params-asgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_boolean_blank[simulate_request_get_query_params-wsgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_list_type[simulate_request_get_query_params-asgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_list_type[simulate_request_get_query_params-wsgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_list_type_blank[simulate_request_get_query_params-asgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_list_type_blank[simulate_request_get_query_params-wsgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_list_transformer[simulate_request_get_query_params-asgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_list_transformer[simulate_request_get_query_params-wsgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_param_property[simulate_request_get_query_params-asgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_param_property[simulate_request_get_query_params-wsgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_multiple_form_keys[simulate_request_get_query_params-asgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_multiple_form_keys[simulate_request_get_query_params-wsgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_multiple_keys_as_bool[simulate_request_get_query_params-asgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_multiple_keys_as_bool[simulate_request_get_query_params-wsgi] PASSED [ 55%] tests/test_query_params.py::TestQueryParams::test_multiple_keys_as_int[simulate_request_get_query_params-asgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_multiple_keys_as_int[simulate_request_get_query_params-wsgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_multiple_keys_as_float[simulate_request_get_query_params-asgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_multiple_keys_as_float[simulate_request_get_query_params-wsgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_multiple_form_keys_as_list[simulate_request_get_query_params-asgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_multiple_form_keys_as_list[simulate_request_get_query_params-wsgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_date_valid[simulate_request_get_query_params-asgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_date_valid[simulate_request_get_query_params-wsgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_date_missing_param[simulate_request_get_query_params-asgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_date_missing_param[simulate_request_get_query_params-wsgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_date_valid_with_format[simulate_request_get_query_params-asgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_date_valid_with_format[simulate_request_get_query_params-wsgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_date_store[simulate_request_get_query_params-asgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_date_store[simulate_request_get_query_params-wsgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_date_invalid[simulate_request_get_query_params-asgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_date_invalid[simulate_request_get_query_params-wsgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_datetime_valid[simulate_request_get_query_params-asgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_datetime_valid[simulate_request_get_query_params-wsgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_datetime_missing_param[simulate_request_get_query_params-asgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_datetime_missing_param[simulate_request_get_query_params-wsgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_datetime_valid_with_format[simulate_request_get_query_params-asgi-%Y%m%d %H:%M:%S-20150420 10:10:10-expected0] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_datetime_valid_with_format[simulate_request_get_query_params-asgi-%Y-%m-%dT%H:%M:%SZ-2015-04-20T10:10:10Z-expected1] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_datetime_valid_with_format[simulate_request_get_query_params-asgi-%Y%m%dT%H:%M:%S.%fZ-20150420T10:10:10.133701Z-expected2] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_datetime_valid_with_format[simulate_request_get_query_params-wsgi-%Y%m%d %H:%M:%S-20150420 10:10:10-expected0] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_datetime_valid_with_format[simulate_request_get_query_params-wsgi-%Y-%m-%dT%H:%M:%SZ-2015-04-20T10:10:10Z-expected1] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_datetime_valid_with_format[simulate_request_get_query_params-wsgi-%Y%m%dT%H:%M:%S.%fZ-20150420T10:10:10.133701Z-expected2] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_datetime_store[simulate_request_get_query_params-asgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_datetime_store[simulate_request_get_query_params-wsgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_datetime_invalid[simulate_request_get_query_params-asgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_datetime_invalid[simulate_request_get_query_params-wsgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_dict_valid[simulate_request_get_query_params-asgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_dict_valid[simulate_request_get_query_params-wsgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_dict_missing_param[simulate_request_get_query_params-asgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_dict_missing_param[simulate_request_get_query_params-wsgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_dict_store[simulate_request_get_query_params-asgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_dict_store[simulate_request_get_query_params-wsgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_dict_invalid[simulate_request_get_query_params-asgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_get_dict_invalid[simulate_request_get_query_params-wsgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_has_param[simulate_request_get_query_params-asgi] PASSED [ 56%] tests/test_query_params.py::TestQueryParams::test_has_param[simulate_request_get_query_params-wsgi] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_none[simulate_request_post_query_params-asgi] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_none[simulate_request_post_query_params-wsgi] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_default[simulate_request_post_query_params-asgi] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_default[simulate_request_post_query_params-wsgi] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_blank[simulate_request_post_query_params-asgi] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_blank[simulate_request_post_query_params-wsgi] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_simple[simulate_request_post_query_params-asgi] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_simple[simulate_request_post_query_params-wsgi] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_percent_encoded[simulate_request_post_query_params-asgi] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_percent_encoded[simulate_request_post_query_params-wsgi] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_simple_false[simulate_request_post_query_params-asgi] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_simple_false[simulate_request_post_query_params-wsgi] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_simple_true[simulate_request_post_query_params-asgi] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_simple_true[simulate_request_post_query_params-wsgi] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_false[simulate_request_post_query_params-asgi] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_false[simulate_request_post_query_params-wsgi] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_post_query_params-asgi-t=1&t=3,4-False-expected0] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_post_query_params-asgi-t=1&t=2&t=3,4-False-expected1] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_post_query_params-asgi-t=1,2&t=3,4-False-expected2] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_post_query_params-asgi-t=1,,2&t=3,4-False-expected3] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_post_query_params-asgi-t=1,,2&t=3,4-True-expected4] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_post_query_params-asgi-t=1,2&t=3,4,,5-False-expected5] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_post_query_params-asgi-t=1&t=,1,4,,5-False-expected6] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_post_query_params-asgi-t=1&t=,1,4,,5-True-expected7] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_post_query_params-asgi-t=1&t=,1,4,,5&t=a,b,c-True-expected8] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_post_query_params-wsgi-t=1&t=3,4-False-expected0] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_post_query_params-wsgi-t=1&t=2&t=3,4-False-expected1] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_post_query_params-wsgi-t=1,2&t=3,4-False-expected2] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_post_query_params-wsgi-t=1,,2&t=3,4-False-expected3] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_post_query_params-wsgi-t=1,,2&t=3,4-True-expected4] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_post_query_params-wsgi-t=1,2&t=3,4,,5-False-expected5] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_post_query_params-wsgi-t=1&t=,1,4,,5-False-expected6] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_post_query_params-wsgi-t=1&t=,1,4,,5-True-expected7] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_multiple_fields_true[simulate_request_post_query_params-wsgi-t=1&t=,1,4,,5&t=a,b,c-True-expected8] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_complex_false[simulate_request_post_query_params-asgi] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_option_auto_parse_qs_csv_complex_false[simulate_request_post_query_params-wsgi] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_default_auto_parse_csv_behaviour[simulate_request_post_query_params-asgi] SKIPPED [ 57%] tests/test_query_params.py::TestQueryParams::test_default_auto_parse_csv_behaviour[simulate_request_post_query_params-wsgi] PASSED [ 57%] tests/test_query_params.py::TestQueryParams::test_bad_percentage[simulate_request_post_query_params-asgi] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_bad_percentage[simulate_request_post_query_params-wsgi] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_allowed_names[simulate_request_post_query_params-asgi] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_allowed_names[simulate_request_post_query_params-wsgi] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_post_query_params-asgi-get_param] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_post_query_params-asgi-get_param_as_int] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_post_query_params-asgi-get_param_as_float] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_post_query_params-asgi-get_param_as_uuid] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_post_query_params-asgi-get_param_as_bool] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_post_query_params-asgi-get_param_as_list] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_post_query_params-wsgi-get_param] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_post_query_params-wsgi-get_param_as_int] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_post_query_params-wsgi-get_param_as_float] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_post_query_params-wsgi-get_param_as_uuid] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_post_query_params-wsgi-get_param_as_bool] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_required[simulate_request_post_query_params-wsgi-get_param_as_list] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_int[simulate_request_post_query_params-asgi] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_int[simulate_request_post_query_params-wsgi] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_int_neg[simulate_request_post_query_params-asgi] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_int_neg[simulate_request_post_query_params-wsgi] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_float[simulate_request_post_query_params-asgi] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_float[simulate_request_post_query_params-wsgi] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_float_neg[simulate_request_post_query_params-asgi] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_float_neg[simulate_request_post_query_params-wsgi] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_uuid[simulate_request_post_query_params-asgi] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_uuid[simulate_request_post_query_params-wsgi] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_boolean[simulate_request_post_query_params-asgi] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_boolean[simulate_request_post_query_params-wsgi] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_boolean_blank[simulate_request_post_query_params-asgi] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_boolean_blank[simulate_request_post_query_params-wsgi] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_list_type[simulate_request_post_query_params-asgi] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_list_type[simulate_request_post_query_params-wsgi] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_list_type_blank[simulate_request_post_query_params-asgi] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_list_type_blank[simulate_request_post_query_params-wsgi] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_list_transformer[simulate_request_post_query_params-asgi] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_list_transformer[simulate_request_post_query_params-wsgi] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_param_property[simulate_request_post_query_params-asgi] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_param_property[simulate_request_post_query_params-wsgi] PASSED [ 58%] tests/test_query_params.py::TestQueryParams::test_multiple_form_keys[simulate_request_post_query_params-asgi] SKIPPED [ 58%] tests/test_query_params.py::TestQueryParams::test_multiple_form_keys[simulate_request_post_query_params-wsgi] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_multiple_keys_as_bool[simulate_request_post_query_params-asgi] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_multiple_keys_as_bool[simulate_request_post_query_params-wsgi] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_multiple_keys_as_int[simulate_request_post_query_params-asgi] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_multiple_keys_as_int[simulate_request_post_query_params-wsgi] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_multiple_keys_as_float[simulate_request_post_query_params-asgi] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_multiple_keys_as_float[simulate_request_post_query_params-wsgi] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_multiple_form_keys_as_list[simulate_request_post_query_params-asgi] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_multiple_form_keys_as_list[simulate_request_post_query_params-wsgi] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_date_valid[simulate_request_post_query_params-asgi] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_date_valid[simulate_request_post_query_params-wsgi] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_date_missing_param[simulate_request_post_query_params-asgi] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_date_missing_param[simulate_request_post_query_params-wsgi] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_date_valid_with_format[simulate_request_post_query_params-asgi] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_date_valid_with_format[simulate_request_post_query_params-wsgi] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_date_store[simulate_request_post_query_params-asgi] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_date_store[simulate_request_post_query_params-wsgi] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_date_invalid[simulate_request_post_query_params-asgi] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_date_invalid[simulate_request_post_query_params-wsgi] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_datetime_valid[simulate_request_post_query_params-asgi] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_datetime_valid[simulate_request_post_query_params-wsgi] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_datetime_missing_param[simulate_request_post_query_params-asgi] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_datetime_missing_param[simulate_request_post_query_params-wsgi] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_datetime_valid_with_format[simulate_request_post_query_params-asgi-%Y%m%d %H:%M:%S-20150420 10:10:10-expected0] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_datetime_valid_with_format[simulate_request_post_query_params-asgi-%Y-%m-%dT%H:%M:%SZ-2015-04-20T10:10:10Z-expected1] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_datetime_valid_with_format[simulate_request_post_query_params-asgi-%Y%m%dT%H:%M:%S.%fZ-20150420T10:10:10.133701Z-expected2] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_datetime_valid_with_format[simulate_request_post_query_params-wsgi-%Y%m%d %H:%M:%S-20150420 10:10:10-expected0] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_datetime_valid_with_format[simulate_request_post_query_params-wsgi-%Y-%m-%dT%H:%M:%SZ-2015-04-20T10:10:10Z-expected1] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_datetime_valid_with_format[simulate_request_post_query_params-wsgi-%Y%m%dT%H:%M:%S.%fZ-20150420T10:10:10.133701Z-expected2] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_datetime_store[simulate_request_post_query_params-asgi] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_datetime_store[simulate_request_post_query_params-wsgi] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_datetime_invalid[simulate_request_post_query_params-asgi] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_datetime_invalid[simulate_request_post_query_params-wsgi] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_dict_valid[simulate_request_post_query_params-asgi] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_dict_valid[simulate_request_post_query_params-wsgi] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_dict_missing_param[simulate_request_post_query_params-asgi] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_dict_missing_param[simulate_request_post_query_params-wsgi] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_dict_store[simulate_request_post_query_params-asgi] SKIPPED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_dict_store[simulate_request_post_query_params-wsgi] PASSED [ 59%] tests/test_query_params.py::TestQueryParams::test_get_dict_invalid[simulate_request_post_query_params-asgi] SKIPPED [ 60%] tests/test_query_params.py::TestQueryParams::test_get_dict_invalid[simulate_request_post_query_params-wsgi] PASSED [ 60%] tests/test_query_params.py::TestQueryParams::test_has_param[simulate_request_post_query_params-asgi] SKIPPED [ 60%] tests/test_query_params.py::TestQueryParams::test_has_param[simulate_request_post_query_params-wsgi] PASSED [ 60%] tests/test_query_params.py::TestQueryParams::test_get_param_as_json_handler_json[asgi] PASSED [ 60%] tests/test_query_params.py::TestQueryParams::test_get_param_as_json_handler_json[wsgi] PASSED [ 60%] tests/test_query_params.py::TestQueryParams::test_get_param_as_json_no_handler_json[asgi] PASSED [ 60%] tests/test_query_params.py::TestQueryParams::test_get_param_as_json_no_handler_json[wsgi] PASSED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_http_methods_body_expected[asgi-POST] SKIPPED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_http_methods_body_expected[asgi-PUT] SKIPPED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_http_methods_body_expected[asgi-PATCH] SKIPPED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_http_methods_body_expected[asgi-DELETE] SKIPPED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_http_methods_body_expected[asgi-OPTIONS] SKIPPED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_http_methods_body_expected[wsgi-POST] PASSED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_http_methods_body_expected[wsgi-PUT] PASSED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_http_methods_body_expected[wsgi-PATCH] PASSED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_http_methods_body_expected[wsgi-DELETE] PASSED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_http_methods_body_expected[wsgi-OPTIONS] PASSED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_http_methods_body_not_expected[asgi-GET] SKIPPED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_http_methods_body_not_expected[asgi-HEAD] SKIPPED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_http_methods_body_not_expected[wsgi-GET] PASSED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_http_methods_body_not_expected[wsgi-HEAD] PASSED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_non_ascii[asgi] SKIPPED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_non_ascii[wsgi] PASSED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_empty_body[asgi] SKIPPED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_empty_body[wsgi] PASSED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_empty_body_no_content_length[asgi] SKIPPED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_empty_body_no_content_length[wsgi] PASSED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_explicitly_disable_auto_parse[asgi] SKIPPED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_explicitly_disable_auto_parse[wsgi] PASSED [ 60%] tests/test_query_params.py::TestPostQueryParams::test_asgi_raises_error PASSED [ 60%] tests/test_query_params.py::TestPostQueryParamsDefaultBehavior::test_dont_auto_parse_by_default[asgi] PASSED [ 60%] tests/test_query_params.py::TestPostQueryParamsDefaultBehavior::test_dont_auto_parse_by_default[wsgi] PASSED [ 60%] tests/test_recipes.py::TestMultipartMixed::test_parse PASSED [ 60%] tests/test_recipes.py::TestOutputCSV::test_csv_output[asgi-simple] PASSED [ 60%] tests/test_recipes.py::TestOutputCSV::test_csv_output[asgi-stream] PASSED [ 60%] tests/test_recipes.py::TestOutputCSV::test_csv_output[wsgi-simple] PASSED [ 60%] tests/test_recipes.py::TestOutputCSV::test_csv_output[wsgi-stream] PASSED [ 60%] tests/test_recipes.py::TestPrettyJSON::test_optional_indent PASSED [ 60%] tests/test_recipes.py::TestRawURLPath::test_raw_path[asgi] PASSED [ 60%] tests/test_recipes.py::TestRawURLPath::test_raw_path[wsgi] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect[asgi-GET-301 Moved Permanently-/moved/perm] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect[asgi-POST-302 Found-/found] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect[asgi-PUT-303 See Other-/see/other] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect[asgi-DELETE-307 Temporary Redirect-/tmp/redirect] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect[asgi-HEAD-308 Permanent Redirect-/perm/redirect] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect[wsgi-GET-301 Moved Permanently-/moved/perm] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect[wsgi-POST-302 Found-/found] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect[wsgi-PUT-303 See Other-/see/other] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect[wsgi-DELETE-307 Temporary Redirect-/tmp/redirect] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect[wsgi-HEAD-308 Permanent Redirect-/perm/redirect] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect_with_headers[asgi-GET-301 Moved Permanently-/moved/perm] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect_with_headers[asgi-POST-302 Found-/found] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect_with_headers[asgi-PUT-303 See Other-/see/other] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect_with_headers[asgi-DELETE-307 Temporary Redirect-/tmp/redirect] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect_with_headers[asgi-HEAD-308 Permanent Redirect-/perm/redirect] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect_with_headers[wsgi-GET-301 Moved Permanently-/moved/perm] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect_with_headers[wsgi-POST-302 Found-/found] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect_with_headers[wsgi-PUT-303 See Other-/see/other] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect_with_headers[wsgi-DELETE-307 Temporary Redirect-/tmp/redirect] PASSED [ 61%] tests/test_redirects.py::TestRedirects::test_redirect_with_headers[wsgi-HEAD-308 Permanent Redirect-/perm/redirect] PASSED [ 61%] tests/test_request_access_route.py::test_remote_addr_default[asgi] PASSED [ 61%] tests/test_request_access_route.py::test_remote_addr_default[wsgi] PASSED [ 61%] tests/test_request_access_route.py::test_remote_addr_non_default[asgi] PASSED [ 61%] tests/test_request_access_route.py::test_remote_addr_non_default[wsgi] PASSED [ 61%] tests/test_request_access_route.py::test_remote_addr_only[asgi] PASSED [ 61%] tests/test_request_access_route.py::test_remote_addr_only[wsgi] PASSED [ 61%] tests/test_request_access_route.py::test_rfc_forwarded[asgi] PASSED [ 61%] tests/test_request_access_route.py::test_rfc_forwarded[wsgi] PASSED [ 61%] tests/test_request_access_route.py::test_malformed_rfc_forwarded[asgi] PASSED [ 61%] tests/test_request_access_route.py::test_malformed_rfc_forwarded[wsgi] PASSED [ 61%] tests/test_request_access_route.py::test_x_forwarded_for[asgi-True] PASSED [ 61%] tests/test_request_access_route.py::test_x_forwarded_for[asgi-False] PASSED [ 61%] tests/test_request_access_route.py::test_x_forwarded_for[wsgi-True] PASSED [ 61%] tests/test_request_access_route.py::test_x_forwarded_for[wsgi-False] PASSED [ 61%] tests/test_request_access_route.py::test_x_real_ip[asgi] PASSED [ 61%] tests/test_request_access_route.py::test_x_real_ip[wsgi] PASSED [ 61%] tests/test_request_access_route.py::test_remote_addr[asgi-10.0.0.1] PASSED [ 61%] tests/test_request_access_route.py::test_remote_addr[asgi-98.245.211.177] PASSED [ 61%] tests/test_request_access_route.py::test_remote_addr[wsgi-10.0.0.1] PASSED [ 62%] tests/test_request_access_route.py::test_remote_addr[wsgi-98.245.211.177] PASSED [ 62%] tests/test_request_access_route.py::test_remote_addr_missing PASSED [ 62%] tests/test_request_attrs.py::test_missing_qs PASSED [ 62%] tests/test_request_attrs.py::test_app_missing PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_empty[asgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_empty[wsgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_host[asgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_host[wsgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_subdomain[asgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_subdomain[wsgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_reconstruct_url[asgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_reconstruct_url[wsgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_nonlatin_path[asgi-/hello_\u043f\u0440\u0438\u0432\u0435\u0442] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_nonlatin_path[asgi-/test/%E5%BB%B6%E5%AE%89] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_nonlatin_path[asgi-/test/%C3%A4%C3%B6%C3%BC%C3%9F%E2%82%AC] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_nonlatin_path[wsgi-/hello_\u043f\u0440\u0438\u0432\u0435\u0442] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_nonlatin_path[wsgi-/test/%E5%BB%B6%E5%AE%89] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_nonlatin_path[wsgi-/test/%C3%A4%C3%B6%C3%BC%C3%9F%E2%82%AC] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_uri[asgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_uri[wsgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_uri_https[asgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_uri_https[wsgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_uri_http_1_0[asgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_uri_http_1_0[wsgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_relative_uri[asgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_relative_uri[wsgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_client_accepts[asgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_client_accepts[wsgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_client_accepts_bogus[asgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_client_accepts_bogus[wsgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_client_accepts_props[asgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_client_accepts_props[wsgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_client_prefers[asgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_client_prefers[wsgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_range[asgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_range[wsgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_range_unit[asgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_range_unit[wsgi] PASSED [ 62%] tests/test_request_attrs.py::TestRequestAttributes::test_range_invalid[asgi] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_range_invalid[wsgi] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_missing_attribute_header[asgi] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_missing_attribute_header[wsgi] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_content_length[asgi] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_content_length[wsgi] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_bogus_content_length_nan[asgi] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_bogus_content_length_nan[wsgi] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_bogus_content_length_neg[asgi] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_bogus_content_length_neg[wsgi] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_date[asgi-Date-date] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_date[asgi-If-Modified-Since-if_modified_since] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_date[asgi-If-Unmodified-Since-if_unmodified_since] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_date[wsgi-Date-date] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_date[wsgi-If-Modified-Since-if_modified_since] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_date[wsgi-If-Unmodified-Since-if_unmodified_since] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_date_invalid[asgi-Date-date] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_date_invalid[asgi-If-Modified-Since-if_modified_since] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_date_invalid[asgi-If-Unmodified-Since-if_unmodified_since] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_date_invalid[wsgi-Date-date] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_date_invalid[wsgi-If-Modified-Since-if_modified_since] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_date_invalid[wsgi-If-Unmodified-Since-if_unmodified_since] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_date_missing[asgi-date] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_date_missing[asgi-if_modified_since] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_date_missing[asgi-if_unmodified_since] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_date_missing[wsgi-date] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_date_missing[wsgi-if_modified_since] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_date_missing[wsgi-if_unmodified_since] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_attribute_headers[asgi-Accept-x-falcon-accept-*/*] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_attribute_headers[asgi-Authorization-HMAC_SHA1 c590afa9bb59191ffab30f223791e82d3fd3e3af-auth-None] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_attribute_headers[asgi-Content-Type-text/plain-content_type-None] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_attribute_headers[asgi-Expect-100-continue-expect-None] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_attribute_headers[asgi-If-Range-Wed, 21 Oct 2015 07:28:00 GMT-if_range-None] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_attribute_headers[asgi-User-Agent-testing/3.0-user_agent-falcon-client/4.0.2] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_attribute_headers[asgi-Referer-https://www.google.com/-referer-None] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_attribute_headers[wsgi-Accept-x-falcon-accept-*/*] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_attribute_headers[wsgi-Authorization-HMAC_SHA1 c590afa9bb59191ffab30f223791e82d3fd3e3af-auth-None] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_attribute_headers[wsgi-Content-Type-text/plain-content_type-None] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_attribute_headers[wsgi-Expect-100-continue-expect-None] PASSED [ 63%] tests/test_request_attrs.py::TestRequestAttributes::test_attribute_headers[wsgi-If-Range-Wed, 21 Oct 2015 07:28:00 GMT-if_range-None] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_attribute_headers[wsgi-User-Agent-testing/3.0-user_agent-falcon-client/4.0.2] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_attribute_headers[wsgi-Referer-https://www.google.com/-referer-None] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_method[asgi] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_method[wsgi] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_empty_path[asgi] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_empty_path[wsgi] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_content_type_method[asgi] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_content_type_method[wsgi] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_content_length_method[asgi] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_content_length_method[wsgi] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_port_explicit[asgi-1.0] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_port_explicit[asgi-1.1] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_port_explicit[asgi-2] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_port_explicit[wsgi-1.0] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_port_explicit[wsgi-1.1] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_port_explicit[wsgi-2] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_scheme_https[asgi-1.0] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_scheme_https[asgi-1.1] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_scheme_https[asgi-2] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_scheme_https[wsgi-1.0] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_scheme_https[wsgi-1.1] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_scheme_https[wsgi-2] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_scheme_http[asgi-1.0-True] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_scheme_http[asgi-1.0-False] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_scheme_http[asgi-1.1-True] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_scheme_http[asgi-1.1-False] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_scheme_http[asgi-2-True] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_scheme_http[asgi-2-False] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_scheme_http[wsgi-1.0-True] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_scheme_http[wsgi-1.0-False] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_scheme_http[wsgi-1.1-True] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_scheme_http[wsgi-1.1-False] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_scheme_http[wsgi-2-True] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_scheme_http[wsgi-2-False] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_netloc_default_port[asgi-1.0] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_netloc_default_port[asgi-1.1] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_netloc_default_port[asgi-2] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_netloc_default_port[wsgi-1.0] PASSED [ 64%] tests/test_request_attrs.py::TestRequestAttributes::test_netloc_default_port[wsgi-1.1] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_netloc_default_port[wsgi-2] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_netloc_nondefault_port[asgi-1.0] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_netloc_nondefault_port[asgi-1.1] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_netloc_nondefault_port[asgi-2] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_netloc_nondefault_port[wsgi-1.0] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_netloc_nondefault_port[wsgi-1.1] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_netloc_nondefault_port[wsgi-2] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_netloc_from_env[asgi-1.0] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_netloc_from_env[asgi-1.1] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_netloc_from_env[asgi-2] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_netloc_from_env[wsgi-1.0] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_netloc_from_env[wsgi-1.1] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_netloc_from_env[wsgi-2] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_app_present[asgi] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_app_present[wsgi] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_app_blank[asgi] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_app_blank[wsgi] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match--None] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match- -None] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match- -None] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match-\t-None] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match- \t-None] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match-,-None] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match-,,-None] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match-,, -None] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match-, , -None] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match-*-expected_value9] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match-W/"67ab43"-expected_value10] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match-w/"67ab43"-expected_value11] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match- w/"67ab43"-expected_value12] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match-w/"67ab43" -expected_value13] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match-w/"67ab43 " -expected_value14] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match-"67ab43"-expected_value15] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match- "67ab43"-expected_value16] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match- "67ab43" -expected_value17] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match-"67ab43" -expected_value18] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match-" 67ab43" -expected_value19] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match-67ab43"-expected_value20] PASSED [ 65%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match-"67ab43-expected_value21] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match-67ab43-expected_value22] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match-67ab43 -expected_value23] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match- 67ab43 -expected_value24] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match- 67ab43-expected_value25] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-Match-if_match-W/"67ab43", "54ed21", junk"F9,22", junk "41, 7F", unquoted, w/"22, 41, 7F", "", W/""-expected_value26] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match--None] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match- -None] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match- -None] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match-\t-None] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match- \t-None] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match-,-None] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match-,,-None] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match-,, -None] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match-, , -None] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match-*-expected_value9] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match-W/"67ab43"-expected_value10] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match-w/"67ab43"-expected_value11] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match- w/"67ab43"-expected_value12] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match-w/"67ab43" -expected_value13] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match-w/"67ab43 " -expected_value14] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match-"67ab43"-expected_value15] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match- "67ab43"-expected_value16] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match- "67ab43" -expected_value17] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match-"67ab43" -expected_value18] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match-" 67ab43" -expected_value19] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match-67ab43"-expected_value20] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match-"67ab43-expected_value21] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match-67ab43-expected_value22] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match-67ab43 -expected_value23] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match- 67ab43 -expected_value24] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match- 67ab43-expected_value25] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[asgi-If-None-Match-if_none_match-W/"67ab43", "54ed21", junk"F9,22", junk "41, 7F", unquoted, w/"22, 41, 7F", "", W/""-expected_value26] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match--None] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match- -None] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match- -None] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match-\t-None] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match- \t-None] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match-,-None] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match-,,-None] PASSED [ 66%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match-,, -None] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match-, , -None] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match-*-expected_value9] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match-W/"67ab43"-expected_value10] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match-w/"67ab43"-expected_value11] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match- w/"67ab43"-expected_value12] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match-w/"67ab43" -expected_value13] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match-w/"67ab43 " -expected_value14] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match-"67ab43"-expected_value15] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match- "67ab43"-expected_value16] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match- "67ab43" -expected_value17] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match-"67ab43" -expected_value18] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match-" 67ab43" -expected_value19] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match-67ab43"-expected_value20] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match-"67ab43-expected_value21] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match-67ab43-expected_value22] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match-67ab43 -expected_value23] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match- 67ab43 -expected_value24] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match- 67ab43-expected_value25] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-Match-if_match-W/"67ab43", "54ed21", junk"F9,22", junk "41, 7F", unquoted, w/"22, 41, 7F", "", W/""-expected_value26] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match--None] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match- -None] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match- -None] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match-\t-None] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match- \t-None] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match-,-None] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match-,,-None] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match-,, -None] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match-, , -None] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match-*-expected_value9] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match-W/"67ab43"-expected_value10] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match-w/"67ab43"-expected_value11] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match- w/"67ab43"-expected_value12] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match-w/"67ab43" -expected_value13] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match-w/"67ab43 " -expected_value14] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match-"67ab43"-expected_value15] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match- "67ab43"-expected_value16] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match- "67ab43" -expected_value17] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match-"67ab43" -expected_value18] PASSED [ 67%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match-" 67ab43" -expected_value19] PASSED [ 68%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match-67ab43"-expected_value20] PASSED [ 68%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match-"67ab43-expected_value21] PASSED [ 68%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match-67ab43-expected_value22] PASSED [ 68%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match-67ab43 -expected_value23] PASSED [ 68%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match- 67ab43 -expected_value24] PASSED [ 68%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match- 67ab43-expected_value25] PASSED [ 68%] tests/test_request_attrs.py::TestRequestAttributes::test_etag[wsgi-If-None-Match-if_none_match-W/"67ab43", "54ed21", junk"F9,22", junk "41, 7F", unquoted, w/"22, 41, 7F", "", W/""-expected_value26] PASSED [ 68%] tests/test_request_attrs.py::TestRequestAttributes::test_etag_is_missing[asgi] PASSED [ 68%] tests/test_request_attrs.py::TestRequestAttributes::test_etag_is_missing[wsgi] PASSED [ 68%] tests/test_request_attrs.py::TestRequestAttributes::test_etag_parsing_helper[asgi-] PASSED [ 68%] tests/test_request_attrs.py::TestRequestAttributes::test_etag_parsing_helper[asgi- ] PASSED [ 68%] tests/test_request_attrs.py::TestRequestAttributes::test_etag_parsing_helper[asgi- ] PASSED [ 68%] tests/test_request_attrs.py::TestRequestAttributes::test_etag_parsing_helper[wsgi-] PASSED [ 68%] tests/test_request_attrs.py::TestRequestAttributes::test_etag_parsing_helper[wsgi- ] PASSED [ 68%] tests/test_request_attrs.py::TestRequestAttributes::test_etag_parsing_helper[wsgi- ] PASSED [ 68%] tests/test_request_body.py::TestRequestBody::test_empty_body PASSED [ 68%] tests/test_request_body.py::TestRequestBody::test_tiny_body PASSED [ 68%] tests/test_request_body.py::TestRequestBody::test_tiny_body_overflow PASSED [ 68%] tests/test_request_body.py::TestRequestBody::test_read_body PASSED [ 68%] tests/test_request_body.py::TestRequestBody::test_bounded_stream_property_empty_body PASSED [ 68%] tests/test_request_body.py::TestRequestBody::test_body_stream_wrapper PASSED [ 68%] tests/test_request_body.py::TestRequestBody::test_request_repr PASSED [ 68%] tests/test_request_context.py::TestRequestContext::test_default_request_context PASSED [ 68%] tests/test_request_context.py::TestRequestContext::test_custom_request_context PASSED [ 68%] tests/test_request_context.py::TestRequestContext::test_custom_request_context_failure PASSED [ 68%] tests/test_request_context.py::TestRequestContext::test_custom_request_context_request_access PASSED [ 68%] tests/test_request_forwarded.py::test_no_forwarded_headers[asgi] PASSED [ 68%] tests/test_request_forwarded.py::test_no_forwarded_headers[wsgi] PASSED [ 68%] tests/test_request_forwarded.py::test_no_forwarded_headers_with_port[asgi] PASSED [ 68%] tests/test_request_forwarded.py::test_no_forwarded_headers_with_port[wsgi] PASSED [ 68%] tests/test_request_forwarded.py::test_x_forwarded_host[asgi] PASSED [ 68%] tests/test_request_forwarded.py::test_x_forwarded_host[wsgi] PASSED [ 68%] tests/test_request_forwarded.py::test_x_forwarded_host_with_port[asgi] PASSED [ 68%] tests/test_request_forwarded.py::test_x_forwarded_host_with_port[wsgi] PASSED [ 68%] tests/test_request_forwarded.py::test_x_forwarded_proto[asgi] PASSED [ 68%] tests/test_request_forwarded.py::test_x_forwarded_proto[wsgi] PASSED [ 68%] tests/test_request_forwarded.py::test_forwarded_host[asgi] PASSED [ 68%] tests/test_request_forwarded.py::test_forwarded_host[wsgi] PASSED [ 68%] tests/test_request_forwarded.py::test_forwarded_invalid[asgi] PASSED [ 69%] tests/test_request_forwarded.py::test_forwarded_invalid[wsgi] PASSED [ 69%] tests/test_request_forwarded.py::test_forwarded_multiple_params[asgi] PASSED [ 69%] tests/test_request_forwarded.py::test_forwarded_multiple_params[wsgi] PASSED [ 69%] tests/test_request_forwarded.py::test_forwarded_missing_first_hop_host[asgi] PASSED [ 69%] tests/test_request_forwarded.py::test_forwarded_missing_first_hop_host[wsgi] PASSED [ 69%] tests/test_request_forwarded.py::test_forwarded_quote_escaping[asgi] PASSED [ 69%] tests/test_request_forwarded.py::test_forwarded_quote_escaping[wsgi] PASSED [ 69%] tests/test_request_forwarded.py::test_escape_malformed_requests[asgi-for=1.2.3.4;by="-None] PASSED [ 69%] tests/test_request_forwarded.py::test_escape_malformed_requests[asgi-for=1.2.3.4;by=4\\.3.2.1thing=blah-4] PASSED [ 69%] tests/test_request_forwarded.py::test_escape_malformed_requests[asgi-for=1.2.3.4;by="\\4.3.2.1"thing=blah-4.3.2.1] PASSED [ 69%] tests/test_request_forwarded.py::test_escape_malformed_requests[asgi-for=1.2.3.4;by="4.3.2.\\1"thing="blah"-4.3.2.1] PASSED [ 69%] tests/test_request_forwarded.py::test_escape_malformed_requests[asgi-for=1.2.3.4;by="4.3.\\2\\.1" thing="blah"-4.3.2.1] PASSED [ 69%] tests/test_request_forwarded.py::test_escape_malformed_requests[wsgi-for=1.2.3.4;by="-None] PASSED [ 69%] tests/test_request_forwarded.py::test_escape_malformed_requests[wsgi-for=1.2.3.4;by=4\\.3.2.1thing=blah-4] PASSED [ 69%] tests/test_request_forwarded.py::test_escape_malformed_requests[wsgi-for=1.2.3.4;by="\\4.3.2.1"thing=blah-4.3.2.1] PASSED [ 69%] tests/test_request_forwarded.py::test_escape_malformed_requests[wsgi-for=1.2.3.4;by="4.3.2.\\1"thing="blah"-4.3.2.1] PASSED [ 69%] tests/test_request_forwarded.py::test_escape_malformed_requests[wsgi-for=1.2.3.4;by="4.3.\\2\\.1" thing="blah"-4.3.2.1] PASSED [ 69%] tests/test_request_media.py::test_json[asgi-None] PASSED [ 69%] tests/test_request_media.py::test_json[asgi-*/*] PASSED [ 69%] tests/test_request_media.py::test_json[asgi-application/json] PASSED [ 69%] tests/test_request_media.py::test_json[asgi-application/json; charset=utf-8] PASSED [ 69%] tests/test_request_media.py::test_json[wsgi-None] PASSED [ 69%] tests/test_request_media.py::test_json[wsgi-*/*] PASSED [ 69%] tests/test_request_media.py::test_json[wsgi-application/json] PASSED [ 69%] tests/test_request_media.py::test_json[wsgi-application/json; charset=utf-8] PASSED [ 69%] tests/test_request_media.py::test_msgpack[asgi-application/msgpack] PASSED [ 69%] tests/test_request_media.py::test_msgpack[asgi-application/msgpack; charset=utf-8] PASSED [ 69%] tests/test_request_media.py::test_msgpack[asgi-application/x-msgpack] PASSED [ 69%] tests/test_request_media.py::test_msgpack[wsgi-application/msgpack] PASSED [ 69%] tests/test_request_media.py::test_msgpack[wsgi-application/msgpack; charset=utf-8] PASSED [ 69%] tests/test_request_media.py::test_msgpack[wsgi-application/x-msgpack] PASSED [ 69%] tests/test_request_media.py::test_unknown_media_type[asgi-nope/json] PASSED [ 69%] tests/test_request_media.py::test_unknown_media_type[wsgi-nope/json] PASSED [ 69%] tests/test_request_media.py::test_empty_body[asgi-application/json] PASSED [ 69%] tests/test_request_media.py::test_empty_body[asgi-application/msgpack] PASSED [ 69%] tests/test_request_media.py::test_empty_body[wsgi-application/json] PASSED [ 69%] tests/test_request_media.py::test_empty_body[wsgi-application/msgpack] PASSED [ 69%] tests/test_request_media.py::test_invalid_json[asgi] PASSED [ 69%] tests/test_request_media.py::test_invalid_json[wsgi] PASSED [ 70%] tests/test_request_media.py::test_invalid_msgpack[asgi] PASSED [ 70%] tests/test_request_media.py::test_invalid_msgpack[wsgi] PASSED [ 70%] tests/test_request_media.py::test_complete_consumption[asgi] PASSED [ 70%] tests/test_request_media.py::test_complete_consumption[wsgi] PASSED [ 70%] tests/test_request_media.py::test_empty_json_media[asgi-False] PASSED [ 70%] tests/test_request_media.py::test_empty_json_media[asgi-0] PASSED [ 70%] tests/test_request_media.py::test_empty_json_media[asgi-0.0] PASSED [ 70%] tests/test_request_media.py::test_empty_json_media[asgi-] PASSED [ 70%] tests/test_request_media.py::test_empty_json_media[asgi-payload4] PASSED [ 70%] tests/test_request_media.py::test_empty_json_media[asgi-payload5] PASSED [ 70%] tests/test_request_media.py::test_empty_json_media[wsgi-False] PASSED [ 70%] tests/test_request_media.py::test_empty_json_media[wsgi-0] PASSED [ 70%] tests/test_request_media.py::test_empty_json_media[wsgi-0.0] PASSED [ 70%] tests/test_request_media.py::test_empty_json_media[wsgi-] PASSED [ 70%] tests/test_request_media.py::test_empty_json_media[wsgi-payload4] PASSED [ 70%] tests/test_request_media.py::test_empty_json_media[wsgi-payload5] PASSED [ 70%] tests/test_request_media.py::test_null_json_media[asgi] PASSED [ 70%] tests/test_request_media.py::test_null_json_media[wsgi] PASSED [ 70%] tests/test_request_media.py::test_fallback[asgi] PASSED [ 70%] tests/test_request_media.py::test_fallback[wsgi] PASSED [ 70%] tests/test_request_media.py::test_fallback_not_for_error_body[asgi-True-True] PASSED [ 70%] tests/test_request_media.py::test_fallback_not_for_error_body[asgi-True-False] PASSED [ 70%] tests/test_request_media.py::test_fallback_not_for_error_body[asgi-False-True] PASSED [ 70%] tests/test_request_media.py::test_fallback_not_for_error_body[asgi-False-False] PASSED [ 70%] tests/test_request_media.py::test_fallback_not_for_error_body[wsgi-True-True] PASSED [ 70%] tests/test_request_media.py::test_fallback_not_for_error_body[wsgi-True-False] PASSED [ 70%] tests/test_request_media.py::test_fallback_not_for_error_body[wsgi-False-True] PASSED [ 70%] tests/test_request_media.py::test_fallback_not_for_error_body[wsgi-False-False] PASSED [ 70%] tests/test_request_media.py::test_fallback_does_not_override_media_default[asgi] PASSED [ 70%] tests/test_request_media.py::test_fallback_does_not_override_media_default[wsgi] PASSED [ 70%] tests/test_request_media.py::test_repeated_error[asgi-{] PASSED [ 70%] tests/test_request_media.py::test_repeated_error[asgi-] PASSED [ 70%] tests/test_request_media.py::test_repeated_error[wsgi-{] PASSED [ 70%] tests/test_request_media.py::test_repeated_error[wsgi-] PASSED [ 70%] tests/test_request_media.py::test_error_after_first_default[asgi] PASSED [ 70%] tests/test_request_media.py::test_error_after_first_default[wsgi] PASSED [ 70%] tests/test_response.py::test_response_set_content_type_set[asgi] PASSED [ 70%] tests/test_response.py::test_response_set_content_type_set[wsgi] PASSED [ 70%] tests/test_response.py::test_response_set_content_type_not_set[asgi] PASSED [ 71%] tests/test_response.py::test_response_set_content_type_not_set[wsgi] PASSED [ 71%] tests/test_response.py::test_response_get_headers[asgi] PASSED [ 71%] tests/test_response.py::test_response_get_headers[wsgi] PASSED [ 71%] tests/test_response.py::test_add_link_removed[asgi] PASSED [ 71%] tests/test_response.py::test_add_link_removed[wsgi] PASSED [ 71%] tests/test_response.py::test_body_removed[asgi] PASSED [ 71%] tests/test_response.py::test_body_removed[wsgi] PASSED [ 71%] tests/test_response.py::test_response_attempt_to_set_read_only_headers[asgi] PASSED [ 71%] tests/test_response.py::test_response_attempt_to_set_read_only_headers[wsgi] PASSED [ 71%] tests/test_response.py::test_response_option_mimetype_init PASSED [ 71%] tests/test_response.py::test_response_set_stream[asgi-] PASSED [ 71%] tests/test_response.py::test_response_set_stream[asgi-dummy content] PASSED [ 71%] tests/test_response.py::test_response_set_stream[wsgi-] PASSED [ 71%] tests/test_response.py::test_response_set_stream[wsgi-dummy content] PASSED [ 71%] tests/test_response_body.py::test_append_body[asgi] PASSED [ 71%] tests/test_response_body.py::test_append_body[wsgi] PASSED [ 71%] tests/test_response_body.py::test_response_repr[asgi] PASSED [ 71%] tests/test_response_body.py::test_response_repr[wsgi] PASSED [ 71%] tests/test_response_body.py::test_content_length_set_on_head_with_no_body[asgi] PASSED [ 71%] tests/test_response_body.py::test_content_length_set_on_head_with_no_body[wsgi] PASSED [ 71%] tests/test_response_body.py::test_content_length_not_set_when_streaming_response[asgi-GET] PASSED [ 71%] tests/test_response_body.py::test_content_length_not_set_when_streaming_response[asgi-HEAD] PASSED [ 71%] tests/test_response_body.py::test_content_length_not_set_when_streaming_response[wsgi-GET] PASSED [ 71%] tests/test_response_body.py::test_content_length_not_set_when_streaming_response[wsgi-HEAD] PASSED [ 71%] tests/test_response_body.py::test_unsupported_response_content_type[asgi] PASSED [ 71%] tests/test_response_body.py::test_unsupported_response_content_type[wsgi] PASSED [ 71%] tests/test_response_body.py::test_response_body_rendition_error[asgi] PASSED [ 71%] tests/test_response_body.py::test_response_body_rendition_error[wsgi] PASSED [ 71%] tests/test_response_context.py::TestResponseContext::test_default_response_context[asgi.Response] PASSED [ 71%] tests/test_response_context.py::TestResponseContext::test_default_response_context[Response] PASSED [ 71%] tests/test_response_context.py::TestResponseContext::test_custom_response_context[asgi.Response] PASSED [ 71%] tests/test_response_context.py::TestResponseContext::test_custom_response_context[Response] PASSED [ 71%] tests/test_response_context.py::TestResponseContext::test_custom_response_context_failure[asgi.Response] PASSED [ 71%] tests/test_response_context.py::TestResponseContext::test_custom_response_context_failure[Response] PASSED [ 71%] tests/test_response_context.py::TestResponseContext::test_custom_response_context_factory[asgi.Response] PASSED [ 71%] tests/test_response_context.py::TestResponseContext::test_custom_response_context_factory[Response] PASSED [ 71%] tests/test_response_media.py::test_json[*/*] PASSED [ 71%] tests/test_response_media.py::test_json[application/json] PASSED [ 71%] tests/test_response_media.py::test_json[application/json; charset=utf-8] PASSED [ 72%] tests/test_response_media.py::test_non_ascii_json_serialization[] PASSED [ 72%] tests/test_response_media.py::test_non_ascii_json_serialization[I am a \u1d0a\ua731\u1d0f\u0274 string.] PASSED [ 72%] tests/test_response_media.py::test_non_ascii_json_serialization[document2] PASSED [ 72%] tests/test_response_media.py::test_non_ascii_json_serialization[document3] PASSED [ 72%] tests/test_response_media.py::test_non_ascii_json_serialization[document4] PASSED [ 72%] tests/test_response_media.py::test_msgpack[application/msgpack] PASSED [ 72%] tests/test_response_media.py::test_msgpack[application/msgpack; charset=utf-8] PASSED [ 72%] tests/test_response_media.py::test_msgpack[application/x-msgpack] PASSED [ 72%] tests/test_response_media.py::test_unknown_media_type PASSED [ 72%] tests/test_response_media.py::test_use_cached_media PASSED [ 72%] tests/test_response_media.py::test_default_media_type PASSED [ 72%] tests/test_response_media.py::test_mimeparse_edgecases PASSED [ 72%] tests/test_response_media.py::TestRenderBodyPrecedence::test_text PASSED [ 72%] tests/test_response_media.py::TestRenderBodyPrecedence::test_data PASSED [ 72%] tests/test_response_media.py::TestRenderBodyPrecedence::test_media PASSED [ 72%] tests/test_response_media.py::test_media_rendered_cached PASSED [ 72%] tests/test_sink_and_static.py::test_sink_before_static_route[asgi] PASSED [ 72%] tests/test_sink_and_static.py::test_sink_before_static_route[wsgi] PASSED [ 72%] tests/test_sink_and_static.py::test_sink_after_static_route[asgi] PASSED [ 72%] tests/test_sink_and_static.py::test_sink_after_static_route[wsgi] PASSED [ 72%] tests/test_sinks.py::TestDefaultRouting::test_single_default_pattern[asgi] PASSED [ 72%] tests/test_sinks.py::TestDefaultRouting::test_single_default_pattern[wsgi] PASSED [ 72%] tests/test_sinks.py::TestDefaultRouting::test_single_simple_pattern[asgi] PASSED [ 72%] tests/test_sinks.py::TestDefaultRouting::test_single_simple_pattern[wsgi] PASSED [ 72%] tests/test_sinks.py::TestDefaultRouting::test_single_compiled_pattern[asgi] PASSED [ 72%] tests/test_sinks.py::TestDefaultRouting::test_single_compiled_pattern[wsgi] PASSED [ 72%] tests/test_sinks.py::TestDefaultRouting::test_named_groups[asgi] PASSED [ 72%] tests/test_sinks.py::TestDefaultRouting::test_named_groups[wsgi] PASSED [ 72%] tests/test_sinks.py::TestDefaultRouting::test_multiple_patterns[asgi] PASSED [ 72%] tests/test_sinks.py::TestDefaultRouting::test_multiple_patterns[wsgi] PASSED [ 72%] tests/test_sinks.py::TestDefaultRouting::test_with_route[asgi] PASSED [ 72%] tests/test_sinks.py::TestDefaultRouting::test_with_route[wsgi] PASSED [ 72%] tests/test_sinks.py::TestDefaultRouting::test_route_precedence[asgi] PASSED [ 72%] tests/test_sinks.py::TestDefaultRouting::test_route_precedence[wsgi] PASSED [ 72%] tests/test_sinks.py::TestDefaultRouting::test_route_precedence_with_id[asgi] PASSED [ 72%] tests/test_sinks.py::TestDefaultRouting::test_route_precedence_with_id[wsgi] PASSED [ 72%] tests/test_sinks.py::TestDefaultRouting::test_route_precedence_with_both_id[asgi] PASSED [ 72%] tests/test_sinks.py::TestDefaultRouting::test_route_precedence_with_both_id[wsgi] PASSED [ 72%] tests/test_sinks.py::TestSinkMethodCompatibility::test_add_async_sink[asgi] PASSED [ 73%] tests/test_sinks.py::TestSinkMethodCompatibility::test_add_async_sink[wsgi] PASSED [ 73%] tests/test_sinks.py::TestSinkMethodCompatibility::test_add_sync_sink[asgi] PASSED [ 73%] tests/test_sinks.py::TestSinkMethodCompatibility::test_add_sync_sink[wsgi] PASSED [ 73%] tests/test_sinks.py::TestSinkMethodCompatibility::test_add_sync_sink_with_wrapping[asgi] PASSED [ 73%] tests/test_sinks.py::TestSinkMethodCompatibility::test_add_sync_sink_with_wrapping[wsgi] PASSED [ 73%] tests/test_slots.py::TestSlots::test_slots_request[asgi] PASSED [ 73%] tests/test_slots.py::TestSlots::test_slots_request[wsgi] PASSED [ 73%] tests/test_slots.py::TestSlots::test_slots_response[asgi] PASSED [ 73%] tests/test_slots.py::TestSlots::test_slots_response[wsgi] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/.] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/..] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/../.] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/.././etc/passwd] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/../etc/passwd] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/css/../../secret] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/css/../../etc/passwd] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/./../etc/passwd] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/css/../.\\056/etc/passwd] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/./\\056./etc/passwd] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/\\056\\056/etc/passwd] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static//test.css] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static//COM10] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/path//test.css] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/path///test.css] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/path////test.css] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/path/foo//test.css] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/.\x00ssh/authorized_keys] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/.\x1fssh/authorized_keys] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/.\x80ssh/authorized_keys] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/.\x9fssh/authorized_keys] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/~/.ssh/authorized_keys] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/.ssh/authorized_key?] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/.ssh/authorized_key>foo] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/.ssh/authorized_key|foo] PASSED [ 73%] tests/test_static.py::test_bad_path[asgi-/static/.ssh/authorized_keyfoo] PASSED [ 74%] tests/test_static.py::test_bad_path[wsgi-/static/.ssh/authorized_key|foo] PASSED [ 74%] tests/test_static.py::test_bad_path[wsgi-/static/.ssh/authorized_key>$MYINIT.init ; \ pkgos-gen-systemd-unit $i ; \ done ++ ls -1 'debian/*.init.in' ls: cannot access 'debian/*.init.in': No such file or directory # If there's a service.in file, use that one instead of the generated one set -e ; set -x ; for i in `ls -1 debian/*.service.in`; do \ MYPKG=`echo $i | sed s/.service.in//` ; \ cp $MYPKG.service.in $MYPKG.service ; \ done ++ ls -1 'debian/*.service.in' ls: cannot access 'debian/*.service.in': No such file or directory # Generate the systemd unit if there's no already existing .service.in set -e ; set -x ; for i in `ls debian/*.init.in` ; do \ MYINIT=`echo $i | sed s/.init.in/.service.in/` ; \ if ! [ -e $MYINIT ] ; then \ pkgos-gen-systemd-unit $i ; \ fi \ done ++ ls 'debian/*.init.in' ls: cannot access 'debian/*.init.in': No such file or directory dh_installinit --error-handler=true make[1]: Leaving directory '/build/reproducible-path/python-falcon-4.0.2' debian/rules override_dh_installsystemd make[1]: Entering directory '/build/reproducible-path/python-falcon-4.0.2' make[1]: pyversions: No such file or directory py3versions: no X-Python3-Version in control file, using supported versions debian/rules:40: warning: overriding recipe for target 'override_dh_installchangelogs' /usr/share/openstack-pkg-tools/pkgos.make:59: warning: ignoring old recipe for target 'override_dh_installchangelogs' # Create the init scripts and systemd unit files from the template set -e ; set -x ; for i in `ls -1 debian/*.init.in` ; do \ MYINIT=`echo $i | sed s/.init.in//` ; \ cp $i $MYINIT.init ; \ cat /usr/share/openstack-pkg-tools/init-script-template >>$MYINIT.init ; \ pkgos-gen-systemd-unit $i ; \ done ++ ls -1 'debian/*.init.in' ls: cannot access 'debian/*.init.in': No such file or directory # If there's a service.in file, use that one instead of the generated one set -e ; set -x ; for i in `ls -1 debian/*.service.in`; do \ MYPKG=`echo $i | sed s/.service.in//` ; \ cp $MYPKG.service.in $MYPKG.service ; \ done ++ ls -1 'debian/*.service.in' ls: cannot access 'debian/*.service.in': No such file or directory # Generate the systemd unit if there's no already existing .service.in set -e ; set -x ; for i in `ls debian/*.init.in` ; do \ MYINIT=`echo $i | sed s/.init.in/.service.in/` ; \ if ! [ -e $MYINIT ] ; then \ pkgos-gen-systemd-unit $i ; \ fi \ done ++ ls 'debian/*.init.in' ls: cannot access 'debian/*.init.in': No such file or directory dh_installsystemd make[1]: Leaving directory '/build/reproducible-path/python-falcon-4.0.2' dh_perl -O--buildsystem=python_distutils dh_link -O--buildsystem=python_distutils dh_strip_nondeterminism -O--buildsystem=python_distutils dh_compress -O--buildsystem=python_distutils dh_fixperms -O--buildsystem=python_distutils dh_missing -O--buildsystem=python_distutils dh_strip -O--buildsystem=python_distutils dh_makeshlibs -O--buildsystem=python_distutils dh_shlibdeps -O--buildsystem=python_distutils dpkg-shlibdeps: warning: diversions involved - output may be incorrect diversion by libc6 from: /lib/ld-linux-aarch64.so.1 dpkg-shlibdeps: warning: diversions involved - output may be incorrect diversion by libc6 to: /lib/ld-linux-aarch64.so.1.usr-is-merged dh_installdeb -O--buildsystem=python_distutils debian/rules override_dh_gencontrol make[1]: Entering directory '/build/reproducible-path/python-falcon-4.0.2' make[1]: pyversions: No such file or directory py3versions: no X-Python3-Version in control file, using supported versions debian/rules:40: warning: overriding recipe for target 'override_dh_installchangelogs' /usr/share/openstack-pkg-tools/pkgos.make:59: warning: ignoring old recipe for target 'override_dh_installchangelogs' if dpkg-vendor --derives-from ubuntu ; then \ dh_gencontrol -- -T/build/reproducible-path/python-falcon-4.0.2/debian/ubuntu_control_vars ; \ else \ dh_gencontrol -- -T/build/reproducible-path/python-falcon-4.0.2/debian/debian_control_vars ; \ fi make[1]: Leaving directory '/build/reproducible-path/python-falcon-4.0.2' dh_md5sums -O--buildsystem=python_distutils dh_builddeb -O--buildsystem=python_distutils dpkg-deb: building package 'python3-falcon-dbgsym' in '../python3-falcon-dbgsym_4.0.2-2_arm64.deb'. dpkg-deb: building package 'python3-falcon' in '../python3-falcon_4.0.2-2_arm64.deb'. dpkg-genbuildinfo --build=binary -O../python-falcon_4.0.2-2_arm64.buildinfo dpkg-genchanges --build=binary -O../python-falcon_4.0.2-2_arm64.changes dpkg-genchanges: info: binary-only upload (no source code included) dpkg-source --after-build . dpkg-source: info: using options from python-falcon-4.0.2/debian/source/options: --extend-diff-ignore=^[.]gitreview$ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration I: user script /srv/workspace/pbuilder/2442647/tmp/hooks/B01_cleanup starting I: user script /srv/workspace/pbuilder/2442647/tmp/hooks/B01_cleanup finished 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/2442647 and its subdirectories I: Current time: Wed Oct 1 01:48:49 +14 2025 I: pbuilder-time-stamp: 1759232929