0s autopkgtest [11:57:43]: starting date and time: 2024-06-29 11:57:43+0000 0s autopkgtest [11:57:43]: git checkout: 85adf9a1 setup-testbed: prevent /tmp from getting a tmpfs mount 0s autopkgtest [11:57:43]: host juju-7f2275-prod-proposed-migration-environment-3; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.6q65cjj0/out --timeout-copy=6000 -a i386 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:requests --apt-upgrade python-requests-unixsocket --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=requests/2.32.3+dfsg-1ubuntu1 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-3@lcy02-58.secgroup --name adt-oracular-i386-python-requests-unixsocket-20240629-113339-juju-7f2275-prod-proposed-migration-environment-3-178b1b22-01ce-4a12-8b03-dc99f06eab6e --image adt/ubuntu-oracular-amd64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-3 --net-id=net_prod-proposed-migration -e TERM=linux -e ''"'"'http_proxy=http://squid.internal:3128'"'"'' -e ''"'"'https_proxy=http://squid.internal:3128'"'"'' -e ''"'"'no_proxy=127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,ports.ubuntu.com,security.ubuntu.com,ddebs.ubuntu.com,changelogs.ubuntu.com,keyserver.ubuntu.com,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,10.24.0.0/24,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/ 49s autopkgtest [11:58:32]: testbed dpkg architecture: amd64 49s autopkgtest [11:58:32]: testbed apt version: 2.9.5 49s autopkgtest [11:58:32]: test architecture: i386 49s autopkgtest [11:58:32]: @@@@@@@@@@@@@@@@@@@@ test bed setup 50s Get:1 http://ftpmaster.internal/ubuntu oracular-proposed InRelease [110 kB] 50s Get:2 http://ftpmaster.internal/ubuntu oracular-proposed/main Sources [53.6 kB] 50s Get:3 http://ftpmaster.internal/ubuntu oracular-proposed/universe Sources [370 kB] 50s Get:4 http://ftpmaster.internal/ubuntu oracular-proposed/restricted Sources [7052 B] 50s Get:5 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse Sources [2576 B] 50s Get:6 http://ftpmaster.internal/ubuntu oracular-proposed/main i386 Packages [86.2 kB] 50s Get:7 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 Packages [112 kB] 50s Get:8 http://ftpmaster.internal/ubuntu oracular-proposed/restricted amd64 Packages [28.0 kB] 50s Get:9 http://ftpmaster.internal/ubuntu oracular-proposed/restricted i386 Packages [6244 B] 50s Get:10 http://ftpmaster.internal/ubuntu oracular-proposed/universe amd64 Packages [379 kB] 50s Get:11 http://ftpmaster.internal/ubuntu oracular-proposed/universe i386 Packages [222 kB] 50s Get:12 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse i386 Packages [3368 B] 50s Get:13 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse amd64 Packages [7968 B] 50s Fetched 1389 kB in 0s (6383 kB/s) 50s Reading package lists... 51s Reading package lists... 52s Building dependency tree... 52s Reading state information... 52s Calculating upgrade... 52s The following packages will be upgraded: 52s dracut-install python3-requests 52s 2 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 52s Need to get 85.2 kB of archives. 52s After this operation, 9216 B of additional disk space will be used. 52s Get:1 http://ftpmaster.internal/ubuntu oracular/main amd64 dracut-install amd64 102-3ubuntu3 [32.5 kB] 52s Get:2 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 python3-requests all 2.32.3+dfsg-1ubuntu1 [52.6 kB] 52s Fetched 85.2 kB in 0s (3976 kB/s) 53s (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 ... 74420 files and directories currently installed.) 53s Preparing to unpack .../dracut-install_102-3ubuntu3_amd64.deb ... 53s Unpacking dracut-install (102-3ubuntu3) over (102-3ubuntu2) ... 53s Preparing to unpack .../python3-requests_2.32.3+dfsg-1ubuntu1_all.deb ... 53s Unpacking python3-requests (2.32.3+dfsg-1ubuntu1) over (2.31.0+dfsg-1ubuntu3) ... 53s Setting up python3-requests (2.32.3+dfsg-1ubuntu1) ... 53s Setting up dracut-install (102-3ubuntu3) ... 53s Reading package lists... 53s Building dependency tree... 53s Reading state information... 54s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 54s Hit:1 http://ftpmaster.internal/ubuntu oracular-proposed InRelease 54s Hit:2 http://ftpmaster.internal/ubuntu oracular InRelease 54s Hit:3 http://ftpmaster.internal/ubuntu oracular-updates InRelease 54s Hit:4 http://ftpmaster.internal/ubuntu oracular-security InRelease 55s Reading package lists... 55s Reading package lists... 55s Building dependency tree... 55s Reading state information... 55s Calculating upgrade... 56s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 56s Reading package lists... 56s Building dependency tree... 56s Reading state information... 56s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 57s autopkgtest [11:58:40]: testbed running kernel: Linux 6.8.0-31-generic #31-Ubuntu SMP PREEMPT_DYNAMIC Sat Apr 20 00:40:06 UTC 2024 57s autopkgtest [11:58:40]: @@@@@@@@@@@@@@@@@@@@ apt-source python-requests-unixsocket 57s Get:1 http://ftpmaster.internal/ubuntu oracular/universe python-requests-unixsocket 0.3.0-4 (dsc) [2359 B] 57s Get:2 http://ftpmaster.internal/ubuntu oracular/universe python-requests-unixsocket 0.3.0-4 (tar) [10.3 kB] 57s Get:3 http://ftpmaster.internal/ubuntu oracular/universe python-requests-unixsocket 0.3.0-4 (diff) [4136 B] 58s gpgv: Signature made Mon Apr 29 13:16:38 2024 UTC 58s gpgv: using RSA key A0B1A9F3508956130E7A425CD416AD15AC6B43FE 58s gpgv: Can't check signature: No public key 58s dpkg-source: warning: cannot verify inline signature for ./python-requests-unixsocket_0.3.0-4.dsc: no acceptable signature found 58s autopkgtest [11:58:41]: testing package python-requests-unixsocket version 0.3.0-4 58s autopkgtest [11:58:41]: build not needed 58s autopkgtest [11:58:41]: test python3-requests-unixsocket: preparing testbed 60s Note, using file '/tmp/autopkgtest.dastyX/1-autopkgtest-satdep.dsc' to get the build dependencies 60s Reading package lists... 60s Building dependency tree... 60s Reading state information... 60s Starting pkgProblemResolver with broken count: 0 61s Starting 2 pkgProblemResolver with broken count: 0 61s Done 61s The following NEW packages will be installed: 61s autoconf automake autopoint autotools-dev build-essential cpp cpp-13 61s cpp-13-x86-64-linux-gnu cpp-x86-64-linux-gnu debhelper debugedit 61s dh-autoreconf dh-python dh-strip-nondeterminism dwz g++ g++-13 61s g++-13-x86-64-linux-gnu g++-x86-64-linux-gnu gcc gcc-13 gcc-13-base 61s gcc-13-x86-64-linux-gnu gcc-x86-64-linux-gnu gettext intltool-debian 61s libarchive-zip-perl libasan8 libatomic1 libcc1-0 libdebhelper-perl 61s libfile-stripnondeterminism-perl libgcc-13-dev libgomp1 libhwasan0 libisl23 61s libitm1 liblsan0 libmpc3 libquadmath0 libstdc++-13-dev libtool libtsan2 61s libubsan1 m4 openstack-pkg-tools po-debconf python3-all python3-iniconfig 61s python3-packaging python3-pbr python3-pip python3-pluggy python3-pytest 61s python3-requests-unixsocket python3-waitress python3-wheel 61s 0 upgraded, 57 newly installed, 0 to remove and 0 not upgraded. 61s Need to get 68.6 MB of archives. 61s After this operation, 248 MB of additional disk space will be used. 61s Get:1 http://ftpmaster.internal/ubuntu oracular/main amd64 m4 amd64 1.4.19-4build1 [244 kB] 61s Get:2 http://ftpmaster.internal/ubuntu oracular/main amd64 autoconf all 2.71-3 [339 kB] 61s Get:3 http://ftpmaster.internal/ubuntu oracular/main amd64 autotools-dev all 20220109.1 [44.9 kB] 61s Get:4 http://ftpmaster.internal/ubuntu oracular/main amd64 automake all 1:1.16.5-1.3ubuntu1 [558 kB] 61s Get:5 http://ftpmaster.internal/ubuntu oracular/main amd64 autopoint all 0.21-14ubuntu2 [422 kB] 61s Get:6 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-13-base amd64 13.2.0-23ubuntu4 [49.0 kB] 61s Get:7 http://ftpmaster.internal/ubuntu oracular/main amd64 libisl23 amd64 0.26-3build1 [680 kB] 61s Get:8 http://ftpmaster.internal/ubuntu oracular/main amd64 libmpc3 amd64 1.3.1-1build1 [54.5 kB] 61s Get:9 http://ftpmaster.internal/ubuntu oracular/main amd64 cpp-13-x86-64-linux-gnu amd64 13.2.0-23ubuntu4 [11.2 MB] 61s Get:10 http://ftpmaster.internal/ubuntu oracular/main amd64 cpp-13 amd64 13.2.0-23ubuntu4 [1032 B] 61s Get:11 http://ftpmaster.internal/ubuntu oracular/main amd64 cpp-x86-64-linux-gnu amd64 4:13.2.0-7ubuntu1 [5326 B] 61s Get:12 http://ftpmaster.internal/ubuntu oracular/main amd64 cpp amd64 4:13.2.0-7ubuntu1 [22.4 kB] 61s Get:13 http://ftpmaster.internal/ubuntu oracular/main amd64 libcc1-0 amd64 14.1.0-1ubuntu1 [48.0 kB] 61s Get:14 http://ftpmaster.internal/ubuntu oracular/main amd64 libgomp1 amd64 14.1.0-1ubuntu1 [148 kB] 61s Get:15 http://ftpmaster.internal/ubuntu oracular/main amd64 libitm1 amd64 14.1.0-1ubuntu1 [29.1 kB] 61s Get:16 http://ftpmaster.internal/ubuntu oracular/main amd64 libatomic1 amd64 14.1.0-1ubuntu1 [10.4 kB] 61s Get:17 http://ftpmaster.internal/ubuntu oracular/main amd64 libasan8 amd64 14.1.0-1ubuntu1 [3025 kB] 61s Get:18 http://ftpmaster.internal/ubuntu oracular/main amd64 liblsan0 amd64 14.1.0-1ubuntu1 [1313 kB] 61s Get:19 http://ftpmaster.internal/ubuntu oracular/main amd64 libtsan2 amd64 14.1.0-1ubuntu1 [2736 kB] 61s Get:20 http://ftpmaster.internal/ubuntu oracular/main amd64 libubsan1 amd64 14.1.0-1ubuntu1 [1174 kB] 61s Get:21 http://ftpmaster.internal/ubuntu oracular/main amd64 libhwasan0 amd64 14.1.0-1ubuntu1 [1632 kB] 61s Get:22 http://ftpmaster.internal/ubuntu oracular/main amd64 libquadmath0 amd64 14.1.0-1ubuntu1 [153 kB] 61s Get:23 http://ftpmaster.internal/ubuntu oracular/main amd64 libgcc-13-dev amd64 13.2.0-23ubuntu4 [2688 kB] 61s Get:24 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-13-x86-64-linux-gnu amd64 13.2.0-23ubuntu4 [21.9 MB] 61s Get:25 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-13 amd64 13.2.0-23ubuntu4 [482 kB] 61s Get:26 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-x86-64-linux-gnu amd64 4:13.2.0-7ubuntu1 [1212 B] 61s Get:27 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc amd64 4:13.2.0-7ubuntu1 [5018 B] 61s Get:28 http://ftpmaster.internal/ubuntu oracular/main amd64 libstdc++-13-dev amd64 13.2.0-23ubuntu4 [2399 kB] 61s Get:29 http://ftpmaster.internal/ubuntu oracular/main amd64 g++-13-x86-64-linux-gnu amd64 13.2.0-23ubuntu4 [12.5 MB] 62s Get:30 http://ftpmaster.internal/ubuntu oracular/main amd64 g++-13 amd64 13.2.0-23ubuntu4 [14.5 kB] 62s Get:31 http://ftpmaster.internal/ubuntu oracular/main amd64 g++-x86-64-linux-gnu amd64 4:13.2.0-7ubuntu1 [964 B] 62s Get:32 http://ftpmaster.internal/ubuntu oracular/main amd64 g++ amd64 4:13.2.0-7ubuntu1 [1100 B] 62s Get:33 http://ftpmaster.internal/ubuntu oracular/main amd64 build-essential amd64 12.10ubuntu1 [4928 B] 62s Get:34 http://ftpmaster.internal/ubuntu oracular/main amd64 libdebhelper-perl all 13.16ubuntu2 [92.9 kB] 62s Get:35 http://ftpmaster.internal/ubuntu oracular/main amd64 libtool all 2.4.7-7build1 [166 kB] 62s Get:36 http://ftpmaster.internal/ubuntu oracular/main amd64 dh-autoreconf all 20 [16.1 kB] 62s Get:37 http://ftpmaster.internal/ubuntu oracular/main amd64 libarchive-zip-perl all 1.68-1 [90.2 kB] 62s Get:38 http://ftpmaster.internal/ubuntu oracular/main amd64 libfile-stripnondeterminism-perl all 1.14.0-1 [20.1 kB] 62s Get:39 http://ftpmaster.internal/ubuntu oracular/main amd64 dh-strip-nondeterminism all 1.14.0-1 [5058 B] 62s Get:40 http://ftpmaster.internal/ubuntu oracular/main amd64 debugedit amd64 1:5.0-5build2 [46.1 kB] 62s Get:41 http://ftpmaster.internal/ubuntu oracular/main amd64 dwz amd64 0.15-1build6 [115 kB] 62s Get:42 http://ftpmaster.internal/ubuntu oracular/main amd64 gettext amd64 0.21-14ubuntu2 [864 kB] 62s Get:43 http://ftpmaster.internal/ubuntu oracular/main amd64 intltool-debian all 0.35.0+20060710.6 [23.2 kB] 62s Get:44 http://ftpmaster.internal/ubuntu oracular/main amd64 po-debconf all 1.0.21+nmu1 [233 kB] 62s Get:45 http://ftpmaster.internal/ubuntu oracular/main amd64 debhelper all 13.16ubuntu2 [869 kB] 62s Get:46 http://ftpmaster.internal/ubuntu oracular/universe amd64 dh-python all 6.20240422 [110 kB] 62s Get:47 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-all amd64 3.12.3-0ubuntu1 [888 B] 62s Get:48 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-iniconfig all 1.1.1-2 [6024 B] 62s Get:49 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-packaging all 24.0-1 [41.1 kB] 62s Get:50 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-pbr all 5.11.1-0ubuntu1 [66.5 kB] 62s Get:51 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-wheel all 0.43.0-1 [53.5 kB] 62s Get:52 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-pip all 24.1+dfsg-1 [1399 kB] 62s Get:53 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-pluggy all 1.5.0-1 [21.0 kB] 62s Get:54 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-pytest all 7.4.4-1 [305 kB] 62s Get:55 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-requests-unixsocket all 0.3.0-4 [7274 B] 62s Get:56 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-waitress all 3.0.0-1 [46.4 kB] 62s Get:57 http://ftpmaster.internal/ubuntu oracular/universe amd64 openstack-pkg-tools all 123ubuntu2 [94.5 kB] 62s Fetched 68.6 MB in 1s (98.9 MB/s) 62s Selecting previously unselected package m4. 62s (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 ... 74419 files and directories currently installed.) 62s Preparing to unpack .../00-m4_1.4.19-4build1_amd64.deb ... 62s Unpacking m4 (1.4.19-4build1) ... 62s Selecting previously unselected package autoconf. 62s Preparing to unpack .../01-autoconf_2.71-3_all.deb ... 62s Unpacking autoconf (2.71-3) ... 62s Selecting previously unselected package autotools-dev. 62s Preparing to unpack .../02-autotools-dev_20220109.1_all.deb ... 62s Unpacking autotools-dev (20220109.1) ... 62s Selecting previously unselected package automake. 62s Preparing to unpack .../03-automake_1%3a1.16.5-1.3ubuntu1_all.deb ... 62s Unpacking automake (1:1.16.5-1.3ubuntu1) ... 62s Selecting previously unselected package autopoint. 62s Preparing to unpack .../04-autopoint_0.21-14ubuntu2_all.deb ... 62s Unpacking autopoint (0.21-14ubuntu2) ... 62s Selecting previously unselected package gcc-13-base:amd64. 62s Preparing to unpack .../05-gcc-13-base_13.2.0-23ubuntu4_amd64.deb ... 62s Unpacking gcc-13-base:amd64 (13.2.0-23ubuntu4) ... 62s Selecting previously unselected package libisl23:amd64. 62s Preparing to unpack .../06-libisl23_0.26-3build1_amd64.deb ... 62s Unpacking libisl23:amd64 (0.26-3build1) ... 62s Selecting previously unselected package libmpc3:amd64. 62s Preparing to unpack .../07-libmpc3_1.3.1-1build1_amd64.deb ... 62s Unpacking libmpc3:amd64 (1.3.1-1build1) ... 62s Selecting previously unselected package cpp-13-x86-64-linux-gnu. 62s Preparing to unpack .../08-cpp-13-x86-64-linux-gnu_13.2.0-23ubuntu4_amd64.deb ... 62s Unpacking cpp-13-x86-64-linux-gnu (13.2.0-23ubuntu4) ... 63s Selecting previously unselected package cpp-13. 63s Preparing to unpack .../09-cpp-13_13.2.0-23ubuntu4_amd64.deb ... 63s Unpacking cpp-13 (13.2.0-23ubuntu4) ... 63s Selecting previously unselected package cpp-x86-64-linux-gnu. 63s Preparing to unpack .../10-cpp-x86-64-linux-gnu_4%3a13.2.0-7ubuntu1_amd64.deb ... 63s Unpacking cpp-x86-64-linux-gnu (4:13.2.0-7ubuntu1) ... 63s Selecting previously unselected package cpp. 63s Preparing to unpack .../11-cpp_4%3a13.2.0-7ubuntu1_amd64.deb ... 63s Unpacking cpp (4:13.2.0-7ubuntu1) ... 63s Selecting previously unselected package libcc1-0:amd64. 63s Preparing to unpack .../12-libcc1-0_14.1.0-1ubuntu1_amd64.deb ... 63s Unpacking libcc1-0:amd64 (14.1.0-1ubuntu1) ... 63s Selecting previously unselected package libgomp1:amd64. 63s Preparing to unpack .../13-libgomp1_14.1.0-1ubuntu1_amd64.deb ... 63s Unpacking libgomp1:amd64 (14.1.0-1ubuntu1) ... 63s Selecting previously unselected package libitm1:amd64. 63s Preparing to unpack .../14-libitm1_14.1.0-1ubuntu1_amd64.deb ... 63s Unpacking libitm1:amd64 (14.1.0-1ubuntu1) ... 63s Selecting previously unselected package libatomic1:amd64. 63s Preparing to unpack .../15-libatomic1_14.1.0-1ubuntu1_amd64.deb ... 63s Unpacking libatomic1:amd64 (14.1.0-1ubuntu1) ... 63s Selecting previously unselected package libasan8:amd64. 63s Preparing to unpack .../16-libasan8_14.1.0-1ubuntu1_amd64.deb ... 63s Unpacking libasan8:amd64 (14.1.0-1ubuntu1) ... 63s Selecting previously unselected package liblsan0:amd64. 63s Preparing to unpack .../17-liblsan0_14.1.0-1ubuntu1_amd64.deb ... 63s Unpacking liblsan0:amd64 (14.1.0-1ubuntu1) ... 63s Selecting previously unselected package libtsan2:amd64. 63s Preparing to unpack .../18-libtsan2_14.1.0-1ubuntu1_amd64.deb ... 63s Unpacking libtsan2:amd64 (14.1.0-1ubuntu1) ... 63s Selecting previously unselected package libubsan1:amd64. 63s Preparing to unpack .../19-libubsan1_14.1.0-1ubuntu1_amd64.deb ... 63s Unpacking libubsan1:amd64 (14.1.0-1ubuntu1) ... 63s Selecting previously unselected package libhwasan0:amd64. 63s Preparing to unpack .../20-libhwasan0_14.1.0-1ubuntu1_amd64.deb ... 63s Unpacking libhwasan0:amd64 (14.1.0-1ubuntu1) ... 63s Selecting previously unselected package libquadmath0:amd64. 63s Preparing to unpack .../21-libquadmath0_14.1.0-1ubuntu1_amd64.deb ... 63s Unpacking libquadmath0:amd64 (14.1.0-1ubuntu1) ... 63s Selecting previously unselected package libgcc-13-dev:amd64. 63s Preparing to unpack .../22-libgcc-13-dev_13.2.0-23ubuntu4_amd64.deb ... 63s Unpacking libgcc-13-dev:amd64 (13.2.0-23ubuntu4) ... 63s Selecting previously unselected package gcc-13-x86-64-linux-gnu. 63s Preparing to unpack .../23-gcc-13-x86-64-linux-gnu_13.2.0-23ubuntu4_amd64.deb ... 63s Unpacking gcc-13-x86-64-linux-gnu (13.2.0-23ubuntu4) ... 64s Selecting previously unselected package gcc-13. 64s Preparing to unpack .../24-gcc-13_13.2.0-23ubuntu4_amd64.deb ... 64s Unpacking gcc-13 (13.2.0-23ubuntu4) ... 64s Selecting previously unselected package gcc-x86-64-linux-gnu. 64s Preparing to unpack .../25-gcc-x86-64-linux-gnu_4%3a13.2.0-7ubuntu1_amd64.deb ... 64s Unpacking gcc-x86-64-linux-gnu (4:13.2.0-7ubuntu1) ... 64s Selecting previously unselected package gcc. 64s Preparing to unpack .../26-gcc_4%3a13.2.0-7ubuntu1_amd64.deb ... 64s Unpacking gcc (4:13.2.0-7ubuntu1) ... 64s Selecting previously unselected package libstdc++-13-dev:amd64. 64s Preparing to unpack .../27-libstdc++-13-dev_13.2.0-23ubuntu4_amd64.deb ... 64s Unpacking libstdc++-13-dev:amd64 (13.2.0-23ubuntu4) ... 64s Selecting previously unselected package g++-13-x86-64-linux-gnu. 64s Preparing to unpack .../28-g++-13-x86-64-linux-gnu_13.2.0-23ubuntu4_amd64.deb ... 64s Unpacking g++-13-x86-64-linux-gnu (13.2.0-23ubuntu4) ... 64s Selecting previously unselected package g++-13. 64s Preparing to unpack .../29-g++-13_13.2.0-23ubuntu4_amd64.deb ... 64s Unpacking g++-13 (13.2.0-23ubuntu4) ... 64s Selecting previously unselected package g++-x86-64-linux-gnu. 64s Preparing to unpack .../30-g++-x86-64-linux-gnu_4%3a13.2.0-7ubuntu1_amd64.deb ... 64s Unpacking g++-x86-64-linux-gnu (4:13.2.0-7ubuntu1) ... 64s Selecting previously unselected package g++. 64s Preparing to unpack .../31-g++_4%3a13.2.0-7ubuntu1_amd64.deb ... 64s Unpacking g++ (4:13.2.0-7ubuntu1) ... 64s Selecting previously unselected package build-essential. 64s Preparing to unpack .../32-build-essential_12.10ubuntu1_amd64.deb ... 64s Unpacking build-essential (12.10ubuntu1) ... 64s Selecting previously unselected package libdebhelper-perl. 64s Preparing to unpack .../33-libdebhelper-perl_13.16ubuntu2_all.deb ... 64s Unpacking libdebhelper-perl (13.16ubuntu2) ... 64s Selecting previously unselected package libtool. 64s Preparing to unpack .../34-libtool_2.4.7-7build1_all.deb ... 64s Unpacking libtool (2.4.7-7build1) ... 64s Selecting previously unselected package dh-autoreconf. 64s Preparing to unpack .../35-dh-autoreconf_20_all.deb ... 64s Unpacking dh-autoreconf (20) ... 64s Selecting previously unselected package libarchive-zip-perl. 64s Preparing to unpack .../36-libarchive-zip-perl_1.68-1_all.deb ... 64s Unpacking libarchive-zip-perl (1.68-1) ... 64s Selecting previously unselected package libfile-stripnondeterminism-perl. 64s Preparing to unpack .../37-libfile-stripnondeterminism-perl_1.14.0-1_all.deb ... 64s Unpacking libfile-stripnondeterminism-perl (1.14.0-1) ... 64s Selecting previously unselected package dh-strip-nondeterminism. 64s Preparing to unpack .../38-dh-strip-nondeterminism_1.14.0-1_all.deb ... 64s Unpacking dh-strip-nondeterminism (1.14.0-1) ... 64s Selecting previously unselected package debugedit. 64s Preparing to unpack .../39-debugedit_1%3a5.0-5build2_amd64.deb ... 64s Unpacking debugedit (1:5.0-5build2) ... 64s Selecting previously unselected package dwz. 64s Preparing to unpack .../40-dwz_0.15-1build6_amd64.deb ... 64s Unpacking dwz (0.15-1build6) ... 64s Selecting previously unselected package gettext. 64s Preparing to unpack .../41-gettext_0.21-14ubuntu2_amd64.deb ... 64s Unpacking gettext (0.21-14ubuntu2) ... 64s Selecting previously unselected package intltool-debian. 64s Preparing to unpack .../42-intltool-debian_0.35.0+20060710.6_all.deb ... 64s Unpacking intltool-debian (0.35.0+20060710.6) ... 64s Selecting previously unselected package po-debconf. 64s Preparing to unpack .../43-po-debconf_1.0.21+nmu1_all.deb ... 64s Unpacking po-debconf (1.0.21+nmu1) ... 64s Selecting previously unselected package debhelper. 65s Preparing to unpack .../44-debhelper_13.16ubuntu2_all.deb ... 65s Unpacking debhelper (13.16ubuntu2) ... 65s Selecting previously unselected package dh-python. 65s Preparing to unpack .../45-dh-python_6.20240422_all.deb ... 65s Unpacking dh-python (6.20240422) ... 65s Selecting previously unselected package python3-all. 65s Preparing to unpack .../46-python3-all_3.12.3-0ubuntu1_amd64.deb ... 65s Unpacking python3-all (3.12.3-0ubuntu1) ... 65s Selecting previously unselected package python3-iniconfig. 65s Preparing to unpack .../47-python3-iniconfig_1.1.1-2_all.deb ... 65s Unpacking python3-iniconfig (1.1.1-2) ... 65s Selecting previously unselected package python3-packaging. 65s Preparing to unpack .../48-python3-packaging_24.0-1_all.deb ... 65s Unpacking python3-packaging (24.0-1) ... 65s Selecting previously unselected package python3-pbr. 65s Preparing to unpack .../49-python3-pbr_5.11.1-0ubuntu1_all.deb ... 65s Unpacking python3-pbr (5.11.1-0ubuntu1) ... 65s Selecting previously unselected package python3-wheel. 65s Preparing to unpack .../50-python3-wheel_0.43.0-1_all.deb ... 65s Unpacking python3-wheel (0.43.0-1) ... 65s Selecting previously unselected package python3-pip. 65s Preparing to unpack .../51-python3-pip_24.1+dfsg-1_all.deb ... 65s Unpacking python3-pip (24.1+dfsg-1) ... 65s Selecting previously unselected package python3-pluggy. 65s Preparing to unpack .../52-python3-pluggy_1.5.0-1_all.deb ... 65s Unpacking python3-pluggy (1.5.0-1) ... 65s Selecting previously unselected package python3-pytest. 65s Preparing to unpack .../53-python3-pytest_7.4.4-1_all.deb ... 65s Unpacking python3-pytest (7.4.4-1) ... 65s Selecting previously unselected package python3-requests-unixsocket. 65s Preparing to unpack .../54-python3-requests-unixsocket_0.3.0-4_all.deb ... 65s Unpacking python3-requests-unixsocket (0.3.0-4) ... 65s Selecting previously unselected package python3-waitress. 65s Preparing to unpack .../55-python3-waitress_3.0.0-1_all.deb ... 65s Unpacking python3-waitress (3.0.0-1) ... 65s Selecting previously unselected package openstack-pkg-tools. 65s Preparing to unpack .../56-openstack-pkg-tools_123ubuntu2_all.deb ... 65s Unpacking openstack-pkg-tools (123ubuntu2) ... 65s Setting up dh-python (6.20240422) ... 65s Setting up python3-iniconfig (1.1.1-2) ... 65s Setting up python3-waitress (3.0.0-1) ... 65s Setting up python3-pbr (5.11.1-0ubuntu1) ... 66s Setting up libarchive-zip-perl (1.68-1) ... 66s Setting up libdebhelper-perl (13.16ubuntu2) ... 66s Setting up m4 (1.4.19-4build1) ... 66s Setting up python3-all (3.12.3-0ubuntu1) ... 66s Setting up libgomp1:amd64 (14.1.0-1ubuntu1) ... 66s Setting up python3-wheel (0.43.0-1) ... 66s Setting up python3-requests-unixsocket (0.3.0-4) ... 66s Setting up autotools-dev (20220109.1) ... 66s Setting up python3-packaging (24.0-1) ... 66s Setting up gcc-13-base:amd64 (13.2.0-23ubuntu4) ... 66s Setting up libquadmath0:amd64 (14.1.0-1ubuntu1) ... 66s Setting up libmpc3:amd64 (1.3.1-1build1) ... 66s Setting up libatomic1:amd64 (14.1.0-1ubuntu1) ... 66s Setting up autopoint (0.21-14ubuntu2) ... 66s Setting up python3-pip (24.1+dfsg-1) ... 67s Setting up autoconf (2.71-3) ... 67s Setting up python3-pluggy (1.5.0-1) ... 67s Setting up libubsan1:amd64 (14.1.0-1ubuntu1) ... 67s Setting up dwz (0.15-1build6) ... 67s Setting up libhwasan0:amd64 (14.1.0-1ubuntu1) ... 67s Setting up libasan8:amd64 (14.1.0-1ubuntu1) ... 67s Setting up debugedit (1:5.0-5build2) ... 67s Setting up libtsan2:amd64 (14.1.0-1ubuntu1) ... 67s Setting up libisl23:amd64 (0.26-3build1) ... 67s Setting up libcc1-0:amd64 (14.1.0-1ubuntu1) ... 67s Setting up liblsan0:amd64 (14.1.0-1ubuntu1) ... 67s Setting up libitm1:amd64 (14.1.0-1ubuntu1) ... 67s Setting up automake (1:1.16.5-1.3ubuntu1) ... 67s update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode 67s Setting up libfile-stripnondeterminism-perl (1.14.0-1) ... 67s Setting up gettext (0.21-14ubuntu2) ... 67s Setting up cpp-13-x86-64-linux-gnu (13.2.0-23ubuntu4) ... 67s Setting up python3-pytest (7.4.4-1) ... 67s Setting up intltool-debian (0.35.0+20060710.6) ... 67s Setting up dh-strip-nondeterminism (1.14.0-1) ... 67s Setting up libgcc-13-dev:amd64 (13.2.0-23ubuntu4) ... 67s Setting up libstdc++-13-dev:amd64 (13.2.0-23ubuntu4) ... 67s Setting up cpp-x86-64-linux-gnu (4:13.2.0-7ubuntu1) ... 67s Setting up cpp-13 (13.2.0-23ubuntu4) ... 67s Setting up gcc-13-x86-64-linux-gnu (13.2.0-23ubuntu4) ... 67s Setting up po-debconf (1.0.21+nmu1) ... 67s Setting up openstack-pkg-tools (123ubuntu2) ... 67s Setting up gcc-13 (13.2.0-23ubuntu4) ... 67s Setting up cpp (4:13.2.0-7ubuntu1) ... 67s Setting up g++-13-x86-64-linux-gnu (13.2.0-23ubuntu4) ... 67s Setting up gcc-x86-64-linux-gnu (4:13.2.0-7ubuntu1) ... 67s Setting up libtool (2.4.7-7build1) ... 67s Setting up gcc (4:13.2.0-7ubuntu1) ... 67s Setting up dh-autoreconf (20) ... 67s Setting up g++-x86-64-linux-gnu (4:13.2.0-7ubuntu1) ... 67s Setting up g++-13 (13.2.0-23ubuntu4) ... 67s Setting up debhelper (13.16ubuntu2) ... 67s Setting up g++ (4:13.2.0-7ubuntu1) ... 67s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 67s Setting up build-essential (12.10ubuntu1) ... 67s Processing triggers for libc-bin (2.39-0ubuntu9) ... 67s Processing triggers for man-db (2.12.1-2) ... 69s Processing triggers for install-info (7.1-3build2) ... 70s Reading package lists... 70s Building dependency tree... 70s Reading state information... 70s Starting pkgProblemResolver with broken count: 0 70s Starting 2 pkgProblemResolver with broken count: 0 70s Done 71s The following NEW packages will be installed: 71s autopkgtest-satdep 71s 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 71s Need to get 0 B/696 B of archives. 71s After this operation, 0 B of additional disk space will be used. 71s Get:1 /tmp/autopkgtest.dastyX/2-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [696 B] 71s Selecting previously unselected package autopkgtest-satdep. 71s (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 ... 77959 files and directories currently installed.) 71s Preparing to unpack .../2-autopkgtest-satdep.deb ... 71s Unpacking autopkgtest-satdep (0) ... 71s Setting up autopkgtest-satdep (0) ... 73s (Reading database ... 77959 files and directories currently installed.) 73s Removing autopkgtest-satdep (0) ... 73s autopkgtest [11:58:56]: test python3-requests-unixsocket: [----------------------- 73s === python3.12 === 73s ============================= test session starts ============================== 73s platform linux -- Python 3.12.4, pytest-7.4.4, pluggy-1.5.0 -- /usr/bin/python3.12 73s cachedir: .pytest_cache 73s rootdir: /tmp/autopkgtest.dastyX/autopkgtest_tmp 73s collecting ... collected 5 items 73s 73s tests/test_requests_unixsocket.py::test_unix_domain_adapter_ok FAILED [ 20%] 73s tests/test_requests_unixsocket.py::test_unix_domain_adapter_url_with_query_params FAILED [ 40%] 73s tests/test_requests_unixsocket.py::test_unix_domain_adapter_connection_error FAILED [ 60%] 208s tests/test_requests_unixsocket.py::test_unix_domain_adapter_connection_proxies_error FAILED [ 80%] 208s tests/test_requests_unixsocket.py::test_unix_domain_adapter_monkeypatch FAILED [100%] 208s 208s =================================== FAILURES =================================== 208s _________________________ test_unix_domain_adapter_ok __________________________ 208s 208s self = 208s request = , stream = False, timeout = None, verify = True 208s cert = None 208s proxies = OrderedDict({'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,p...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 208s 208s def send( 208s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 208s ): 208s """Sends PreparedRequest object. Returns Response object. 208s 208s :param request: The :class:`PreparedRequest ` being sent. 208s :param stream: (optional) Whether to stream the request content. 208s :param timeout: (optional) How long to wait for the server to send 208s data before giving up, as a float, or a :ref:`(connect timeout, 208s read timeout) ` tuple. 208s :type timeout: float or tuple or urllib3 Timeout object 208s :param verify: (optional) Either a boolean, in which case it controls whether 208s we verify the server's TLS certificate, or a string, in which case it 208s must be a path to a CA bundle to use 208s :param cert: (optional) Any user-provided SSL certificate to be trusted. 208s :param proxies: (optional) The proxies dictionary to apply to the request. 208s :rtype: requests.Response 208s """ 208s 208s try: 208s > conn = self.get_connection_with_tls_context( 208s request, verify, proxies=proxies, cert=cert 208s ) 208s 208s /usr/lib/python3/dist-packages/requests/adapters.py:633: 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s /usr/lib/python3/dist-packages/requests/adapters.py:489: in get_connection_with_tls_context 208s conn = self.poolmanager.connection_from_host( 208s /usr/lib/python3/dist-packages/urllib3/poolmanager.py:303: in connection_from_host 208s return self.connection_from_context(request_context) 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s 208s self = 208s request_context = {'block': False, 'cert_reqs': 'CERT_REQUIRED', 'host': '%2Ftmp%2Ftest_requests.273637_2828_697f0557', 'maxsize': 10, ...} 208s 208s def connection_from_context( 208s self, request_context: dict[str, typing.Any] 208s ) -> HTTPConnectionPool: 208s """ 208s Get a :class:`urllib3.connectionpool.ConnectionPool` based on the request context. 208s 208s ``request_context`` must at least contain the ``scheme`` key and its 208s value must be a key in ``key_fn_by_scheme`` instance variable. 208s """ 208s if "strict" in request_context: 208s warnings.warn( 208s "The 'strict' parameter is no longer needed on Python 3+. " 208s "This will raise an error in urllib3 v2.1.0.", 208s DeprecationWarning, 208s ) 208s request_context.pop("strict") 208s 208s scheme = request_context["scheme"].lower() 208s pool_key_constructor = self.key_fn_by_scheme.get(scheme) 208s if not pool_key_constructor: 208s > raise URLSchemeUnknown(scheme) 208s E urllib3.exceptions.URLSchemeUnknown: Not supported URL scheme http+unix 208s 208s /usr/lib/python3/dist-packages/urllib3/poolmanager.py:325: URLSchemeUnknown 208s 208s During handling of the above exception, another exception occurred: 208s 208s def test_unix_domain_adapter_ok(): 208s with UnixSocketServerThread() as usock_thread: 208s session = requests_unixsocket.Session('http+unix://') 208s urlencoded_usock = requests.compat.quote_plus(usock_thread.usock) 208s url = 'http+unix://%s/path/to/page' % urlencoded_usock 208s 208s for method in ['get', 'post', 'head', 'patch', 'put', 'delete', 208s 'options']: 208s logger.debug('Calling session.%s(%r) ...', method, url) 208s > r = getattr(session, method)(url) 208s 208s tests/test_requests_unixsocket.py:27: 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s /usr/lib/python3/dist-packages/requests/sessions.py:602: in get 208s return self.request("GET", url, **kwargs) 208s /usr/lib/python3/dist-packages/requests/sessions.py:589: in request 208s resp = self.send(prep, **send_kwargs) 208s /usr/lib/python3/dist-packages/requests/sessions.py:703: in send 208s r = adapter.send(request, **kwargs) 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s 208s self = 208s request = , stream = False, timeout = None, verify = True 208s cert = None 208s proxies = OrderedDict({'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,p...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 208s 208s def send( 208s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 208s ): 208s """Sends PreparedRequest object. Returns Response object. 208s 208s :param request: The :class:`PreparedRequest ` being sent. 208s :param stream: (optional) Whether to stream the request content. 208s :param timeout: (optional) How long to wait for the server to send 208s data before giving up, as a float, or a :ref:`(connect timeout, 208s read timeout) ` tuple. 208s :type timeout: float or tuple or urllib3 Timeout object 208s :param verify: (optional) Either a boolean, in which case it controls whether 208s we verify the server's TLS certificate, or a string, in which case it 208s must be a path to a CA bundle to use 208s :param cert: (optional) Any user-provided SSL certificate to be trusted. 208s :param proxies: (optional) The proxies dictionary to apply to the request. 208s :rtype: requests.Response 208s """ 208s 208s try: 208s conn = self.get_connection_with_tls_context( 208s request, verify, proxies=proxies, cert=cert 208s ) 208s except LocationValueError as e: 208s > raise InvalidURL(e, request=request) 208s E requests.exceptions.InvalidURL: Not supported URL scheme http+unix 208s 208s /usr/lib/python3/dist-packages/requests/adapters.py:637: InvalidURL 208s ________________ test_unix_domain_adapter_url_with_query_params ________________ 208s 208s self = 208s request = , stream = False, timeout = None, verify = True 208s cert = None 208s proxies = OrderedDict({'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,p...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 208s 208s def send( 208s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 208s ): 208s """Sends PreparedRequest object. Returns Response object. 208s 208s :param request: The :class:`PreparedRequest ` being sent. 208s :param stream: (optional) Whether to stream the request content. 208s :param timeout: (optional) How long to wait for the server to send 208s data before giving up, as a float, or a :ref:`(connect timeout, 208s read timeout) ` tuple. 208s :type timeout: float or tuple or urllib3 Timeout object 208s :param verify: (optional) Either a boolean, in which case it controls whether 208s we verify the server's TLS certificate, or a string, in which case it 208s must be a path to a CA bundle to use 208s :param cert: (optional) Any user-provided SSL certificate to be trusted. 208s :param proxies: (optional) The proxies dictionary to apply to the request. 208s :rtype: requests.Response 208s """ 208s 208s try: 208s > conn = self.get_connection_with_tls_context( 208s request, verify, proxies=proxies, cert=cert 208s ) 208s 208s /usr/lib/python3/dist-packages/requests/adapters.py:633: 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s /usr/lib/python3/dist-packages/requests/adapters.py:489: in get_connection_with_tls_context 208s conn = self.poolmanager.connection_from_host( 208s /usr/lib/python3/dist-packages/urllib3/poolmanager.py:303: in connection_from_host 208s return self.connection_from_context(request_context) 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s 208s self = 208s request_context = {'block': False, 'cert_reqs': 'CERT_REQUIRED', 'host': '%2Ftmp%2Ftest_requests.273637_2828_0f1d7fc0', 'maxsize': 10, ...} 208s 208s def connection_from_context( 208s self, request_context: dict[str, typing.Any] 208s ) -> HTTPConnectionPool: 208s """ 208s Get a :class:`urllib3.connectionpool.ConnectionPool` based on the request context. 208s 208s ``request_context`` must at least contain the ``scheme`` key and its 208s value must be a key in ``key_fn_by_scheme`` instance variable. 208s """ 208s if "strict" in request_context: 208s warnings.warn( 208s "The 'strict' parameter is no longer needed on Python 3+. " 208s "This will raise an error in urllib3 v2.1.0.", 208s DeprecationWarning, 208s ) 208s request_context.pop("strict") 208s 208s scheme = request_context["scheme"].lower() 208s pool_key_constructor = self.key_fn_by_scheme.get(scheme) 208s if not pool_key_constructor: 208s > raise URLSchemeUnknown(scheme) 208s E urllib3.exceptions.URLSchemeUnknown: Not supported URL scheme http+unix 208s 208s /usr/lib/python3/dist-packages/urllib3/poolmanager.py:325: URLSchemeUnknown 208s 208s During handling of the above exception, another exception occurred: 208s 208s def test_unix_domain_adapter_url_with_query_params(): 208s with UnixSocketServerThread() as usock_thread: 208s session = requests_unixsocket.Session('http+unix://') 208s urlencoded_usock = requests.compat.quote_plus(usock_thread.usock) 208s url = ('http+unix://%s' 208s '/containers/nginx/logs?timestamp=true' % urlencoded_usock) 208s 208s for method in ['get', 'post', 'head', 'patch', 'put', 'delete', 208s 'options']: 208s logger.debug('Calling session.%s(%r) ...', method, url) 208s > r = getattr(session, method)(url) 208s 208s tests/test_requests_unixsocket.py:54: 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s /usr/lib/python3/dist-packages/requests/sessions.py:602: in get 208s return self.request("GET", url, **kwargs) 208s /usr/lib/python3/dist-packages/requests/sessions.py:589: in request 208s resp = self.send(prep, **send_kwargs) 208s /usr/lib/python3/dist-packages/requests/sessions.py:703: in send 208s r = adapter.send(request, **kwargs) 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s 208s self = 208s request = , stream = False, timeout = None, verify = True 208s cert = None 208s proxies = OrderedDict({'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,p...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 208s 208s def send( 208s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 208s ): 208s """Sends PreparedRequest object. Returns Response object. 208s 208s :param request: The :class:`PreparedRequest ` being sent. 208s :param stream: (optional) Whether to stream the request content. 208s :param timeout: (optional) How long to wait for the server to send 208s data before giving up, as a float, or a :ref:`(connect timeout, 208s read timeout) ` tuple. 208s :type timeout: float or tuple or urllib3 Timeout object 208s :param verify: (optional) Either a boolean, in which case it controls whether 208s we verify the server's TLS certificate, or a string, in which case it 208s must be a path to a CA bundle to use 208s :param cert: (optional) Any user-provided SSL certificate to be trusted. 208s :param proxies: (optional) The proxies dictionary to apply to the request. 208s :rtype: requests.Response 208s """ 208s 208s try: 208s conn = self.get_connection_with_tls_context( 208s request, verify, proxies=proxies, cert=cert 208s ) 208s except LocationValueError as e: 208s > raise InvalidURL(e, request=request) 208s E requests.exceptions.InvalidURL: Not supported URL scheme http+unix 208s 208s /usr/lib/python3/dist-packages/requests/adapters.py:637: InvalidURL 208s __________________ test_unix_domain_adapter_connection_error ___________________ 208s 208s self = 208s request = , stream = False, timeout = None, verify = True 208s cert = None 208s proxies = OrderedDict({'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,p...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 208s 208s def send( 208s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 208s ): 208s """Sends PreparedRequest object. Returns Response object. 208s 208s :param request: The :class:`PreparedRequest ` being sent. 208s :param stream: (optional) Whether to stream the request content. 208s :param timeout: (optional) How long to wait for the server to send 208s data before giving up, as a float, or a :ref:`(connect timeout, 208s read timeout) ` tuple. 208s :type timeout: float or tuple or urllib3 Timeout object 208s :param verify: (optional) Either a boolean, in which case it controls whether 208s we verify the server's TLS certificate, or a string, in which case it 208s must be a path to a CA bundle to use 208s :param cert: (optional) Any user-provided SSL certificate to be trusted. 208s :param proxies: (optional) The proxies dictionary to apply to the request. 208s :rtype: requests.Response 208s """ 208s 208s try: 208s > conn = self.get_connection_with_tls_context( 208s request, verify, proxies=proxies, cert=cert 208s ) 208s 208s /usr/lib/python3/dist-packages/requests/adapters.py:633: 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s /usr/lib/python3/dist-packages/requests/adapters.py:489: in get_connection_with_tls_context 208s conn = self.poolmanager.connection_from_host( 208s /usr/lib/python3/dist-packages/urllib3/poolmanager.py:303: in connection_from_host 208s return self.connection_from_context(request_context) 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s 208s self = 208s request_context = {'block': False, 'cert_reqs': 'CERT_REQUIRED', 'host': 'socket_does_not_exist', 'maxsize': 10, ...} 208s 208s def connection_from_context( 208s self, request_context: dict[str, typing.Any] 208s ) -> HTTPConnectionPool: 208s """ 208s Get a :class:`urllib3.connectionpool.ConnectionPool` based on the request context. 208s 208s ``request_context`` must at least contain the ``scheme`` key and its 208s value must be a key in ``key_fn_by_scheme`` instance variable. 208s """ 208s if "strict" in request_context: 208s warnings.warn( 208s "The 'strict' parameter is no longer needed on Python 3+. " 208s "This will raise an error in urllib3 v2.1.0.", 208s DeprecationWarning, 208s ) 208s request_context.pop("strict") 208s 208s scheme = request_context["scheme"].lower() 208s pool_key_constructor = self.key_fn_by_scheme.get(scheme) 208s if not pool_key_constructor: 208s > raise URLSchemeUnknown(scheme) 208s E urllib3.exceptions.URLSchemeUnknown: Not supported URL scheme http+unix 208s 208s /usr/lib/python3/dist-packages/urllib3/poolmanager.py:325: URLSchemeUnknown 208s 208s During handling of the above exception, another exception occurred: 208s 208s def test_unix_domain_adapter_connection_error(): 208s session = requests_unixsocket.Session('http+unix://') 208s 208s for method in ['get', 'post', 'head', 'patch', 'put', 'delete', 'options']: 208s with pytest.raises(requests.ConnectionError): 208s > getattr(session, method)( 208s 'http+unix://socket_does_not_exist/path/to/page') 208s 208s tests/test_requests_unixsocket.py:77: 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s /usr/lib/python3/dist-packages/requests/sessions.py:602: in get 208s return self.request("GET", url, **kwargs) 208s /usr/lib/python3/dist-packages/requests/sessions.py:589: in request 208s resp = self.send(prep, **send_kwargs) 208s /usr/lib/python3/dist-packages/requests/sessions.py:703: in send 208s r = adapter.send(request, **kwargs) 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s 208s self = 208s request = , stream = False, timeout = None, verify = True 208s cert = None 208s proxies = OrderedDict({'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,p...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 208s 208s def send( 208s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 208s ): 208s """Sends PreparedRequest object. Returns Response object. 208s 208s :param request: The :class:`PreparedRequest ` being sent. 208s :param stream: (optional) Whether to stream the request content. 208s :param timeout: (optional) How long to wait for the server to send 208s data before giving up, as a float, or a :ref:`(connect timeout, 208s read timeout) ` tuple. 208s :type timeout: float or tuple or urllib3 Timeout object 208s :param verify: (optional) Either a boolean, in which case it controls whether 208s we verify the server's TLS certificate, or a string, in which case it 208s must be a path to a CA bundle to use 208s :param cert: (optional) Any user-provided SSL certificate to be trusted. 208s :param proxies: (optional) The proxies dictionary to apply to the request. 208s :rtype: requests.Response 208s """ 208s 208s try: 208s conn = self.get_connection_with_tls_context( 208s request, verify, proxies=proxies, cert=cert 208s ) 208s except LocationValueError as e: 208s > raise InvalidURL(e, request=request) 208s E requests.exceptions.InvalidURL: Not supported URL scheme http+unix 208s 208s /usr/lib/python3/dist-packages/requests/adapters.py:637: InvalidURL 208s ______________ test_unix_domain_adapter_connection_proxies_error _______________ 208s 208s self = 208s 208s def _new_conn(self) -> socket.socket: 208s """Establish a socket connection and set nodelay settings on it. 208s 208s :return: New socket connection. 208s """ 208s try: 208s > sock = connection.create_connection( 208s (self._dns_host, self.port), 208s self.timeout, 208s source_address=self.source_address, 208s socket_options=self.socket_options, 208s ) 208s 208s /usr/lib/python3/dist-packages/urllib3/connection.py:203: 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s /usr/lib/python3/dist-packages/urllib3/util/connection.py:85: in create_connection 208s raise err 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s 208s address = ('10.10.1.10', 1080), timeout = None, source_address = None 208s socket_options = [] 208s 208s def create_connection( 208s address: tuple[str, int], 208s timeout: _TYPE_TIMEOUT = _DEFAULT_TIMEOUT, 208s source_address: tuple[str, int] | None = None, 208s socket_options: _TYPE_SOCKET_OPTIONS | None = None, 208s ) -> socket.socket: 208s """Connect to *address* and return the socket object. 208s 208s Convenience function. Connect to *address* (a 2-tuple ``(host, 208s port)``) and return the socket object. Passing the optional 208s *timeout* parameter will set the timeout on the socket instance 208s before attempting to connect. If no *timeout* is supplied, the 208s global default timeout setting returned by :func:`socket.getdefaulttimeout` 208s is used. If *source_address* is set it must be a tuple of (host, port) 208s for the socket to bind as a source address before making the connection. 208s An host of '' or port 0 tells the OS to use the default. 208s """ 208s 208s host, port = address 208s if host.startswith("["): 208s host = host.strip("[]") 208s err = None 208s 208s # Using the value from allowed_gai_family() in the context of getaddrinfo lets 208s # us select whether to work with IPv4 DNS records, IPv6 records, or both. 208s # The original create_connection function always returns all records. 208s family = allowed_gai_family() 208s 208s try: 208s host.encode("idna") 208s except UnicodeError: 208s raise LocationParseError(f"'{host}', label empty or too long") from None 208s 208s for res in socket.getaddrinfo(host, port, family, socket.SOCK_STREAM): 208s af, socktype, proto, canonname, sa = res 208s sock = None 208s try: 208s sock = socket.socket(af, socktype, proto) 208s 208s # If provided, set socket level options before connecting. 208s _set_socket_options(sock, socket_options) 208s 208s if timeout is not _DEFAULT_TIMEOUT: 208s sock.settimeout(timeout) 208s if source_address: 208s sock.bind(source_address) 208s > sock.connect(sa) 208s E TimeoutError: [Errno 110] Connection timed out 208s 208s /usr/lib/python3/dist-packages/urllib3/util/connection.py:73: TimeoutError 208s 208s The above exception was the direct cause of the following exception: 208s 208s self = 208s method = 'GET', url = '/path/to/page', body = None 208s headers = {'User-Agent': 'python-requests/2.32.3', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'Connection': 'keep-alive'} 208s retries = Retry(total=0, connect=None, read=False, redirect=None, status=None) 208s redirect = False, assert_same_host = False 208s timeout = Timeout(connect=None, read=None, total=None), pool_timeout = None 208s release_conn = False, chunked = False, body_pos = None, preload_content = False 208s decode_content = False, response_kw = {} 208s parsed_url = Url(scheme=None, auth=None, host=None, port=None, path='/path/to/page', query=None, fragment=None) 208s destination_scheme = None, conn = None, release_this_conn = True 208s http_tunnel_required = True, err = None, clean_exit = False 208s 208s def urlopen( # type: ignore[override] 208s self, 208s method: str, 208s url: str, 208s body: _TYPE_BODY | None = None, 208s headers: typing.Mapping[str, str] | None = None, 208s retries: Retry | bool | int | None = None, 208s redirect: bool = True, 208s assert_same_host: bool = True, 208s timeout: _TYPE_TIMEOUT = _DEFAULT_TIMEOUT, 208s pool_timeout: int | None = None, 208s release_conn: bool | None = None, 208s chunked: bool = False, 208s body_pos: _TYPE_BODY_POSITION | None = None, 208s preload_content: bool = True, 208s decode_content: bool = True, 208s **response_kw: typing.Any, 208s ) -> BaseHTTPResponse: 208s """ 208s Get a connection from the pool and perform an HTTP request. This is the 208s lowest level call for making a request, so you'll need to specify all 208s the raw details. 208s 208s .. note:: 208s 208s More commonly, it's appropriate to use a convenience method 208s such as :meth:`request`. 208s 208s .. note:: 208s 208s `release_conn` will only behave as expected if 208s `preload_content=False` because we want to make 208s `preload_content=False` the default behaviour someday soon without 208s breaking backwards compatibility. 208s 208s :param method: 208s HTTP request method (such as GET, POST, PUT, etc.) 208s 208s :param url: 208s The URL to perform the request on. 208s 208s :param body: 208s Data to send in the request body, either :class:`str`, :class:`bytes`, 208s an iterable of :class:`str`/:class:`bytes`, or a file-like object. 208s 208s :param headers: 208s Dictionary of custom headers to send, such as User-Agent, 208s If-None-Match, etc. If None, pool headers are used. If provided, 208s these headers completely replace any pool-specific headers. 208s 208s :param retries: 208s Configure the number of retries to allow before raising a 208s :class:`~urllib3.exceptions.MaxRetryError` exception. 208s 208s Pass ``None`` to retry until you receive a response. Pass a 208s :class:`~urllib3.util.retry.Retry` object for fine-grained control 208s over different types of retries. 208s Pass an integer number to retry connection errors that many times, 208s but no other types of errors. Pass zero to never retry. 208s 208s If ``False``, then retries are disabled and any exception is raised 208s immediately. Also, instead of raising a MaxRetryError on redirects, 208s the redirect response will be returned. 208s 208s :type retries: :class:`~urllib3.util.retry.Retry`, False, or an int. 208s 208s :param redirect: 208s If True, automatically handle redirects (status codes 301, 302, 208s 303, 307, 308). Each redirect counts as a retry. Disabling retries 208s will disable redirect, too. 208s 208s :param assert_same_host: 208s If ``True``, will make sure that the host of the pool requests is 208s consistent else will raise HostChangedError. When ``False``, you can 208s use the pool on an HTTP proxy and request foreign hosts. 208s 208s :param timeout: 208s If specified, overrides the default timeout for this one 208s request. It may be a float (in seconds) or an instance of 208s :class:`urllib3.util.Timeout`. 208s 208s :param pool_timeout: 208s If set and the pool is set to block=True, then this method will 208s block for ``pool_timeout`` seconds and raise EmptyPoolError if no 208s connection is available within the time period. 208s 208s :param bool preload_content: 208s If True, the response's body will be preloaded into memory. 208s 208s :param bool decode_content: 208s If True, will attempt to decode the body based on the 208s 'content-encoding' header. 208s 208s :param release_conn: 208s If False, then the urlopen call will not release the connection 208s back into the pool once a response is received (but will release if 208s you read the entire contents of the response such as when 208s `preload_content=True`). This is useful if you're not preloading 208s the response's content immediately. You will need to call 208s ``r.release_conn()`` on the response ``r`` to return the connection 208s back into the pool. If None, it takes the value of ``preload_content`` 208s which defaults to ``True``. 208s 208s :param bool chunked: 208s If True, urllib3 will send the body using chunked transfer 208s encoding. Otherwise, urllib3 will send the body using the standard 208s content-length form. Defaults to False. 208s 208s :param int body_pos: 208s Position to seek to in file-like body in the event of a retry or 208s redirect. Typically this won't need to be set because urllib3 will 208s auto-populate the value when needed. 208s """ 208s parsed_url = parse_url(url) 208s destination_scheme = parsed_url.scheme 208s 208s if headers is None: 208s headers = self.headers 208s 208s if not isinstance(retries, Retry): 208s retries = Retry.from_int(retries, redirect=redirect, default=self.retries) 208s 208s if release_conn is None: 208s release_conn = preload_content 208s 208s # Check host 208s if assert_same_host and not self.is_same_host(url): 208s raise HostChangedError(self, url, retries) 208s 208s # Ensure that the URL we're connecting to is properly encoded 208s if url.startswith("/"): 208s url = to_str(_encode_target(url)) 208s else: 208s url = to_str(parsed_url.url) 208s 208s conn = None 208s 208s # Track whether `conn` needs to be released before 208s # returning/raising/recursing. Update this variable if necessary, and 208s # leave `release_conn` constant throughout the function. That way, if 208s # the function recurses, the original value of `release_conn` will be 208s # passed down into the recursive call, and its value will be respected. 208s # 208s # See issue #651 [1] for details. 208s # 208s # [1] 208s release_this_conn = release_conn 208s 208s http_tunnel_required = connection_requires_http_tunnel( 208s self.proxy, self.proxy_config, destination_scheme 208s ) 208s 208s # Merge the proxy headers. Only done when not using HTTP CONNECT. We 208s # have to copy the headers dict so we can safely change it without those 208s # changes being reflected in anyone else's copy. 208s if not http_tunnel_required: 208s headers = headers.copy() # type: ignore[attr-defined] 208s headers.update(self.proxy_headers) # type: ignore[union-attr] 208s 208s # Must keep the exception bound to a separate variable or else Python 3 208s # complains about UnboundLocalError. 208s err = None 208s 208s # Keep track of whether we cleanly exited the except block. This 208s # ensures we do proper cleanup in finally. 208s clean_exit = False 208s 208s # Rewind body position, if needed. Record current position 208s # for future rewinds in the event of a redirect/retry. 208s body_pos = set_file_position(body, body_pos) 208s 208s try: 208s # Request a connection from the queue. 208s timeout_obj = self._get_timeout(timeout) 208s conn = self._get_conn(timeout=pool_timeout) 208s 208s conn.timeout = timeout_obj.connect_timeout # type: ignore[assignment] 208s 208s # Is this a closed/new connection that requires CONNECT tunnelling? 208s if self.proxy is not None and http_tunnel_required and conn.is_closed: 208s try: 208s self._prepare_proxy(conn) 208s except (BaseSSLError, OSError, SocketTimeout) as e: 208s self._raise_timeout( 208s err=e, url=self.proxy.url, timeout_value=conn.timeout 208s ) 208s raise 208s 208s # If we're going to release the connection in ``finally:``, then 208s # the response doesn't need to know about the connection. Otherwise 208s # it will also try to release it and we'll have a double-release 208s # mess. 208s response_conn = conn if not release_conn else None 208s 208s # Make the request on the HTTPConnection object 208s > response = self._make_request( 208s conn, 208s method, 208s url, 208s timeout=timeout_obj, 208s body=body, 208s headers=headers, 208s chunked=chunked, 208s retries=retries, 208s response_conn=response_conn, 208s preload_content=preload_content, 208s decode_content=decode_content, 208s **response_kw, 208s ) 208s 208s /usr/lib/python3/dist-packages/urllib3/connectionpool.py:791: 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s /usr/lib/python3/dist-packages/urllib3/connectionpool.py:497: in _make_request 208s conn.request( 208s /usr/lib/python3/dist-packages/urllib3/connection.py:395: in request 208s self.endheaders() 208s /usr/lib/python3.12/http/client.py:1331: in endheaders 208s self._send_output(message_body, encode_chunked=encode_chunked) 208s /usr/lib/python3.12/http/client.py:1091: in _send_output 208s self.send(msg) 208s /usr/lib/python3.12/http/client.py:1035: in send 208s self.connect() 208s /usr/lib/python3/dist-packages/urllib3/connection.py:243: in connect 208s self.sock = self._new_conn() 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s 208s self = 208s 208s def _new_conn(self) -> socket.socket: 208s """Establish a socket connection and set nodelay settings on it. 208s 208s :return: New socket connection. 208s """ 208s try: 208s sock = connection.create_connection( 208s (self._dns_host, self.port), 208s self.timeout, 208s source_address=self.source_address, 208s socket_options=self.socket_options, 208s ) 208s except socket.gaierror as e: 208s raise NameResolutionError(self.host, self, e) from e 208s except SocketTimeout as e: 208s > raise ConnectTimeoutError( 208s self, 208s f"Connection to {self.host} timed out. (connect timeout={self.timeout})", 208s ) from e 208s E urllib3.exceptions.ConnectTimeoutError: (, 'Connection to 10.10.1.10 timed out. (connect timeout=None)') 208s 208s /usr/lib/python3/dist-packages/urllib3/connection.py:212: ConnectTimeoutError 208s 208s The above exception was the direct cause of the following exception: 208s Traceback (most recent call last): 208s File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 203, in _new_conn 208s sock = connection.create_connection( 208s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 208s File "/usr/lib/python3/dist-packages/urllib3/util/connection.py", line 85, in create_connection 208s raise err 208s File "/usr/lib/python3/dist-packages/urllib3/util/connection.py", line 73, in create_connection 208s sock.connect(sa) 208s TimeoutError: [Errno 110] Connection timed out 208s 208s The above exception was the direct cause of the following exception: 208s 208s Traceback (most recent call last): 208s File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 791, in urlopen 208s response = self._make_request( 208s ^^^^^^^^^^^^^^^^^^^ 208s File "/usr/lib/python3/dist-packages/urllib3/connectionpool.py", line 497, in _make_request 208s conn.request( 208s File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 395, in request 208s self.endheaders() 208s File "/usr/lib/python3.12/http/client.py", line 1331, in endheaders 208s self._send_output(message_body, encode_chunked=encode_chunked) 208s File "/usr/lib/python3.12/http/client.py", line 1091, in _send_output 208s self.send(msg) 208s File "/usr/lib/python3.12/http/client.py", line 1035, in send 208s self.connect() 208s File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 243, in connect 208s self.sock = self._new_conn() 208s ^^^^^^^^^^^^^^^^ 208s File "/usr/lib/python3/dist-packages/urllib3/connection.py", line 212, in _new_conn 208s raise ConnectTimeoutError( 208s urllib3.exceptions.ConnectTimeoutError: (, 'Connection to 10.10.1.10 timed out. (connect timeout=None)') 208s 208s The above exception was the direct cause of the following exception: 208s 208s urllib3.exceptions.ProxyError: ('Unable to connect to proxy', ConnectTimeoutError(, 'Connection to 10.10.1.10 timed out. (connect timeout=None)')) 208s 208s The above exception was the direct cause of the following exception: 208s 208s self = 208s request = , stream = False 208s timeout = Timeout(connect=None, read=None, total=None), verify = True 208s cert = None 208s proxies = OrderedDict({'http+unix': 'http://10.10.1.10:1080', 'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 208s 208s def send( 208s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 208s ): 208s """Sends PreparedRequest object. Returns Response object. 208s 208s :param request: The :class:`PreparedRequest ` being sent. 208s :param stream: (optional) Whether to stream the request content. 208s :param timeout: (optional) How long to wait for the server to send 208s data before giving up, as a float, or a :ref:`(connect timeout, 208s read timeout) ` tuple. 208s :type timeout: float or tuple or urllib3 Timeout object 208s :param verify: (optional) Either a boolean, in which case it controls whether 208s we verify the server's TLS certificate, or a string, in which case it 208s must be a path to a CA bundle to use 208s :param cert: (optional) Any user-provided SSL certificate to be trusted. 208s :param proxies: (optional) The proxies dictionary to apply to the request. 208s :rtype: requests.Response 208s """ 208s 208s try: 208s conn = self.get_connection_with_tls_context( 208s request, verify, proxies=proxies, cert=cert 208s ) 208s except LocationValueError as e: 208s raise InvalidURL(e, request=request) 208s 208s self.cert_verify(conn, request.url, verify, cert) 208s url = self.request_url(request, proxies) 208s self.add_headers( 208s request, 208s stream=stream, 208s timeout=timeout, 208s verify=verify, 208s cert=cert, 208s proxies=proxies, 208s ) 208s 208s chunked = not (request.body is None or "Content-Length" in request.headers) 208s 208s if isinstance(timeout, tuple): 208s try: 208s connect, read = timeout 208s timeout = TimeoutSauce(connect=connect, read=read) 208s except ValueError: 208s raise ValueError( 208s f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 208s f"or a single float to set both timeouts to the same value." 208s ) 208s elif isinstance(timeout, TimeoutSauce): 208s pass 208s else: 208s timeout = TimeoutSauce(connect=timeout, read=timeout) 208s 208s try: 208s > resp = conn.urlopen( 208s method=request.method, 208s url=url, 208s body=request.body, 208s headers=request.headers, 208s redirect=False, 208s assert_same_host=False, 208s preload_content=False, 208s decode_content=False, 208s retries=self.max_retries, 208s timeout=timeout, 208s chunked=chunked, 208s ) 208s 208s /usr/lib/python3/dist-packages/requests/adapters.py:667: 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s /usr/lib/python3/dist-packages/urllib3/connectionpool.py:845: in urlopen 208s retries = retries.increment( 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s 208s self = Retry(total=0, connect=None, read=False, redirect=None, status=None) 208s method = 'GET', url = '/path/to/page', response = None 208s error = ProxyError('Unable to connect to proxy', ConnectTimeoutError(, 'Connection to 10.10.1.10 timed out. (connect timeout=None)')) 208s _pool = 208s _stacktrace = 208s 208s def increment( 208s self, 208s method: str | None = None, 208s url: str | None = None, 208s response: BaseHTTPResponse | None = None, 208s error: Exception | None = None, 208s _pool: ConnectionPool | None = None, 208s _stacktrace: TracebackType | None = None, 208s ) -> Retry: 208s """Return a new Retry object with incremented retry counters. 208s 208s :param response: A response object, or None, if the server did not 208s return a response. 208s :type response: :class:`~urllib3.response.BaseHTTPResponse` 208s :param Exception error: An error encountered during the request, or 208s None if the response was received successfully. 208s 208s :return: A new ``Retry`` object. 208s """ 208s if self.total is False and error: 208s # Disabled, indicate to re-raise the error. 208s raise reraise(type(error), error, _stacktrace) 208s 208s total = self.total 208s if total is not None: 208s total -= 1 208s 208s connect = self.connect 208s read = self.read 208s redirect = self.redirect 208s status_count = self.status 208s other = self.other 208s cause = "unknown" 208s status = None 208s redirect_location = None 208s 208s if error and self._is_connection_error(error): 208s # Connect retry? 208s if connect is False: 208s raise reraise(type(error), error, _stacktrace) 208s elif connect is not None: 208s connect -= 1 208s 208s elif error and self._is_read_error(error): 208s # Read retry? 208s if read is False or method is None or not self._is_method_retryable(method): 208s raise reraise(type(error), error, _stacktrace) 208s elif read is not None: 208s read -= 1 208s 208s elif error: 208s # Other retry? 208s if other is not None: 208s other -= 1 208s 208s elif response and response.get_redirect_location(): 208s # Redirect retry? 208s if redirect is not None: 208s redirect -= 1 208s cause = "too many redirects" 208s response_redirect_location = response.get_redirect_location() 208s if response_redirect_location: 208s redirect_location = response_redirect_location 208s status = response.status 208s 208s else: 208s # Incrementing because of a server error like a 500 in 208s # status_forcelist and the given method is in the allowed_methods 208s cause = ResponseError.GENERIC_ERROR 208s if response and response.status: 208s if status_count is not None: 208s status_count -= 1 208s cause = ResponseError.SPECIFIC_ERROR.format(status_code=response.status) 208s status = response.status 208s 208s history = self.history + ( 208s RequestHistory(method, url, error, status, redirect_location), 208s ) 208s 208s new_retry = self.new( 208s total=total, 208s connect=connect, 208s read=read, 208s redirect=redirect, 208s status=status_count, 208s other=other, 208s history=history, 208s ) 208s 208s if new_retry.is_exhausted(): 208s reason = error or ResponseError(cause) 208s > raise MaxRetryError(_pool, url, reason) from reason # type: ignore[arg-type] 208s E urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='10.10.1.10', port=1080): Max retries exceeded with url: /path/to/page (Caused by ProxyError('Unable to connect to proxy', ConnectTimeoutError(, 'Connection to 10.10.1.10 timed out. (connect timeout=None)'))) 208s 208s /usr/lib/python3/dist-packages/urllib3/util/retry.py:515: MaxRetryError 208s 208s During handling of the above exception, another exception occurred: 208s 208s def test_unix_domain_adapter_connection_proxies_error(): 208s session = requests_unixsocket.Session('http+unix://') 208s 208s for method in ['get', 'post', 'head', 'patch', 'put', 'delete', 'options']: 208s with pytest.raises(ValueError) as excinfo: 208s > getattr(session, method)( 208s 'http+unix://socket_does_not_exist/path/to/page', 208s proxies={"http+unix": "http://10.10.1.10:1080"}) 208s 208s tests/test_requests_unixsocket.py:86: 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s /usr/lib/python3/dist-packages/requests/sessions.py:602: in get 208s return self.request("GET", url, **kwargs) 208s /usr/lib/python3/dist-packages/requests/sessions.py:589: in request 208s resp = self.send(prep, **send_kwargs) 208s /usr/lib/python3/dist-packages/requests/sessions.py:703: in send 208s r = adapter.send(request, **kwargs) 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s 208s self = 208s request = , stream = False 208s timeout = Timeout(connect=None, read=None, total=None), verify = True 208s cert = None 208s proxies = OrderedDict({'http+unix': 'http://10.10.1.10:1080', 'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 208s 208s def send( 208s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 208s ): 208s """Sends PreparedRequest object. Returns Response object. 208s 208s :param request: The :class:`PreparedRequest ` being sent. 208s :param stream: (optional) Whether to stream the request content. 208s :param timeout: (optional) How long to wait for the server to send 208s data before giving up, as a float, or a :ref:`(connect timeout, 208s read timeout) ` tuple. 208s :type timeout: float or tuple or urllib3 Timeout object 208s :param verify: (optional) Either a boolean, in which case it controls whether 208s we verify the server's TLS certificate, or a string, in which case it 208s must be a path to a CA bundle to use 208s :param cert: (optional) Any user-provided SSL certificate to be trusted. 208s :param proxies: (optional) The proxies dictionary to apply to the request. 208s :rtype: requests.Response 208s """ 208s 208s try: 208s conn = self.get_connection_with_tls_context( 208s request, verify, proxies=proxies, cert=cert 208s ) 208s except LocationValueError as e: 208s raise InvalidURL(e, request=request) 208s 208s self.cert_verify(conn, request.url, verify, cert) 208s url = self.request_url(request, proxies) 208s self.add_headers( 208s request, 208s stream=stream, 208s timeout=timeout, 208s verify=verify, 208s cert=cert, 208s proxies=proxies, 208s ) 208s 208s chunked = not (request.body is None or "Content-Length" in request.headers) 208s 208s if isinstance(timeout, tuple): 208s try: 208s connect, read = timeout 208s timeout = TimeoutSauce(connect=connect, read=read) 208s except ValueError: 208s raise ValueError( 208s f"Invalid timeout {timeout}. Pass a (connect, read) timeout tuple, " 208s f"or a single float to set both timeouts to the same value." 208s ) 208s elif isinstance(timeout, TimeoutSauce): 208s pass 208s else: 208s timeout = TimeoutSauce(connect=timeout, read=timeout) 208s 208s try: 208s resp = conn.urlopen( 208s method=request.method, 208s url=url, 208s body=request.body, 208s headers=request.headers, 208s redirect=False, 208s assert_same_host=False, 208s preload_content=False, 208s decode_content=False, 208s retries=self.max_retries, 208s timeout=timeout, 208s chunked=chunked, 208s ) 208s 208s except (ProtocolError, OSError) as err: 208s raise ConnectionError(err, request=request) 208s 208s except MaxRetryError as e: 208s if isinstance(e.reason, ConnectTimeoutError): 208s # TODO: Remove this in 3.0.0: see #2811 208s if not isinstance(e.reason, NewConnectionError): 208s raise ConnectTimeout(e, request=request) 208s 208s if isinstance(e.reason, ResponseError): 208s raise RetryError(e, request=request) 208s 208s if isinstance(e.reason, _ProxyError): 208s > raise ProxyError(e, request=request) 208s E requests.exceptions.ProxyError: HTTPConnectionPool(host='10.10.1.10', port=1080): Max retries exceeded with url: /path/to/page (Caused by ProxyError('Unable to connect to proxy', ConnectTimeoutError(, 'Connection to 10.10.1.10 timed out. (connect timeout=None)'))) 208s 208s /usr/lib/python3/dist-packages/requests/adapters.py:694: ProxyError 208s _____________________ test_unix_domain_adapter_monkeypatch _____________________ 208s 208s self = 208s request = , stream = False, timeout = None, verify = True 208s cert = None 208s proxies = OrderedDict({'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,p...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 208s 208s def send( 208s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 208s ): 208s """Sends PreparedRequest object. Returns Response object. 208s 208s :param request: The :class:`PreparedRequest ` being sent. 208s :param stream: (optional) Whether to stream the request content. 208s :param timeout: (optional) How long to wait for the server to send 208s data before giving up, as a float, or a :ref:`(connect timeout, 208s read timeout) ` tuple. 208s :type timeout: float or tuple or urllib3 Timeout object 208s :param verify: (optional) Either a boolean, in which case it controls whether 208s we verify the server's TLS certificate, or a string, in which case it 208s must be a path to a CA bundle to use 208s :param cert: (optional) Any user-provided SSL certificate to be trusted. 208s :param proxies: (optional) The proxies dictionary to apply to the request. 208s :rtype: requests.Response 208s """ 208s 208s try: 208s > conn = self.get_connection_with_tls_context( 208s request, verify, proxies=proxies, cert=cert 208s ) 208s 208s /usr/lib/python3/dist-packages/requests/adapters.py:633: 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s /usr/lib/python3/dist-packages/requests/adapters.py:489: in get_connection_with_tls_context 208s conn = self.poolmanager.connection_from_host( 208s /usr/lib/python3/dist-packages/urllib3/poolmanager.py:303: in connection_from_host 208s return self.connection_from_context(request_context) 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s 208s self = 208s request_context = {'block': False, 'cert_reqs': 'CERT_REQUIRED', 'host': '%2Ftmp%2Ftest_requests.273637_2828_8f2a3724', 'maxsize': 10, ...} 208s 208s def connection_from_context( 208s self, request_context: dict[str, typing.Any] 208s ) -> HTTPConnectionPool: 208s """ 208s Get a :class:`urllib3.connectionpool.ConnectionPool` based on the request context. 208s 208s ``request_context`` must at least contain the ``scheme`` key and its 208s value must be a key in ``key_fn_by_scheme`` instance variable. 208s """ 208s if "strict" in request_context: 208s warnings.warn( 208s "The 'strict' parameter is no longer needed on Python 3+. " 208s "This will raise an error in urllib3 v2.1.0.", 208s DeprecationWarning, 208s ) 208s request_context.pop("strict") 208s 208s scheme = request_context["scheme"].lower() 208s pool_key_constructor = self.key_fn_by_scheme.get(scheme) 208s if not pool_key_constructor: 208s > raise URLSchemeUnknown(scheme) 208s E urllib3.exceptions.URLSchemeUnknown: Not supported URL scheme http+unix 208s 208s /usr/lib/python3/dist-packages/urllib3/poolmanager.py:325: URLSchemeUnknown 208s 208s During handling of the above exception, another exception occurred: 208s 208s def test_unix_domain_adapter_monkeypatch(): 208s with UnixSocketServerThread() as usock_thread: 208s with requests_unixsocket.monkeypatch('http+unix://'): 208s urlencoded_usock = requests.compat.quote_plus(usock_thread.usock) 208s url = 'http+unix://%s/path/to/page' % urlencoded_usock 208s 208s for method in ['get', 'post', 'head', 'patch', 'put', 'delete', 208s 'options']: 208s logger.debug('Calling session.%s(%r) ...', method, url) 208s > r = getattr(requests, method)(url) 208s 208s tests/test_requests_unixsocket.py:102: 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s /usr/lib/python3/dist-packages/requests_unixsocket/__init__.py:51: in get 208s return request('get', url, **kwargs) 208s /usr/lib/python3/dist-packages/requests_unixsocket/__init__.py:46: in request 208s return session.request(method=method, url=url, **kwargs) 208s /usr/lib/python3/dist-packages/requests/sessions.py:589: in request 208s resp = self.send(prep, **send_kwargs) 208s /usr/lib/python3/dist-packages/requests/sessions.py:703: in send 208s r = adapter.send(request, **kwargs) 208s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 208s 208s self = 208s request = , stream = False, timeout = None, verify = True 208s cert = None 208s proxies = OrderedDict({'no': '127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,p...,objectstorage.prodstack5.canonical.com', 'https': 'http://squid.internal:3128', 'http': 'http://squid.internal:3128'}) 208s 208s def send( 208s self, request, stream=False, timeout=None, verify=True, cert=None, proxies=None 208s ): 208s """Sends PreparedRequest object. Returns Response object. 208s 208s :param request: The :class:`PreparedRequest ` being sent. 208s :param stream: (optional) Whether to stream the request content. 208s :param timeout: (optional) How long to wait for the server to send 208s data before giving up, as a float, or a :ref:`(connect timeout, 208s read timeout) ` tuple. 208s :type timeout: float or tuple or urllib3 Timeout object 208s :param verify: (optional) Either a boolean, in which case it controls whether 208s we verify the server's TLS certificate, or a string, in which case it 208s must be a path to a CA bundle to use 208s :param cert: (optional) Any user-provided SSL certificate to be trusted. 208s :param proxies: (optional) The proxies dictionary to apply to the request. 208s :rtype: requests.Response 208s """ 208s 208s try: 208s conn = self.get_connection_with_tls_context( 208s request, verify, proxies=proxies, cert=cert 208s ) 208s except LocationValueError as e: 208s > raise InvalidURL(e, request=request) 208s E requests.exceptions.InvalidURL: Not supported URL scheme http+unix 208s 208s /usr/lib/python3/dist-packages/requests/adapters.py:637: InvalidURL 208s =========================== short test summary info ============================ 208s FAILED tests/test_requests_unixsocket.py::test_unix_domain_adapter_ok - reque... 208s FAILED tests/test_requests_unixsocket.py::test_unix_domain_adapter_url_with_query_params 208s FAILED tests/test_requests_unixsocket.py::test_unix_domain_adapter_connection_error 208s FAILED tests/test_requests_unixsocket.py::test_unix_domain_adapter_connection_proxies_error 208s FAILED tests/test_requests_unixsocket.py::test_unix_domain_adapter_monkeypatch 208s ======================== 5 failed in 134.47s (0:02:14) ========================= 210s autopkgtest [12:01:13]: test python3-requests-unixsocket: -----------------------] 210s autopkgtest [12:01:13]: test python3-requests-unixsocket: - - - - - - - - - - results - - - - - - - - - - 210s python3-requests-unixsocket FAIL non-zero exit status 1 210s autopkgtest [12:01:13]: @@@@@@@@@@@@@@@@@@@@ summary 210s python3-requests-unixsocket FAIL non-zero exit status 1 220s nova [W] Skipping flock for amd64 220s Creating nova instance adt-oracular-i386-python-requests-unixsocket-20240629-113339-juju-7f2275-prod-proposed-migration-environment-3-178b1b22-01ce-4a12-8b03-dc99f06eab6e from image adt/ubuntu-oracular-amd64-server-20240629.img (UUID 959fe24e-5b85-443d-81f4-0ff7d8db66bc)...