0s autopkgtest [12:45:52]: starting date and time: 2025-02-19 12:45:52+0000 0s autopkgtest [12:45:52]: git checkout: 325255d2 Merge branch 'pin-any-arch' into 'ubuntu/production' 0s autopkgtest [12:45:52]: host juju-7f2275-prod-proposed-migration-environment-2; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.tb_lkhe9/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:sphinx --apt-upgrade python-moderngl --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=sphinx/8.1.3-5 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest-s390x --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-2@bos03-s390x-28.secgroup --name adt-plucky-s390x-python-moderngl-20250219-124552-juju-7f2275-prod-proposed-migration-environment-2-9972088a-b208-4ca1-b4e0-86c1de1ad9d4 --image adt/ubuntu-plucky-s390x-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-2 --net-id=net_prod-proposed-migration-s390x -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,radosgw.ps5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/ 109s autopkgtest [12:47:41]: testbed dpkg architecture: s390x 109s autopkgtest [12:47:41]: testbed apt version: 2.9.30 109s autopkgtest [12:47:41]: @@@@@@@@@@@@@@@@@@@@ test bed setup 110s autopkgtest [12:47:42]: testbed release detected to be: None 110s autopkgtest [12:47:42]: updating testbed package index (apt update) 111s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [110 kB] 111s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 111s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 111s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 111s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [13.9 kB] 111s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [76.1 kB] 111s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [750 kB] 111s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [3120 B] 111s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main s390x Packages [95.1 kB] 111s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/restricted s390x Packages [760 B] 111s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/universe s390x Packages [646 kB] 112s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse s390x Packages [4900 B] 112s Fetched 1700 kB in 1s (1589 kB/s) 112s Reading package lists... 113s Reading package lists... 113s Building dependency tree... 113s Reading state information... 113s Calculating upgrade... 113s The following packages were automatically installed and are no longer required: 113s libnsl2 libpython3.12-minimal libpython3.12-stdlib libpython3.12t64 113s linux-headers-6.11.0-8 linux-headers-6.11.0-8-generic 113s linux-modules-6.11.0-8-generic linux-tools-6.11.0-8 113s linux-tools-6.11.0-8-generic 113s Use 'sudo apt autoremove' to remove them. 113s The following packages will be upgraded: 113s iproute2 liblsof0 libp11-kit0 lsof 114s 4 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 114s Need to get 1791 kB of archives. 114s After this operation, 17.4 kB of additional disk space will be used. 114s Get:1 http://ftpmaster.internal/ubuntu plucky/main s390x iproute2 s390x 6.13.0-1ubuntu1 [1174 kB] 114s Get:2 http://ftpmaster.internal/ubuntu plucky/main s390x libp11-kit0 s390x 0.25.5-2ubuntu3 [316 kB] 114s Get:3 http://ftpmaster.internal/ubuntu plucky/main s390x lsof s390x 4.99.4+dfsg-1 [243 kB] 114s Get:4 http://ftpmaster.internal/ubuntu plucky/main s390x liblsof0 s390x 4.99.4+dfsg-1 [58.5 kB] 114s Preconfiguring packages ... 114s Fetched 1791 kB in 1s (2396 kB/s) 115s (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 ... 81030 files and directories currently installed.) 115s Preparing to unpack .../iproute2_6.13.0-1ubuntu1_s390x.deb ... 115s Unpacking iproute2 (6.13.0-1ubuntu1) over (6.10.0-2ubuntu1) ... 115s Preparing to unpack .../libp11-kit0_0.25.5-2ubuntu3_s390x.deb ... 115s Unpacking libp11-kit0:s390x (0.25.5-2ubuntu3) over (0.25.5-2ubuntu2) ... 115s Preparing to unpack .../lsof_4.99.4+dfsg-1_s390x.deb ... 115s Unpacking lsof (4.99.4+dfsg-1) over (4.99.3+dfsg-2) ... 115s Preparing to unpack .../liblsof0_4.99.4+dfsg-1_s390x.deb ... 115s Unpacking liblsof0 (4.99.4+dfsg-1) over (4.99.3+dfsg-2) ... 115s Setting up liblsof0 (4.99.4+dfsg-1) ... 115s Setting up iproute2 (6.13.0-1ubuntu1) ... 115s Setting up libp11-kit0:s390x (0.25.5-2ubuntu3) ... 115s Setting up lsof (4.99.4+dfsg-1) ... 115s Processing triggers for man-db (2.13.0-1) ... 115s Processing triggers for libc-bin (2.40-4ubuntu1) ... 116s Reading package lists... 116s Building dependency tree... 116s Reading state information... 116s The following packages will be REMOVED: 116s libnsl2* libpython3.12-minimal* libpython3.12-stdlib* libpython3.12t64* 116s linux-headers-6.11.0-8* linux-headers-6.11.0-8-generic* 116s linux-modules-6.11.0-8-generic* linux-tools-6.11.0-8* 116s linux-tools-6.11.0-8-generic* 116s 0 upgraded, 0 newly installed, 9 to remove and 0 not upgraded. 116s After this operation, 167 MB disk space will be freed. 116s (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 ... 81031 files and directories currently installed.) 116s Removing linux-tools-6.11.0-8-generic (6.11.0-8.8) ... 116s Removing linux-tools-6.11.0-8 (6.11.0-8.8) ... 116s Removing libpython3.12t64:s390x (3.12.9-1) ... 116s Removing libpython3.12-stdlib:s390x (3.12.9-1) ... 116s Removing libnsl2:s390x (1.3.0-3build3) ... 116s Removing libpython3.12-minimal:s390x (3.12.9-1) ... 116s Removing linux-headers-6.11.0-8-generic (6.11.0-8.8) ... 116s Removing linux-headers-6.11.0-8 (6.11.0-8.8) ... 117s Removing linux-modules-6.11.0-8-generic (6.11.0-8.8) ... 117s Processing triggers for libc-bin (2.40-4ubuntu1) ... 118s (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 ... 55931 files and directories currently installed.) 118s Purging configuration files for libpython3.12-minimal:s390x (3.12.9-1) ... 118s Purging configuration files for linux-modules-6.11.0-8-generic (6.11.0-8.8) ... 118s autopkgtest [12:47:50]: upgrading testbed (apt dist-upgrade and autopurge) 118s Reading package lists... 118s Building dependency tree... 118s Reading state information... 118s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 118s Starting 2 pkgProblemResolver with broken count: 0 118s Done 118s Entering ResolveByKeep 119s 119s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 119s Reading package lists... 119s Building dependency tree... 119s Reading state information... 119s Starting pkgProblemResolver with broken count: 0 119s Starting 2 pkgProblemResolver with broken count: 0 119s Done 119s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 120s autopkgtest [12:47:52]: rebooting testbed after setup commands that affected boot 140s autopkgtest [12:48:12]: testbed running kernel: Linux 6.12.0-15-generic #15-Ubuntu SMP Tue Feb 4 15:05:57 UTC 2025 143s autopkgtest [12:48:15]: @@@@@@@@@@@@@@@@@@@@ apt-source python-moderngl 146s Get:1 http://ftpmaster.internal/ubuntu plucky/universe python-moderngl 5.12.0-1build1 (dsc) [3154 B] 146s Get:2 http://ftpmaster.internal/ubuntu plucky/universe python-moderngl 5.12.0-1build1 (tar) [1914 kB] 146s Get:3 http://ftpmaster.internal/ubuntu plucky/universe python-moderngl 5.12.0-1build1 (diff) [3452 B] 146s gpgv: Signature made Thu Nov 14 18:33:48 2024 UTC 146s gpgv: using RSA key 568BF22A66337CBFC9A6B9B72C83DBC8E9BD0E37 146s gpgv: Can't check signature: No public key 146s dpkg-source: warning: cannot verify inline signature for ./python-moderngl_5.12.0-1build1.dsc: no acceptable signature found 146s autopkgtest [12:48:18]: testing package python-moderngl version 5.12.0-1build1 146s autopkgtest [12:48:18]: build not needed 147s autopkgtest [12:48:19]: test pybuild-autopkgtest: preparing testbed 148s Reading package lists... 148s Building dependency tree... 148s Reading state information... 148s Starting pkgProblemResolver with broken count: 0 148s Starting 2 pkgProblemResolver with broken count: 0 148s Done 148s The following NEW packages will be installed: 148s autoconf automake autopoint autotools-dev build-essential cpp cpp-14 148s cpp-14-s390x-linux-gnu cpp-s390x-linux-gnu debhelper debugedit dh-autoreconf 148s dh-python dh-strip-nondeterminism docutils-common dwz fonts-font-awesome 148s fonts-lato furo g++ g++-14 g++-14-s390x-linux-gnu g++-s390x-linux-gnu gcc 148s gcc-14 gcc-14-s390x-linux-gnu gcc-s390x-linux-gnu gettext intltool-debian 148s libarchive-zip-perl libasan8 libblas3 libcc1-0 libdebhelper-perl 148s libdrm-radeon1 libegl-dev libegl-mesa0 libegl1 libexpat1-dev 148s libfile-stripnondeterminism-perl libfontenc1 libfreetype6 libgbm1 148s libgcc-14-dev libgfortran5 libgl-dev libgl1 libgl1-mesa-dri libglapi-mesa 148s libglu1-mesa libglvnd0 libglx-dev libglx-mesa0 libglx0 libgomp1 libice6 148s libisl23 libitm1 libjs-jquery libjs-sphinxdoc libjs-underscore libjson-perl 148s liblapack3 liblbfgsb0 libmpc3 libnsl2 libopengl0 libpixman-1-0 148s libpython3-all-dev libpython3-dev libpython3.12-dev libpython3.12-minimal 148s libpython3.12-stdlib libpython3.12t64 libpython3.13-dev libsm6 148s libstdc++-14-dev libtool libubsan1 libvulkan1 libwayland-client0 148s libwayland-server0 libx11-dev libx11-xcb1 libxau-dev libxaw7 libxcb-dri3-0 148s libxcb-glx0 libxcb-present0 libxcb-randr0 libxcb-shm0 libxcb-sync1 148s libxcb-xfixes0 libxcb1-dev libxdmcp-dev libxfont2 libxkbfile1 libxmu6 148s libxpm4 libxrandr2 libxrender1 libxshmfence1 libxt6t64 libxxf86vm1 m4 148s mesa-libgallium po-debconf pybuild-plugin-autopkgtest 148s pybuild-plugin-pyproject python-moderngl-doc python3-alabaster python3-all 148s python3-all-dev python3-bs4 python3-build python3-decorator 148s python3-defusedxml python3-dev python3-docutils python3-glcontext 148s python3-imagesize python3-iniconfig python3-installer python3-moderngl 148s python3-numpy python3-opengl python3-packaging python3-pluggy 148s python3-pycodestyle python3-pyproject-hooks python3-pytest python3-roman 148s python3-scipy python3-snowballstemmer python3-soupsieve python3-sphinx 148s python3-sphinx-copybutton python3-sphinx-rtd-theme 148s python3-sphinxcontrib.jquery python3-toml python3-wheel python3.12 148s python3.12-dev python3.12-minimal python3.13-dev sgml-base sphinx-basic-ng 148s sphinx-common sphinx-rtd-theme-common x11-common x11-xkb-utils x11proto-dev 148s xml-core xorg-sgml-doctools xserver-common xtrans-dev xvfb zlib1g-dev 148s 0 upgraded, 158 newly installed, 0 to remove and 0 not upgraded. 148s Need to get 127 MB of archives. 148s After this operation, 509 MB of additional disk space will be used. 148s Get:1 http://ftpmaster.internal/ubuntu plucky/main s390x libpython3.12-minimal s390x 3.12.9-1 [836 kB] 149s Get:2 http://ftpmaster.internal/ubuntu plucky/main s390x python3.12-minimal s390x 3.12.9-1 [2403 kB] 149s Get:3 http://ftpmaster.internal/ubuntu plucky/main s390x fonts-lato all 2.015-1 [2781 kB] 150s Get:4 http://ftpmaster.internal/ubuntu plucky/main s390x sgml-base all 1.31 [11.4 kB] 150s Get:5 http://ftpmaster.internal/ubuntu plucky/main s390x libnsl2 s390x 1.3.0-3build3 [44.1 kB] 150s Get:6 http://ftpmaster.internal/ubuntu plucky/main s390x libpython3.12-stdlib s390x 3.12.9-1 [2071 kB] 150s Get:7 http://ftpmaster.internal/ubuntu plucky/main s390x python3.12 s390x 3.12.9-1 [671 kB] 150s Get:8 http://ftpmaster.internal/ubuntu plucky/main s390x m4 s390x 1.4.19-5 [259 kB] 150s Get:9 http://ftpmaster.internal/ubuntu plucky/main s390x autoconf all 2.72-3 [382 kB] 150s Get:10 http://ftpmaster.internal/ubuntu plucky/main s390x autotools-dev all 20220109.1 [44.9 kB] 150s Get:11 http://ftpmaster.internal/ubuntu plucky/main s390x automake all 1:1.17-3 [572 kB] 150s Get:12 http://ftpmaster.internal/ubuntu plucky/main s390x autopoint all 0.23.1-1 [619 kB] 150s Get:13 http://ftpmaster.internal/ubuntu plucky/main s390x libisl23 s390x 0.27-1 [704 kB] 150s Get:14 http://ftpmaster.internal/ubuntu plucky/main s390x libmpc3 s390x 1.3.1-1build2 [57.8 kB] 150s Get:15 http://ftpmaster.internal/ubuntu plucky/main s390x cpp-14-s390x-linux-gnu s390x 14.2.0-17ubuntu1 [9571 kB] 151s Get:16 http://ftpmaster.internal/ubuntu plucky/main s390x cpp-14 s390x 14.2.0-17ubuntu1 [1030 B] 151s Get:17 http://ftpmaster.internal/ubuntu plucky/main s390x cpp-s390x-linux-gnu s390x 4:14.2.0-1ubuntu1 [5556 B] 151s Get:18 http://ftpmaster.internal/ubuntu plucky/main s390x cpp s390x 4:14.2.0-1ubuntu1 [22.4 kB] 151s Get:19 http://ftpmaster.internal/ubuntu plucky/main s390x libcc1-0 s390x 15-20250213-1ubuntu1 [49.2 kB] 151s Get:20 http://ftpmaster.internal/ubuntu plucky/main s390x libgomp1 s390x 15-20250213-1ubuntu1 [151 kB] 151s Get:21 http://ftpmaster.internal/ubuntu plucky/main s390x libitm1 s390x 15-20250213-1ubuntu1 [31.2 kB] 151s Get:22 http://ftpmaster.internal/ubuntu plucky/main s390x libasan8 s390x 15-20250213-1ubuntu1 [2970 kB] 151s Get:23 http://ftpmaster.internal/ubuntu plucky/main s390x libubsan1 s390x 15-20250213-1ubuntu1 [1213 kB] 151s Get:24 http://ftpmaster.internal/ubuntu plucky/main s390x libgcc-14-dev s390x 14.2.0-17ubuntu1 [1037 kB] 151s Get:25 http://ftpmaster.internal/ubuntu plucky/main s390x gcc-14-s390x-linux-gnu s390x 14.2.0-17ubuntu1 [18.7 MB] 152s Get:26 http://ftpmaster.internal/ubuntu plucky/main s390x gcc-14 s390x 14.2.0-17ubuntu1 [526 kB] 152s Get:27 http://ftpmaster.internal/ubuntu plucky/main s390x gcc-s390x-linux-gnu s390x 4:14.2.0-1ubuntu1 [1204 B] 152s Get:28 http://ftpmaster.internal/ubuntu plucky/main s390x gcc s390x 4:14.2.0-1ubuntu1 [5004 B] 152s Get:29 http://ftpmaster.internal/ubuntu plucky/main s390x libstdc++-14-dev s390x 14.2.0-17ubuntu1 [2611 kB] 152s Get:30 http://ftpmaster.internal/ubuntu plucky/main s390x g++-14-s390x-linux-gnu s390x 14.2.0-17ubuntu1 [11.0 MB] 153s Get:31 http://ftpmaster.internal/ubuntu plucky/main s390x g++-14 s390x 14.2.0-17ubuntu1 [21.8 kB] 153s Get:32 http://ftpmaster.internal/ubuntu plucky/main s390x g++-s390x-linux-gnu s390x 4:14.2.0-1ubuntu1 [956 B] 153s Get:33 http://ftpmaster.internal/ubuntu plucky/main s390x g++ s390x 4:14.2.0-1ubuntu1 [1080 B] 153s Get:34 http://ftpmaster.internal/ubuntu plucky/main s390x build-essential s390x 12.10ubuntu1 [4930 B] 153s Get:35 http://ftpmaster.internal/ubuntu plucky/main s390x libdebhelper-perl all 13.24.1ubuntu2 [95.4 kB] 153s Get:36 http://ftpmaster.internal/ubuntu plucky/main s390x libtool all 2.5.4-3build1 [168 kB] 153s Get:37 http://ftpmaster.internal/ubuntu plucky/main s390x dh-autoreconf all 20 [16.1 kB] 153s Get:38 http://ftpmaster.internal/ubuntu plucky/main s390x libarchive-zip-perl all 1.68-1 [90.2 kB] 153s Get:39 http://ftpmaster.internal/ubuntu plucky/main s390x libfile-stripnondeterminism-perl all 1.14.1-2 [20.3 kB] 153s Get:40 http://ftpmaster.internal/ubuntu plucky/main s390x dh-strip-nondeterminism all 1.14.1-2 [5064 B] 153s Get:41 http://ftpmaster.internal/ubuntu plucky/main s390x debugedit s390x 1:5.1-2 [50.1 kB] 153s Get:42 http://ftpmaster.internal/ubuntu plucky/main s390x dwz s390x 0.15-1build6 [122 kB] 153s Get:43 http://ftpmaster.internal/ubuntu plucky/main s390x gettext s390x 0.23.1-1 [1065 kB] 153s Get:44 http://ftpmaster.internal/ubuntu plucky/main s390x intltool-debian all 0.35.0+20060710.6 [23.2 kB] 153s Get:45 http://ftpmaster.internal/ubuntu plucky/main s390x po-debconf all 1.0.21+nmu1 [233 kB] 153s Get:46 http://ftpmaster.internal/ubuntu plucky/main s390x debhelper all 13.24.1ubuntu2 [895 kB] 153s Get:47 http://ftpmaster.internal/ubuntu plucky/universe s390x dh-python all 6.20250108 [117 kB] 153s Get:48 http://ftpmaster.internal/ubuntu plucky/main s390x xml-core all 0.19 [20.3 kB] 153s Get:49 http://ftpmaster.internal/ubuntu plucky/main s390x docutils-common all 0.21.2+dfsg-2 [131 kB] 153s Get:50 http://ftpmaster.internal/ubuntu plucky/main s390x fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [516 kB] 153s Get:51 http://ftpmaster.internal/ubuntu plucky/main s390x python3-soupsieve all 2.6-1 [33.0 kB] 153s Get:52 http://ftpmaster.internal/ubuntu plucky/main s390x python3-bs4 all 4.13.3-1 [136 kB] 153s Get:53 http://ftpmaster.internal/ubuntu plucky/main s390x python3-defusedxml all 0.7.1-3 [42.2 kB] 153s Get:54 http://ftpmaster.internal/ubuntu plucky/main s390x libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 153s Get:55 http://ftpmaster.internal/ubuntu plucky/main s390x libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 153s Get:56 http://ftpmaster.internal/ubuntu plucky-proposed/main s390x libjs-sphinxdoc all 8.1.3-5 [31.0 kB] 153s Get:57 http://ftpmaster.internal/ubuntu plucky/main s390x libjson-perl all 4.10000-1 [81.9 kB] 153s Get:58 http://ftpmaster.internal/ubuntu plucky-proposed/main s390x sphinx-common all 8.1.3-5 [663 kB] 153s Get:59 http://ftpmaster.internal/ubuntu plucky/main s390x python3-alabaster all 0.7.16-0.1 [18.5 kB] 153s Get:60 http://ftpmaster.internal/ubuntu plucky/main s390x python3-roman all 5.0-1 [10.3 kB] 153s Get:61 http://ftpmaster.internal/ubuntu plucky/main s390x python3-docutils all 0.21.2+dfsg-2 [409 kB] 153s Get:62 http://ftpmaster.internal/ubuntu plucky/main s390x python3-imagesize all 1.4.1-1 [6844 B] 153s Get:63 http://ftpmaster.internal/ubuntu plucky/main s390x python3-packaging all 24.2-1 [51.5 kB] 153s Get:64 http://ftpmaster.internal/ubuntu plucky/main s390x python3-snowballstemmer all 2.2.0-4build1 [59.8 kB] 153s Get:65 http://ftpmaster.internal/ubuntu plucky-proposed/main s390x python3-sphinx all 8.1.3-5 [474 kB] 153s Get:66 http://ftpmaster.internal/ubuntu plucky/universe s390x sphinx-basic-ng all 1.0.0~beta2-1 [12.0 kB] 153s Get:67 http://ftpmaster.internal/ubuntu plucky/universe s390x furo all 2024.08.06+dfsg-1 [55.3 kB] 153s Get:68 http://ftpmaster.internal/ubuntu plucky/main s390x libblas3 s390x 3.12.1-2 [252 kB] 153s Get:69 http://ftpmaster.internal/ubuntu plucky/main s390x libdrm-radeon1 s390x 2.4.123-1 [22.4 kB] 153s Get:70 http://ftpmaster.internal/ubuntu plucky/main s390x libglvnd0 s390x 1.7.0-1build1 [110 kB] 153s Get:71 http://ftpmaster.internal/ubuntu plucky/main s390x libwayland-server0 s390x 1.23.1-1 [36.8 kB] 153s Get:72 http://ftpmaster.internal/ubuntu plucky/main s390x libglapi-mesa s390x 24.3.4-3ubuntu1 [68.4 kB] 153s Get:73 http://ftpmaster.internal/ubuntu plucky/main s390x libx11-xcb1 s390x 2:1.8.10-2 [7954 B] 153s Get:74 http://ftpmaster.internal/ubuntu plucky/main s390x libxcb-dri3-0 s390x 1.17.0-2 [7616 B] 153s Get:75 http://ftpmaster.internal/ubuntu plucky/main s390x libxcb-present0 s390x 1.17.0-2 [6244 B] 153s Get:76 http://ftpmaster.internal/ubuntu plucky/main s390x libxcb-randr0 s390x 1.17.0-2 [19.2 kB] 153s Get:77 http://ftpmaster.internal/ubuntu plucky/main s390x libxcb-sync1 s390x 1.17.0-2 [9488 B] 153s Get:78 http://ftpmaster.internal/ubuntu plucky/main s390x libxcb-xfixes0 s390x 1.17.0-2 [10.5 kB] 153s Get:79 http://ftpmaster.internal/ubuntu plucky/main s390x libxshmfence1 s390x 1.3-1build5 [4772 B] 153s Get:80 http://ftpmaster.internal/ubuntu plucky/main s390x mesa-libgallium s390x 24.3.4-3ubuntu1 [7967 kB] 153s Get:81 http://ftpmaster.internal/ubuntu plucky/main s390x libgbm1 s390x 24.3.4-3ubuntu1 [34.5 kB] 153s Get:82 http://ftpmaster.internal/ubuntu plucky/main s390x libwayland-client0 s390x 1.23.1-1 [27.8 kB] 153s Get:83 http://ftpmaster.internal/ubuntu plucky/main s390x libxcb-shm0 s390x 1.17.0-2 [5862 B] 153s Get:84 http://ftpmaster.internal/ubuntu plucky/main s390x libegl-mesa0 s390x 24.3.4-3ubuntu1 [126 kB] 153s Get:85 http://ftpmaster.internal/ubuntu plucky/main s390x libegl1 s390x 1.7.0-1build1 [31.8 kB] 153s Get:86 http://ftpmaster.internal/ubuntu plucky/main s390x libxcb-glx0 s390x 1.17.0-2 [26.0 kB] 153s Get:87 http://ftpmaster.internal/ubuntu plucky/main s390x libxxf86vm1 s390x 1:1.1.4-1build4 [9630 B] 153s Get:88 http://ftpmaster.internal/ubuntu plucky/main s390x libvulkan1 s390x 1.4.304.0-1 [147 kB] 153s Get:89 http://ftpmaster.internal/ubuntu plucky/main s390x libgl1-mesa-dri s390x 24.3.4-3ubuntu1 [35.3 kB] 154s Get:90 http://ftpmaster.internal/ubuntu plucky/main s390x libglx-mesa0 s390x 24.3.4-3ubuntu1 [162 kB] 154s Get:91 http://ftpmaster.internal/ubuntu plucky/main s390x libglx0 s390x 1.7.0-1build1 [32.2 kB] 154s Get:92 http://ftpmaster.internal/ubuntu plucky/main s390x libgl1 s390x 1.7.0-1build1 [142 kB] 154s Get:93 http://ftpmaster.internal/ubuntu plucky/main s390x xorg-sgml-doctools all 1:1.11-1.1 [10.9 kB] 154s Get:94 http://ftpmaster.internal/ubuntu plucky/main s390x x11proto-dev all 2024.1-1 [606 kB] 154s Get:95 http://ftpmaster.internal/ubuntu plucky/main s390x libxau-dev s390x 1:1.0.11-1 [9752 B] 154s Get:96 http://ftpmaster.internal/ubuntu plucky/main s390x libxdmcp-dev s390x 1:1.1.5-1 [26.9 kB] 154s Get:97 http://ftpmaster.internal/ubuntu plucky/main s390x xtrans-dev all 1.4.0-1 [68.9 kB] 154s Get:98 http://ftpmaster.internal/ubuntu plucky/main s390x libxcb1-dev s390x 1.17.0-2 [88.9 kB] 154s Get:99 http://ftpmaster.internal/ubuntu plucky/main s390x libx11-dev s390x 2:1.8.10-2 [761 kB] 154s Get:100 http://ftpmaster.internal/ubuntu plucky/main s390x libglx-dev s390x 1.7.0-1build1 [14.2 kB] 154s Get:101 http://ftpmaster.internal/ubuntu plucky/main s390x libgl-dev s390x 1.7.0-1build1 [102 kB] 154s Get:102 http://ftpmaster.internal/ubuntu plucky/main s390x libegl-dev s390x 1.7.0-1build1 [18.2 kB] 154s Get:103 http://ftpmaster.internal/ubuntu plucky/main s390x libexpat1-dev s390x 2.6.4-1 [146 kB] 154s Get:104 http://ftpmaster.internal/ubuntu plucky/main s390x libfontenc1 s390x 1:1.1.8-1build1 [14.8 kB] 154s Get:105 http://ftpmaster.internal/ubuntu plucky/main s390x libfreetype6 s390x 2.13.3+dfsg-1 [431 kB] 154s Get:106 http://ftpmaster.internal/ubuntu plucky/main s390x libgfortran5 s390x 15-20250213-1ubuntu1 [620 kB] 154s Get:107 http://ftpmaster.internal/ubuntu plucky/main s390x x11-common all 1:7.7+23ubuntu3 [21.7 kB] 154s Get:108 http://ftpmaster.internal/ubuntu plucky/main s390x libice6 s390x 2:1.1.1-1 [45.4 kB] 154s Get:109 http://ftpmaster.internal/ubuntu plucky/main s390x liblapack3 s390x 3.12.1-2 [2971 kB] 154s Get:110 http://ftpmaster.internal/ubuntu plucky/universe s390x liblbfgsb0 s390x 3.0+dfsg.4-1build1 [32.4 kB] 154s Get:111 http://ftpmaster.internal/ubuntu plucky/main s390x libpixman-1-0 s390x 0.44.0-3 [201 kB] 154s Get:112 http://ftpmaster.internal/ubuntu plucky/main s390x zlib1g-dev s390x 1:1.3.dfsg+really1.3.1-1ubuntu1 [898 kB] 155s Get:113 http://ftpmaster.internal/ubuntu plucky/main s390x libpython3.13-dev s390x 3.13.2-1 [5596 kB] 155s Get:114 http://ftpmaster.internal/ubuntu plucky/main s390x libpython3-dev s390x 3.13.1-1~exp2 [10.5 kB] 155s Get:115 http://ftpmaster.internal/ubuntu plucky/main s390x libpython3.12t64 s390x 3.12.9-1 [2508 kB] 155s Get:116 http://ftpmaster.internal/ubuntu plucky/main s390x libpython3.12-dev s390x 3.12.9-1 [5849 kB] 155s Get:117 http://ftpmaster.internal/ubuntu plucky/main s390x libpython3-all-dev s390x 3.13.1-1~exp2 [922 B] 155s Get:118 http://ftpmaster.internal/ubuntu plucky/main s390x libsm6 s390x 2:1.2.4-1 [18.4 kB] 155s Get:119 http://ftpmaster.internal/ubuntu plucky/main s390x libxt6t64 s390x 1:1.2.1-1.2build1 [184 kB] 155s Get:120 http://ftpmaster.internal/ubuntu plucky/main s390x libxmu6 s390x 2:1.1.3-3build2 [53.0 kB] 155s Get:121 http://ftpmaster.internal/ubuntu plucky/main s390x libxpm4 s390x 1:3.5.17-1build2 [41.2 kB] 155s Get:122 http://ftpmaster.internal/ubuntu plucky/main s390x libxaw7 s390x 2:1.0.16-1 [201 kB] 155s Get:123 http://ftpmaster.internal/ubuntu plucky/main s390x libxfont2 s390x 1:2.0.6-1build1 [101 kB] 155s Get:124 http://ftpmaster.internal/ubuntu plucky/main s390x libxkbfile1 s390x 1:1.1.0-1build4 [76.5 kB] 155s Get:125 http://ftpmaster.internal/ubuntu plucky/main s390x libxrender1 s390x 1:0.9.10-1.1build1 [20.4 kB] 155s Get:126 http://ftpmaster.internal/ubuntu plucky/main s390x libxrandr2 s390x 2:1.5.4-1 [20.8 kB] 155s Get:127 http://ftpmaster.internal/ubuntu plucky/universe s390x pybuild-plugin-autopkgtest all 6.20250108 [1744 B] 155s Get:128 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-pyproject-hooks all 1.2.0-1 [10.2 kB] 155s Get:129 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-toml all 0.10.2-1 [16.5 kB] 155s Get:130 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-wheel all 0.45.1-1 [57.7 kB] 155s Get:131 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-build all 1.2.2-1 [31.0 kB] 155s Get:132 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-installer all 0.7.0+dfsg1-3 [17.4 kB] 155s Get:133 http://ftpmaster.internal/ubuntu plucky/universe s390x pybuild-plugin-pyproject all 6.20250108 [1726 B] 155s Get:134 http://ftpmaster.internal/ubuntu plucky/universe s390x python-moderngl-doc all 5.12.0-1build1 [331 kB] 155s Get:135 http://ftpmaster.internal/ubuntu plucky/main s390x python3-all s390x 3.13.1-1~exp2 [898 B] 155s Get:136 http://ftpmaster.internal/ubuntu plucky/main s390x python3.13-dev s390x 3.13.2-1 [508 kB] 155s Get:137 http://ftpmaster.internal/ubuntu plucky/main s390x python3-dev s390x 3.13.1-1~exp2 [26.7 kB] 155s Get:138 http://ftpmaster.internal/ubuntu plucky/main s390x python3.12-dev s390x 3.12.9-1 [504 kB] 155s Get:139 http://ftpmaster.internal/ubuntu plucky/main s390x python3-all-dev s390x 3.13.1-1~exp2 [918 B] 155s Get:140 http://ftpmaster.internal/ubuntu plucky/main s390x python3-decorator all 5.1.1-5 [10.1 kB] 155s Get:141 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-glcontext s390x 3.0.0-1build1 [15.1 kB] 155s Get:142 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-iniconfig all 1.1.1-2 [6024 B] 155s Get:143 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-moderngl s390x 5.12.0-1build1 [100 kB] 155s Get:144 http://ftpmaster.internal/ubuntu plucky/main s390x python3-numpy s390x 1:1.26.4+ds-13 [4601 kB] 155s Get:145 http://ftpmaster.internal/ubuntu plucky/main s390x libopengl0 s390x 1.7.0-1build1 [48.0 kB] 155s Get:146 http://ftpmaster.internal/ubuntu plucky/main s390x libglu1-mesa s390x 9.0.2-1.1build1 [176 kB] 155s Get:147 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-opengl all 3.1.7+dfsg-1 [612 kB] 155s Get:148 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-pluggy all 1.5.0-1 [21.0 kB] 155s Get:149 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-pycodestyle all 2.12.1-2 [30.2 kB] 155s Get:150 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-pytest all 8.3.4-1 [252 kB] 155s Get:151 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-sphinx-copybutton all 0.5.2-2 [16.6 kB] 155s Get:152 http://ftpmaster.internal/ubuntu plucky/main s390x sphinx-rtd-theme-common all 3.0.2+dfsg-2 [1014 kB] 156s Get:153 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-sphinxcontrib.jquery all 4.1-5 [6678 B] 156s Get:154 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-sphinx-rtd-theme all 3.0.2+dfsg-2 [23.5 kB] 156s Get:155 http://ftpmaster.internal/ubuntu plucky/main s390x x11-xkb-utils s390x 7.7+9 [169 kB] 156s Get:156 http://ftpmaster.internal/ubuntu plucky/main s390x xserver-common all 2:21.1.14-2ubuntu1 [33.7 kB] 156s Get:157 http://ftpmaster.internal/ubuntu plucky/universe s390x xvfb s390x 2:21.1.14-2ubuntu1 [941 kB] 156s Get:158 http://ftpmaster.internal/ubuntu plucky/universe s390x python3-scipy s390x 1.14.1-4ubuntu1 [21.2 MB] 157s Fetched 127 MB in 8s (16.3 MB/s) 157s Selecting previously unselected package libpython3.12-minimal:s390x. 157s (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 ... 55929 files and directories currently installed.) 157s Preparing to unpack .../000-libpython3.12-minimal_3.12.9-1_s390x.deb ... 157s Unpacking libpython3.12-minimal:s390x (3.12.9-1) ... 157s Selecting previously unselected package python3.12-minimal. 157s Preparing to unpack .../001-python3.12-minimal_3.12.9-1_s390x.deb ... 157s Unpacking python3.12-minimal (3.12.9-1) ... 157s Selecting previously unselected package fonts-lato. 157s Preparing to unpack .../002-fonts-lato_2.015-1_all.deb ... 157s Unpacking fonts-lato (2.015-1) ... 157s Selecting previously unselected package sgml-base. 157s Preparing to unpack .../003-sgml-base_1.31_all.deb ... 157s Unpacking sgml-base (1.31) ... 157s Selecting previously unselected package libnsl2:s390x. 157s Preparing to unpack .../004-libnsl2_1.3.0-3build3_s390x.deb ... 157s Unpacking libnsl2:s390x (1.3.0-3build3) ... 157s Selecting previously unselected package libpython3.12-stdlib:s390x. 157s Preparing to unpack .../005-libpython3.12-stdlib_3.12.9-1_s390x.deb ... 157s Unpacking libpython3.12-stdlib:s390x (3.12.9-1) ... 157s Selecting previously unselected package python3.12. 157s Preparing to unpack .../006-python3.12_3.12.9-1_s390x.deb ... 157s Unpacking python3.12 (3.12.9-1) ... 157s Selecting previously unselected package m4. 157s Preparing to unpack .../007-m4_1.4.19-5_s390x.deb ... 157s Unpacking m4 (1.4.19-5) ... 157s Selecting previously unselected package autoconf. 157s Preparing to unpack .../008-autoconf_2.72-3_all.deb ... 157s Unpacking autoconf (2.72-3) ... 157s Selecting previously unselected package autotools-dev. 157s Preparing to unpack .../009-autotools-dev_20220109.1_all.deb ... 157s Unpacking autotools-dev (20220109.1) ... 157s Selecting previously unselected package automake. 157s Preparing to unpack .../010-automake_1%3a1.17-3_all.deb ... 157s Unpacking automake (1:1.17-3) ... 157s Selecting previously unselected package autopoint. 157s Preparing to unpack .../011-autopoint_0.23.1-1_all.deb ... 157s Unpacking autopoint (0.23.1-1) ... 157s Selecting previously unselected package libisl23:s390x. 157s Preparing to unpack .../012-libisl23_0.27-1_s390x.deb ... 157s Unpacking libisl23:s390x (0.27-1) ... 157s Selecting previously unselected package libmpc3:s390x. 157s Preparing to unpack .../013-libmpc3_1.3.1-1build2_s390x.deb ... 157s Unpacking libmpc3:s390x (1.3.1-1build2) ... 157s Selecting previously unselected package cpp-14-s390x-linux-gnu. 157s Preparing to unpack .../014-cpp-14-s390x-linux-gnu_14.2.0-17ubuntu1_s390x.deb ... 157s Unpacking cpp-14-s390x-linux-gnu (14.2.0-17ubuntu1) ... 158s Selecting previously unselected package cpp-14. 158s Preparing to unpack .../015-cpp-14_14.2.0-17ubuntu1_s390x.deb ... 158s Unpacking cpp-14 (14.2.0-17ubuntu1) ... 158s Selecting previously unselected package cpp-s390x-linux-gnu. 158s Preparing to unpack .../016-cpp-s390x-linux-gnu_4%3a14.2.0-1ubuntu1_s390x.deb ... 158s Unpacking cpp-s390x-linux-gnu (4:14.2.0-1ubuntu1) ... 158s Selecting previously unselected package cpp. 158s Preparing to unpack .../017-cpp_4%3a14.2.0-1ubuntu1_s390x.deb ... 158s Unpacking cpp (4:14.2.0-1ubuntu1) ... 158s Selecting previously unselected package libcc1-0:s390x. 158s Preparing to unpack .../018-libcc1-0_15-20250213-1ubuntu1_s390x.deb ... 158s Unpacking libcc1-0:s390x (15-20250213-1ubuntu1) ... 158s Selecting previously unselected package libgomp1:s390x. 158s Preparing to unpack .../019-libgomp1_15-20250213-1ubuntu1_s390x.deb ... 158s Unpacking libgomp1:s390x (15-20250213-1ubuntu1) ... 158s Selecting previously unselected package libitm1:s390x. 158s Preparing to unpack .../020-libitm1_15-20250213-1ubuntu1_s390x.deb ... 158s Unpacking libitm1:s390x (15-20250213-1ubuntu1) ... 158s Selecting previously unselected package libasan8:s390x. 158s Preparing to unpack .../021-libasan8_15-20250213-1ubuntu1_s390x.deb ... 158s Unpacking libasan8:s390x (15-20250213-1ubuntu1) ... 158s Selecting previously unselected package libubsan1:s390x. 158s Preparing to unpack .../022-libubsan1_15-20250213-1ubuntu1_s390x.deb ... 158s Unpacking libubsan1:s390x (15-20250213-1ubuntu1) ... 158s Selecting previously unselected package libgcc-14-dev:s390x. 158s Preparing to unpack .../023-libgcc-14-dev_14.2.0-17ubuntu1_s390x.deb ... 158s Unpacking libgcc-14-dev:s390x (14.2.0-17ubuntu1) ... 158s Selecting previously unselected package gcc-14-s390x-linux-gnu. 158s Preparing to unpack .../024-gcc-14-s390x-linux-gnu_14.2.0-17ubuntu1_s390x.deb ... 158s Unpacking gcc-14-s390x-linux-gnu (14.2.0-17ubuntu1) ... 158s Selecting previously unselected package gcc-14. 158s Preparing to unpack .../025-gcc-14_14.2.0-17ubuntu1_s390x.deb ... 158s Unpacking gcc-14 (14.2.0-17ubuntu1) ... 158s Selecting previously unselected package gcc-s390x-linux-gnu. 158s Preparing to unpack .../026-gcc-s390x-linux-gnu_4%3a14.2.0-1ubuntu1_s390x.deb ... 158s Unpacking gcc-s390x-linux-gnu (4:14.2.0-1ubuntu1) ... 158s Selecting previously unselected package gcc. 158s Preparing to unpack .../027-gcc_4%3a14.2.0-1ubuntu1_s390x.deb ... 158s Unpacking gcc (4:14.2.0-1ubuntu1) ... 158s Selecting previously unselected package libstdc++-14-dev:s390x. 158s Preparing to unpack .../028-libstdc++-14-dev_14.2.0-17ubuntu1_s390x.deb ... 158s Unpacking libstdc++-14-dev:s390x (14.2.0-17ubuntu1) ... 158s Selecting previously unselected package g++-14-s390x-linux-gnu. 158s Preparing to unpack .../029-g++-14-s390x-linux-gnu_14.2.0-17ubuntu1_s390x.deb ... 158s Unpacking g++-14-s390x-linux-gnu (14.2.0-17ubuntu1) ... 158s Selecting previously unselected package g++-14. 158s Preparing to unpack .../030-g++-14_14.2.0-17ubuntu1_s390x.deb ... 158s Unpacking g++-14 (14.2.0-17ubuntu1) ... 158s Selecting previously unselected package g++-s390x-linux-gnu. 158s Preparing to unpack .../031-g++-s390x-linux-gnu_4%3a14.2.0-1ubuntu1_s390x.deb ... 158s Unpacking g++-s390x-linux-gnu (4:14.2.0-1ubuntu1) ... 158s Selecting previously unselected package g++. 158s Preparing to unpack .../032-g++_4%3a14.2.0-1ubuntu1_s390x.deb ... 158s Unpacking g++ (4:14.2.0-1ubuntu1) ... 158s Selecting previously unselected package build-essential. 158s Preparing to unpack .../033-build-essential_12.10ubuntu1_s390x.deb ... 158s Unpacking build-essential (12.10ubuntu1) ... 158s Selecting previously unselected package libdebhelper-perl. 158s Preparing to unpack .../034-libdebhelper-perl_13.24.1ubuntu2_all.deb ... 158s Unpacking libdebhelper-perl (13.24.1ubuntu2) ... 158s Selecting previously unselected package libtool. 158s Preparing to unpack .../035-libtool_2.5.4-3build1_all.deb ... 158s Unpacking libtool (2.5.4-3build1) ... 158s Selecting previously unselected package dh-autoreconf. 158s Preparing to unpack .../036-dh-autoreconf_20_all.deb ... 158s Unpacking dh-autoreconf (20) ... 158s Selecting previously unselected package libarchive-zip-perl. 158s Preparing to unpack .../037-libarchive-zip-perl_1.68-1_all.deb ... 158s Unpacking libarchive-zip-perl (1.68-1) ... 158s Selecting previously unselected package libfile-stripnondeterminism-perl. 158s Preparing to unpack .../038-libfile-stripnondeterminism-perl_1.14.1-2_all.deb ... 158s Unpacking libfile-stripnondeterminism-perl (1.14.1-2) ... 158s Selecting previously unselected package dh-strip-nondeterminism. 158s Preparing to unpack .../039-dh-strip-nondeterminism_1.14.1-2_all.deb ... 158s Unpacking dh-strip-nondeterminism (1.14.1-2) ... 159s Selecting previously unselected package debugedit. 159s Preparing to unpack .../040-debugedit_1%3a5.1-2_s390x.deb ... 159s Unpacking debugedit (1:5.1-2) ... 159s Selecting previously unselected package dwz. 159s Preparing to unpack .../041-dwz_0.15-1build6_s390x.deb ... 159s Unpacking dwz (0.15-1build6) ... 159s Selecting previously unselected package gettext. 159s Preparing to unpack .../042-gettext_0.23.1-1_s390x.deb ... 159s Unpacking gettext (0.23.1-1) ... 159s Selecting previously unselected package intltool-debian. 159s Preparing to unpack .../043-intltool-debian_0.35.0+20060710.6_all.deb ... 159s Unpacking intltool-debian (0.35.0+20060710.6) ... 159s Selecting previously unselected package po-debconf. 159s Preparing to unpack .../044-po-debconf_1.0.21+nmu1_all.deb ... 159s Unpacking po-debconf (1.0.21+nmu1) ... 159s Selecting previously unselected package debhelper. 159s Preparing to unpack .../045-debhelper_13.24.1ubuntu2_all.deb ... 159s Unpacking debhelper (13.24.1ubuntu2) ... 159s Selecting previously unselected package dh-python. 159s Preparing to unpack .../046-dh-python_6.20250108_all.deb ... 159s Unpacking dh-python (6.20250108) ... 159s Selecting previously unselected package xml-core. 159s Preparing to unpack .../047-xml-core_0.19_all.deb ... 159s Unpacking xml-core (0.19) ... 159s Selecting previously unselected package docutils-common. 159s Preparing to unpack .../048-docutils-common_0.21.2+dfsg-2_all.deb ... 159s Unpacking docutils-common (0.21.2+dfsg-2) ... 159s Selecting previously unselected package fonts-font-awesome. 159s Preparing to unpack .../049-fonts-font-awesome_5.0.10+really4.7.0~dfsg-4.1_all.deb ... 159s Unpacking fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 159s Selecting previously unselected package python3-soupsieve. 159s Preparing to unpack .../050-python3-soupsieve_2.6-1_all.deb ... 159s Unpacking python3-soupsieve (2.6-1) ... 159s Selecting previously unselected package python3-bs4. 159s Preparing to unpack .../051-python3-bs4_4.13.3-1_all.deb ... 159s Unpacking python3-bs4 (4.13.3-1) ... 159s Selecting previously unselected package python3-defusedxml. 159s Preparing to unpack .../052-python3-defusedxml_0.7.1-3_all.deb ... 159s Unpacking python3-defusedxml (0.7.1-3) ... 159s Selecting previously unselected package libjs-jquery. 159s Preparing to unpack .../053-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 159s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 159s Selecting previously unselected package libjs-underscore. 159s Preparing to unpack .../054-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 159s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 159s Selecting previously unselected package libjs-sphinxdoc. 159s Preparing to unpack .../055-libjs-sphinxdoc_8.1.3-5_all.deb ... 159s Unpacking libjs-sphinxdoc (8.1.3-5) ... 159s Selecting previously unselected package libjson-perl. 159s Preparing to unpack .../056-libjson-perl_4.10000-1_all.deb ... 159s Unpacking libjson-perl (4.10000-1) ... 159s Selecting previously unselected package sphinx-common. 159s Preparing to unpack .../057-sphinx-common_8.1.3-5_all.deb ... 159s Unpacking sphinx-common (8.1.3-5) ... 159s Selecting previously unselected package python3-alabaster. 159s Preparing to unpack .../058-python3-alabaster_0.7.16-0.1_all.deb ... 159s Unpacking python3-alabaster (0.7.16-0.1) ... 159s Selecting previously unselected package python3-roman. 159s Preparing to unpack .../059-python3-roman_5.0-1_all.deb ... 159s Unpacking python3-roman (5.0-1) ... 159s Selecting previously unselected package python3-docutils. 159s Preparing to unpack .../060-python3-docutils_0.21.2+dfsg-2_all.deb ... 159s Unpacking python3-docutils (0.21.2+dfsg-2) ... 159s Selecting previously unselected package python3-imagesize. 159s Preparing to unpack .../061-python3-imagesize_1.4.1-1_all.deb ... 159s Unpacking python3-imagesize (1.4.1-1) ... 159s Selecting previously unselected package python3-packaging. 159s Preparing to unpack .../062-python3-packaging_24.2-1_all.deb ... 159s Unpacking python3-packaging (24.2-1) ... 159s Selecting previously unselected package python3-snowballstemmer. 159s Preparing to unpack .../063-python3-snowballstemmer_2.2.0-4build1_all.deb ... 159s Unpacking python3-snowballstemmer (2.2.0-4build1) ... 159s Selecting previously unselected package python3-sphinx. 159s Preparing to unpack .../064-python3-sphinx_8.1.3-5_all.deb ... 159s Unpacking python3-sphinx (8.1.3-5) ... 159s Selecting previously unselected package sphinx-basic-ng. 159s Preparing to unpack .../065-sphinx-basic-ng_1.0.0~beta2-1_all.deb ... 159s Unpacking sphinx-basic-ng (1.0.0~beta2-1) ... 159s Selecting previously unselected package furo. 159s Preparing to unpack .../066-furo_2024.08.06+dfsg-1_all.deb ... 159s Unpacking furo (2024.08.06+dfsg-1) ... 159s Selecting previously unselected package libblas3:s390x. 159s Preparing to unpack .../067-libblas3_3.12.1-2_s390x.deb ... 159s Unpacking libblas3:s390x (3.12.1-2) ... 159s Selecting previously unselected package libdrm-radeon1:s390x. 159s Preparing to unpack .../068-libdrm-radeon1_2.4.123-1_s390x.deb ... 159s Unpacking libdrm-radeon1:s390x (2.4.123-1) ... 159s Selecting previously unselected package libglvnd0:s390x. 159s Preparing to unpack .../069-libglvnd0_1.7.0-1build1_s390x.deb ... 159s Unpacking libglvnd0:s390x (1.7.0-1build1) ... 159s Selecting previously unselected package libwayland-server0:s390x. 159s Preparing to unpack .../070-libwayland-server0_1.23.1-1_s390x.deb ... 159s Unpacking libwayland-server0:s390x (1.23.1-1) ... 159s Selecting previously unselected package libglapi-mesa:s390x. 159s Preparing to unpack .../071-libglapi-mesa_24.3.4-3ubuntu1_s390x.deb ... 159s Unpacking libglapi-mesa:s390x (24.3.4-3ubuntu1) ... 159s Selecting previously unselected package libx11-xcb1:s390x. 159s Preparing to unpack .../072-libx11-xcb1_2%3a1.8.10-2_s390x.deb ... 159s Unpacking libx11-xcb1:s390x (2:1.8.10-2) ... 159s Selecting previously unselected package libxcb-dri3-0:s390x. 159s Preparing to unpack .../073-libxcb-dri3-0_1.17.0-2_s390x.deb ... 159s Unpacking libxcb-dri3-0:s390x (1.17.0-2) ... 159s Selecting previously unselected package libxcb-present0:s390x. 159s Preparing to unpack .../074-libxcb-present0_1.17.0-2_s390x.deb ... 159s Unpacking libxcb-present0:s390x (1.17.0-2) ... 159s Selecting previously unselected package libxcb-randr0:s390x. 159s Preparing to unpack .../075-libxcb-randr0_1.17.0-2_s390x.deb ... 159s Unpacking libxcb-randr0:s390x (1.17.0-2) ... 159s Selecting previously unselected package libxcb-sync1:s390x. 159s Preparing to unpack .../076-libxcb-sync1_1.17.0-2_s390x.deb ... 159s Unpacking libxcb-sync1:s390x (1.17.0-2) ... 159s Selecting previously unselected package libxcb-xfixes0:s390x. 159s Preparing to unpack .../077-libxcb-xfixes0_1.17.0-2_s390x.deb ... 159s Unpacking libxcb-xfixes0:s390x (1.17.0-2) ... 159s Selecting previously unselected package libxshmfence1:s390x. 159s Preparing to unpack .../078-libxshmfence1_1.3-1build5_s390x.deb ... 159s Unpacking libxshmfence1:s390x (1.3-1build5) ... 159s Selecting previously unselected package mesa-libgallium:s390x. 159s Preparing to unpack .../079-mesa-libgallium_24.3.4-3ubuntu1_s390x.deb ... 159s Unpacking mesa-libgallium:s390x (24.3.4-3ubuntu1) ... 159s Selecting previously unselected package libgbm1:s390x. 159s Preparing to unpack .../080-libgbm1_24.3.4-3ubuntu1_s390x.deb ... 159s Unpacking libgbm1:s390x (24.3.4-3ubuntu1) ... 159s Selecting previously unselected package libwayland-client0:s390x. 159s Preparing to unpack .../081-libwayland-client0_1.23.1-1_s390x.deb ... 159s Unpacking libwayland-client0:s390x (1.23.1-1) ... 159s Selecting previously unselected package libxcb-shm0:s390x. 159s Preparing to unpack .../082-libxcb-shm0_1.17.0-2_s390x.deb ... 159s Unpacking libxcb-shm0:s390x (1.17.0-2) ... 159s Selecting previously unselected package libegl-mesa0:s390x. 159s Preparing to unpack .../083-libegl-mesa0_24.3.4-3ubuntu1_s390x.deb ... 159s Unpacking libegl-mesa0:s390x (24.3.4-3ubuntu1) ... 159s Selecting previously unselected package libegl1:s390x. 159s Preparing to unpack .../084-libegl1_1.7.0-1build1_s390x.deb ... 159s Unpacking libegl1:s390x (1.7.0-1build1) ... 159s Selecting previously unselected package libxcb-glx0:s390x. 159s Preparing to unpack .../085-libxcb-glx0_1.17.0-2_s390x.deb ... 159s Unpacking libxcb-glx0:s390x (1.17.0-2) ... 159s Selecting previously unselected package libxxf86vm1:s390x. 159s Preparing to unpack .../086-libxxf86vm1_1%3a1.1.4-1build4_s390x.deb ... 159s Unpacking libxxf86vm1:s390x (1:1.1.4-1build4) ... 159s Selecting previously unselected package libvulkan1:s390x. 159s Preparing to unpack .../087-libvulkan1_1.4.304.0-1_s390x.deb ... 159s Unpacking libvulkan1:s390x (1.4.304.0-1) ... 159s Selecting previously unselected package libgl1-mesa-dri:s390x. 159s Preparing to unpack .../088-libgl1-mesa-dri_24.3.4-3ubuntu1_s390x.deb ... 159s Unpacking libgl1-mesa-dri:s390x (24.3.4-3ubuntu1) ... 159s Selecting previously unselected package libglx-mesa0:s390x. 159s Preparing to unpack .../089-libglx-mesa0_24.3.4-3ubuntu1_s390x.deb ... 159s Unpacking libglx-mesa0:s390x (24.3.4-3ubuntu1) ... 159s Selecting previously unselected package libglx0:s390x. 159s Preparing to unpack .../090-libglx0_1.7.0-1build1_s390x.deb ... 159s Unpacking libglx0:s390x (1.7.0-1build1) ... 159s Selecting previously unselected package libgl1:s390x. 159s Preparing to unpack .../091-libgl1_1.7.0-1build1_s390x.deb ... 159s Unpacking libgl1:s390x (1.7.0-1build1) ... 159s Selecting previously unselected package xorg-sgml-doctools. 159s Preparing to unpack .../092-xorg-sgml-doctools_1%3a1.11-1.1_all.deb ... 159s Unpacking xorg-sgml-doctools (1:1.11-1.1) ... 159s Selecting previously unselected package x11proto-dev. 159s Preparing to unpack .../093-x11proto-dev_2024.1-1_all.deb ... 159s Unpacking x11proto-dev (2024.1-1) ... 160s Selecting previously unselected package libxau-dev:s390x. 160s Preparing to unpack .../094-libxau-dev_1%3a1.0.11-1_s390x.deb ... 160s Unpacking libxau-dev:s390x (1:1.0.11-1) ... 160s Selecting previously unselected package libxdmcp-dev:s390x. 160s Preparing to unpack .../095-libxdmcp-dev_1%3a1.1.5-1_s390x.deb ... 160s Unpacking libxdmcp-dev:s390x (1:1.1.5-1) ... 160s Selecting previously unselected package xtrans-dev. 160s Preparing to unpack .../096-xtrans-dev_1.4.0-1_all.deb ... 160s Unpacking xtrans-dev (1.4.0-1) ... 160s Selecting previously unselected package libxcb1-dev:s390x. 160s Preparing to unpack .../097-libxcb1-dev_1.17.0-2_s390x.deb ... 160s Unpacking libxcb1-dev:s390x (1.17.0-2) ... 160s Selecting previously unselected package libx11-dev:s390x. 160s Preparing to unpack .../098-libx11-dev_2%3a1.8.10-2_s390x.deb ... 160s Unpacking libx11-dev:s390x (2:1.8.10-2) ... 160s Selecting previously unselected package libglx-dev:s390x. 160s Preparing to unpack .../099-libglx-dev_1.7.0-1build1_s390x.deb ... 160s Unpacking libglx-dev:s390x (1.7.0-1build1) ... 160s Selecting previously unselected package libgl-dev:s390x. 160s Preparing to unpack .../100-libgl-dev_1.7.0-1build1_s390x.deb ... 160s Unpacking libgl-dev:s390x (1.7.0-1build1) ... 160s Selecting previously unselected package libegl-dev:s390x. 160s Preparing to unpack .../101-libegl-dev_1.7.0-1build1_s390x.deb ... 160s Unpacking libegl-dev:s390x (1.7.0-1build1) ... 160s Selecting previously unselected package libexpat1-dev:s390x. 160s Preparing to unpack .../102-libexpat1-dev_2.6.4-1_s390x.deb ... 160s Unpacking libexpat1-dev:s390x (2.6.4-1) ... 160s Selecting previously unselected package libfontenc1:s390x. 160s Preparing to unpack .../103-libfontenc1_1%3a1.1.8-1build1_s390x.deb ... 160s Unpacking libfontenc1:s390x (1:1.1.8-1build1) ... 160s Selecting previously unselected package libfreetype6:s390x. 160s Preparing to unpack .../104-libfreetype6_2.13.3+dfsg-1_s390x.deb ... 160s Unpacking libfreetype6:s390x (2.13.3+dfsg-1) ... 160s Selecting previously unselected package libgfortran5:s390x. 160s Preparing to unpack .../105-libgfortran5_15-20250213-1ubuntu1_s390x.deb ... 160s Unpacking libgfortran5:s390x (15-20250213-1ubuntu1) ... 160s Selecting previously unselected package x11-common. 160s Preparing to unpack .../106-x11-common_1%3a7.7+23ubuntu3_all.deb ... 160s Unpacking x11-common (1:7.7+23ubuntu3) ... 160s Selecting previously unselected package libice6:s390x. 160s Preparing to unpack .../107-libice6_2%3a1.1.1-1_s390x.deb ... 160s Unpacking libice6:s390x (2:1.1.1-1) ... 160s Selecting previously unselected package liblapack3:s390x. 160s Preparing to unpack .../108-liblapack3_3.12.1-2_s390x.deb ... 160s Unpacking liblapack3:s390x (3.12.1-2) ... 160s Selecting previously unselected package liblbfgsb0:s390x. 160s Preparing to unpack .../109-liblbfgsb0_3.0+dfsg.4-1build1_s390x.deb ... 160s Unpacking liblbfgsb0:s390x (3.0+dfsg.4-1build1) ... 160s Selecting previously unselected package libpixman-1-0:s390x. 160s Preparing to unpack .../110-libpixman-1-0_0.44.0-3_s390x.deb ... 160s Unpacking libpixman-1-0:s390x (0.44.0-3) ... 160s Selecting previously unselected package zlib1g-dev:s390x. 160s Preparing to unpack .../111-zlib1g-dev_1%3a1.3.dfsg+really1.3.1-1ubuntu1_s390x.deb ... 160s Unpacking zlib1g-dev:s390x (1:1.3.dfsg+really1.3.1-1ubuntu1) ... 160s Selecting previously unselected package libpython3.13-dev:s390x. 160s Preparing to unpack .../112-libpython3.13-dev_3.13.2-1_s390x.deb ... 160s Unpacking libpython3.13-dev:s390x (3.13.2-1) ... 160s Selecting previously unselected package libpython3-dev:s390x. 160s Preparing to unpack .../113-libpython3-dev_3.13.1-1~exp2_s390x.deb ... 160s Unpacking libpython3-dev:s390x (3.13.1-1~exp2) ... 160s Selecting previously unselected package libpython3.12t64:s390x. 160s Preparing to unpack .../114-libpython3.12t64_3.12.9-1_s390x.deb ... 160s Unpacking libpython3.12t64:s390x (3.12.9-1) ... 160s Selecting previously unselected package libpython3.12-dev:s390x. 160s Preparing to unpack .../115-libpython3.12-dev_3.12.9-1_s390x.deb ... 160s Unpacking libpython3.12-dev:s390x (3.12.9-1) ... 160s Selecting previously unselected package libpython3-all-dev:s390x. 160s Preparing to unpack .../116-libpython3-all-dev_3.13.1-1~exp2_s390x.deb ... 160s Unpacking libpython3-all-dev:s390x (3.13.1-1~exp2) ... 160s Selecting previously unselected package libsm6:s390x. 160s Preparing to unpack .../117-libsm6_2%3a1.2.4-1_s390x.deb ... 160s Unpacking libsm6:s390x (2:1.2.4-1) ... 160s Selecting previously unselected package libxt6t64:s390x. 160s Preparing to unpack .../118-libxt6t64_1%3a1.2.1-1.2build1_s390x.deb ... 160s Unpacking libxt6t64:s390x (1:1.2.1-1.2build1) ... 160s Selecting previously unselected package libxmu6:s390x. 160s Preparing to unpack .../119-libxmu6_2%3a1.1.3-3build2_s390x.deb ... 160s Unpacking libxmu6:s390x (2:1.1.3-3build2) ... 160s Selecting previously unselected package libxpm4:s390x. 160s Preparing to unpack .../120-libxpm4_1%3a3.5.17-1build2_s390x.deb ... 160s Unpacking libxpm4:s390x (1:3.5.17-1build2) ... 160s Selecting previously unselected package libxaw7:s390x. 160s Preparing to unpack .../121-libxaw7_2%3a1.0.16-1_s390x.deb ... 160s Unpacking libxaw7:s390x (2:1.0.16-1) ... 160s Selecting previously unselected package libxfont2:s390x. 160s Preparing to unpack .../122-libxfont2_1%3a2.0.6-1build1_s390x.deb ... 160s Unpacking libxfont2:s390x (1:2.0.6-1build1) ... 160s Selecting previously unselected package libxkbfile1:s390x. 160s Preparing to unpack .../123-libxkbfile1_1%3a1.1.0-1build4_s390x.deb ... 160s Unpacking libxkbfile1:s390x (1:1.1.0-1build4) ... 160s Selecting previously unselected package libxrender1:s390x. 160s Preparing to unpack .../124-libxrender1_1%3a0.9.10-1.1build1_s390x.deb ... 160s Unpacking libxrender1:s390x (1:0.9.10-1.1build1) ... 160s Selecting previously unselected package libxrandr2:s390x. 160s Preparing to unpack .../125-libxrandr2_2%3a1.5.4-1_s390x.deb ... 160s Unpacking libxrandr2:s390x (2:1.5.4-1) ... 160s Selecting previously unselected package pybuild-plugin-autopkgtest. 160s Preparing to unpack .../126-pybuild-plugin-autopkgtest_6.20250108_all.deb ... 160s Unpacking pybuild-plugin-autopkgtest (6.20250108) ... 160s Selecting previously unselected package python3-pyproject-hooks. 160s Preparing to unpack .../127-python3-pyproject-hooks_1.2.0-1_all.deb ... 160s Unpacking python3-pyproject-hooks (1.2.0-1) ... 160s Selecting previously unselected package python3-toml. 160s Preparing to unpack .../128-python3-toml_0.10.2-1_all.deb ... 160s Unpacking python3-toml (0.10.2-1) ... 160s Selecting previously unselected package python3-wheel. 160s Preparing to unpack .../129-python3-wheel_0.45.1-1_all.deb ... 160s Unpacking python3-wheel (0.45.1-1) ... 160s Selecting previously unselected package python3-build. 160s Preparing to unpack .../130-python3-build_1.2.2-1_all.deb ... 160s Unpacking python3-build (1.2.2-1) ... 160s Selecting previously unselected package python3-installer. 160s Preparing to unpack .../131-python3-installer_0.7.0+dfsg1-3_all.deb ... 160s Unpacking python3-installer (0.7.0+dfsg1-3) ... 160s Selecting previously unselected package pybuild-plugin-pyproject. 160s Preparing to unpack .../132-pybuild-plugin-pyproject_6.20250108_all.deb ... 160s Unpacking pybuild-plugin-pyproject (6.20250108) ... 160s Selecting previously unselected package python-moderngl-doc. 160s Preparing to unpack .../133-python-moderngl-doc_5.12.0-1build1_all.deb ... 160s Unpacking python-moderngl-doc (5.12.0-1build1) ... 160s Selecting previously unselected package python3-all. 160s Preparing to unpack .../134-python3-all_3.13.1-1~exp2_s390x.deb ... 160s Unpacking python3-all (3.13.1-1~exp2) ... 160s Selecting previously unselected package python3.13-dev. 160s Preparing to unpack .../135-python3.13-dev_3.13.2-1_s390x.deb ... 160s Unpacking python3.13-dev (3.13.2-1) ... 160s Selecting previously unselected package python3-dev. 160s Preparing to unpack .../136-python3-dev_3.13.1-1~exp2_s390x.deb ... 160s Unpacking python3-dev (3.13.1-1~exp2) ... 160s Selecting previously unselected package python3.12-dev. 160s Preparing to unpack .../137-python3.12-dev_3.12.9-1_s390x.deb ... 160s Unpacking python3.12-dev (3.12.9-1) ... 160s Selecting previously unselected package python3-all-dev. 160s Preparing to unpack .../138-python3-all-dev_3.13.1-1~exp2_s390x.deb ... 160s Unpacking python3-all-dev (3.13.1-1~exp2) ... 160s Selecting previously unselected package python3-decorator. 160s Preparing to unpack .../139-python3-decorator_5.1.1-5_all.deb ... 160s Unpacking python3-decorator (5.1.1-5) ... 160s Selecting previously unselected package python3-glcontext. 160s Preparing to unpack .../140-python3-glcontext_3.0.0-1build1_s390x.deb ... 160s Unpacking python3-glcontext (3.0.0-1build1) ... 160s Selecting previously unselected package python3-iniconfig. 160s Preparing to unpack .../141-python3-iniconfig_1.1.1-2_all.deb ... 160s Unpacking python3-iniconfig (1.1.1-2) ... 160s Selecting previously unselected package python3-moderngl. 160s Preparing to unpack .../142-python3-moderngl_5.12.0-1build1_s390x.deb ... 160s Unpacking python3-moderngl (5.12.0-1build1) ... 160s Selecting previously unselected package python3-numpy. 160s Preparing to unpack .../143-python3-numpy_1%3a1.26.4+ds-13_s390x.deb ... 160s Unpacking python3-numpy (1:1.26.4+ds-13) ... 161s Selecting previously unselected package libopengl0:s390x. 161s Preparing to unpack .../144-libopengl0_1.7.0-1build1_s390x.deb ... 161s Unpacking libopengl0:s390x (1.7.0-1build1) ... 161s Selecting previously unselected package libglu1-mesa:s390x. 161s Preparing to unpack .../145-libglu1-mesa_9.0.2-1.1build1_s390x.deb ... 161s Unpacking libglu1-mesa:s390x (9.0.2-1.1build1) ... 161s Selecting previously unselected package python3-opengl. 161s Preparing to unpack .../146-python3-opengl_3.1.7+dfsg-1_all.deb ... 161s Unpacking python3-opengl (3.1.7+dfsg-1) ... 161s Selecting previously unselected package python3-pluggy. 161s Preparing to unpack .../147-python3-pluggy_1.5.0-1_all.deb ... 161s Unpacking python3-pluggy (1.5.0-1) ... 161s Selecting previously unselected package python3-pycodestyle. 161s Preparing to unpack .../148-python3-pycodestyle_2.12.1-2_all.deb ... 161s Unpacking python3-pycodestyle (2.12.1-2) ... 161s Selecting previously unselected package python3-pytest. 161s Preparing to unpack .../149-python3-pytest_8.3.4-1_all.deb ... 161s Unpacking python3-pytest (8.3.4-1) ... 161s Selecting previously unselected package python3-sphinx-copybutton. 161s Preparing to unpack .../150-python3-sphinx-copybutton_0.5.2-2_all.deb ... 161s Unpacking python3-sphinx-copybutton (0.5.2-2) ... 161s Selecting previously unselected package sphinx-rtd-theme-common. 161s Preparing to unpack .../151-sphinx-rtd-theme-common_3.0.2+dfsg-2_all.deb ... 161s Unpacking sphinx-rtd-theme-common (3.0.2+dfsg-2) ... 161s Selecting previously unselected package python3-sphinxcontrib.jquery. 161s Preparing to unpack .../152-python3-sphinxcontrib.jquery_4.1-5_all.deb ... 161s Unpacking python3-sphinxcontrib.jquery (4.1-5) ... 161s Selecting previously unselected package python3-sphinx-rtd-theme. 161s Preparing to unpack .../153-python3-sphinx-rtd-theme_3.0.2+dfsg-2_all.deb ... 161s Unpacking python3-sphinx-rtd-theme (3.0.2+dfsg-2) ... 161s Selecting previously unselected package x11-xkb-utils. 161s Preparing to unpack .../154-x11-xkb-utils_7.7+9_s390x.deb ... 161s Unpacking x11-xkb-utils (7.7+9) ... 161s Selecting previously unselected package xserver-common. 161s Preparing to unpack .../155-xserver-common_2%3a21.1.14-2ubuntu1_all.deb ... 161s Unpacking xserver-common (2:21.1.14-2ubuntu1) ... 161s Selecting previously unselected package xvfb. 161s Preparing to unpack .../156-xvfb_2%3a21.1.14-2ubuntu1_s390x.deb ... 161s Unpacking xvfb (2:21.1.14-2ubuntu1) ... 161s Selecting previously unselected package python3-scipy. 161s Preparing to unpack .../157-python3-scipy_1.14.1-4ubuntu1_s390x.deb ... 161s Unpacking python3-scipy (1.14.1-4ubuntu1) ... 161s Setting up dh-python (6.20250108) ... 162s Setting up libxcb-dri3-0:s390x (1.17.0-2) ... 162s Setting up python3-iniconfig (1.1.1-2) ... 162s Setting up libpixman-1-0:s390x (0.44.0-3) ... 162s Setting up libwayland-server0:s390x (1.23.1-1) ... 162s Setting up libx11-xcb1:s390x (2:1.8.10-2) ... 162s Setting up fonts-lato (2.015-1) ... 162s Setting up libxcb-xfixes0:s390x (1.17.0-2) ... 162s Setting up libxpm4:s390x (1:3.5.17-1build2) ... 162s Setting up libxrender1:s390x (1:0.9.10-1.1build1) ... 162s Setting up python3-defusedxml (0.7.1-3) ... 162s Setting up libarchive-zip-perl (1.68-1) ... 162s Setting up libdrm-radeon1:s390x (2.4.123-1) ... 162s Setting up libglvnd0:s390x (1.7.0-1build1) ... 162s Setting up python3-alabaster (0.7.16-0.1) ... 162s Setting up libxcb-glx0:s390x (1.17.0-2) ... 162s Setting up libdebhelper-perl (13.24.1ubuntu2) ... 162s Setting up libpython3.12-minimal:s390x (3.12.9-1) ... 162s Setting up x11-common (1:7.7+23ubuntu3) ... 162s Setting up m4 (1.4.19-5) ... 162s Setting up libxcb-shm0:s390x (1.17.0-2) ... 162s Setting up libgomp1:s390x (15-20250213-1ubuntu1) ... 162s Setting up python3-wheel (0.45.1-1) ... 163s Setting up libopengl0:s390x (1.7.0-1build1) ... 163s Setting up libxxf86vm1:s390x (1:1.1.4-1build4) ... 163s Setting up libxcb-present0:s390x (1.17.0-2) ... 163s Setting up python3-roman (5.0-1) ... 163s Setting up xtrans-dev (1.4.0-1) ... 163s Setting up python3-decorator (5.1.1-5) ... 163s Setting up python3-pycodestyle (2.12.1-2) ... 163s Setting up libfontenc1:s390x (1:1.1.8-1build1) ... 163s Setting up autotools-dev (20220109.1) ... 163s Setting up libblas3:s390x (3.12.1-2) ... 163s update-alternatives: using /usr/lib/s390x-linux-gnu/blas/libblas.so.3 to provide /usr/lib/s390x-linux-gnu/libblas.so.3 (libblas.so.3-s390x-linux-gnu) in auto mode 163s Setting up python3-packaging (24.2-1) ... 163s Setting up libexpat1-dev:s390x (2.6.4-1) ... 163s Setting up python3-pyproject-hooks (1.2.0-1) ... 163s Setting up libfreetype6:s390x (2.13.3+dfsg-1) ... 163s Setting up libxcb-sync1:s390x (1.17.0-2) ... 163s Setting up python3-snowballstemmer (2.2.0-4build1) ... 164s Setting up libmpc3:s390x (1.3.1-1build2) ... 164s Setting up libxrandr2:s390x (2:1.5.4-1) ... 164s Setting up autopoint (0.23.1-1) ... 164s Setting up libglapi-mesa:s390x (24.3.4-3ubuntu1) ... 164s Setting up python3-toml (0.10.2-1) ... 164s Setting up python3-installer (0.7.0+dfsg1-3) ... 164s Setting up libgfortran5:s390x (15-20250213-1ubuntu1) ... 164s Setting up libvulkan1:s390x (1.4.304.0-1) ... 164s Setting up autoconf (2.72-3) ... 164s Setting up python3-pluggy (1.5.0-1) ... 164s Setting up libubsan1:s390x (15-20250213-1ubuntu1) ... 164s Setting up zlib1g-dev:s390x (1:1.3.dfsg+really1.3.1-1ubuntu1) ... 164s Setting up dwz (0.15-1build6) ... 164s Setting up libxshmfence1:s390x (1.3-1build5) ... 164s Setting up libxcb-randr0:s390x (1.17.0-2) ... 164s Setting up libasan8:s390x (15-20250213-1ubuntu1) ... 164s Setting up libjson-perl (4.10000-1) ... 164s Setting up libnsl2:s390x (1.3.0-3build3) ... 164s Setting up debugedit (1:5.1-2) ... 164s Setting up xorg-sgml-doctools (1:1.11-1.1) ... 164s Setting up sgml-base (1.31) ... 164s Setting up python3-glcontext (3.0.0-1build1) ... 164s Setting up libglu1-mesa:s390x (9.0.2-1.1build1) ... 164s Setting up libxkbfile1:s390x (1:1.1.0-1build4) ... 164s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 164s Setting up libisl23:s390x (0.27-1) ... 164s Setting up python3-build (1.2.2-1) ... 165s Setting up libxfont2:s390x (1:2.0.6-1build1) ... 165s Setting up python3-soupsieve (2.6-1) ... 165s Setting up python3-moderngl (5.12.0-1build1) ... 165s Setting up fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 165s Setting up sphinx-rtd-theme-common (3.0.2+dfsg-2) ... 165s Setting up libcc1-0:s390x (15-20250213-1ubuntu1) ... 165s Setting up libitm1:s390x (15-20250213-1ubuntu1) ... 165s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 165s Setting up python3-imagesize (1.4.1-1) ... 165s Setting up libwayland-client0:s390x (1.23.1-1) ... 165s Setting up automake (1:1.17-3) ... 165s update-alternatives: using /usr/bin/automake-1.17 to provide /usr/bin/automake (automake) in auto mode 165s Setting up x11proto-dev (2024.1-1) ... 165s Setting up libfile-stripnondeterminism-perl (1.14.1-2) ... 165s Setting up python3.12-minimal (3.12.9-1) ... 166s Setting up libice6:s390x (2:1.1.1-1) ... 166s Setting up mesa-libgallium:s390x (24.3.4-3ubuntu1) ... 166s Setting up liblapack3:s390x (3.12.1-2) ... 166s update-alternatives: using /usr/lib/s390x-linux-gnu/lapack/liblapack.so.3 to provide /usr/lib/s390x-linux-gnu/liblapack.so.3 (liblapack.so.3-s390x-linux-gnu) in auto mode 166s Setting up gettext (0.23.1-1) ... 166s Setting up libxau-dev:s390x (1:1.0.11-1) ... 166s Setting up libpython3.12-stdlib:s390x (3.12.9-1) ... 166s Setting up libgbm1:s390x (24.3.4-3ubuntu1) ... 166s Setting up pybuild-plugin-pyproject (6.20250108) ... 166s Setting up python3-pytest (8.3.4-1) ... 166s Setting up python3.12 (3.12.9-1) ... 168s Setting up libgl1-mesa-dri:s390x (24.3.4-3ubuntu1) ... 168s Setting up python3-all (3.13.1-1~exp2) ... 168s Setting up python3-bs4 (4.13.3-1) ... 168s Setting up intltool-debian (0.35.0+20060710.6) ... 168s Setting up libpython3.12t64:s390x (3.12.9-1) ... 168s Setting up libxdmcp-dev:s390x (1:1.1.5-1) ... 168s Setting up libegl-mesa0:s390x (24.3.4-3ubuntu1) ... 168s Setting up libpython3.13-dev:s390x (3.13.2-1) ... 168s Setting up python3-numpy (1:1.26.4+ds-13) ... 172s Setting up libjs-sphinxdoc (8.1.3-5) ... 172s Setting up cpp-14-s390x-linux-gnu (14.2.0-17ubuntu1) ... 172s Setting up cpp-14 (14.2.0-17ubuntu1) ... 172s Setting up dh-strip-nondeterminism (1.14.1-2) ... 172s Setting up xml-core (0.19) ... 172s Setting up libegl1:s390x (1.7.0-1build1) ... 172s Setting up libgcc-14-dev:s390x (14.2.0-17ubuntu1) ... 172s Setting up libstdc++-14-dev:s390x (14.2.0-17ubuntu1) ... 172s Setting up libsm6:s390x (2:1.2.4-1) ... 172s Setting up liblbfgsb0:s390x (3.0+dfsg.4-1build1) ... 172s Setting up python-moderngl-doc (5.12.0-1build1) ... 172s Setting up libglx-mesa0:s390x (24.3.4-3ubuntu1) ... 172s Setting up python3-scipy (1.14.1-4ubuntu1) ... 180s Setting up libpython3-dev:s390x (3.13.1-1~exp2) ... 180s Setting up libxcb1-dev:s390x (1.17.0-2) ... 180s Setting up libglx0:s390x (1.7.0-1build1) ... 180s Setting up cpp-s390x-linux-gnu (4:14.2.0-1ubuntu1) ... 180s Setting up python3.13-dev (3.13.2-1) ... 180s Setting up po-debconf (1.0.21+nmu1) ... 180s Setting up libx11-dev:s390x (2:1.8.10-2) ... 180s Setting up libpython3.12-dev:s390x (3.12.9-1) ... 180s Setting up gcc-14-s390x-linux-gnu (14.2.0-17ubuntu1) ... 180s Setting up libgl1:s390x (1.7.0-1build1) ... 180s Setting up gcc-s390x-linux-gnu (4:14.2.0-1ubuntu1) ... 180s Setting up libpython3-all-dev:s390x (3.13.1-1~exp2) ... 180s Setting up sphinx-common (8.1.3-5) ... 180s Setting up python3-dev (3.13.1-1~exp2) ... 180s Setting up libxt6t64:s390x (1:1.2.1-1.2build1) ... 180s Setting up g++-14-s390x-linux-gnu (14.2.0-17ubuntu1) ... 180s Setting up python3.12-dev (3.12.9-1) ... 180s Setting up cpp (4:14.2.0-1ubuntu1) ... 180s Setting up libglx-dev:s390x (1.7.0-1build1) ... 180s Setting up libgl-dev:s390x (1.7.0-1build1) ... 180s Setting up python3-all-dev (3.13.1-1~exp2) ... 180s Setting up libxmu6:s390x (2:1.1.3-3build2) ... 180s Setting up libegl-dev:s390x (1.7.0-1build1) ... 180s Setting up g++-s390x-linux-gnu (4:14.2.0-1ubuntu1) ... 180s Setting up libxaw7:s390x (2:1.0.16-1) ... 180s Setting up python3-opengl (3.1.7+dfsg-1) ... 180s /usr/lib/python3/dist-packages/OpenGL/GL/AMD/vertex_shader_tessellator.py:1: SyntaxWarning: invalid escape sequence '\ ' 180s '''OpenGL extension AMD.vertex_shader_tessellator 181s /usr/lib/python3/dist-packages/OpenGL/GL/AMD/vertex_shader_tessellator.py:1: SyntaxWarning: invalid escape sequence '\ ' 181s '''OpenGL extension AMD.vertex_shader_tessellator 182s Setting up gcc-14 (14.2.0-17ubuntu1) ... 182s Setting up g++-14 (14.2.0-17ubuntu1) ... 182s Setting up libtool (2.5.4-3build1) ... 182s Setting up x11-xkb-utils (7.7+9) ... 182s Setting up gcc (4:14.2.0-1ubuntu1) ... 182s Setting up dh-autoreconf (20) ... 182s Setting up g++ (4:14.2.0-1ubuntu1) ... 182s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 182s Setting up build-essential (12.10ubuntu1) ... 182s Setting up xserver-common (2:21.1.14-2ubuntu1) ... 182s Setting up xvfb (2:21.1.14-2ubuntu1) ... 182s Setting up debhelper (13.24.1ubuntu2) ... 182s Setting up pybuild-plugin-autopkgtest (6.20250108) ... 182s Processing triggers for install-info (7.1.1-1) ... 182s Processing triggers for libc-bin (2.40-4ubuntu1) ... 182s Processing triggers for systemd (257.2-3ubuntu1) ... 182s Processing triggers for man-db (2.13.0-1) ... 184s Processing triggers for sgml-base (1.31) ... 184s Setting up docutils-common (0.21.2+dfsg-2) ... 184s Processing triggers for sgml-base (1.31) ... 184s Setting up python3-docutils (0.21.2+dfsg-2) ... 184s Setting up python3-sphinx (8.1.3-5) ... 186s Setting up python3-sphinx-copybutton (0.5.2-2) ... 186s Setting up python3-sphinxcontrib.jquery (4.1-5) ... 186s Setting up sphinx-basic-ng (1.0.0~beta2-1) ... 186s Setting up python3-sphinx-rtd-theme (3.0.2+dfsg-2) ... 186s Setting up furo (2024.08.06+dfsg-1) ... 188s autopkgtest [12:49:00]: test pybuild-autopkgtest: pybuild-autopkgtest 188s autopkgtest [12:49:00]: test pybuild-autopkgtest: [----------------------- 188s pybuild-autopkgtest 188s I: pybuild base:311: cd /tmp/autopkgtest.bBUYfo/autopkgtest_tmp/build; xvfb-run --auto-servernum --server-num=20 -s "-screen 0 1024x768x24 -ac +extension GLX -noreset" python3.12 -m pytest -k "not (test_local or test_documentation or test_module_integrity)" 190s ============================= test session starts ============================== 190s platform linux -- Python 3.12.9, pytest-8.3.4, pluggy-1.5.0 190s rootdir: /tmp/autopkgtest.bBUYfo/autopkgtest_tmp/build 190s configfile: pyproject.toml 190s plugins: typeguard-4.4.1 190s collected 360 items / 1 deselected / 359 selected 190s 192s tests/test_blend.py ....... [ 1%] 192s tests/test_buffer.py ............. [ 5%] 192s tests/test_buffer_copy.py .. [ 6%] 192s tests/test_buffer_new.py ........ [ 8%] 192s tests/test_buffer_read_errors.py .... [ 9%] 192s tests/test_buffer_read_into.py ... [ 10%] 192s tests/test_buffer_write_errors.py .... [ 11%] 192s tests/test_compute_shader.py ....FF.. [ 13%] 192s tests/test_compute_shader_uniform.py . [ 13%] 192s tests/test_context.py ............ [ 17%] 192s tests/test_cull_face.py . [ 17%] 192s tests/test_debug_scopes.py ..... [ 18%] 192s tests/test_depth_samplers.py ... [ 19%] 192s tests/test_framebuffer.py ..... [ 21%] 192s tests/test_framebuffer_clear.py . [ 21%] 192s tests/test_framebuffer_half_float.py . [ 21%] 192s tests/test_framebuffer_masks.py .. [ 22%] 192s tests/test_framebuffer_read_channels.py . [ 22%] 192s tests/test_labels.py .... [ 23%] 192s tests/test_padding.py ... [ 24%] 192s tests/test_pbo.py ..... [ 25%] 192s tests/test_pbo_new.py ..... [ 27%] 192s tests/test_per_instance_attrib.py ...... [ 28%] 192s tests/test_program.py .. [ 29%] 192s tests/test_release.py .......... [ 32%] 192s tests/test_renderbuffer.py ...... [ 33%] 192s tests/test_sampler.py ....... [ 35%] 192s tests/test_sampler_uniforms.py .. [ 36%] 193s tests/test_scissor.py ...... [ 38%] 193s tests/test_shader_includes.py . [ 38%] 193s tests/test_simple_buffer.py ........ [ 40%] 193s tests/test_simple_compute_shader.py . [ 40%] 193s tests/test_simple_framebuffer.py ................... [ 46%] 193s tests/test_simple_program.py ..... [ 47%] 193s tests/test_simple_renderbuffer.py ..... [ 49%] 193s tests/test_simple_texture.py ...................... [ 55%] 193s tests/test_simple_texture_3d.py ................. [ 59%] 193s tests/test_spirv_parsing.py F [ 60%] 193s tests/test_texture.py .......... [ 62%] 193s tests/test_texture_array.py .. [ 63%] 193s tests/test_texture_cube.py ..... [ 64%] 193s tests/test_texture_external.py . [ 65%] 193s tests/test_texture_half_float.py . [ 65%] 193s tests/test_texture_new.py .................... [ 71%] 193s tests/test_transform.py ........ [ 73%] 193s tests/test_uniform.py . [ 73%] 193s tests/test_uniform_block.py .. [ 74%] 193s tests/test_uniform_block_new.py . [ 74%] 193s tests/test_uniforms.py ......... [ 76%] 193s tests/test_unnamed_01.py . [ 77%] 193s tests/test_unnamed_02.py . [ 77%] 193s tests/test_unnamed_03.py . [ 77%] 193s tests/test_vao_attribs.py . [ 77%] 193s tests/test_vertex_array.py ........ [ 80%] 193s tests/test_vertex_array_index.py .. [ 80%] 194s tests/test_vertex_attribute_double_types.py FFFFFFFFFFFFFFFFFFFFFFFFFF [ 88%] 194s tests/test_vertex_attribute_types.py ................................... [ 97%] 194s ....... [ 99%] 194s tests/test_viewports.py . [100%] 194s 194s =================================== FAILURES =================================== 194s ________________________________ test_3d_image _________________________________ 194s 194s ctx = 194s 194s def test_3d_image(ctx): 194s if ctx.version_code < 430: 194s pytest.skip('compute shaders not supported') 194s 194s program = ctx.compute_shader( 194s """ 194s #version 430 194s 194s layout(local_size_x=4, local_size_y=4, local_size_z=4) in; 194s 194s layout(rgba32f, binding=0) uniform image3D img_in; 194s layout(rgba32f, binding=1) uniform image3D img_out; 194s 194s void main() { 194s vec4 fragment = imageLoad(img_in, ivec3(gl_LocalInvocationID.xyz)); 194s imageStore(img_out, ivec3(gl_LocalInvocationID.xyz), fragment); 194s } 194s """ 194s ) 194s tex_in = ctx.texture3d((4, 4, 4), 4, data=array('f', [v for v in range(4 * 4 * 4 * 4)]), dtype="f4") 194s tex_out = ctx.texture3d((4, 4, 4), 4, dtype="f4") 194s 194s tex_in.bind_to_image(0, read=True, write=False) 194s tex_out.bind_to_image(1, read=False, write=True) 194s program.run(group_x=1) 194s assert ctx.error == 'GL_NO_ERROR' 194s 194s data_in = struct.unpack("256f", tex_in.read()) 194s data_out = struct.unpack("256f", tex_out.read()) 194s 194s > assert data_in == data_out 194s E assert (0.0, 1.0, 2....4.0, 5.0, ...) == (3.0, 2.0, 1....7.0, 6.0, ...) 194s E 194s E At index 0 diff: 0.0 != 3.0 194s E Use -v to get more diff 194s 194s tests/test_compute_shader.py:107: AssertionError 194s ___________________________ test_texture_array_image ___________________________ 194s 194s ctx = 194s 194s def test_texture_array_image(ctx): 194s if ctx.version_code < 430: 194s pytest.skip('compute shaders not supported') 194s 194s program = ctx.compute_shader( 194s """ 194s #version 430 194s 194s layout(local_size_x=4, local_size_y=4, local_size_z=4) in; 194s 194s layout(rgba32f, binding=0) uniform image2DArray img_in; 194s layout(rgba32f, binding=1) uniform image2DArray img_out; 194s 194s void main() { 194s vec4 fragment = imageLoad(img_in, ivec3(gl_LocalInvocationID.xyz)); 194s imageStore(img_out, ivec3(gl_LocalInvocationID.xyz), fragment); 194s } 194s """ 194s ) 194s tex_in = ctx.texture_array((4, 4, 4), 4, data=array('f', [v for v in range(4 * 4 * 4 * 4)]), dtype="f4") 194s tex_out = ctx.texture_array((4, 4, 4), 4, dtype="f4") 194s 194s tex_in.bind_to_image(0, read=True, write=False) 194s tex_out.bind_to_image(1, read=False, write=True) 194s program.run(group_x=1) 194s 194s data_in = struct.unpack("256f", tex_in.read()) 194s data_out = struct.unpack("256f", tex_out.read()) 194s 194s > assert data_in == data_out 194s E assert (0.0, 1.0, 2....4.0, 5.0, ...) == (3.0, 2.0, 1....7.0, 6.0, ...) 194s E 194s E At index 0 diff: 0.0 != 3.0 194s E Use -v to get more diff 194s 194s tests/test_compute_shader.py:139: AssertionError 194s ______________________________ test_spirv_parsing ______________________________ 194s 194s def test_spirv_parsing(): 194s spv = bytes.fromhex(''' 194s 03022307000001000b000d00350000000000000011000200010000000b00060001000000474c534c 194s 2e7374642e343530000000000e00030000000000010000000f000b0000000000040000006d61696e 194s 000000000d0000001200000021000000240000002c0000002f000000480005000b00000000000000 194s 0b00000000000000480005000b000000010000000b00000001000000480005000b00000002000000 194s 0b00000003000000480005000b000000030000000b00000004000000470003000b00000002000000 194s 47000400120000001e0000000000000047000400210000001e000000000000004700040024000000 194s 1e00000001000000470004002c0000001e00000001000000470004002f0000001e00000002000000 194s 13000200020000002100030003000000020000001600030006000000200000001700040007000000 194s 0600000004000000150004000800000020000000000000002b000400080000000900000001000000 194s 1c0004000a00000006000000090000001e0006000b00000007000000060000000a0000000a000000 194s 200004000c000000030000000b0000003b0004000c0000000d00000003000000150004000e000000 194s 20000000010000002b0004000e0000000f0000000000000017000400100000000600000003000000 194s 200004001100000001000000100000003b0004001100000012000000010000002b00040008000000 194s 1300000000000000200004001400000001000000060000002b000400080000001900000002000000 194s 200004001f00000003000000070000003b0004001f00000021000000030000001800040022000000 194s 0700000002000000200004002300000001000000220000003b000400230000002400000001000000 194s 20000400250000000100000007000000200004002b00000003000000060000003b0004002b000000 194s 2c000000030000003b0004002b0000002f0000000300000036000500020000000400000000000000 194s 03000000f80002000500000041000500140000001500000012000000130000003d00040006000000 194s 160000001500000041000500140000001700000012000000090000003d0004000600000018000000 194s 1700000041000500140000001a00000012000000190000003d000400060000001b0000001a000000 194s 50000700070000001e00000016000000180000001b0000001b000000410005001f00000020000000 194s 0d0000000f0000003e000300200000001e000000410005002500000026000000240000000f000000 194s 3d0004000700000027000000260000003e00030021000000270000003e0003002c0000001b000000 194s 8500050006000000340000001b0000001b0000003e0003002f00000034000000fd00010038000100 194s ''') 194s 194s result = { 194s location: ATTRIBUTE_LOOKUP_TABLE[info.gl_type] 194s > for location, info in parse_spv_inputs(0, spv).items() 194s } 194s 194s tests/test_spirv_parsing.py:34: 194s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 194s 194s program = 0 194s spv = b'\x03\x02#\x07\x00\x00\x01\x00\x0b\x00\r\x005\x00\x00\x00\x00\x00\x00\x00\x11\x00\x02\x00\x01\x00\x00\x00\x0b\x00\x06...0\x004\x00\x00\x00\x1b\x00\x00\x00\x1b\x00\x00\x00>\x00\x03\x00/\x00\x00\x004\x00\x00\x00\xfd\x00\x01\x008\x00\x01\x00' 194s 194s def parse_spv_inputs(program: int, spv: bytes) -> Dict[int, Attribute]: 194s ui32 = struct.Struct("I") 194s token = lambda i: ui32.unpack(spv[i * 4 : i * 4 + 4])[0] 194s num_tokens = len(spv) // 4 194s 194s if token(0) != 0x07230203 or len(spv) % 4 != 0: 194s > raise ValueError("invalid spv") 194s E ValueError: invalid spv 194s 194s /usr/lib/python3/dist-packages/_moderngl.py:503: ValueError 194s _____________________________ test_simple[v_type0] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0], 'output': [2.0], 'type': 'double', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_simple(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in; 194s out %(type)s v_out; 194s 194s void main() { 194s v_out = v_in + v_in; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:116: AssertionError 194s _____________________________ test_simple[v_type1] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0], 'output': [2.0, 2.0], 'type': 'dvec2', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_simple(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in; 194s out %(type)s v_out; 194s 194s void main() { 194s v_out = v_in + v_in; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:116: AssertionError 194s _____________________________ test_simple[v_type2] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0], 'type': 'dvec3', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_simple(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in; 194s out %(type)s v_out; 194s 194s void main() { 194s v_out = v_in + v_in; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:116: AssertionError 194s _____________________________ test_simple[v_type3] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0, 2.0], 'type': 'dvec4', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_simple(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in; 194s out %(type)s v_out; 194s 194s void main() { 194s v_out = v_in + v_in; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:116: AssertionError 194s _____________________________ test_simple[v_type4] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0, 2.0], 'type': 'dmat2', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_simple(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in; 194s out %(type)s v_out; 194s 194s void main() { 194s v_out = v_in + v_in; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:116: AssertionError 194s _____________________________ test_simple[v_type5] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0], 'type': 'dmat2x3', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_simple(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in; 194s out %(type)s v_out; 194s 194s void main() { 194s v_out = v_in + v_in; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:116: AssertionError 194s _____________________________ test_simple[v_type6] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat2x4', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_simple(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in; 194s out %(type)s v_out; 194s 194s void main() { 194s v_out = v_in + v_in; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:116: AssertionError 194s _____________________________ test_simple[v_type7] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0], 'type': 'dmat3x2', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_simple(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in; 194s out %(type)s v_out; 194s 194s void main() { 194s v_out = v_in + v_in; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:116: AssertionError 194s _____________________________ test_simple[v_type8] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat3', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_simple(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in; 194s out %(type)s v_out; 194s 194s void main() { 194s v_out = v_in + v_in; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:116: AssertionError 194s _____________________________ test_simple[v_type9] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat3x4', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_simple(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in; 194s out %(type)s v_out; 194s 194s void main() { 194s v_out = v_in + v_in; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:116: AssertionError 194s ____________________________ test_simple[v_type10] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat4x2', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_simple(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in; 194s out %(type)s v_out; 194s 194s void main() { 194s v_out = v_in + v_in; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:116: AssertionError 194s ____________________________ test_simple[v_type11] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat4x3', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_simple(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in; 194s out %(type)s v_out; 194s 194s void main() { 194s v_out = v_in + v_in; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:116: AssertionError 194s ____________________________ test_simple[v_type12] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat4', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_simple(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in; 194s out %(type)s v_out; 194s 194s void main() { 194s v_out = v_in + v_in; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:116: AssertionError 194s _____________________________ test_arrays[v_type0] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0], 'output': [2.0], 'type': 'double', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_arrays(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in[2]; 194s out %(type)s v_out[2]; 194s 194s void main() { 194s v_out[0] = v_in[0] + v_in[0]; 194s v_out[1] = v_in[1] + v_in[1]; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:148: AssertionError 194s _____________________________ test_arrays[v_type1] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0], 'output': [2.0, 2.0], 'type': 'dvec2', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_arrays(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in[2]; 194s out %(type)s v_out[2]; 194s 194s void main() { 194s v_out[0] = v_in[0] + v_in[0]; 194s v_out[1] = v_in[1] + v_in[1]; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:148: AssertionError 194s _____________________________ test_arrays[v_type2] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0], 'type': 'dvec3', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_arrays(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in[2]; 194s out %(type)s v_out[2]; 194s 194s void main() { 194s v_out[0] = v_in[0] + v_in[0]; 194s v_out[1] = v_in[1] + v_in[1]; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:148: AssertionError 194s _____________________________ test_arrays[v_type3] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0, 2.0], 'type': 'dvec4', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_arrays(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in[2]; 194s out %(type)s v_out[2]; 194s 194s void main() { 194s v_out[0] = v_in[0] + v_in[0]; 194s v_out[1] = v_in[1] + v_in[1]; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:148: AssertionError 194s _____________________________ test_arrays[v_type4] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0, 2.0], 'type': 'dmat2', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_arrays(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in[2]; 194s out %(type)s v_out[2]; 194s 194s void main() { 194s v_out[0] = v_in[0] + v_in[0]; 194s v_out[1] = v_in[1] + v_in[1]; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:148: AssertionError 194s _____________________________ test_arrays[v_type5] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0], 'type': 'dmat2x3', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_arrays(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in[2]; 194s out %(type)s v_out[2]; 194s 194s void main() { 194s v_out[0] = v_in[0] + v_in[0]; 194s v_out[1] = v_in[1] + v_in[1]; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:148: AssertionError 194s _____________________________ test_arrays[v_type6] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat2x4', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_arrays(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in[2]; 194s out %(type)s v_out[2]; 194s 194s void main() { 194s v_out[0] = v_in[0] + v_in[0]; 194s v_out[1] = v_in[1] + v_in[1]; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:148: AssertionError 194s _____________________________ test_arrays[v_type7] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0], 'type': 'dmat3x2', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_arrays(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in[2]; 194s out %(type)s v_out[2]; 194s 194s void main() { 194s v_out[0] = v_in[0] + v_in[0]; 194s v_out[1] = v_in[1] + v_in[1]; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:148: AssertionError 194s _____________________________ test_arrays[v_type8] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat3', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_arrays(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in[2]; 194s out %(type)s v_out[2]; 194s 194s void main() { 194s v_out[0] = v_in[0] + v_in[0]; 194s v_out[1] = v_in[1] + v_in[1]; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:148: AssertionError 194s _____________________________ test_arrays[v_type9] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat3x4', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_arrays(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in[2]; 194s out %(type)s v_out[2]; 194s 194s void main() { 194s v_out[0] = v_in[0] + v_in[0]; 194s v_out[1] = v_in[1] + v_in[1]; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:148: AssertionError 194s ____________________________ test_arrays[v_type10] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat4x2', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_arrays(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in[2]; 194s out %(type)s v_out[2]; 194s 194s void main() { 194s v_out[0] = v_in[0] + v_in[0]; 194s v_out[1] = v_in[1] + v_in[1]; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:148: AssertionError 194s ____________________________ test_arrays[v_type11] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat4x3', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_arrays(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in[2]; 194s out %(type)s v_out[2]; 194s 194s void main() { 194s v_out[0] = v_in[0] + v_in[0]; 194s v_out[1] = v_in[1] + v_in[1]; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:148: AssertionError 194s ____________________________ test_arrays[v_type12] _____________________________ 194s 194s ctx = 194s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat4', 'version': 410} 194s 194s @pytest.mark.parametrize('v_type', v_types) 194s def test_arrays(ctx, v_type): 194s vert_src = ''' 194s #version %(version)s 194s 194s in %(type)s v_in[2]; 194s out %(type)s v_out[2]; 194s 194s void main() { 194s v_out[0] = v_in[0] + v_in[0]; 194s v_out[1] = v_in[1] + v_in[1]; 194s } 194s ''' 194s 194s if ctx.version_code < v_type['version']: 194s pytest.skip('skipping version %s' % v_type['version']) 194s 194s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 194s 194s if prog.get('v_in', None) is None: 194s pytest.skip('skipping %s' % v_type['type']) 194s 194s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 194s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 194s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 194s vao = ctx.vertex_array(prog, vbo1, 'v_in') 194s vao.transform(vbo2, moderngl.POINTS, 1) 194s 194s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 194s > assert pytest.approx(a) == b 194s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 194s E 194s E comparison failed 194s E Obtained: 2.0 194s E Expected: 8.98846567431158e+307 ± 9.0e+301 194s 194s tests/test_vertex_attribute_double_types.py:148: AssertionError 194s =========================== short test summary info ============================ 194s FAILED tests/test_compute_shader.py::test_3d_image - assert (0.0, 1.0, 2....4... 194s FAILED tests/test_compute_shader.py::test_texture_array_image - assert (0.0, ... 194s FAILED tests/test_spirv_parsing.py::test_spirv_parsing - ValueError: invalid spv 194s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type0] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type1] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type2] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type3] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type4] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type5] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type6] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type7] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type8] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type9] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type10] - a... 194s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type11] - a... 194s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type12] - a... 194s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type0] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type1] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type2] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type3] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type4] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type5] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type6] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type7] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type8] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type9] - as... 194s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type10] - a... 194s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type11] - a... 194s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type12] - a... 194s ================= 29 failed, 330 passed, 1 deselected in 5.53s ================= 195s E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /tmp/autopkgtest.bBUYfo/autopkgtest_tmp/build; xvfb-run --auto-servernum --server-num=20 -s "-screen 0 1024x768x24 -ac +extension GLX -noreset" {interpreter} -m pytest -k "not (test_local or test_documentation or test_module_integrity)" 195s I: pybuild base:311: cd /tmp/autopkgtest.bBUYfo/autopkgtest_tmp/build; xvfb-run --auto-servernum --server-num=20 -s "-screen 0 1024x768x24 -ac +extension GLX -noreset" python3.13 -m pytest -k "not (test_local or test_documentation or test_module_integrity)" 195s ============================= test session starts ============================== 195s platform linux -- Python 3.13.2, pytest-8.3.4, pluggy-1.5.0 195s rootdir: /tmp/autopkgtest.bBUYfo/autopkgtest_tmp/build 195s configfile: pyproject.toml 195s plugins: typeguard-4.4.1 195s collected 360 items / 1 deselected / 359 selected 195s 197s tests/test_blend.py ....... [ 1%] 197s tests/test_buffer.py ............. [ 5%] 197s tests/test_buffer_copy.py .. [ 6%] 197s tests/test_buffer_new.py ........ [ 8%] 197s tests/test_buffer_read_errors.py .... [ 9%] 197s tests/test_buffer_read_into.py ... [ 10%] 197s tests/test_buffer_write_errors.py .... [ 11%] 197s tests/test_compute_shader.py ....FF.. [ 13%] 197s tests/test_compute_shader_uniform.py . [ 13%] 197s tests/test_context.py ............ [ 17%] 197s tests/test_cull_face.py . [ 17%] 197s tests/test_debug_scopes.py ..... [ 18%] 197s tests/test_depth_samplers.py ... [ 19%] 197s tests/test_framebuffer.py ..... [ 21%] 197s tests/test_framebuffer_clear.py . [ 21%] 197s tests/test_framebuffer_half_float.py . [ 21%] 197s tests/test_framebuffer_masks.py .. [ 22%] 197s tests/test_framebuffer_read_channels.py . [ 22%] 197s tests/test_labels.py .... [ 23%] 197s tests/test_padding.py ... [ 24%] 197s tests/test_pbo.py ..... [ 25%] 197s tests/test_pbo_new.py ..... [ 27%] 197s tests/test_per_instance_attrib.py ...... [ 28%] 197s tests/test_program.py .. [ 29%] 197s tests/test_release.py .......... [ 32%] 197s tests/test_renderbuffer.py ...... [ 33%] 197s tests/test_sampler.py ....... [ 35%] 197s tests/test_sampler_uniforms.py .. [ 36%] 197s tests/test_scissor.py ...... [ 38%] 197s tests/test_shader_includes.py . [ 38%] 197s tests/test_simple_buffer.py ........ [ 40%] 197s tests/test_simple_compute_shader.py . [ 40%] 197s tests/test_simple_framebuffer.py ................... [ 46%] 197s tests/test_simple_program.py ..... [ 47%] 197s tests/test_simple_renderbuffer.py ..... [ 49%] 197s tests/test_simple_texture.py ...................... [ 55%] 197s tests/test_simple_texture_3d.py ................. [ 59%] 197s tests/test_spirv_parsing.py F [ 60%] 197s tests/test_texture.py .......... [ 62%] 198s tests/test_texture_array.py .. [ 63%] 198s tests/test_texture_cube.py ..... [ 64%] 198s tests/test_texture_external.py . [ 65%] 198s tests/test_texture_half_float.py . [ 65%] 198s tests/test_texture_new.py .................... [ 71%] 198s tests/test_transform.py ........ [ 73%] 198s tests/test_uniform.py . [ 73%] 198s tests/test_uniform_block.py .. [ 74%] 198s tests/test_uniform_block_new.py . [ 74%] 198s tests/test_uniforms.py ......... [ 76%] 198s tests/test_unnamed_01.py . [ 77%] 198s tests/test_unnamed_02.py . [ 77%] 198s tests/test_unnamed_03.py . [ 77%] 198s tests/test_vao_attribs.py . [ 77%] 198s tests/test_vertex_array.py ........ [ 80%] 198s tests/test_vertex_array_index.py .. [ 80%] 198s tests/test_vertex_attribute_double_types.py FFFFFFFFFFFFFFFFFFFFFFFFFF [ 88%] 198s tests/test_vertex_attribute_types.py ................................... [ 97%] 198s ....... [ 99%] 198s tests/test_viewports.py . [100%] 198s 198s =================================== FAILURES =================================== 198s ________________________________ test_3d_image _________________________________ 198s 198s ctx = 198s 198s def test_3d_image(ctx): 198s if ctx.version_code < 430: 198s pytest.skip('compute shaders not supported') 198s 198s program = ctx.compute_shader( 198s """ 198s #version 430 198s 198s layout(local_size_x=4, local_size_y=4, local_size_z=4) in; 198s 198s layout(rgba32f, binding=0) uniform image3D img_in; 198s layout(rgba32f, binding=1) uniform image3D img_out; 198s 198s void main() { 198s vec4 fragment = imageLoad(img_in, ivec3(gl_LocalInvocationID.xyz)); 198s imageStore(img_out, ivec3(gl_LocalInvocationID.xyz), fragment); 198s } 198s """ 198s ) 198s tex_in = ctx.texture3d((4, 4, 4), 4, data=array('f', [v for v in range(4 * 4 * 4 * 4)]), dtype="f4") 198s tex_out = ctx.texture3d((4, 4, 4), 4, dtype="f4") 198s 198s tex_in.bind_to_image(0, read=True, write=False) 198s tex_out.bind_to_image(1, read=False, write=True) 198s program.run(group_x=1) 198s assert ctx.error == 'GL_NO_ERROR' 198s 198s data_in = struct.unpack("256f", tex_in.read()) 198s data_out = struct.unpack("256f", tex_out.read()) 198s 198s > assert data_in == data_out 198s E assert (0.0, 1.0, 2....4.0, 5.0, ...) == (3.0, 2.0, 1....7.0, 6.0, ...) 198s E 198s E At index 0 diff: 0.0 != 3.0 198s E Use -v to get more diff 198s 198s tests/test_compute_shader.py:107: AssertionError 198s ___________________________ test_texture_array_image ___________________________ 198s 198s ctx = 198s 198s def test_texture_array_image(ctx): 198s if ctx.version_code < 430: 198s pytest.skip('compute shaders not supported') 198s 198s program = ctx.compute_shader( 198s """ 198s #version 430 198s 198s layout(local_size_x=4, local_size_y=4, local_size_z=4) in; 198s 198s layout(rgba32f, binding=0) uniform image2DArray img_in; 198s layout(rgba32f, binding=1) uniform image2DArray img_out; 198s 198s void main() { 198s vec4 fragment = imageLoad(img_in, ivec3(gl_LocalInvocationID.xyz)); 198s imageStore(img_out, ivec3(gl_LocalInvocationID.xyz), fragment); 198s } 198s """ 198s ) 198s tex_in = ctx.texture_array((4, 4, 4), 4, data=array('f', [v for v in range(4 * 4 * 4 * 4)]), dtype="f4") 198s tex_out = ctx.texture_array((4, 4, 4), 4, dtype="f4") 198s 198s tex_in.bind_to_image(0, read=True, write=False) 198s tex_out.bind_to_image(1, read=False, write=True) 198s program.run(group_x=1) 198s 198s data_in = struct.unpack("256f", tex_in.read()) 198s data_out = struct.unpack("256f", tex_out.read()) 198s 198s > assert data_in == data_out 198s E assert (0.0, 1.0, 2....4.0, 5.0, ...) == (3.0, 2.0, 1....7.0, 6.0, ...) 198s E 198s E At index 0 diff: 0.0 != 3.0 198s E Use -v to get more diff 198s 198s tests/test_compute_shader.py:139: AssertionError 198s ______________________________ test_spirv_parsing ______________________________ 198s 198s def test_spirv_parsing(): 198s spv = bytes.fromhex(''' 198s 03022307000001000b000d00350000000000000011000200010000000b00060001000000474c534c 198s 2e7374642e343530000000000e00030000000000010000000f000b0000000000040000006d61696e 198s 000000000d0000001200000021000000240000002c0000002f000000480005000b00000000000000 198s 0b00000000000000480005000b000000010000000b00000001000000480005000b00000002000000 198s 0b00000003000000480005000b000000030000000b00000004000000470003000b00000002000000 198s 47000400120000001e0000000000000047000400210000001e000000000000004700040024000000 198s 1e00000001000000470004002c0000001e00000001000000470004002f0000001e00000002000000 198s 13000200020000002100030003000000020000001600030006000000200000001700040007000000 198s 0600000004000000150004000800000020000000000000002b000400080000000900000001000000 198s 1c0004000a00000006000000090000001e0006000b00000007000000060000000a0000000a000000 198s 200004000c000000030000000b0000003b0004000c0000000d00000003000000150004000e000000 198s 20000000010000002b0004000e0000000f0000000000000017000400100000000600000003000000 198s 200004001100000001000000100000003b0004001100000012000000010000002b00040008000000 198s 1300000000000000200004001400000001000000060000002b000400080000001900000002000000 198s 200004001f00000003000000070000003b0004001f00000021000000030000001800040022000000 198s 0700000002000000200004002300000001000000220000003b000400230000002400000001000000 198s 20000400250000000100000007000000200004002b00000003000000060000003b0004002b000000 198s 2c000000030000003b0004002b0000002f0000000300000036000500020000000400000000000000 198s 03000000f80002000500000041000500140000001500000012000000130000003d00040006000000 198s 160000001500000041000500140000001700000012000000090000003d0004000600000018000000 198s 1700000041000500140000001a00000012000000190000003d000400060000001b0000001a000000 198s 50000700070000001e00000016000000180000001b0000001b000000410005001f00000020000000 198s 0d0000000f0000003e000300200000001e000000410005002500000026000000240000000f000000 198s 3d0004000700000027000000260000003e00030021000000270000003e0003002c0000001b000000 198s 8500050006000000340000001b0000001b0000003e0003002f00000034000000fd00010038000100 198s ''') 198s 198s result = { 198s location: ATTRIBUTE_LOOKUP_TABLE[info.gl_type] 198s > for location, info in parse_spv_inputs(0, spv).items() 198s } 198s 198s tests/test_spirv_parsing.py:34: 198s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 198s 198s program = 0 198s spv = b'\x03\x02#\x07\x00\x00\x01\x00\x0b\x00\r\x005\x00\x00\x00\x00\x00\x00\x00\x11\x00\x02\x00\x01\x00\x00\x00\x0b\x00\x06...0\x004\x00\x00\x00\x1b\x00\x00\x00\x1b\x00\x00\x00>\x00\x03\x00/\x00\x00\x004\x00\x00\x00\xfd\x00\x01\x008\x00\x01\x00' 198s 198s def parse_spv_inputs(program: int, spv: bytes) -> Dict[int, Attribute]: 198s ui32 = struct.Struct("I") 198s token = lambda i: ui32.unpack(spv[i * 4 : i * 4 + 4])[0] 198s num_tokens = len(spv) // 4 198s 198s if token(0) != 0x07230203 or len(spv) % 4 != 0: 198s > raise ValueError("invalid spv") 198s E ValueError: invalid spv 198s 198s /usr/lib/python3/dist-packages/_moderngl.py:503: ValueError 198s _____________________________ test_simple[v_type0] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0], 'output': [2.0], 'type': 'double', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_simple(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in; 198s out %(type)s v_out; 198s 198s void main() { 198s v_out = v_in + v_in; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:116: AssertionError 198s _____________________________ test_simple[v_type1] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0], 'output': [2.0, 2.0], 'type': 'dvec2', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_simple(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in; 198s out %(type)s v_out; 198s 198s void main() { 198s v_out = v_in + v_in; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:116: AssertionError 198s _____________________________ test_simple[v_type2] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0], 'type': 'dvec3', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_simple(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in; 198s out %(type)s v_out; 198s 198s void main() { 198s v_out = v_in + v_in; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:116: AssertionError 198s _____________________________ test_simple[v_type3] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0, 2.0], 'type': 'dvec4', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_simple(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in; 198s out %(type)s v_out; 198s 198s void main() { 198s v_out = v_in + v_in; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:116: AssertionError 198s _____________________________ test_simple[v_type4] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0, 2.0], 'type': 'dmat2', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_simple(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in; 198s out %(type)s v_out; 198s 198s void main() { 198s v_out = v_in + v_in; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:116: AssertionError 198s _____________________________ test_simple[v_type5] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0], 'type': 'dmat2x3', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_simple(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in; 198s out %(type)s v_out; 198s 198s void main() { 198s v_out = v_in + v_in; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:116: AssertionError 198s _____________________________ test_simple[v_type6] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat2x4', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_simple(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in; 198s out %(type)s v_out; 198s 198s void main() { 198s v_out = v_in + v_in; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:116: AssertionError 198s _____________________________ test_simple[v_type7] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0], 'type': 'dmat3x2', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_simple(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in; 198s out %(type)s v_out; 198s 198s void main() { 198s v_out = v_in + v_in; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:116: AssertionError 198s _____________________________ test_simple[v_type8] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat3', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_simple(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in; 198s out %(type)s v_out; 198s 198s void main() { 198s v_out = v_in + v_in; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:116: AssertionError 198s _____________________________ test_simple[v_type9] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat3x4', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_simple(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in; 198s out %(type)s v_out; 198s 198s void main() { 198s v_out = v_in + v_in; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:116: AssertionError 198s ____________________________ test_simple[v_type10] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat4x2', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_simple(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in; 198s out %(type)s v_out; 198s 198s void main() { 198s v_out = v_in + v_in; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:116: AssertionError 198s ____________________________ test_simple[v_type11] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat4x3', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_simple(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in; 198s out %(type)s v_out; 198s 198s void main() { 198s v_out = v_in + v_in; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:116: AssertionError 198s ____________________________ test_simple[v_type12] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat4', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_simple(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in; 198s out %(type)s v_out; 198s 198s void main() { 198s v_out = v_in + v_in; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *v_type['input'])) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.simple_vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output']): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:116: AssertionError 198s _____________________________ test_arrays[v_type0] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0], 'output': [2.0], 'type': 'double', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_arrays(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in[2]; 198s out %(type)s v_out[2]; 198s 198s void main() { 198s v_out[0] = v_in[0] + v_in[0]; 198s v_out[1] = v_in[1] + v_in[1]; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:148: AssertionError 198s _____________________________ test_arrays[v_type1] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0], 'output': [2.0, 2.0], 'type': 'dvec2', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_arrays(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in[2]; 198s out %(type)s v_out[2]; 198s 198s void main() { 198s v_out[0] = v_in[0] + v_in[0]; 198s v_out[1] = v_in[1] + v_in[1]; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:148: AssertionError 198s _____________________________ test_arrays[v_type2] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0], 'type': 'dvec3', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_arrays(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in[2]; 198s out %(type)s v_out[2]; 198s 198s void main() { 198s v_out[0] = v_in[0] + v_in[0]; 198s v_out[1] = v_in[1] + v_in[1]; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:148: AssertionError 198s _____________________________ test_arrays[v_type3] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0, 2.0], 'type': 'dvec4', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_arrays(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in[2]; 198s out %(type)s v_out[2]; 198s 198s void main() { 198s v_out[0] = v_in[0] + v_in[0]; 198s v_out[1] = v_in[1] + v_in[1]; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:148: AssertionError 198s _____________________________ test_arrays[v_type4] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0, 2.0], 'type': 'dmat2', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_arrays(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in[2]; 198s out %(type)s v_out[2]; 198s 198s void main() { 198s v_out[0] = v_in[0] + v_in[0]; 198s v_out[1] = v_in[1] + v_in[1]; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:148: AssertionError 198s _____________________________ test_arrays[v_type5] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0], 'type': 'dmat2x3', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_arrays(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in[2]; 198s out %(type)s v_out[2]; 198s 198s void main() { 198s v_out[0] = v_in[0] + v_in[0]; 198s v_out[1] = v_in[1] + v_in[1]; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:148: AssertionError 198s _____________________________ test_arrays[v_type6] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat2x4', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_arrays(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in[2]; 198s out %(type)s v_out[2]; 198s 198s void main() { 198s v_out[0] = v_in[0] + v_in[0]; 198s v_out[1] = v_in[1] + v_in[1]; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:148: AssertionError 198s _____________________________ test_arrays[v_type7] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0], 'type': 'dmat3x2', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_arrays(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in[2]; 198s out %(type)s v_out[2]; 198s 198s void main() { 198s v_out[0] = v_in[0] + v_in[0]; 198s v_out[1] = v_in[1] + v_in[1]; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:148: AssertionError 198s _____________________________ test_arrays[v_type8] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat3', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_arrays(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in[2]; 198s out %(type)s v_out[2]; 198s 198s void main() { 198s v_out[0] = v_in[0] + v_in[0]; 198s v_out[1] = v_in[1] + v_in[1]; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:148: AssertionError 198s _____________________________ test_arrays[v_type9] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat3x4', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_arrays(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in[2]; 198s out %(type)s v_out[2]; 198s 198s void main() { 198s v_out[0] = v_in[0] + v_in[0]; 198s v_out[1] = v_in[1] + v_in[1]; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:148: AssertionError 198s ____________________________ test_arrays[v_type10] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat4x2', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_arrays(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in[2]; 198s out %(type)s v_out[2]; 198s 198s void main() { 198s v_out[0] = v_in[0] + v_in[0]; 198s v_out[1] = v_in[1] + v_in[1]; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:148: AssertionError 198s ____________________________ test_arrays[v_type11] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat4x3', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_arrays(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in[2]; 198s out %(type)s v_out[2]; 198s 198s void main() { 198s v_out[0] = v_in[0] + v_in[0]; 198s v_out[1] = v_in[1] + v_in[1]; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:148: AssertionError 198s ____________________________ test_arrays[v_type12] _____________________________ 198s 198s ctx = 198s v_type = {'input': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, ...], 'output': [2.0, 2.0, 2.0, 2.0, 2.0, 2.0, ...], 'type': 'dmat4', 'version': 410} 198s 198s @pytest.mark.parametrize('v_type', v_types) 198s def test_arrays(ctx, v_type): 198s vert_src = ''' 198s #version %(version)s 198s 198s in %(type)s v_in[2]; 198s out %(type)s v_out[2]; 198s 198s void main() { 198s v_out[0] = v_in[0] + v_in[0]; 198s v_out[1] = v_in[1] + v_in[1]; 198s } 198s ''' 198s 198s if ctx.version_code < v_type['version']: 198s pytest.skip('skipping version %s' % v_type['version']) 198s 198s prog = ctx.program(vertex_shader=vert_src % v_type, varyings=['v_out']) 198s 198s if prog.get('v_in', None) is None: 198s pytest.skip('skipping %s' % v_type['type']) 198s 198s fmt = moderngl.detect_format(prog, ['v_in'], mode='struct') 198s vbo1 = ctx.buffer(struct.pack(fmt, *(v_type['input'] * 2))) 198s vbo2 = ctx.buffer(b'\xAA' * struct.calcsize(fmt)) 198s vao = ctx.vertex_array(prog, vbo1, 'v_in') 198s vao.transform(vbo2, moderngl.POINTS, 1) 198s 198s for a, b in zip(struct.unpack(fmt, vbo2.read()), v_type['output'] * 2): 198s > assert pytest.approx(a) == b 198s E assert 8.98846567431...307 ± 9.0e+301 == 2.0 198s E 198s E comparison failed 198s E Obtained: 2.0 198s E Expected: 8.98846567431158e+307 ± 9.0e+301 198s 198s tests/test_vertex_attribute_double_types.py:148: AssertionError 198s =========================== short test summary info ============================ 198s FAILED tests/test_compute_shader.py::test_3d_image - assert (0.0, 1.0, 2....4... 198s FAILED tests/test_compute_shader.py::test_texture_array_image - assert (0.0, ... 198s FAILED tests/test_spirv_parsing.py::test_spirv_parsing - ValueError: invalid spv 198s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type0] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type1] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type2] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type3] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type4] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type5] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type6] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type7] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type8] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type9] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type10] - a... 198s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type11] - a... 198s FAILED tests/test_vertex_attribute_double_types.py::test_simple[v_type12] - a... 198s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type0] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type1] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type2] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type3] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type4] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type5] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type6] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type7] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type8] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type9] - as... 198s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type10] - a... 198s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type11] - a... 198s FAILED tests/test_vertex_attribute_double_types.py::test_arrays[v_type12] - a... 198s ================= 29 failed, 330 passed, 1 deselected in 2.94s ================= 198s E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /tmp/autopkgtest.bBUYfo/autopkgtest_tmp/build; xvfb-run --auto-servernum --server-num=20 -s "-screen 0 1024x768x24 -ac +extension GLX -noreset" {interpreter} -m pytest -k "not (test_local or test_documentation or test_module_integrity)" 198s pybuild-autopkgtest: error: pybuild --autopkgtest -i python{version} -p "3.12 3.13" returned exit code 13 198s make: *** [/tmp/hUigUFy_ku/run:4: pybuild-autopkgtest] Error 25 198s pybuild-autopkgtest: error: /tmp/hUigUFy_ku/run pybuild-autopkgtest returned exit code 2 198s autopkgtest [12:49:10]: test pybuild-autopkgtest: -----------------------] 199s pybuild-autopkgtest FLAKY non-zero exit status 25 199s autopkgtest [12:49:11]: test pybuild-autopkgtest: - - - - - - - - - - results - - - - - - - - - - 199s autopkgtest [12:49:11]: @@@@@@@@@@@@@@@@@@@@ summary 199s pybuild-autopkgtest FLAKY non-zero exit status 25 205s nova [W] Using flock in prodstack6-s390x 205s Creating nova instance adt-plucky-s390x-python-moderngl-20250219-124552-juju-7f2275-prod-proposed-migration-environment-2-9972088a-b208-4ca1-b4e0-86c1de1ad9d4 from image adt/ubuntu-plucky-s390x-server-20250219.img (UUID 7af5aa59-4155-4177-a560-02c7dd963d23)... 205s nova [W] Timed out waiting for 9b9c8e3c-3b28-45f8-868e-a3548bca62da to get deleted.