0s autopkgtest [16:03:19]: starting date and time: 2024-07-26 16:03:19+0000 0s autopkgtest [16:03:19]: git checkout: fd3bed09 nova: allow more retries for quota issues 0s autopkgtest [16:03:19]: host juju-7f2275-prod-proposed-migration-environment-3; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.dsrm1a2s/out --timeout-copy=6000 -a i386 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:setuptools --apt-upgrade scikit-build --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=setuptools/70.3.0-2 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-3@lcy02-86.secgroup --name adt-oracular-i386-scikit-build-20240726-160318-juju-7f2275-prod-proposed-migration-environment-3-97117eef-8019-49c4-b440-8b90323e408f --image adt/ubuntu-oracular-amd64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-3 --net-id=net_prod-proposed-migration -e TERM=linux -e ''"'"'http_proxy=http://squid.internal:3128'"'"'' -e ''"'"'https_proxy=http://squid.internal:3128'"'"'' -e ''"'"'no_proxy=127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,ports.ubuntu.com,security.ubuntu.com,ddebs.ubuntu.com,changelogs.ubuntu.com,keyserver.ubuntu.com,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,10.24.0.0/24,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/ 49s autopkgtest [16:04:08]: testbed dpkg architecture: amd64 49s autopkgtest [16:04:08]: testbed apt version: 2.9.6 49s autopkgtest [16:04:08]: test architecture: i386 49s autopkgtest [16:04:08]: @@@@@@@@@@@@@@@@@@@@ test bed setup 49s Get:1 http://ftpmaster.internal/ubuntu oracular-proposed InRelease [126 kB] 49s Get:2 http://ftpmaster.internal/ubuntu oracular-proposed/universe Sources [436 kB] 49s Get:3 http://ftpmaster.internal/ubuntu oracular-proposed/restricted Sources [8548 B] 49s Get:4 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse Sources [4288 B] 49s Get:5 http://ftpmaster.internal/ubuntu oracular-proposed/main Sources [50.6 kB] 49s Get:6 http://ftpmaster.internal/ubuntu oracular-proposed/main i386 Packages [53.4 kB] 49s Get:7 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 Packages [94.8 kB] 49s Get:8 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 c-n-f Metadata [2116 B] 49s Get:9 http://ftpmaster.internal/ubuntu oracular-proposed/restricted amd64 Packages [34.9 kB] 49s Get:10 http://ftpmaster.internal/ubuntu oracular-proposed/restricted i386 Packages [6244 B] 49s Get:11 http://ftpmaster.internal/ubuntu oracular-proposed/restricted amd64 c-n-f Metadata [368 B] 49s Get:12 http://ftpmaster.internal/ubuntu oracular-proposed/universe i386 Packages [296 kB] 49s Get:13 http://ftpmaster.internal/ubuntu oracular-proposed/universe amd64 Packages [498 kB] 49s Get:14 http://ftpmaster.internal/ubuntu oracular-proposed/universe amd64 c-n-f Metadata [9900 B] 49s Get:15 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse amd64 Packages [8792 B] 49s Get:16 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse i386 Packages [3052 B] 49s Get:17 http://ftpmaster.internal/ubuntu oracular-proposed/multiverse amd64 c-n-f Metadata [276 B] 51s Fetched 1634 kB in 0s (4292 kB/s) 51s Reading package lists... 52s Reading package lists... 52s Building dependency tree... 52s Reading state information... 53s Calculating upgrade... 53s The following packages will be upgraded: 53s bpfcc-tools bpftrace libbpfcc liblz4-1 mawk python3-bpfcc 53s python3-pkg-resources python3-setuptools 53s 8 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 53s Need to get 14.5 MB of archives. 53s After this operation, 38.2 MB of additional disk space will be used. 53s Get:1 http://ftpmaster.internal/ubuntu oracular/main amd64 liblz4-1 amd64 1.9.4-3 [63.1 kB] 53s Get:2 http://ftpmaster.internal/ubuntu oracular/main amd64 mawk amd64 1.3.4.20240622-2 [127 kB] 53s Get:3 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 python3-setuptools all 70.3.0-2 [429 kB] 53s Get:4 http://ftpmaster.internal/ubuntu oracular-proposed/main amd64 python3-pkg-resources all 70.3.0-2 [187 kB] 53s Get:5 http://ftpmaster.internal/ubuntu oracular/main amd64 libbpfcc amd64 0.30.0+ds-1ubuntu2 [644 kB] 53s Get:6 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-bpfcc all 0.30.0+ds-1ubuntu2 [40.3 kB] 53s Get:7 http://ftpmaster.internal/ubuntu oracular/main amd64 bpfcc-tools all 0.30.0+ds-1ubuntu2 [697 kB] 53s Get:8 http://ftpmaster.internal/ubuntu oracular/main amd64 bpftrace amd64 0.21.0-1ubuntu6 [12.3 MB] 53s Fetched 14.5 MB in 0s (58.6 MB/s) 54s (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 ... 74523 files and directories currently installed.) 54s Preparing to unpack .../liblz4-1_1.9.4-3_amd64.deb ... 54s Unpacking liblz4-1:amd64 (1.9.4-3) over (1.9.4-2) ... 54s Setting up liblz4-1:amd64 (1.9.4-3) ... 54s (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 ... 74523 files and directories currently installed.) 54s Preparing to unpack .../0-mawk_1.3.4.20240622-2_amd64.deb ... 54s Unpacking mawk (1.3.4.20240622-2) over (1.3.4.20240622-1) ... 54s Preparing to unpack .../1-python3-setuptools_70.3.0-2_all.deb ... 54s Unpacking python3-setuptools (70.3.0-2) over (68.1.2-2ubuntu1) ... 54s Preparing to unpack .../2-python3-pkg-resources_70.3.0-2_all.deb ... 54s Unpacking python3-pkg-resources (70.3.0-2) over (68.1.2-2ubuntu1) ... 54s Preparing to unpack .../3-libbpfcc_0.30.0+ds-1ubuntu2_amd64.deb ... 54s Unpacking libbpfcc:amd64 (0.30.0+ds-1ubuntu2) over (0.29.1+ds-1ubuntu7) ... 54s Preparing to unpack .../4-python3-bpfcc_0.30.0+ds-1ubuntu2_all.deb ... 54s Unpacking python3-bpfcc (0.30.0+ds-1ubuntu2) over (0.29.1+ds-1ubuntu7) ... 54s Preparing to unpack .../5-bpfcc-tools_0.30.0+ds-1ubuntu2_all.deb ... 54s Unpacking bpfcc-tools (0.30.0+ds-1ubuntu2) over (0.29.1+ds-1ubuntu7) ... 54s Preparing to unpack .../6-bpftrace_0.21.0-1ubuntu6_amd64.deb ... 54s Unpacking bpftrace (0.21.0-1ubuntu6) over (0.20.2-1ubuntu4) ... 55s Setting up python3-pkg-resources (70.3.0-2) ... 55s Setting up python3-setuptools (70.3.0-2) ... 55s Setting up mawk (1.3.4.20240622-2) ... 56s Setting up libbpfcc:amd64 (0.30.0+ds-1ubuntu2) ... 56s Setting up python3-bpfcc (0.30.0+ds-1ubuntu2) ... 56s Setting up bpftrace (0.21.0-1ubuntu6) ... 56s Setting up bpfcc-tools (0.30.0+ds-1ubuntu2) ... 56s Processing triggers for man-db (2.12.1-2) ... 57s Processing triggers for libc-bin (2.39-0ubuntu9) ... 57s Reading package lists... 57s Building dependency tree... 57s Reading state information... 58s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 58s Hit:1 http://ftpmaster.internal/ubuntu oracular-proposed InRelease 58s Hit:2 http://ftpmaster.internal/ubuntu oracular InRelease 58s Hit:3 http://ftpmaster.internal/ubuntu oracular-updates InRelease 58s Hit:4 http://ftpmaster.internal/ubuntu oracular-security InRelease 59s Reading package lists... 59s Reading package lists... 59s Building dependency tree... 59s Reading state information... 60s Calculating upgrade... 60s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 60s Reading package lists... 60s Building dependency tree... 60s Reading state information... 60s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 61s autopkgtest [16:04:20]: testbed running kernel: Linux 6.8.0-31-generic #31-Ubuntu SMP PREEMPT_DYNAMIC Sat Apr 20 00:40:06 UTC 2024 61s autopkgtest [16:04:20]: @@@@@@@@@@@@@@@@@@@@ apt-source scikit-build 62s Get:1 http://ftpmaster.internal/ubuntu oracular/universe scikit-build 0.17.6-2 (dsc) [2777 B] 62s Get:2 http://ftpmaster.internal/ubuntu oracular/universe scikit-build 0.17.6-2 (tar) [271 kB] 62s Get:3 http://ftpmaster.internal/ubuntu oracular/universe scikit-build 0.17.6-2 (diff) [5576 B] 62s gpgv: Signature made Sat Apr 27 01:25:13 2024 UTC 62s gpgv: using RSA key 13796755BBC72BB8ABE2AEB5FA9DEC5DE11C63F1 62s gpgv: issuer "eamanu@debian.org" 62s gpgv: Can't check signature: No public key 62s dpkg-source: warning: cannot verify inline signature for ./scikit-build_0.17.6-2.dsc: no acceptable signature found 62s autopkgtest [16:04:21]: testing package scikit-build version 0.17.6-2 62s autopkgtest [16:04:21]: build not needed 62s autopkgtest [16:04:21]: test testsuite: preparing testbed 65s Note, using file '/tmp/autopkgtest.9ApnOP/1-autopkgtest-satdep.dsc' to get the build dependencies 65s Reading package lists... 66s Building dependency tree... 66s Reading state information... 66s Starting pkgProblemResolver with broken count: 0 66s Starting 2 pkgProblemResolver with broken count: 0 66s Done 67s The following NEW packages will be installed: 67s binutils-i686-linux-gnu build-essential cmake cmake-data cpp cpp-14 67s cpp-14-i686-linux-gnu cpp-14-x86-64-linux-gnu cpp-i686-linux-gnu 67s cpp-x86-64-linux-gnu cross-config crossbuild-essential-i386 cython3 67s dpkg-cross fonts-font-awesome fonts-lato g++ g++-14 g++-14-i686-linux-gnu 67s g++-14-x86-64-linux-gnu g++-i686-linux-gnu g++-x86-64-linux-gnu gcc 67s gcc-12-base:i386 gcc-14 gcc-14-base:i386 gcc-14-cross-base 67s gcc-14-i686-linux-gnu gcc-14-i686-linux-gnu-base gcc-14-x86-64-linux-gnu 67s gcc-i686-linux-gnu gcc-x86-64-linux-gnu git git-man libasan8 libasan8:i386 67s libasan8-i386-cross libatomic1 libatomic1:i386 libatomic1-i386-cross 67s libc6:i386 libc6-dev:i386 libc6-dev-i386-cross libc6-i386-cross libcc1-0 67s libconfig-auto-perl libconfig-inifiles-perl libcrypt-dev:i386 libcrypt1:i386 67s libdebian-dpkgcross-perl liberror-perl libexpat1-dev libfile-homedir-perl 67s libfile-which-perl libgcc-12-dev:i386 libgcc-14-dev libgcc-14-dev-i386-cross 67s libgcc-s1:i386 libgcc-s1-i386-cross libgomp1:i386 libgomp1-i386-cross 67s libhwasan0 libio-string-perl libisl23 libitm1 libitm1:i386 67s libitm1-i386-cross libjs-jquery libjs-sphinxdoc libjs-underscore 67s libjsoncpp25 liblsan0 libmpc3 libpython3-all-dev libpython3-dev 67s libpython3.12-dev libpython3.12t64 libquadmath0 libquadmath0:i386 67s libquadmath0-i386-cross librhash0 libstdc++-12-dev:i386 libstdc++-14-dev 67s libstdc++-14-dev-i386-cross libstdc++6:i386 libstdc++6-i386-cross libtsan2 67s libubsan1 libubsan1:i386 libubsan1-i386-cross libxml-libxml-perl 67s libxml-namespacesupport-perl libxml-sax-base-perl libxml-sax-perl 67s libxml-simple-perl libyaml-perl linux-libc-dev:i386 67s linux-libc-dev-i386-cross python-skbuild-doc python3-all python3-all-dev 67s python3-build python3-dev python3-distlib python3-filelock python3-iniconfig 67s python3-packaging python3-pip python3-pip-whl python3-platformdirs 67s python3-pluggy python3-pyproject-hooks python3-pytest python3-pytest-mock 67s python3-setuptools-whl python3-skbuild python3-toml python3-virtualenv 67s python3-wheel python3-wheel-whl python3.12-dev sphinx-rtd-theme-common 67s zlib1g-dev 67s 0 upgraded, 123 newly installed, 0 to remove and 0 not upgraded. 67s Need to get 194 MB of archives. 67s After this operation, 711 MB of additional disk space will be used. 67s Get:1 http://ftpmaster.internal/ubuntu oracular/main amd64 fonts-lato all 2.015-1 [2781 kB] 67s Get:2 http://ftpmaster.internal/ubuntu oracular/main i386 gcc-14-base i386 14.1.0-5ubuntu1 [49.8 kB] 67s Get:3 http://ftpmaster.internal/ubuntu oracular/main i386 libgcc-s1 i386 14.1.0-5ubuntu1 [95.3 kB] 67s Get:4 http://ftpmaster.internal/ubuntu oracular/main i386 libc6 i386 2.39-0ubuntu9 [3010 kB] 67s Get:5 http://ftpmaster.internal/ubuntu oracular/main i386 libcrypt1 i386 1:4.4.36-4build1 [91.9 kB] 67s Get:6 http://ftpmaster.internal/ubuntu oracular/main i386 libstdc++6 i386 14.1.0-5ubuntu1 [860 kB] 67s Get:7 http://ftpmaster.internal/ubuntu oracular/main amd64 libisl23 amd64 0.26-3build1 [680 kB] 67s Get:8 http://ftpmaster.internal/ubuntu oracular/main amd64 libmpc3 amd64 1.3.1-1build1 [54.5 kB] 67s Get:9 http://ftpmaster.internal/ubuntu oracular/main amd64 cpp-14-x86-64-linux-gnu amd64 14.1.0-5ubuntu1 [11.9 MB] 67s Get:10 http://ftpmaster.internal/ubuntu oracular/main amd64 cpp-14 amd64 14.1.0-5ubuntu1 [1030 B] 67s Get:11 http://ftpmaster.internal/ubuntu oracular/main amd64 cpp-x86-64-linux-gnu amd64 4:14.1.0-2ubuntu1 [5452 B] 67s Get:12 http://ftpmaster.internal/ubuntu oracular/main amd64 cpp amd64 4:14.1.0-2ubuntu1 [22.4 kB] 67s Get:13 http://ftpmaster.internal/ubuntu oracular/main amd64 libcc1-0 amd64 14.1.0-5ubuntu1 [47.6 kB] 67s Get:14 http://ftpmaster.internal/ubuntu oracular/main amd64 libitm1 amd64 14.1.0-5ubuntu1 [29.1 kB] 67s Get:15 http://ftpmaster.internal/ubuntu oracular/main amd64 libatomic1 amd64 14.1.0-5ubuntu1 [10.3 kB] 67s Get:16 http://ftpmaster.internal/ubuntu oracular/main amd64 libasan8 amd64 14.1.0-5ubuntu1 [2997 kB] 67s Get:17 http://ftpmaster.internal/ubuntu oracular/main amd64 liblsan0 amd64 14.1.0-5ubuntu1 [1317 kB] 67s Get:18 http://ftpmaster.internal/ubuntu oracular/main amd64 libtsan2 amd64 14.1.0-5ubuntu1 [2733 kB] 68s Get:19 http://ftpmaster.internal/ubuntu oracular/main amd64 libubsan1 amd64 14.1.0-5ubuntu1 [1178 kB] 68s Get:20 http://ftpmaster.internal/ubuntu oracular/main amd64 libhwasan0 amd64 14.1.0-5ubuntu1 [1634 kB] 68s Get:21 http://ftpmaster.internal/ubuntu oracular/main amd64 libquadmath0 amd64 14.1.0-5ubuntu1 [153 kB] 68s Get:22 http://ftpmaster.internal/ubuntu oracular/main amd64 libgcc-14-dev amd64 14.1.0-5ubuntu1 [2813 kB] 68s Get:23 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-14-x86-64-linux-gnu amd64 14.1.0-5ubuntu1 [23.4 MB] 68s Get:24 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-14 amd64 14.1.0-5ubuntu1 [516 kB] 68s Get:25 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-x86-64-linux-gnu amd64 4:14.1.0-2ubuntu1 [1214 B] 68s Get:26 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc amd64 4:14.1.0-2ubuntu1 [5000 B] 68s Get:27 http://ftpmaster.internal/ubuntu oracular/main amd64 libstdc++-14-dev amd64 14.1.0-5ubuntu1 [2476 kB] 68s Get:28 http://ftpmaster.internal/ubuntu oracular/main amd64 g++-14-x86-64-linux-gnu amd64 14.1.0-5ubuntu1 [13.4 MB] 68s Get:29 http://ftpmaster.internal/ubuntu oracular/main amd64 g++-14 amd64 14.1.0-5ubuntu1 [18.0 kB] 68s Get:30 http://ftpmaster.internal/ubuntu oracular/main amd64 g++-x86-64-linux-gnu amd64 4:14.1.0-2ubuntu1 [966 B] 68s Get:31 http://ftpmaster.internal/ubuntu oracular/main amd64 g++ amd64 4:14.1.0-2ubuntu1 [1100 B] 68s Get:32 http://ftpmaster.internal/ubuntu oracular/main amd64 build-essential amd64 12.10ubuntu1 [4928 B] 68s Get:33 http://ftpmaster.internal/ubuntu oracular/main amd64 libjsoncpp25 amd64 1.9.5-6build1 [82.8 kB] 68s Get:34 http://ftpmaster.internal/ubuntu oracular/main amd64 librhash0 amd64 1.4.3-3build1 [129 kB] 68s Get:35 http://ftpmaster.internal/ubuntu oracular/main amd64 cmake-data all 3.29.6-1 [2193 kB] 68s Get:36 http://ftpmaster.internal/ubuntu oracular/main amd64 cmake amd64 3.29.6-1 [11.4 MB] 68s Get:37 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-14-i686-linux-gnu-base amd64 14.1.0-5ubuntu1cross1 [50.1 kB] 68s Get:38 http://ftpmaster.internal/ubuntu oracular/main amd64 cpp-14-i686-linux-gnu amd64 14.1.0-5ubuntu1cross1 [12.6 MB] 69s Get:39 http://ftpmaster.internal/ubuntu oracular/main amd64 cpp-i686-linux-gnu amd64 4:14.1.0-2ubuntu1 [5448 B] 69s Get:40 http://ftpmaster.internal/ubuntu oracular/main amd64 binutils-i686-linux-gnu amd64 2.42.50.20240710-1ubuntu1 [2926 kB] 69s Get:41 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-14-cross-base all 14.1.0-5ubuntu1cross1 [45.1 kB] 69s Get:42 http://ftpmaster.internal/ubuntu oracular/main amd64 libc6-i386-cross all 2.39-3.1ubuntu3cross1 [1490 kB] 69s Get:43 http://ftpmaster.internal/ubuntu oracular/main amd64 libgcc-s1-i386-cross all 14.1.0-5ubuntu1cross1 [95.4 kB] 69s Get:44 http://ftpmaster.internal/ubuntu oracular/main amd64 libgomp1-i386-cross all 14.1.0-5ubuntu1cross1 [149 kB] 69s Get:45 http://ftpmaster.internal/ubuntu oracular/main amd64 libitm1-i386-cross all 14.1.0-5ubuntu1cross1 [30.2 kB] 69s Get:46 http://ftpmaster.internal/ubuntu oracular/main amd64 libatomic1-i386-cross all 14.1.0-5ubuntu1cross1 [8118 B] 69s Get:47 http://ftpmaster.internal/ubuntu oracular/main amd64 libasan8-i386-cross all 14.1.0-5ubuntu1cross1 [2855 kB] 69s Get:48 http://ftpmaster.internal/ubuntu oracular/main amd64 libstdc++6-i386-cross all 14.1.0-5ubuntu1cross1 [811 kB] 69s Get:49 http://ftpmaster.internal/ubuntu oracular/main amd64 libubsan1-i386-cross all 14.1.0-5ubuntu1cross1 [1143 kB] 69s Get:50 http://ftpmaster.internal/ubuntu oracular/main amd64 libquadmath0-i386-cross all 14.1.0-5ubuntu1cross1 [247 kB] 69s Get:51 http://ftpmaster.internal/ubuntu oracular/main amd64 libgcc-14-dev-i386-cross all 14.1.0-5ubuntu1cross1 [2720 kB] 69s Get:52 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-14-i686-linux-gnu amd64 14.1.0-5ubuntu1cross1 [24.7 MB] 70s Get:53 http://ftpmaster.internal/ubuntu oracular/main amd64 gcc-i686-linux-gnu amd64 4:14.1.0-2ubuntu1 [1208 B] 70s Get:54 http://ftpmaster.internal/ubuntu oracular/main amd64 linux-libc-dev-i386-cross all 6.10.0-15.15cross1 [1414 kB] 70s Get:55 http://ftpmaster.internal/ubuntu oracular/main amd64 libc6-dev-i386-cross all 2.39-3.1ubuntu3cross1 [1889 kB] 70s Get:56 http://ftpmaster.internal/ubuntu oracular/main amd64 libstdc++-14-dev-i386-cross all 14.1.0-5ubuntu1cross1 [2581 kB] 70s Get:57 http://ftpmaster.internal/ubuntu oracular/main amd64 g++-14-i686-linux-gnu amd64 14.1.0-5ubuntu1cross1 [14.1 MB] 71s Get:58 http://ftpmaster.internal/ubuntu oracular/main amd64 g++-i686-linux-gnu amd64 4:14.1.0-2ubuntu1 [956 B] 71s Get:59 http://ftpmaster.internal/ubuntu oracular/main amd64 libconfig-inifiles-perl all 3.000003-2 [39.4 kB] 71s Get:60 http://ftpmaster.internal/ubuntu oracular/main amd64 libio-string-perl all 1.08-4 [11.1 kB] 71s Get:61 http://ftpmaster.internal/ubuntu oracular/main amd64 libxml-namespacesupport-perl all 1.12-2 [13.5 kB] 71s Get:62 http://ftpmaster.internal/ubuntu oracular/main amd64 libxml-sax-base-perl all 1.09-3 [18.9 kB] 71s Get:63 http://ftpmaster.internal/ubuntu oracular/main amd64 libxml-sax-perl all 1.02+dfsg-3 [57.0 kB] 71s Get:64 http://ftpmaster.internal/ubuntu oracular/main amd64 libxml-libxml-perl amd64 2.0207+dfsg+really+2.0134-4 [304 kB] 71s Get:65 http://ftpmaster.internal/ubuntu oracular/main amd64 libxml-simple-perl all 2.25-2 [64.1 kB] 71s Get:66 http://ftpmaster.internal/ubuntu oracular/main amd64 libyaml-perl all 1.31-1 [65.7 kB] 71s Get:67 http://ftpmaster.internal/ubuntu oracular/main amd64 libconfig-auto-perl all 0.44-2 [17.1 kB] 71s Get:68 http://ftpmaster.internal/ubuntu oracular/main amd64 libfile-which-perl all 1.27-2 [12.5 kB] 71s Get:69 http://ftpmaster.internal/ubuntu oracular/main amd64 libfile-homedir-perl all 1.006-2 [37.0 kB] 71s Get:70 http://ftpmaster.internal/ubuntu oracular/main amd64 libdebian-dpkgcross-perl all 2.6.20 [15.6 kB] 71s Get:71 http://ftpmaster.internal/ubuntu oracular/main amd64 cross-config all 2.6.20 [16.5 kB] 71s Get:72 http://ftpmaster.internal/ubuntu oracular/main amd64 dpkg-cross all 2.6.20 [22.2 kB] 71s Get:73 http://ftpmaster.internal/ubuntu oracular/universe amd64 crossbuild-essential-i386 all 12.10ubuntu1 [3870 B] 71s Get:74 http://ftpmaster.internal/ubuntu oracular/universe amd64 cython3 amd64 3.0.10+dfsg-5ubuntu1 [2406 kB] 71s Get:75 http://ftpmaster.internal/ubuntu oracular/main amd64 fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [516 kB] 71s Get:76 http://ftpmaster.internal/ubuntu oracular/universe i386 gcc-12-base i386 12.4.0-2ubuntu1 [46.6 kB] 71s Get:77 http://ftpmaster.internal/ubuntu oracular/main amd64 liberror-perl all 0.17029-2 [25.6 kB] 71s Get:78 http://ftpmaster.internal/ubuntu oracular/main amd64 git-man all 1:2.45.2-1ubuntu1 [1122 kB] 71s Get:79 http://ftpmaster.internal/ubuntu oracular/main amd64 git amd64 1:2.45.2-1ubuntu1 [3928 kB] 71s Get:80 http://ftpmaster.internal/ubuntu oracular/main i386 libasan8 i386 14.1.0-5ubuntu1 [2863 kB] 71s Get:81 http://ftpmaster.internal/ubuntu oracular/main i386 libatomic1 i386 14.1.0-5ubuntu1 [8374 B] 71s Get:82 http://ftpmaster.internal/ubuntu oracular/main i386 linux-libc-dev i386 6.8.0-31.31 [1598 kB] 71s Get:83 http://ftpmaster.internal/ubuntu oracular/main i386 libcrypt-dev i386 1:4.4.36-4build1 [121 kB] 71s Get:84 http://ftpmaster.internal/ubuntu oracular/main i386 libc6-dev i386 2.39-0ubuntu9 [1852 kB] 71s Get:85 http://ftpmaster.internal/ubuntu oracular/main amd64 libexpat1-dev amd64 2.6.2-1 [998 kB] 71s Get:86 http://ftpmaster.internal/ubuntu oracular/main i386 libgomp1 i386 14.1.0-5ubuntu1 [151 kB] 71s Get:87 http://ftpmaster.internal/ubuntu oracular/main i386 libitm1 i386 14.1.0-5ubuntu1 [30.7 kB] 71s Get:88 http://ftpmaster.internal/ubuntu oracular/main i386 libubsan1 i386 14.1.0-5ubuntu1 [1144 kB] 71s Get:89 http://ftpmaster.internal/ubuntu oracular/main i386 libquadmath0 i386 14.1.0-5ubuntu1 [247 kB] 71s Get:90 http://ftpmaster.internal/ubuntu oracular/universe i386 libgcc-12-dev i386 12.4.0-2ubuntu1 [2552 kB] 71s Get:91 http://ftpmaster.internal/ubuntu oracular/main amd64 libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 71s Get:92 http://ftpmaster.internal/ubuntu oracular/main amd64 libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [118 kB] 71s Get:93 http://ftpmaster.internal/ubuntu oracular/main amd64 libjs-sphinxdoc all 7.3.7-3 [154 kB] 71s Get:94 http://ftpmaster.internal/ubuntu oracular/main amd64 libpython3.12t64 amd64 3.12.4-1ubuntu1 [2341 kB] 71s Get:95 http://ftpmaster.internal/ubuntu oracular/main amd64 zlib1g-dev amd64 1:1.3.dfsg-3.1ubuntu2 [894 kB] 71s Get:96 http://ftpmaster.internal/ubuntu oracular/main amd64 libpython3.12-dev amd64 3.12.4-1ubuntu1 [5650 kB] 71s Get:97 http://ftpmaster.internal/ubuntu oracular/main amd64 libpython3-dev amd64 3.12.3-0ubuntu1 [10.2 kB] 71s Get:98 http://ftpmaster.internal/ubuntu oracular/main amd64 libpython3-all-dev amd64 3.12.3-0ubuntu1 [910 B] 71s Get:99 http://ftpmaster.internal/ubuntu oracular/universe i386 libstdc++-12-dev i386 12.4.0-2ubuntu1 [2273 kB] 71s Get:100 http://ftpmaster.internal/ubuntu oracular/main amd64 sphinx-rtd-theme-common all 2.0.0+dfsg-2 [1012 kB] 71s Get:101 http://ftpmaster.internal/ubuntu oracular/universe amd64 python-skbuild-doc all 0.17.6-2 [135 kB] 71s Get:102 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-all amd64 3.12.3-0ubuntu1 [888 B] 71s Get:103 http://ftpmaster.internal/ubuntu oracular/main amd64 python3.12-dev amd64 3.12.4-1ubuntu1 [498 kB] 71s Get:104 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-dev amd64 3.12.3-0ubuntu1 [26.7 kB] 71s Get:105 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-all-dev amd64 3.12.3-0ubuntu1 [910 B] 71s Get:106 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-packaging all 24.1-1 [41.4 kB] 71s Get:107 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-pyproject-hooks all 1.1.0-2 [9916 B] 71s Get:108 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-toml all 0.10.2-1 [16.5 kB] 71s Get:109 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-wheel all 0.43.0-1 [53.5 kB] 71s Get:110 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-build all 1.2.1-1 [29.7 kB] 71s Get:111 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-distlib all 0.3.8-1 [318 kB] 71s Get:112 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-filelock all 3.15.4-1 [12.8 kB] 71s Get:113 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-iniconfig all 1.1.1-2 [6024 B] 71s Get:114 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-pip all 24.1.1+dfsg-1 [1400 kB] 72s Get:115 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-pip-whl all 24.1.1+dfsg-1 [1427 kB] 72s Get:116 http://ftpmaster.internal/ubuntu oracular/main amd64 python3-platformdirs all 4.2.1-1 [16.3 kB] 72s Get:117 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-pluggy all 1.5.0-1 [21.0 kB] 72s Get:118 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-pytest all 7.4.4-1 [305 kB] 72s Get:119 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-pytest-mock all 3.14.0-1 [11.6 kB] 72s Get:120 http://ftpmaster.internal/ubuntu oracular-proposed/universe amd64 python3-setuptools-whl all 70.3.0-2 [762 kB] 72s Get:121 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-skbuild all 0.17.6-2 [59.1 kB] 72s Get:122 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-wheel-whl all 0.43.0-1 [68.2 kB] 72s Get:123 http://ftpmaster.internal/ubuntu oracular/universe amd64 python3-virtualenv all 20.26.2+ds-1 [71.6 kB] 72s Preconfiguring packages ... 72s Fetched 194 MB in 5s (37.2 MB/s) 72s Selecting previously unselected package fonts-lato. 72s (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 ... 74590 files and directories currently installed.) 72s Preparing to unpack .../000-fonts-lato_2.015-1_all.deb ... 72s Unpacking fonts-lato (2.015-1) ... 73s Selecting previously unselected package gcc-14-base:i386. 73s Preparing to unpack .../001-gcc-14-base_14.1.0-5ubuntu1_i386.deb ... 73s Unpacking gcc-14-base:i386 (14.1.0-5ubuntu1) ... 73s Selecting previously unselected package libgcc-s1:i386. 73s Preparing to unpack .../002-libgcc-s1_14.1.0-5ubuntu1_i386.deb ... 73s Unpacking libgcc-s1:i386 (14.1.0-5ubuntu1) ... 73s Selecting previously unselected package libc6:i386. 73s Preparing to unpack .../003-libc6_2.39-0ubuntu9_i386.deb ... 73s Unpacking libc6:i386 (2.39-0ubuntu9) ... 73s Selecting previously unselected package libcrypt1:i386. 73s Preparing to unpack .../004-libcrypt1_1%3a4.4.36-4build1_i386.deb ... 73s Unpacking libcrypt1:i386 (1:4.4.36-4build1) ... 73s Selecting previously unselected package libstdc++6:i386. 73s Preparing to unpack .../005-libstdc++6_14.1.0-5ubuntu1_i386.deb ... 73s Unpacking libstdc++6:i386 (14.1.0-5ubuntu1) ... 73s Selecting previously unselected package libisl23:amd64. 73s Preparing to unpack .../006-libisl23_0.26-3build1_amd64.deb ... 73s Unpacking libisl23:amd64 (0.26-3build1) ... 73s Selecting previously unselected package libmpc3:amd64. 73s Preparing to unpack .../007-libmpc3_1.3.1-1build1_amd64.deb ... 73s Unpacking libmpc3:amd64 (1.3.1-1build1) ... 73s Selecting previously unselected package cpp-14-x86-64-linux-gnu. 73s Preparing to unpack .../008-cpp-14-x86-64-linux-gnu_14.1.0-5ubuntu1_amd64.deb ... 73s Unpacking cpp-14-x86-64-linux-gnu (14.1.0-5ubuntu1) ... 73s Selecting previously unselected package cpp-14. 73s Preparing to unpack .../009-cpp-14_14.1.0-5ubuntu1_amd64.deb ... 73s Unpacking cpp-14 (14.1.0-5ubuntu1) ... 73s Selecting previously unselected package cpp-x86-64-linux-gnu. 73s Preparing to unpack .../010-cpp-x86-64-linux-gnu_4%3a14.1.0-2ubuntu1_amd64.deb ... 73s Unpacking cpp-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 73s Selecting previously unselected package cpp. 73s Preparing to unpack .../011-cpp_4%3a14.1.0-2ubuntu1_amd64.deb ... 73s Unpacking cpp (4:14.1.0-2ubuntu1) ... 73s Selecting previously unselected package libcc1-0:amd64. 73s Preparing to unpack .../012-libcc1-0_14.1.0-5ubuntu1_amd64.deb ... 73s Unpacking libcc1-0:amd64 (14.1.0-5ubuntu1) ... 73s Selecting previously unselected package libitm1:amd64. 73s Preparing to unpack .../013-libitm1_14.1.0-5ubuntu1_amd64.deb ... 73s Unpacking libitm1:amd64 (14.1.0-5ubuntu1) ... 73s Selecting previously unselected package libatomic1:amd64. 73s Preparing to unpack .../014-libatomic1_14.1.0-5ubuntu1_amd64.deb ... 73s Unpacking libatomic1:amd64 (14.1.0-5ubuntu1) ... 73s Selecting previously unselected package libasan8:amd64. 73s Preparing to unpack .../015-libasan8_14.1.0-5ubuntu1_amd64.deb ... 73s Unpacking libasan8:amd64 (14.1.0-5ubuntu1) ... 74s Selecting previously unselected package liblsan0:amd64. 74s Preparing to unpack .../016-liblsan0_14.1.0-5ubuntu1_amd64.deb ... 74s Unpacking liblsan0:amd64 (14.1.0-5ubuntu1) ... 74s Selecting previously unselected package libtsan2:amd64. 74s Preparing to unpack .../017-libtsan2_14.1.0-5ubuntu1_amd64.deb ... 74s Unpacking libtsan2:amd64 (14.1.0-5ubuntu1) ... 74s Selecting previously unselected package libubsan1:amd64. 74s Preparing to unpack .../018-libubsan1_14.1.0-5ubuntu1_amd64.deb ... 74s Unpacking libubsan1:amd64 (14.1.0-5ubuntu1) ... 74s Selecting previously unselected package libhwasan0:amd64. 74s Preparing to unpack .../019-libhwasan0_14.1.0-5ubuntu1_amd64.deb ... 74s Unpacking libhwasan0:amd64 (14.1.0-5ubuntu1) ... 74s Selecting previously unselected package libquadmath0:amd64. 74s Preparing to unpack .../020-libquadmath0_14.1.0-5ubuntu1_amd64.deb ... 74s Unpacking libquadmath0:amd64 (14.1.0-5ubuntu1) ... 74s Selecting previously unselected package libgcc-14-dev:amd64. 74s Preparing to unpack .../021-libgcc-14-dev_14.1.0-5ubuntu1_amd64.deb ... 74s Unpacking libgcc-14-dev:amd64 (14.1.0-5ubuntu1) ... 74s Selecting previously unselected package gcc-14-x86-64-linux-gnu. 74s Preparing to unpack .../022-gcc-14-x86-64-linux-gnu_14.1.0-5ubuntu1_amd64.deb ... 74s Unpacking gcc-14-x86-64-linux-gnu (14.1.0-5ubuntu1) ... 74s Selecting previously unselected package gcc-14. 74s Preparing to unpack .../023-gcc-14_14.1.0-5ubuntu1_amd64.deb ... 74s Unpacking gcc-14 (14.1.0-5ubuntu1) ... 74s Selecting previously unselected package gcc-x86-64-linux-gnu. 74s Preparing to unpack .../024-gcc-x86-64-linux-gnu_4%3a14.1.0-2ubuntu1_amd64.deb ... 74s Unpacking gcc-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 74s Selecting previously unselected package gcc. 74s Preparing to unpack .../025-gcc_4%3a14.1.0-2ubuntu1_amd64.deb ... 74s Unpacking gcc (4:14.1.0-2ubuntu1) ... 74s Selecting previously unselected package libstdc++-14-dev:amd64. 74s Preparing to unpack .../026-libstdc++-14-dev_14.1.0-5ubuntu1_amd64.deb ... 74s Unpacking libstdc++-14-dev:amd64 (14.1.0-5ubuntu1) ... 75s Selecting previously unselected package g++-14-x86-64-linux-gnu. 75s Preparing to unpack .../027-g++-14-x86-64-linux-gnu_14.1.0-5ubuntu1_amd64.deb ... 75s Unpacking g++-14-x86-64-linux-gnu (14.1.0-5ubuntu1) ... 75s Selecting previously unselected package g++-14. 75s Preparing to unpack .../028-g++-14_14.1.0-5ubuntu1_amd64.deb ... 75s Unpacking g++-14 (14.1.0-5ubuntu1) ... 75s Selecting previously unselected package g++-x86-64-linux-gnu. 75s Preparing to unpack .../029-g++-x86-64-linux-gnu_4%3a14.1.0-2ubuntu1_amd64.deb ... 75s Unpacking g++-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 75s Selecting previously unselected package g++. 75s Preparing to unpack .../030-g++_4%3a14.1.0-2ubuntu1_amd64.deb ... 75s Unpacking g++ (4:14.1.0-2ubuntu1) ... 75s Selecting previously unselected package build-essential. 75s Preparing to unpack .../031-build-essential_12.10ubuntu1_amd64.deb ... 75s Unpacking build-essential (12.10ubuntu1) ... 75s Selecting previously unselected package libjsoncpp25:amd64. 75s Preparing to unpack .../032-libjsoncpp25_1.9.5-6build1_amd64.deb ... 75s Unpacking libjsoncpp25:amd64 (1.9.5-6build1) ... 75s Selecting previously unselected package librhash0:amd64. 75s Preparing to unpack .../033-librhash0_1.4.3-3build1_amd64.deb ... 75s Unpacking librhash0:amd64 (1.4.3-3build1) ... 75s Selecting previously unselected package cmake-data. 75s Preparing to unpack .../034-cmake-data_3.29.6-1_all.deb ... 75s Unpacking cmake-data (3.29.6-1) ... 75s Selecting previously unselected package cmake. 75s Preparing to unpack .../035-cmake_3.29.6-1_amd64.deb ... 75s Unpacking cmake (3.29.6-1) ... 76s Selecting previously unselected package gcc-14-i686-linux-gnu-base:amd64. 76s Preparing to unpack .../036-gcc-14-i686-linux-gnu-base_14.1.0-5ubuntu1cross1_amd64.deb ... 76s Unpacking gcc-14-i686-linux-gnu-base:amd64 (14.1.0-5ubuntu1cross1) ... 76s Selecting previously unselected package cpp-14-i686-linux-gnu. 76s Preparing to unpack .../037-cpp-14-i686-linux-gnu_14.1.0-5ubuntu1cross1_amd64.deb ... 76s Unpacking cpp-14-i686-linux-gnu (14.1.0-5ubuntu1cross1) ... 76s Selecting previously unselected package cpp-i686-linux-gnu. 76s Preparing to unpack .../038-cpp-i686-linux-gnu_4%3a14.1.0-2ubuntu1_amd64.deb ... 76s Unpacking cpp-i686-linux-gnu (4:14.1.0-2ubuntu1) ... 76s Selecting previously unselected package binutils-i686-linux-gnu. 76s Preparing to unpack .../039-binutils-i686-linux-gnu_2.42.50.20240710-1ubuntu1_amd64.deb ... 76s Unpacking binutils-i686-linux-gnu (2.42.50.20240710-1ubuntu1) ... 76s Selecting previously unselected package gcc-14-cross-base. 76s Preparing to unpack .../040-gcc-14-cross-base_14.1.0-5ubuntu1cross1_all.deb ... 76s Unpacking gcc-14-cross-base (14.1.0-5ubuntu1cross1) ... 76s Selecting previously unselected package libc6-i386-cross. 76s Preparing to unpack .../041-libc6-i386-cross_2.39-3.1ubuntu3cross1_all.deb ... 76s Unpacking libc6-i386-cross (2.39-3.1ubuntu3cross1) ... 76s Selecting previously unselected package libgcc-s1-i386-cross. 76s Preparing to unpack .../042-libgcc-s1-i386-cross_14.1.0-5ubuntu1cross1_all.deb ... 76s Unpacking libgcc-s1-i386-cross (14.1.0-5ubuntu1cross1) ... 76s Selecting previously unselected package libgomp1-i386-cross. 76s Preparing to unpack .../043-libgomp1-i386-cross_14.1.0-5ubuntu1cross1_all.deb ... 76s Unpacking libgomp1-i386-cross (14.1.0-5ubuntu1cross1) ... 76s Selecting previously unselected package libitm1-i386-cross. 76s Preparing to unpack .../044-libitm1-i386-cross_14.1.0-5ubuntu1cross1_all.deb ... 76s Unpacking libitm1-i386-cross (14.1.0-5ubuntu1cross1) ... 76s Selecting previously unselected package libatomic1-i386-cross. 76s Preparing to unpack .../045-libatomic1-i386-cross_14.1.0-5ubuntu1cross1_all.deb ... 76s Unpacking libatomic1-i386-cross (14.1.0-5ubuntu1cross1) ... 76s Selecting previously unselected package libasan8-i386-cross. 76s Preparing to unpack .../046-libasan8-i386-cross_14.1.0-5ubuntu1cross1_all.deb ... 76s Unpacking libasan8-i386-cross (14.1.0-5ubuntu1cross1) ... 76s Selecting previously unselected package libstdc++6-i386-cross. 76s Preparing to unpack .../047-libstdc++6-i386-cross_14.1.0-5ubuntu1cross1_all.deb ... 76s Unpacking libstdc++6-i386-cross (14.1.0-5ubuntu1cross1) ... 76s Selecting previously unselected package libubsan1-i386-cross. 76s Preparing to unpack .../048-libubsan1-i386-cross_14.1.0-5ubuntu1cross1_all.deb ... 76s Unpacking libubsan1-i386-cross (14.1.0-5ubuntu1cross1) ... 76s Selecting previously unselected package libquadmath0-i386-cross. 76s Preparing to unpack .../049-libquadmath0-i386-cross_14.1.0-5ubuntu1cross1_all.deb ... 76s Unpacking libquadmath0-i386-cross (14.1.0-5ubuntu1cross1) ... 76s Selecting previously unselected package libgcc-14-dev-i386-cross. 76s Preparing to unpack .../050-libgcc-14-dev-i386-cross_14.1.0-5ubuntu1cross1_all.deb ... 76s Unpacking libgcc-14-dev-i386-cross (14.1.0-5ubuntu1cross1) ... 77s Selecting previously unselected package gcc-14-i686-linux-gnu. 77s Preparing to unpack .../051-gcc-14-i686-linux-gnu_14.1.0-5ubuntu1cross1_amd64.deb ... 77s Unpacking gcc-14-i686-linux-gnu (14.1.0-5ubuntu1cross1) ... 77s Selecting previously unselected package gcc-i686-linux-gnu. 77s Preparing to unpack .../052-gcc-i686-linux-gnu_4%3a14.1.0-2ubuntu1_amd64.deb ... 77s Unpacking gcc-i686-linux-gnu (4:14.1.0-2ubuntu1) ... 77s Selecting previously unselected package linux-libc-dev-i386-cross. 77s Preparing to unpack .../053-linux-libc-dev-i386-cross_6.10.0-15.15cross1_all.deb ... 77s Unpacking linux-libc-dev-i386-cross (6.10.0-15.15cross1) ... 77s Selecting previously unselected package libc6-dev-i386-cross. 77s Preparing to unpack .../054-libc6-dev-i386-cross_2.39-3.1ubuntu3cross1_all.deb ... 77s Unpacking libc6-dev-i386-cross (2.39-3.1ubuntu3cross1) ... 78s Selecting previously unselected package libstdc++-14-dev-i386-cross. 78s Preparing to unpack .../055-libstdc++-14-dev-i386-cross_14.1.0-5ubuntu1cross1_all.deb ... 78s Unpacking libstdc++-14-dev-i386-cross (14.1.0-5ubuntu1cross1) ... 78s Selecting previously unselected package g++-14-i686-linux-gnu. 78s Preparing to unpack .../056-g++-14-i686-linux-gnu_14.1.0-5ubuntu1cross1_amd64.deb ... 78s Unpacking g++-14-i686-linux-gnu (14.1.0-5ubuntu1cross1) ... 78s Selecting previously unselected package g++-i686-linux-gnu. 78s Preparing to unpack .../057-g++-i686-linux-gnu_4%3a14.1.0-2ubuntu1_amd64.deb ... 78s Unpacking g++-i686-linux-gnu (4:14.1.0-2ubuntu1) ... 78s Selecting previously unselected package libconfig-inifiles-perl. 78s Preparing to unpack .../058-libconfig-inifiles-perl_3.000003-2_all.deb ... 78s Unpacking libconfig-inifiles-perl (3.000003-2) ... 78s Selecting previously unselected package libio-string-perl. 78s Preparing to unpack .../059-libio-string-perl_1.08-4_all.deb ... 78s Unpacking libio-string-perl (1.08-4) ... 78s Selecting previously unselected package libxml-namespacesupport-perl. 78s Preparing to unpack .../060-libxml-namespacesupport-perl_1.12-2_all.deb ... 78s Unpacking libxml-namespacesupport-perl (1.12-2) ... 78s Selecting previously unselected package libxml-sax-base-perl. 78s Preparing to unpack .../061-libxml-sax-base-perl_1.09-3_all.deb ... 78s Unpacking libxml-sax-base-perl (1.09-3) ... 78s Selecting previously unselected package libxml-sax-perl. 78s Preparing to unpack .../062-libxml-sax-perl_1.02+dfsg-3_all.deb ... 78s Unpacking libxml-sax-perl (1.02+dfsg-3) ... 78s Selecting previously unselected package libxml-libxml-perl. 78s Preparing to unpack .../063-libxml-libxml-perl_2.0207+dfsg+really+2.0134-4_amd64.deb ... 78s Unpacking libxml-libxml-perl (2.0207+dfsg+really+2.0134-4) ... 78s Selecting previously unselected package libxml-simple-perl. 78s Preparing to unpack .../064-libxml-simple-perl_2.25-2_all.deb ... 78s Unpacking libxml-simple-perl (2.25-2) ... 78s Selecting previously unselected package libyaml-perl. 78s Preparing to unpack .../065-libyaml-perl_1.31-1_all.deb ... 78s Unpacking libyaml-perl (1.31-1) ... 78s Selecting previously unselected package libconfig-auto-perl. 78s Preparing to unpack .../066-libconfig-auto-perl_0.44-2_all.deb ... 78s Unpacking libconfig-auto-perl (0.44-2) ... 78s Selecting previously unselected package libfile-which-perl. 78s Preparing to unpack .../067-libfile-which-perl_1.27-2_all.deb ... 78s Unpacking libfile-which-perl (1.27-2) ... 78s Selecting previously unselected package libfile-homedir-perl. 78s Preparing to unpack .../068-libfile-homedir-perl_1.006-2_all.deb ... 78s Unpacking libfile-homedir-perl (1.006-2) ... 78s Selecting previously unselected package libdebian-dpkgcross-perl. 78s Preparing to unpack .../069-libdebian-dpkgcross-perl_2.6.20_all.deb ... 78s Unpacking libdebian-dpkgcross-perl (2.6.20) ... 78s Selecting previously unselected package cross-config. 78s Preparing to unpack .../070-cross-config_2.6.20_all.deb ... 78s Unpacking cross-config (2.6.20) ... 78s Selecting previously unselected package dpkg-cross. 78s Preparing to unpack .../071-dpkg-cross_2.6.20_all.deb ... 78s Unpacking dpkg-cross (2.6.20) ... 78s Selecting previously unselected package crossbuild-essential-i386. 78s Preparing to unpack .../072-crossbuild-essential-i386_12.10ubuntu1_all.deb ... 78s Unpacking crossbuild-essential-i386 (12.10ubuntu1) ... 78s Selecting previously unselected package cython3. 78s Preparing to unpack .../073-cython3_3.0.10+dfsg-5ubuntu1_amd64.deb ... 78s Unpacking cython3 (3.0.10+dfsg-5ubuntu1) ... 79s Selecting previously unselected package fonts-font-awesome. 79s Preparing to unpack .../074-fonts-font-awesome_5.0.10+really4.7.0~dfsg-4.1_all.deb ... 79s Unpacking fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 79s Selecting previously unselected package gcc-12-base:i386. 79s Preparing to unpack .../075-gcc-12-base_12.4.0-2ubuntu1_i386.deb ... 79s Unpacking gcc-12-base:i386 (12.4.0-2ubuntu1) ... 79s Selecting previously unselected package liberror-perl. 79s Preparing to unpack .../076-liberror-perl_0.17029-2_all.deb ... 79s Unpacking liberror-perl (0.17029-2) ... 79s Selecting previously unselected package git-man. 79s Preparing to unpack .../077-git-man_1%3a2.45.2-1ubuntu1_all.deb ... 79s Unpacking git-man (1:2.45.2-1ubuntu1) ... 79s Selecting previously unselected package git. 79s Preparing to unpack .../078-git_1%3a2.45.2-1ubuntu1_amd64.deb ... 79s Unpacking git (1:2.45.2-1ubuntu1) ... 79s Selecting previously unselected package libasan8:i386. 79s Preparing to unpack .../079-libasan8_14.1.0-5ubuntu1_i386.deb ... 79s Unpacking libasan8:i386 (14.1.0-5ubuntu1) ... 79s Selecting previously unselected package libatomic1:i386. 79s Preparing to unpack .../080-libatomic1_14.1.0-5ubuntu1_i386.deb ... 79s Unpacking libatomic1:i386 (14.1.0-5ubuntu1) ... 79s Selecting previously unselected package linux-libc-dev:i386. 79s Preparing to unpack .../081-linux-libc-dev_6.8.0-31.31_i386.deb ... 79s Unpacking linux-libc-dev:i386 (6.8.0-31.31) ... 80s Selecting previously unselected package libcrypt-dev:i386. 80s Preparing to unpack .../082-libcrypt-dev_1%3a4.4.36-4build1_i386.deb ... 80s Unpacking libcrypt-dev:i386 (1:4.4.36-4build1) ... 80s Selecting previously unselected package libc6-dev:i386. 80s Preparing to unpack .../083-libc6-dev_2.39-0ubuntu9_i386.deb ... 80s Unpacking libc6-dev:i386 (2.39-0ubuntu9) ... 80s Selecting previously unselected package libexpat1-dev:amd64. 80s Preparing to unpack .../084-libexpat1-dev_2.6.2-1_amd64.deb ... 80s Unpacking libexpat1-dev:amd64 (2.6.2-1) ... 80s Selecting previously unselected package libgomp1:i386. 80s Preparing to unpack .../085-libgomp1_14.1.0-5ubuntu1_i386.deb ... 80s Unpacking libgomp1:i386 (14.1.0-5ubuntu1) ... 80s Selecting previously unselected package libitm1:i386. 80s Preparing to unpack .../086-libitm1_14.1.0-5ubuntu1_i386.deb ... 80s Unpacking libitm1:i386 (14.1.0-5ubuntu1) ... 80s Selecting previously unselected package libubsan1:i386. 80s Preparing to unpack .../087-libubsan1_14.1.0-5ubuntu1_i386.deb ... 80s Unpacking libubsan1:i386 (14.1.0-5ubuntu1) ... 80s Selecting previously unselected package libquadmath0:i386. 80s Preparing to unpack .../088-libquadmath0_14.1.0-5ubuntu1_i386.deb ... 80s Unpacking libquadmath0:i386 (14.1.0-5ubuntu1) ... 80s Selecting previously unselected package libgcc-12-dev:i386. 80s Preparing to unpack .../089-libgcc-12-dev_12.4.0-2ubuntu1_i386.deb ... 80s Unpacking libgcc-12-dev:i386 (12.4.0-2ubuntu1) ... 80s Selecting previously unselected package libjs-jquery. 80s Preparing to unpack .../090-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 80s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 80s Selecting previously unselected package libjs-underscore. 80s Preparing to unpack .../091-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ... 80s Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 80s Selecting previously unselected package libjs-sphinxdoc. 80s Preparing to unpack .../092-libjs-sphinxdoc_7.3.7-3_all.deb ... 80s Unpacking libjs-sphinxdoc (7.3.7-3) ... 80s Selecting previously unselected package libpython3.12t64:amd64. 80s Preparing to unpack .../093-libpython3.12t64_3.12.4-1ubuntu1_amd64.deb ... 80s Unpacking libpython3.12t64:amd64 (3.12.4-1ubuntu1) ... 80s Selecting previously unselected package zlib1g-dev:amd64. 80s Preparing to unpack .../094-zlib1g-dev_1%3a1.3.dfsg-3.1ubuntu2_amd64.deb ... 80s Unpacking zlib1g-dev:amd64 (1:1.3.dfsg-3.1ubuntu2) ... 80s Selecting previously unselected package libpython3.12-dev:amd64. 80s Preparing to unpack .../095-libpython3.12-dev_3.12.4-1ubuntu1_amd64.deb ... 80s Unpacking libpython3.12-dev:amd64 (3.12.4-1ubuntu1) ... 80s Selecting previously unselected package libpython3-dev:amd64. 80s Preparing to unpack .../096-libpython3-dev_3.12.3-0ubuntu1_amd64.deb ... 80s Unpacking libpython3-dev:amd64 (3.12.3-0ubuntu1) ... 80s Selecting previously unselected package libpython3-all-dev:amd64. 80s Preparing to unpack .../097-libpython3-all-dev_3.12.3-0ubuntu1_amd64.deb ... 80s Unpacking libpython3-all-dev:amd64 (3.12.3-0ubuntu1) ... 80s Selecting previously unselected package libstdc++-12-dev:i386. 80s Preparing to unpack .../098-libstdc++-12-dev_12.4.0-2ubuntu1_i386.deb ... 80s Unpacking libstdc++-12-dev:i386 (12.4.0-2ubuntu1) ... 81s Selecting previously unselected package sphinx-rtd-theme-common. 81s Preparing to unpack .../099-sphinx-rtd-theme-common_2.0.0+dfsg-2_all.deb ... 81s Unpacking sphinx-rtd-theme-common (2.0.0+dfsg-2) ... 81s Selecting previously unselected package python-skbuild-doc. 81s Preparing to unpack .../100-python-skbuild-doc_0.17.6-2_all.deb ... 81s Unpacking python-skbuild-doc (0.17.6-2) ... 81s Selecting previously unselected package python3-all. 81s Preparing to unpack .../101-python3-all_3.12.3-0ubuntu1_amd64.deb ... 81s Unpacking python3-all (3.12.3-0ubuntu1) ... 81s Selecting previously unselected package python3.12-dev. 81s Preparing to unpack .../102-python3.12-dev_3.12.4-1ubuntu1_amd64.deb ... 81s Unpacking python3.12-dev (3.12.4-1ubuntu1) ... 81s Selecting previously unselected package python3-dev. 81s Preparing to unpack .../103-python3-dev_3.12.3-0ubuntu1_amd64.deb ... 81s Unpacking python3-dev (3.12.3-0ubuntu1) ... 81s Selecting previously unselected package python3-all-dev. 81s Preparing to unpack .../104-python3-all-dev_3.12.3-0ubuntu1_amd64.deb ... 81s Unpacking python3-all-dev (3.12.3-0ubuntu1) ... 81s Selecting previously unselected package python3-packaging. 81s Preparing to unpack .../105-python3-packaging_24.1-1_all.deb ... 81s Unpacking python3-packaging (24.1-1) ... 81s Selecting previously unselected package python3-pyproject-hooks. 81s Preparing to unpack .../106-python3-pyproject-hooks_1.1.0-2_all.deb ... 81s Unpacking python3-pyproject-hooks (1.1.0-2) ... 81s Selecting previously unselected package python3-toml. 81s Preparing to unpack .../107-python3-toml_0.10.2-1_all.deb ... 81s Unpacking python3-toml (0.10.2-1) ... 81s Selecting previously unselected package python3-wheel. 81s Preparing to unpack .../108-python3-wheel_0.43.0-1_all.deb ... 81s Unpacking python3-wheel (0.43.0-1) ... 81s Selecting previously unselected package python3-build. 81s Preparing to unpack .../109-python3-build_1.2.1-1_all.deb ... 81s Unpacking python3-build (1.2.1-1) ... 81s Selecting previously unselected package python3-distlib. 81s Preparing to unpack .../110-python3-distlib_0.3.8-1_all.deb ... 81s Unpacking python3-distlib (0.3.8-1) ... 81s Selecting previously unselected package python3-filelock. 81s Preparing to unpack .../111-python3-filelock_3.15.4-1_all.deb ... 81s Unpacking python3-filelock (3.15.4-1) ... 81s Selecting previously unselected package python3-iniconfig. 81s Preparing to unpack .../112-python3-iniconfig_1.1.1-2_all.deb ... 81s Unpacking python3-iniconfig (1.1.1-2) ... 81s Selecting previously unselected package python3-pip. 81s Preparing to unpack .../113-python3-pip_24.1.1+dfsg-1_all.deb ... 81s Unpacking python3-pip (24.1.1+dfsg-1) ... 81s Selecting previously unselected package python3-pip-whl. 81s Preparing to unpack .../114-python3-pip-whl_24.1.1+dfsg-1_all.deb ... 81s Unpacking python3-pip-whl (24.1.1+dfsg-1) ... 81s Selecting previously unselected package python3-platformdirs. 81s Preparing to unpack .../115-python3-platformdirs_4.2.1-1_all.deb ... 81s Unpacking python3-platformdirs (4.2.1-1) ... 81s Selecting previously unselected package python3-pluggy. 81s Preparing to unpack .../116-python3-pluggy_1.5.0-1_all.deb ... 81s Unpacking python3-pluggy (1.5.0-1) ... 81s Selecting previously unselected package python3-pytest. 81s Preparing to unpack .../117-python3-pytest_7.4.4-1_all.deb ... 81s Unpacking python3-pytest (7.4.4-1) ... 81s Selecting previously unselected package python3-pytest-mock. 81s Preparing to unpack .../118-python3-pytest-mock_3.14.0-1_all.deb ... 81s Unpacking python3-pytest-mock (3.14.0-1) ... 81s Selecting previously unselected package python3-setuptools-whl. 81s Preparing to unpack .../119-python3-setuptools-whl_70.3.0-2_all.deb ... 81s Unpacking python3-setuptools-whl (70.3.0-2) ... 81s Selecting previously unselected package python3-skbuild. 81s Preparing to unpack .../120-python3-skbuild_0.17.6-2_all.deb ... 81s Unpacking python3-skbuild (0.17.6-2) ... 82s Selecting previously unselected package python3-wheel-whl. 82s Preparing to unpack .../121-python3-wheel-whl_0.43.0-1_all.deb ... 82s Unpacking python3-wheel-whl (0.43.0-1) ... 82s Selecting previously unselected package python3-virtualenv. 82s Preparing to unpack .../122-python3-virtualenv_20.26.2+ds-1_all.deb ... 82s Unpacking python3-virtualenv (20.26.2+ds-1) ... 82s Setting up libconfig-inifiles-perl (3.000003-2) ... 82s Setting up python3-iniconfig (1.1.1-2) ... 82s Setting up libfile-which-perl (1.27-2) ... 82s Setting up python3-setuptools-whl (70.3.0-2) ... 82s Setting up python3-filelock (3.15.4-1) ... 82s Setting up fonts-lato (2.015-1) ... 82s Setting up gcc-14-base:i386 (14.1.0-5ubuntu1) ... 82s Setting up python3-pip-whl (24.1.1+dfsg-1) ... 82s Setting up binutils-i686-linux-gnu (2.42.50.20240710-1ubuntu1) ... 82s Setting up linux-libc-dev:i386 (6.8.0-31.31) ... 82s Setting up libxml-namespacesupport-perl (1.12-2) ... 82s Setting up gcc-14-i686-linux-gnu-base:amd64 (14.1.0-5ubuntu1cross1) ... 82s Setting up python3-all (3.12.3-0ubuntu1) ... 82s Setting up gcc-14-cross-base (14.1.0-5ubuntu1cross1) ... 82s Setting up python3-distlib (0.3.8-1) ... 82s Setting up libyaml-perl (1.31-1) ... 82s Setting up python3-wheel (0.43.0-1) ... 82s Setting up python3-platformdirs (4.2.1-1) ... 82s Setting up gcc-12-base:i386 (12.4.0-2ubuntu1) ... 82s Setting up liberror-perl (0.17029-2) ... 82s Setting up libpython3.12t64:amd64 (3.12.4-1ubuntu1) ... 82s Setting up libxml-sax-base-perl (1.09-3) ... 82s Setting up libio-string-perl (1.08-4) ... 82s Setting up linux-libc-dev-i386-cross (6.10.0-15.15cross1) ... 82s Setting up cross-config (2.6.20) ... 82s Setting up python3-packaging (24.1-1) ... 82s Setting up libexpat1-dev:amd64 (2.6.2-1) ... 82s Setting up python3-pyproject-hooks (1.1.0-2) ... 83s Setting up libquadmath0:amd64 (14.1.0-5ubuntu1) ... 83s Setting up libmpc3:amd64 (1.3.1-1build1) ... 83s Setting up libatomic1:amd64 (14.1.0-5ubuntu1) ... 83s Setting up cython3 (3.0.10+dfsg-5ubuntu1) ... 83s Setting up libjsoncpp25:amd64 (1.9.5-6build1) ... 83s Setting up python3-pip (24.1.1+dfsg-1) ... 84s Setting up python3-toml (0.10.2-1) ... 84s Setting up python3-pluggy (1.5.0-1) ... 85s Setting up libubsan1:amd64 (14.1.0-5ubuntu1) ... 85s Setting up zlib1g-dev:amd64 (1:1.3.dfsg-3.1ubuntu2) ... 85s Setting up libhwasan0:amd64 (14.1.0-5ubuntu1) ... 85s Setting up librhash0:amd64 (1.4.3-3build1) ... 85s Setting up libasan8:amd64 (14.1.0-5ubuntu1) ... 85s Setting up libc6-i386-cross (2.39-3.1ubuntu3cross1) ... 85s Setting up git-man (1:2.45.2-1ubuntu1) ... 85s Setting up cmake-data (3.29.6-1) ... 85s Setting up libtsan2:amd64 (14.1.0-5ubuntu1) ... 85s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 85s Setting up libisl23:amd64 (0.26-3build1) ... 85s Setting up cpp-14-i686-linux-gnu (14.1.0-5ubuntu1cross1) ... 85s Setting up python3-build (1.2.1-1) ... 85s Setting up libfile-homedir-perl (1.006-2) ... 85s Setting up python3-wheel-whl (0.43.0-1) ... 85s Setting up libquadmath0-i386-cross (14.1.0-5ubuntu1cross1) ... 85s Setting up fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 85s Setting up sphinx-rtd-theme-common (2.0.0+dfsg-2) ... 85s Setting up libcc1-0:amd64 (14.1.0-5ubuntu1) ... 85s Setting up liblsan0:amd64 (14.1.0-5ubuntu1) ... 85s Setting up libitm1:amd64 (14.1.0-5ubuntu1) ... 85s Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ... 85s Setting up libatomic1-i386-cross (14.1.0-5ubuntu1cross1) ... 85s Setting up python3-pytest (7.4.4-1) ... 85s Setting up python3-virtualenv (20.26.2+ds-1) ... 85s Setting up libpython3.12-dev:amd64 (3.12.4-1ubuntu1) ... 85s Setting up libgomp1-i386-cross (14.1.0-5ubuntu1cross1) ... 85s Setting up libc6-dev-i386-cross (2.39-3.1ubuntu3cross1) ... 85s Setting up libxml-sax-perl (1.02+dfsg-3) ... 85s update-perl-sax-parsers: Registering Perl SAX parser XML::SAX::PurePerl with priority 10... 85s update-perl-sax-parsers: Updating overall Perl SAX parser modules info file... 86s 86s Creating config file /etc/perl/XML/SAX/ParserDetails.ini with new version 86s Setting up libgcc-s1-i386-cross (14.1.0-5ubuntu1cross1) ... 86s Setting up libitm1-i386-cross (14.1.0-5ubuntu1cross1) ... 86s Setting up python3.12-dev (3.12.4-1ubuntu1) ... 86s Setting up cpp-14-x86-64-linux-gnu (14.1.0-5ubuntu1) ... 86s Setting up git (1:2.45.2-1ubuntu1) ... 86s Setting up libjs-sphinxdoc (7.3.7-3) ... 86s Setting up cpp-14 (14.1.0-5ubuntu1) ... 86s Setting up libxml-libxml-perl (2.0207+dfsg+really+2.0134-4) ... 86s update-perl-sax-parsers: Registering Perl SAX parser XML::LibXML::SAX::Parser with priority 50... 86s update-perl-sax-parsers: Registering Perl SAX parser XML::LibXML::SAX with priority 50... 86s update-perl-sax-parsers: Updating overall Perl SAX parser modules info file... 86s Replacing config file /etc/perl/XML/SAX/ParserDetails.ini with new version 86s Setting up python3-pytest-mock (3.14.0-1) ... 86s Setting up cmake (3.29.6-1) ... 86s Setting up cpp-i686-linux-gnu (4:14.1.0-2ubuntu1) ... 86s Setting up libgcc-14-dev:amd64 (14.1.0-5ubuntu1) ... 86s Setting up libstdc++-14-dev:amd64 (14.1.0-5ubuntu1) ... 86s Setting up cpp-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 86s Setting up libpython3-dev:amd64 (3.12.3-0ubuntu1) ... 86s Setting up python-skbuild-doc (0.17.6-2) ... 86s Setting up python3-skbuild (0.17.6-2) ... 86s Setting up libasan8-i386-cross (14.1.0-5ubuntu1cross1) ... 86s Setting up libstdc++6-i386-cross (14.1.0-5ubuntu1cross1) ... 86s Setting up libpython3-all-dev:amd64 (3.12.3-0ubuntu1) ... 86s Setting up python3-dev (3.12.3-0ubuntu1) ... 86s Setting up libxml-simple-perl (2.25-2) ... 86s Setting up cpp (4:14.1.0-2ubuntu1) ... 86s Setting up gcc-14-x86-64-linux-gnu (14.1.0-5ubuntu1) ... 86s Setting up python3-all-dev (3.12.3-0ubuntu1) ... 86s Setting up gcc-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 86s Setting up libubsan1-i386-cross (14.1.0-5ubuntu1cross1) ... 86s Setting up libconfig-auto-perl (0.44-2) ... 86s Setting up gcc-14 (14.1.0-5ubuntu1) ... 86s Setting up g++-14-x86-64-linux-gnu (14.1.0-5ubuntu1) ... 86s Setting up g++-x86-64-linux-gnu (4:14.1.0-2ubuntu1) ... 86s Setting up g++-14 (14.1.0-5ubuntu1) ... 86s Setting up libdebian-dpkgcross-perl (2.6.20) ... 86s Setting up libgcc-14-dev-i386-cross (14.1.0-5ubuntu1cross1) ... 86s Setting up gcc (4:14.1.0-2ubuntu1) ... 86s Setting up gcc-14-i686-linux-gnu (14.1.0-5ubuntu1cross1) ... 86s Setting up g++ (4:14.1.0-2ubuntu1) ... 86s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 86s Setting up gcc-i686-linux-gnu (4:14.1.0-2ubuntu1) ... 86s Setting up build-essential (12.10ubuntu1) ... 86s Setting up libstdc++-14-dev-i386-cross (14.1.0-5ubuntu1cross1) ... 86s Setting up dpkg-cross (2.6.20) ... 86s Setting up g++-14-i686-linux-gnu (14.1.0-5ubuntu1cross1) ... 86s Setting up g++-i686-linux-gnu (4:14.1.0-2ubuntu1) ... 86s Setting up crossbuild-essential-i386 (12.10ubuntu1) ... 86s Setting up libgcc-s1:i386 (14.1.0-5ubuntu1) ... 86s Setting up libc6:i386 (2.39-0ubuntu9) ... 86s Error: Could not restart systemd, systemd binary not working 86s Setting up libasan8:i386 (14.1.0-5ubuntu1) ... 86s Setting up libstdc++6:i386 (14.1.0-5ubuntu1) ... 86s Setting up libitm1:i386 (14.1.0-5ubuntu1) ... 86s Setting up libcrypt1:i386 (1:4.4.36-4build1) ... 86s Setting up libgomp1:i386 (14.1.0-5ubuntu1) ... 86s Setting up libquadmath0:i386 (14.1.0-5ubuntu1) ... 86s Setting up libatomic1:i386 (14.1.0-5ubuntu1) ... 86s Setting up libubsan1:i386 (14.1.0-5ubuntu1) ... 86s Setting up libcrypt-dev:i386 (1:4.4.36-4build1) ... 86s Setting up libc6-dev:i386 (2.39-0ubuntu9) ... 86s Setting up libgcc-12-dev:i386 (12.4.0-2ubuntu1) ... 86s Setting up libstdc++-12-dev:i386 (12.4.0-2ubuntu1) ... 86s Processing triggers for libc-bin (2.39-0ubuntu9) ... 87s Processing triggers for man-db (2.12.1-2) ... 88s Reading package lists... 88s Building dependency tree... 88s Reading state information... 89s Starting pkgProblemResolver with broken count: 0 89s Starting 2 pkgProblemResolver with broken count: 0 89s Done 89s The following NEW packages will be installed: 89s autopkgtest-satdep 89s 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 89s Need to get 0 B/696 B of archives. 89s After this operation, 0 B of additional disk space will be used. 89s Get:1 /tmp/autopkgtest.9ApnOP/2-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [696 B] 90s Selecting previously unselected package autopkgtest-satdep. 90s (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 ... 87824 files and directories currently installed.) 90s Preparing to unpack .../2-autopkgtest-satdep.deb ... 90s Unpacking autopkgtest-satdep (0) ... 90s Setting up autopkgtest-satdep (0) ... 91s (Reading database ... 87824 files and directories currently installed.) 91s Removing autopkgtest-satdep (0) ... 92s autopkgtest [16:04:51]: test testsuite: [----------------------- 92s + cp -r tests /tmp/autopkgtest.9ApnOP/autopkgtest_tmp 92s + cp pyproject.toml /tmp/autopkgtest.9ApnOP/autopkgtest_tmp 92s + cd /tmp/autopkgtest.9ApnOP/autopkgtest_tmp 92s + py3versions -s 92s + python3.12 -m pytest -W ignore::DeprecationWarning -k not test_hello_sdist and not test_hello_sdist_with_base and not test_sdist_with_symlinks and not test_manifest_in_sdist and not test_generator_cleanup and not test_fortran and not test_pep518_findpython and not test_pep518 and not test_dual_pep518 and not test_hello_develop and not test_install_command and not test_help_commands and not test_test_command and not test_source_distribution and not test_wheel --ignore=tests/test_distribution.py 93s ============================= test session starts ============================== 93s platform linux -- Python 3.12.4, pytest-7.4.4, pluggy-1.5.0 93s installed packages of interest: build==1.2.1 distro==1.9.0 packaging==24.1 pip==24.1.1 scikit-build==0.17.6 setuptools==70.3.0 virtualenv==20.26.2 wheel==0.43.0 93s rootdir: /tmp/autopkgtest.9ApnOP/autopkgtest_tmp 93s configfile: pyproject.toml 93s testpaths: tests 93s plugins: mock-3.14.0 93s collected 241 items / 19 deselected / 1 skipped / 222 selected 93s 96s tests/test_broken_project.py ....... [ 3%] 96s tests/test_cmake_target.py . [ 3%] 98s tests/test_cmakelists_not_in_top_level_dir.py F... [ 5%] 103s tests/test_cmaker.py ............... [ 12%] 105s tests/test_command_line.py .......FFFF.. [ 18%] 105s tests/test_constants.py . [ 18%] 108s tests/test_cython_flags.py F [ 18%] 109s tests/test_filter_manifest.py F [ 19%] 120s tests/test_hello_cpp.py FFFFF [ 21%] 127s tests/test_hello_cython.py FFF [ 22%] 128s tests/test_hello_pure.py FFFF [ 24%] 129s tests/test_include_exclude_data.py FF [ 25%] 131s tests/test_issue284_build_ext_inplace.py F [ 26%] 132s tests/test_issue335_support_cmake_source_dir.py F [ 26%] 132s tests/test_issue342_cmake_osx_args_in_setup.py ......... [ 30%] 132s tests/test_issue352_isolated_environment_support.py . [ 31%] 137s tests/test_issue668_symbol_visibility.py FF [ 31%] 137s tests/test_logging.py .. [ 32%] 137s tests/test_manifest_in.py F [ 33%] 138s tests/test_outside_project_root.py ... [ 34%] 139s tests/test_platform.py .............s [ 40%] 151s tests/test_setup.py .FF......FFF..FFFF.................................. [ 64%] 156s ..........sss.sss.sss.sss.sss.sss.sss.sssFF... [ 85%] 159s tests/test_skbuild.py .sF..ssss [ 89%] 160s tests/test_skbuild_variable.py .FF [ 90%] 160s tests/test_utils.py ..................... [100%] 160s 160s =================================== FAILURES =================================== 160s __________________________________ test_build __________________________________ 160s 160s iargs = () 160s ikwargs = {'capsys': <_pytest.capture.CaptureFixture object at 0x7bbe04a26d20>} 160s 160s @functools.wraps(fun) 160s def wrapped(*iargs, **ikwargs): 160s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 160s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 160s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 160s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 160s 160s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 160s 160s disable_languages_test = True 160s fun = 160s iargs = () 160s ikwargs = {'capsys': <_pytest.capture.CaptureFixture object at 0x7bbe04a26d20>} 160s ret = False 160s wrapped = 160s 160s tests/__init__.py:261: 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s /usr/lib/python3.12/contextlib.py:137: in __enter__ 160s return next(self.gen) 160s self = 160s tests/__init__.py:244: in execute_setup_py 160s exec(setup_code) 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = True 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s original_write_test_cmakelist = 160s platform = 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-8/test_build0') 160s setup = 160s setup_args = ['build'] 160s setup_code = at 0x7bbe04decb30, file "setup.py", line 1> 160s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04bfe200> 160s setup.py:5: in 160s ??? 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = True 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s original_write_test_cmakelist = 160s platform = 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-8/test_build0') 160s setup = 160s setup_args = ['build'] 160s setup_code = at 0x7bbe04decb30, file "setup.py", line 1> 160s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04bfe200> 160s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 160s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 160s BinaryDistribution = .BinaryDistribution'> 160s build_ext_inplace = False 160s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 160s cmake_args_from_args = [] 160s cmake_executable = '/usr/bin/cmake' 160s cmake_install_dir = '' 160s cmake_install_target = 'install' 160s cmake_install_target_from_command = '' 160s cmake_install_target_from_setup = 'install' 160s cmake_languages = ('C', 'CXX') 160s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so'] 160s cmake_minimum_required_version = None 160s cmake_process_manifest_hook = None 160s cmake_source_dir = 'hello' 160s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 160s cmake_with_sdist = False 160s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 160s cmkr = 160s commands = ['build'] 160s config_type = 'Release' 160s data_files = {} 160s developer_mode = False 160s display_only = False 160s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 160s env_cmake_args = [] 160s force_cmake = False 160s has_cmakelists = True 160s has_invalid_arguments = False 160s help_commands = 0 160s hide_listing = False 160s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (CMakeLists not in top-level dir)', ...} 160s make_args = ['--config', 'Release'] 160s new_py_modules = {} 160s new_scripts = {} 160s original_manifestin_data_files = [] 160s original_package_data = {} 160s package = 'hello' 160s package_data = {'hello': ['_hello.cpython-312-x86_64-linux-gnu.so', 'hello/__init__.py', 'hello/__main__.py']} 160s package_dir = {'hello': 'hello'} 160s package_prefixes = [('hello', 'hello')] 160s packages = ['hello'] 160s plat_name = None 160s process_manifest = None 160s py_modules = [] 160s scripts = [] 160s skip_cmake = False 160s skip_generator_test = False 160s skip_skbuild = False 160s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 160s return distutils.core.setup(**attrs) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (CMakeLists not in top-level dir)', ...} 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 160s return run_commands(dist) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (CMakeLists not in top-level dir)', ...} 160s dist = .BinaryDistribution object at 0x7bbe06501610> 160s klass = .BinaryDistribution'> 160s ok = True 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 160s dist.run_commands() 160s dist = .BinaryDistribution object at 0x7bbe06501610> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 160s self.run_command(cmd) 160s cmd = 'build' 160s self = .BinaryDistribution object at 0x7bbe06501610> 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe06501610> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe06501610> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 160s self.run_command(cmd_name) 160s cmd_name = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 160s self.distribution.run_command(command) 160s command = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe06501610> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe06501610> 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 160s super().run(*args, **kwargs) 160s __class__ = 160s args = () 160s kwargs = {} 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 160s self.build_packages() 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 160s self.build_module(module, module_file, package) 160s module = '__init__' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 160s modules = [('hello', '__init__', '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py'), ('hello', '__main__', '_skbuild/linux-x86_64-3.12/cmake-install/hello/__main__.py')] 160s package = 'hello' 160s package_ = 'hello' 160s package_dir = '_skbuild/linux-x86_64-3.12/cmake-install/hello' 160s self = 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 160s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 160s __class__ = 160s module = '__init__' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 160s package = 'hello' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 160s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 160s module = '__init__' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 160s package = 'hello' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 160s self.mkpath(dir) 160s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 160s module = '__init__' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 160s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello/__init__.py' 160s package = ['hello'] 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 160s dir_util.mkpath(name, mode, dry_run=self.dry_run) 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 160s self = 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 160s mode = 511, verbose = True, dry_run = False 160s 160s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 160s """Create a directory and any missing ancestor directories. 160s 160s If the directory already exists (or if 'name' is the empty string, which 160s means the current directory, which of course exists), then do nothing. 160s Raise DistutilsFileError if unable to create some directory along the way 160s (eg. some sub-path exists, but is a file rather than a directory). 160s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 160s Return the list of directories actually created. 160s 160s os.makedirs is not used because: 160s 160s a) It's new to Python 1.5.2, and 160s b) it blows up if the directory already exists (in which case it should 160s silently succeed). 160s """ 160s 160s global _path_created 160s 160s # Detect a common bug -- name is None 160s if not isinstance(name, str): 160s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 160s 160s # XXX what's the better way to handle verbosity? print as we create 160s # each directory in the path (the current behaviour), or only announce 160s # the creation of the whole path? (quite easy to do the latter since 160s # we're not using a recursive algorithm) 160s 160s name = os.path.normpath(name) 160s created_dirs = [] 160s if os.path.isdir(name) or name == '': 160s return created_dirs 160s if os.path.abspath(name) in _path_created: 160s return created_dirs 160s 160s (head, tail) = os.path.split(name) 160s tails = [tail] # stack of lone dirs to create 160s 160s while head and tail and not os.path.isdir(head): 160s (head, tail) = os.path.split(head) 160s tails.insert(0, tail) # push next higher dir onto stack 160s 160s # now 'head' contains the deepest directory that already exists 160s # (that is, the child of 'head' in 'name' is the highest directory 160s # that does *not* exist) 160s for d in tails: 160s # print "head = %s, d = %s: " % (head, d), 160s head = os.path.join(head, d) 160s abs_head = os.path.abspath(head) 160s 160s if abs_head in _path_created: 160s continue 160s 160s if verbose >= 1: 160s log.info("creating %s", head) 160s 160s if not dry_run: 160s try: 160s os.mkdir(head, mode) 160s except OSError as exc: 160s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 160s raise DistutilsFileError( 160s f"could not create '{head}': {exc.args[-1]}" 160s ) 160s created_dirs.append(head) 160s 160s > _path_created.add(abs_head) 160s E AttributeError: 'dict' object has no attribute 'add' 160s 160s abs_head = '/tmp/pytest-of-ubuntu/pytest-8/test_build0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 160s d = 'lib.linux-x86_64-cpython-312' 160s dry_run = False 160s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 160s tail = 'lib.linux-x86_64-cpython-312' 160s tails = ['lib.linux-x86_64-cpython-312', 'hello'] 160s verbose = True 160s 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 160s ----------------------------- Captured stdout call ----------------------------- 160s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-8/test_build0/.git/ 160s [master (root-commit) 38250c2] Initial commit 160s 5 files changed, 94 insertions(+) 160s create mode 100644 hello/CMakeLists.txt 160s create mode 100644 hello/__init__.py 160s create mode 100644 hello/__main__.py 160s create mode 100644 hello/_hello.cxx 160s create mode 100644 setup.py 160s Not searching for unused variables given on the command line. 160s -- Configuring incomplete, errors occurred! 160s Not searching for unused variables given on the command line. 160s -- Configuring done (0.0s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-8/test_build0/_cmake_test_compile/build 160s Not searching for unused variables given on the command line. 160s -- The C compiler identification is GNU 14.1.0 160s -- The CXX compiler identification is GNU 14.1.0 160s -- Detecting C compiler ABI info 160s -- Detecting C compiler ABI info - done 160s -- Check for working C compiler: /usr/bin/cc - skipped 160s -- Detecting C compile features 160s -- Detecting C compile features - done 160s -- Detecting CXX compiler ABI info 160s -- Detecting CXX compiler ABI info - done 160s -- Check for working CXX compiler: /usr/bin/c++ - skipped 160s -- Detecting CXX compile features 160s -- Detecting CXX compile features - done 160s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 160s -- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.12.so (found version "3.12.4") 160s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 160s -- Configuring done (1.1s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-8/test_build0/_skbuild/linux-x86_64-3.12/cmake-build 160s [ 50%] Building CXX object CMakeFiles/_hello.dir/_hello.cxx.o 160s [100%] Linking CXX shared module _hello.cpython-312-x86_64-linux-gnu.so 160s [100%] Built target _hello 160s Install the project... 160s -- Install configuration: "Release" 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-8/test_build0/_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Ninja' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Ninja' generator - failure 160s -------------------------------------------------------------------------------- 160s 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Unix Makefiles' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Unix Makefiles' generator - success 160s -------------------------------------------------------------------------------- 160s 160s Configuring Project 160s Working directory: 160s /tmp/pytest-of-ubuntu/pytest-8/test_build0/_skbuild/linux-x86_64-3.12/cmake-build 160s Command: 160s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-8/test_build0/hello -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-8/test_build0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 160s 160s 160s copying hello/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py 160s copying hello/__main__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__main__.py 160s 160s ----------------------------- Captured stderr call ----------------------------- 160s hint: Using 'master' as the name for the initial branch. This default branch name 160s hint: is subject to change. To configure the initial branch name to use in all 160s hint: of your new repositories, which will suppress this warning, call: 160s hint: 160s hint: git config --global init.defaultBranch 160s hint: 160s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 160s hint: 'development'. The just-created branch can be renamed via this command: 160s hint: 160s hint: git branch -m 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 160s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 160s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 160s the cmake_policy command to set the policy and suppress this warning. 160s 160s Call Stack (most recent call first): 160s CMakeLists.txt:5 (find_package) 160s This warning is for project developers. Use -Wno-dev to suppress it. 160s 160s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 160s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 160s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 160s the cmake_policy command to set the policy and suppress this warning. 160s 160s Call Stack (most recent call first): 160s CMakeLists.txt:5 (find_package) 160s This warning is for project developers. Use -Wno-dev to suppress it. 160s 160s _modinit_prefix:PyInit_ 160s ------------------------------ Captured log call ------------------------------- 160s INFO root:dist.py:986 running build 160s INFO root:dist.py:986 running build_py 160s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 160s ________________________ test_hide_listing[True-sdist] _________________________ 160s 160s action = 'sdist', hide_listing = True 160s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe04a59be0> 160s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe04bce8a0> 160s 160s @pytest.mark.parametrize("action", ["sdist", "bdist_wheel"]) 160s @pytest.mark.parametrize("hide_listing", [True, False]) 160s def test_hide_listing(action, hide_listing, capfd, caplog): 160s cmd = [action] 160s if hide_listing: 160s cmd.insert(0, "--hide-listing") 160s 160s @project_setup_py_test("test-hide-listing", cmd, verbose_git=False, disable_languages_test=True) 160s def run(): 160s pass 160s 160s > run() 160s 160s action = 'sdist' 160s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe04a59be0> 160s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe04bce8a0> 160s cmd = ['--hide-listing', 'sdist'] 160s hide_listing = True 160s run = .run at 0x7bbe04a9b1a0> 160s 160s tests/test_command_line.py:154: 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s tests/__init__.py:261: in wrapped 160s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 160s disable_languages_test = True 160s fun = .run at 0x7bbe04a9bce0> 160s iargs = () 160s ikwargs = {} 160s ret = False 160s wrapped = .run at 0x7bbe04a9b1a0> 160s /usr/lib/python3.12/contextlib.py:137: in __enter__ 160s return next(self.gen) 160s self = 160s tests/__init__.py:244: in execute_setup_py 160s exec(setup_code) 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = True 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s original_write_test_cmakelist = 160s platform = 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-28/run0') 160s setup = 160s setup_args = ['--hide-listing', 'sdist'] 160s setup_code = at 0x7bbe04a60be0, file "setup.py", line 1> 160s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04bfff60> 160s setup.py:5: in 160s ??? 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = True 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s original_write_test_cmakelist = 160s platform = 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-28/run0') 160s setup = 160s setup_args = ['--hide-listing', 'sdist'] 160s setup_code = at 0x7bbe04a60be0, file "setup.py", line 1> 160s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04bfff60> 160s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 160s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 160s build_ext_inplace = False 160s cmake_args = () 160s cmake_args_from_args = [] 160s cmake_executable = None 160s cmake_install_dir = '' 160s cmake_install_target = 'install' 160s cmake_languages = ('C', 'CXX') 160s cmake_minimum_required_version = None 160s cmake_process_manifest_hook = None 160s cmake_source_dir = '' 160s cmake_with_sdist = False 160s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 160s commands = ['sdist'] 160s display_only = False 160s force_cmake = False 160s has_cmakelists = True 160s has_invalid_arguments = False 160s help_commands = 0 160s hide_listing = 1 160s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 160s make_args = [] 160s plat_name = None 160s skip_cmake = False 160s skip_generator_test = False 160s skip_skbuild = True 160s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 160s return distutils.core.setup(**attrs) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 160s return run_commands(dist) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 160s dist = 160s klass = 160s ok = True 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 160s dist.run_commands() 160s dist = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 160s self.run_command(cmd) 160s cmd = 'sdist' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'sdist' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'sdist' 160s self = 160s /usr/lib/python3/dist-packages/skbuild/command/sdist.py:39: in run 160s super().run(*args, **kwargs) 160s __class__ = 160s args = () 160s kwargs = {} 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/sdist.py:52: in run 160s self.run_command('egg_info') 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 160s self.distribution.run_command(command) 160s command = 'egg_info' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'egg_info' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'egg_info' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/egg_info.py:306: in run 160s self.mkpath(self.egg_info) 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 160s dir_util.mkpath(name, mode, dry_run=self.dry_run) 160s mode = 511 160s name = 'hello.egg-info' 160s self = 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s 160s name = 'hello.egg-info', mode = 511, verbose = True, dry_run = False 160s 160s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 160s """Create a directory and any missing ancestor directories. 160s 160s If the directory already exists (or if 'name' is the empty string, which 160s means the current directory, which of course exists), then do nothing. 160s Raise DistutilsFileError if unable to create some directory along the way 160s (eg. some sub-path exists, but is a file rather than a directory). 160s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 160s Return the list of directories actually created. 160s 160s os.makedirs is not used because: 160s 160s a) It's new to Python 1.5.2, and 160s b) it blows up if the directory already exists (in which case it should 160s silently succeed). 160s """ 160s 160s global _path_created 160s 160s # Detect a common bug -- name is None 160s if not isinstance(name, str): 160s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 160s 160s # XXX what's the better way to handle verbosity? print as we create 160s # each directory in the path (the current behaviour), or only announce 160s # the creation of the whole path? (quite easy to do the latter since 160s # we're not using a recursive algorithm) 160s 160s name = os.path.normpath(name) 160s created_dirs = [] 160s if os.path.isdir(name) or name == '': 160s return created_dirs 160s if os.path.abspath(name) in _path_created: 160s return created_dirs 160s 160s (head, tail) = os.path.split(name) 160s tails = [tail] # stack of lone dirs to create 160s 160s while head and tail and not os.path.isdir(head): 160s (head, tail) = os.path.split(head) 160s tails.insert(0, tail) # push next higher dir onto stack 160s 160s # now 'head' contains the deepest directory that already exists 160s # (that is, the child of 'head' in 'name' is the highest directory 160s # that does *not* exist) 160s for d in tails: 160s # print "head = %s, d = %s: " % (head, d), 160s head = os.path.join(head, d) 160s abs_head = os.path.abspath(head) 160s 160s if abs_head in _path_created: 160s continue 160s 160s if verbose >= 1: 160s log.info("creating %s", head) 160s 160s if not dry_run: 160s try: 160s os.mkdir(head, mode) 160s except OSError as exc: 160s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 160s raise DistutilsFileError( 160s f"could not create '{head}': {exc.args[-1]}" 160s ) 160s created_dirs.append(head) 160s 160s > _path_created.add(abs_head) 160s E AttributeError: 'dict' object has no attribute 'add' 160s 160s abs_head = '/tmp/pytest-of-ubuntu/pytest-28/run0/hello.egg-info' 160s created_dirs = ['hello.egg-info'] 160s d = 'hello.egg-info' 160s dry_run = False 160s head = 'hello.egg-info' 160s mode = 511 160s name = 'hello.egg-info' 160s tail = 'hello.egg-info' 160s tails = ['hello.egg-info'] 160s verbose = True 160s 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 160s ----------------------------- Captured stderr call ----------------------------- 160s hint: Using 'master' as the name for the initial branch. This default branch name 160s hint: is subject to change. To configure the initial branch name to use in all 160s hint: of your new repositories, which will suppress this warning, call: 160s hint: 160s hint: git config --global init.defaultBranch 160s hint: 160s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 160s hint: 'development'. The just-created branch can be renamed via this command: 160s hint: 160s hint: git branch -m 160s ------------------------------ Captured log call ------------------------------- 160s INFO root:dist.py:986 running sdist 160s INFO root:dist.py:986 running generate_source_manifest 160s INFO root:dist.py:986 running egg_info 160s INFO root:dir_util.py:70 creating hello.egg-info 160s _____________________ test_hide_listing[True-bdist_wheel] ______________________ 160s 160s action = 'bdist_wheel', hide_listing = True 160s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe04bcef00> 160s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe04b7bb30> 160s 160s @pytest.mark.parametrize("action", ["sdist", "bdist_wheel"]) 160s @pytest.mark.parametrize("hide_listing", [True, False]) 160s def test_hide_listing(action, hide_listing, capfd, caplog): 160s cmd = [action] 160s if hide_listing: 160s cmd.insert(0, "--hide-listing") 160s 160s @project_setup_py_test("test-hide-listing", cmd, verbose_git=False, disable_languages_test=True) 160s def run(): 160s pass 160s 160s > run() 160s 160s action = 'bdist_wheel' 160s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe04bcef00> 160s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe04b7bb30> 160s cmd = ['--hide-listing', 'bdist_wheel'] 160s hide_listing = True 160s run = .run at 0x7bbe04a9b380> 160s 160s tests/test_command_line.py:154: 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s tests/__init__.py:261: in wrapped 160s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 160s disable_languages_test = True 160s fun = .run at 0x7bbe04a9ae80> 160s iargs = () 160s ikwargs = {} 160s ret = False 160s wrapped = .run at 0x7bbe04a9b380> 160s /usr/lib/python3.12/contextlib.py:137: in __enter__ 160s return next(self.gen) 160s self = 160s tests/__init__.py:244: in execute_setup_py 160s exec(setup_code) 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = True 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s original_write_test_cmakelist = 160s platform = 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-29/run0') 160s setup = 160s setup_args = ['--hide-listing', 'bdist_wheel'] 160s setup_code = at 0x7bbe04a62560, file "setup.py", line 1> 160s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04a9a7a0> 160s setup.py:5: in 160s ??? 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = True 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s original_write_test_cmakelist = 160s platform = 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-29/run0') 160s setup = 160s setup_args = ['--hide-listing', 'bdist_wheel'] 160s setup_code = at 0x7bbe04a62560, file "setup.py", line 1> 160s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04a9a7a0> 160s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 160s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 160s BinaryDistribution = .BinaryDistribution'> 160s build_ext_inplace = False 160s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 160s cmake_args_from_args = [] 160s cmake_executable = '/usr/bin/cmake' 160s cmake_install_dir = '' 160s cmake_install_target = 'install' 160s cmake_install_target_from_command = '' 160s cmake_install_target_from_setup = 'install' 160s cmake_languages = ('C', 'CXX') 160s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/helloModule.py', '_skbuild/linux-x86_64-3.12/cmake-install/hello/world.py'] 160s cmake_minimum_required_version = None 160s cmake_process_manifest_hook = None 160s cmake_source_dir = '' 160s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 160s cmake_with_sdist = False 160s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 160s cmkr = 160s commands = ['bdist_wheel'] 160s config_type = 'Release' 160s data_files = {} 160s developer_mode = False 160s display_only = False 160s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 160s env_cmake_args = [] 160s force_cmake = False 160s has_cmakelists = True 160s has_invalid_arguments = False 160s help_commands = 0 160s hide_listing = 1 160s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s make_args = ['--config', 'Release'] 160s new_py_modules = {'bonjourModule': False, 'helloModule': True} 160s new_scripts = {} 160s original_manifestin_data_files = [] 160s original_package_data = {'bonjour': ['data/*.txt', 'data/terre.txt']} 160s package = 'hello' 160s package_data = {'': ['bonjourModule.py', 'helloModule.py'], 'bonjour': ['data/*.txt', 'data/terre.txt', '__init__.py'], 'hello': ['world.py', '__init__.py', '__main__.py']} 160s package_dir = {'bonjour': 'bonjour', 'hello': 'hello'} 160s package_prefixes = [('bonjour', 'bonjour'), ('hello', 'hello')] 160s packages = ['bonjour', 'hello'] 160s plat_name = None 160s process_manifest = None 160s py_modules = ['bonjourModule', 'helloModule'] 160s scripts = [] 160s skip_cmake = False 160s skip_generator_test = False 160s skip_skbuild = False 160s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 160s return distutils.core.setup(**attrs) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 160s return run_commands(dist) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s dist = .BinaryDistribution object at 0x7bbe04ae6060> 160s klass = .BinaryDistribution'> 160s ok = True 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 160s dist.run_commands() 160s dist = .BinaryDistribution object at 0x7bbe04ae6060> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 160s self.run_command(cmd) 160s cmd = 'bdist_wheel' 160s self = .BinaryDistribution object at 0x7bbe04ae6060> 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'bdist_wheel' 160s self = .BinaryDistribution object at 0x7bbe04ae6060> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'bdist_wheel' 160s self = .BinaryDistribution object at 0x7bbe04ae6060> 160s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 160s super().run(*args, **kwargs) 160s __class__ = 160s args = () 160s kwargs = {} 160s old_write_files = 160s self = 160s update_write_files = .update_write_files at 0x7bbe04ef0360> 160s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 160s self.run_command("build") 160s build_ext = 160s build_scripts = 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 160s self.distribution.run_command(command) 160s command = 'build' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe04ae6060> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe04ae6060> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 160s self.run_command(cmd_name) 160s cmd_name = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 160s self.distribution.run_command(command) 160s command = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe04ae6060> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe04ae6060> 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 160s super().run(*args, **kwargs) 160s __class__ = 160s args = () 160s kwargs = {} 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 160s self.build_modules() 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 160s self.build_module(module, module_file, package) 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s modules = [('', 'bonjourModule', '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py'), ('', 'helloModule', '_skbuild/linux-x86_64-3.12/cmake-install/helloModule.py')] 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 160s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 160s __class__ = 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 160s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 160s self.mkpath(dir) 160s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/bonjourModule.py' 160s package = [''] 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 160s dir_util.mkpath(name, mode, dry_run=self.dry_run) 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s self = 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s mode = 511, verbose = True, dry_run = False 160s 160s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 160s """Create a directory and any missing ancestor directories. 160s 160s If the directory already exists (or if 'name' is the empty string, which 160s means the current directory, which of course exists), then do nothing. 160s Raise DistutilsFileError if unable to create some directory along the way 160s (eg. some sub-path exists, but is a file rather than a directory). 160s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 160s Return the list of directories actually created. 160s 160s os.makedirs is not used because: 160s 160s a) It's new to Python 1.5.2, and 160s b) it blows up if the directory already exists (in which case it should 160s silently succeed). 160s """ 160s 160s global _path_created 160s 160s # Detect a common bug -- name is None 160s if not isinstance(name, str): 160s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 160s 160s # XXX what's the better way to handle verbosity? print as we create 160s # each directory in the path (the current behaviour), or only announce 160s # the creation of the whole path? (quite easy to do the latter since 160s # we're not using a recursive algorithm) 160s 160s name = os.path.normpath(name) 160s created_dirs = [] 160s if os.path.isdir(name) or name == '': 160s return created_dirs 160s if os.path.abspath(name) in _path_created: 160s return created_dirs 160s 160s (head, tail) = os.path.split(name) 160s tails = [tail] # stack of lone dirs to create 160s 160s while head and tail and not os.path.isdir(head): 160s (head, tail) = os.path.split(head) 160s tails.insert(0, tail) # push next higher dir onto stack 160s 160s # now 'head' contains the deepest directory that already exists 160s # (that is, the child of 'head' in 'name' is the highest directory 160s # that does *not* exist) 160s for d in tails: 160s # print "head = %s, d = %s: " % (head, d), 160s head = os.path.join(head, d) 160s abs_head = os.path.abspath(head) 160s 160s if abs_head in _path_created: 160s continue 160s 160s if verbose >= 1: 160s log.info("creating %s", head) 160s 160s if not dry_run: 160s try: 160s os.mkdir(head, mode) 160s except OSError as exc: 160s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 160s raise DistutilsFileError( 160s f"could not create '{head}': {exc.args[-1]}" 160s ) 160s created_dirs.append(head) 160s 160s > _path_created.add(abs_head) 160s E AttributeError: 'dict' object has no attribute 'add' 160s 160s abs_head = '/tmp/pytest-of-ubuntu/pytest-29/run0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 160s d = 'lib.linux-x86_64-cpython-312' 160s dry_run = False 160s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s tail = 'lib.linux-x86_64-cpython-312' 160s tails = ['lib.linux-x86_64-cpython-312'] 160s verbose = True 160s 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 160s ----------------------------- Captured stdout call ----------------------------- 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Ninja' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- Configuring incomplete, errors occurred! 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Ninja' generator - failure 160s -------------------------------------------------------------------------------- 160s 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Unix Makefiles' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- Configuring done (0.0s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-29/run0/_cmake_test_compile/build 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Unix Makefiles' generator - success 160s -------------------------------------------------------------------------------- 160s 160s Configuring Project 160s Working directory: 160s /tmp/pytest-of-ubuntu/pytest-29/run0/_skbuild/linux-x86_64-3.12/cmake-build 160s Command: 160s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-29/run0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-29/run0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 160s 160s Not searching for unused variables given on the command line. 160s -- Configuring done (0.0s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-29/run0/_skbuild/linux-x86_64-3.12/cmake-build 160s Install the project... 160s -- Install configuration: "Release" 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-29/run0/_skbuild/linux-x86_64-3.12/cmake-install/./helloModule.py 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-29/run0/_skbuild/linux-x86_64-3.12/cmake-install/hello/world.py 160s 160s 160s ----------------------------- Captured stderr call ----------------------------- 160s hint: Using 'master' as the name for the initial branch. This default branch name 160s hint: is subject to change. To configure the initial branch name to use in all 160s hint: of your new repositories, which will suppress this warning, call: 160s hint: 160s hint: git config --global init.defaultBranch 160s hint: 160s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 160s hint: 'development'. The just-created branch can be renamed via this command: 160s hint: 160s hint: git branch -m 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s ------------------------------ Captured log call ------------------------------- 160s INFO root:dist.py:986 running bdist_wheel 160s INFO root:dist.py:986 running build 160s INFO root:dist.py:986 running build_py 160s ________________________ test_hide_listing[False-sdist] ________________________ 160s 160s action = 'sdist', hide_listing = False 160s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe04a26420> 160s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe04ae6720> 160s 160s @pytest.mark.parametrize("action", ["sdist", "bdist_wheel"]) 160s @pytest.mark.parametrize("hide_listing", [True, False]) 160s def test_hide_listing(action, hide_listing, capfd, caplog): 160s cmd = [action] 160s if hide_listing: 160s cmd.insert(0, "--hide-listing") 160s 160s @project_setup_py_test("test-hide-listing", cmd, verbose_git=False, disable_languages_test=True) 160s def run(): 160s pass 160s 160s > run() 160s 160s action = 'sdist' 160s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe04a26420> 160s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe04ae6720> 160s cmd = ['sdist'] 160s hide_listing = False 160s run = .run at 0x7bbe04a9bb00> 160s 160s tests/test_command_line.py:154: 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s tests/__init__.py:261: in wrapped 160s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 160s disable_languages_test = True 160s fun = .run at 0x7bbe04a9b240> 160s iargs = () 160s ikwargs = {} 160s ret = False 160s wrapped = .run at 0x7bbe04a9bb00> 160s /usr/lib/python3.12/contextlib.py:137: in __enter__ 160s return next(self.gen) 160s self = 160s tests/__init__.py:244: in execute_setup_py 160s exec(setup_code) 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = True 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s original_write_test_cmakelist = 160s platform = 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-30/run0') 160s setup = 160s setup_args = ['sdist'] 160s setup_code = at 0x7bbe04a60690, file "setup.py", line 1> 160s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04a9b880> 160s setup.py:5: in 160s ??? 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = True 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s original_write_test_cmakelist = 160s platform = 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-30/run0') 160s setup = 160s setup_args = ['sdist'] 160s setup_code = at 0x7bbe04a60690, file "setup.py", line 1> 160s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04a9b880> 160s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 160s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 160s build_ext_inplace = False 160s cmake_args = () 160s cmake_args_from_args = [] 160s cmake_executable = None 160s cmake_install_dir = '' 160s cmake_install_target = 'install' 160s cmake_languages = ('C', 'CXX') 160s cmake_minimum_required_version = None 160s cmake_process_manifest_hook = None 160s cmake_source_dir = '' 160s cmake_with_sdist = False 160s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 160s commands = ['sdist'] 160s display_only = False 160s force_cmake = False 160s has_cmakelists = True 160s has_invalid_arguments = False 160s help_commands = 0 160s hide_listing = False 160s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 160s make_args = [] 160s plat_name = None 160s skip_cmake = False 160s skip_generator_test = False 160s skip_skbuild = True 160s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 160s return distutils.core.setup(**attrs) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 160s return run_commands(dist) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 160s dist = 160s klass = 160s ok = True 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 160s dist.run_commands() 160s dist = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 160s self.run_command(cmd) 160s cmd = 'sdist' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'sdist' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'sdist' 160s self = 160s /usr/lib/python3/dist-packages/skbuild/command/sdist.py:39: in run 160s super().run(*args, **kwargs) 160s __class__ = 160s args = () 160s kwargs = {} 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/sdist.py:52: in run 160s self.run_command('egg_info') 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 160s self.distribution.run_command(command) 160s command = 'egg_info' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'egg_info' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'egg_info' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/egg_info.py:306: in run 160s self.mkpath(self.egg_info) 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 160s dir_util.mkpath(name, mode, dry_run=self.dry_run) 160s mode = 511 160s name = 'hello.egg-info' 160s self = 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s 160s name = 'hello.egg-info', mode = 511, verbose = True, dry_run = False 160s 160s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 160s """Create a directory and any missing ancestor directories. 160s 160s If the directory already exists (or if 'name' is the empty string, which 160s means the current directory, which of course exists), then do nothing. 160s Raise DistutilsFileError if unable to create some directory along the way 160s (eg. some sub-path exists, but is a file rather than a directory). 160s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 160s Return the list of directories actually created. 160s 160s os.makedirs is not used because: 160s 160s a) It's new to Python 1.5.2, and 160s b) it blows up if the directory already exists (in which case it should 160s silently succeed). 160s """ 160s 160s global _path_created 160s 160s # Detect a common bug -- name is None 160s if not isinstance(name, str): 160s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 160s 160s # XXX what's the better way to handle verbosity? print as we create 160s # each directory in the path (the current behaviour), or only announce 160s # the creation of the whole path? (quite easy to do the latter since 160s # we're not using a recursive algorithm) 160s 160s name = os.path.normpath(name) 160s created_dirs = [] 160s if os.path.isdir(name) or name == '': 160s return created_dirs 160s if os.path.abspath(name) in _path_created: 160s return created_dirs 160s 160s (head, tail) = os.path.split(name) 160s tails = [tail] # stack of lone dirs to create 160s 160s while head and tail and not os.path.isdir(head): 160s (head, tail) = os.path.split(head) 160s tails.insert(0, tail) # push next higher dir onto stack 160s 160s # now 'head' contains the deepest directory that already exists 160s # (that is, the child of 'head' in 'name' is the highest directory 160s # that does *not* exist) 160s for d in tails: 160s # print "head = %s, d = %s: " % (head, d), 160s head = os.path.join(head, d) 160s abs_head = os.path.abspath(head) 160s 160s if abs_head in _path_created: 160s continue 160s 160s if verbose >= 1: 160s log.info("creating %s", head) 160s 160s if not dry_run: 160s try: 160s os.mkdir(head, mode) 160s except OSError as exc: 160s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 160s raise DistutilsFileError( 160s f"could not create '{head}': {exc.args[-1]}" 160s ) 160s created_dirs.append(head) 160s 160s > _path_created.add(abs_head) 160s E AttributeError: 'dict' object has no attribute 'add' 160s 160s abs_head = '/tmp/pytest-of-ubuntu/pytest-30/run0/hello.egg-info' 160s created_dirs = ['hello.egg-info'] 160s d = 'hello.egg-info' 160s dry_run = False 160s head = 'hello.egg-info' 160s mode = 511 160s name = 'hello.egg-info' 160s tail = 'hello.egg-info' 160s tails = ['hello.egg-info'] 160s verbose = True 160s 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 160s ----------------------------- Captured stderr call ----------------------------- 160s hint: Using 'master' as the name for the initial branch. This default branch name 160s hint: is subject to change. To configure the initial branch name to use in all 160s hint: of your new repositories, which will suppress this warning, call: 160s hint: 160s hint: git config --global init.defaultBranch 160s hint: 160s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 160s hint: 'development'. The just-created branch can be renamed via this command: 160s hint: 160s hint: git branch -m 160s ------------------------------ Captured log call ------------------------------- 160s INFO root:dist.py:986 running sdist 160s INFO root:dist.py:986 running generate_source_manifest 160s INFO root:dist.py:986 running egg_info 160s INFO root:dir_util.py:70 creating hello.egg-info 160s _____________________ test_hide_listing[False-bdist_wheel] _____________________ 160s 160s action = 'bdist_wheel', hide_listing = False 160s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe04a50d70> 160s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe04a26780> 160s 160s @pytest.mark.parametrize("action", ["sdist", "bdist_wheel"]) 160s @pytest.mark.parametrize("hide_listing", [True, False]) 160s def test_hide_listing(action, hide_listing, capfd, caplog): 160s cmd = [action] 160s if hide_listing: 160s cmd.insert(0, "--hide-listing") 160s 160s @project_setup_py_test("test-hide-listing", cmd, verbose_git=False, disable_languages_test=True) 160s def run(): 160s pass 160s 160s > run() 160s 160s action = 'bdist_wheel' 160s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe04a50d70> 160s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe04a26780> 160s cmd = ['bdist_wheel'] 160s hide_listing = False 160s run = .run at 0x7bbe04ef0400> 160s 160s tests/test_command_line.py:154: 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s tests/__init__.py:261: in wrapped 160s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 160s disable_languages_test = True 160s fun = .run at 0x7bbe04cc9e40> 160s iargs = () 160s ikwargs = {} 160s ret = False 160s wrapped = .run at 0x7bbe04ef0400> 160s /usr/lib/python3.12/contextlib.py:137: in __enter__ 160s return next(self.gen) 160s self = 160s tests/__init__.py:244: in execute_setup_py 160s exec(setup_code) 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = True 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s original_write_test_cmakelist = 160s platform = 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-31/run0') 160s setup = 160s setup_args = ['bdist_wheel'] 160s setup_code = at 0x7bbe04a618a0, file "setup.py", line 1> 160s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04a98a40> 160s setup.py:5: in 160s ??? 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = True 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s original_write_test_cmakelist = 160s platform = 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-31/run0') 160s setup = 160s setup_args = ['bdist_wheel'] 160s setup_code = at 0x7bbe04a618a0, file "setup.py", line 1> 160s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04a98a40> 160s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 160s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 160s BinaryDistribution = .BinaryDistribution'> 160s build_ext_inplace = False 160s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 160s cmake_args_from_args = [] 160s cmake_executable = '/usr/bin/cmake' 160s cmake_install_dir = '' 160s cmake_install_target = 'install' 160s cmake_install_target_from_command = '' 160s cmake_install_target_from_setup = 'install' 160s cmake_languages = ('C', 'CXX') 160s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/helloModule.py', '_skbuild/linux-x86_64-3.12/cmake-install/hello/world.py'] 160s cmake_minimum_required_version = None 160s cmake_process_manifest_hook = None 160s cmake_source_dir = '' 160s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 160s cmake_with_sdist = False 160s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 160s cmkr = 160s commands = ['bdist_wheel'] 160s config_type = 'Release' 160s data_files = {} 160s developer_mode = False 160s display_only = False 160s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 160s env_cmake_args = [] 160s force_cmake = False 160s has_cmakelists = True 160s has_invalid_arguments = False 160s help_commands = 0 160s hide_listing = False 160s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s make_args = ['--config', 'Release'] 160s new_py_modules = {'bonjourModule': False, 'helloModule': True} 160s new_scripts = {} 160s original_manifestin_data_files = [] 160s original_package_data = {'bonjour': ['data/*.txt', 'data/terre.txt']} 160s package = 'hello' 160s package_data = {'': ['bonjourModule.py', 'helloModule.py'], 'bonjour': ['data/*.txt', 'data/terre.txt', '__init__.py'], 'hello': ['world.py', '__init__.py', '__main__.py']} 160s package_dir = {'bonjour': 'bonjour', 'hello': 'hello'} 160s package_prefixes = [('bonjour', 'bonjour'), ('hello', 'hello')] 160s packages = ['bonjour', 'hello'] 160s plat_name = None 160s process_manifest = None 160s py_modules = ['bonjourModule', 'helloModule'] 160s scripts = [] 160s skip_cmake = False 160s skip_generator_test = False 160s skip_skbuild = False 160s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 160s return distutils.core.setup(**attrs) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 160s return run_commands(dist) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s dist = .BinaryDistribution object at 0x7bbe04ae6390> 160s klass = .BinaryDistribution'> 160s ok = True 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 160s dist.run_commands() 160s dist = .BinaryDistribution object at 0x7bbe04ae6390> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 160s self.run_command(cmd) 160s cmd = 'bdist_wheel' 160s self = .BinaryDistribution object at 0x7bbe04ae6390> 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'bdist_wheel' 160s self = .BinaryDistribution object at 0x7bbe04ae6390> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'bdist_wheel' 160s self = .BinaryDistribution object at 0x7bbe04ae6390> 160s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 160s super().run(*args, **kwargs) 160s __class__ = 160s args = () 160s kwargs = {} 160s old_write_files = 160s self = 160s update_write_files = .update_write_files at 0x7bbe04a9af20> 160s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 160s self.run_command("build") 160s build_ext = 160s build_scripts = 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 160s self.distribution.run_command(command) 160s command = 'build' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe04ae6390> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe04ae6390> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 160s self.run_command(cmd_name) 160s cmd_name = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 160s self.distribution.run_command(command) 160s command = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe04ae6390> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe04ae6390> 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 160s super().run(*args, **kwargs) 160s __class__ = 160s args = () 160s kwargs = {} 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 160s self.build_modules() 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 160s self.build_module(module, module_file, package) 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s modules = [('', 'bonjourModule', '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py'), ('', 'helloModule', '_skbuild/linux-x86_64-3.12/cmake-install/helloModule.py')] 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 160s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 160s __class__ = 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 160s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 160s self.mkpath(dir) 160s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/bonjourModule.py' 160s package = [''] 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 160s dir_util.mkpath(name, mode, dry_run=self.dry_run) 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s self = 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s mode = 511, verbose = True, dry_run = False 160s 160s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 160s """Create a directory and any missing ancestor directories. 160s 160s If the directory already exists (or if 'name' is the empty string, which 160s means the current directory, which of course exists), then do nothing. 160s Raise DistutilsFileError if unable to create some directory along the way 160s (eg. some sub-path exists, but is a file rather than a directory). 160s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 160s Return the list of directories actually created. 160s 160s os.makedirs is not used because: 160s 160s a) It's new to Python 1.5.2, and 160s b) it blows up if the directory already exists (in which case it should 160s silently succeed). 160s """ 160s 160s global _path_created 160s 160s # Detect a common bug -- name is None 160s if not isinstance(name, str): 160s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 160s 160s # XXX what's the better way to handle verbosity? print as we create 160s # each directory in the path (the current behaviour), or only announce 160s # the creation of the whole path? (quite easy to do the latter since 160s # we're not using a recursive algorithm) 160s 160s name = os.path.normpath(name) 160s created_dirs = [] 160s if os.path.isdir(name) or name == '': 160s return created_dirs 160s if os.path.abspath(name) in _path_created: 160s return created_dirs 160s 160s (head, tail) = os.path.split(name) 160s tails = [tail] # stack of lone dirs to create 160s 160s while head and tail and not os.path.isdir(head): 160s (head, tail) = os.path.split(head) 160s tails.insert(0, tail) # push next higher dir onto stack 160s 160s # now 'head' contains the deepest directory that already exists 160s # (that is, the child of 'head' in 'name' is the highest directory 160s # that does *not* exist) 160s for d in tails: 160s # print "head = %s, d = %s: " % (head, d), 160s head = os.path.join(head, d) 160s abs_head = os.path.abspath(head) 160s 160s if abs_head in _path_created: 160s continue 160s 160s if verbose >= 1: 160s log.info("creating %s", head) 160s 160s if not dry_run: 160s try: 160s os.mkdir(head, mode) 160s except OSError as exc: 160s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 160s raise DistutilsFileError( 160s f"could not create '{head}': {exc.args[-1]}" 160s ) 160s created_dirs.append(head) 160s 160s > _path_created.add(abs_head) 160s E AttributeError: 'dict' object has no attribute 'add' 160s 160s abs_head = '/tmp/pytest-of-ubuntu/pytest-31/run0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 160s d = 'lib.linux-x86_64-cpython-312' 160s dry_run = False 160s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s tail = 'lib.linux-x86_64-cpython-312' 160s tails = ['lib.linux-x86_64-cpython-312'] 160s verbose = True 160s 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 160s ----------------------------- Captured stdout call ----------------------------- 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Ninja' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- Configuring incomplete, errors occurred! 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Ninja' generator - failure 160s -------------------------------------------------------------------------------- 160s 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Unix Makefiles' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- Configuring done (0.0s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-31/run0/_cmake_test_compile/build 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Unix Makefiles' generator - success 160s -------------------------------------------------------------------------------- 160s 160s Configuring Project 160s Working directory: 160s /tmp/pytest-of-ubuntu/pytest-31/run0/_skbuild/linux-x86_64-3.12/cmake-build 160s Command: 160s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-31/run0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-31/run0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 160s 160s Not searching for unused variables given on the command line. 160s -- Configuring done (0.0s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-31/run0/_skbuild/linux-x86_64-3.12/cmake-build 160s Install the project... 160s -- Install configuration: "Release" 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-31/run0/_skbuild/linux-x86_64-3.12/cmake-install/./helloModule.py 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-31/run0/_skbuild/linux-x86_64-3.12/cmake-install/hello/world.py 160s 160s copying bonjourModule.py -> _skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py 160s creating directory _skbuild/linux-x86_64-3.12/cmake-install/bonjour 160s copying bonjour/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/__init__.py 160s copying hello/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py 160s copying hello/__main__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__main__.py 160s creating directory _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data 160s copying /tmp/pytest-of-ubuntu/pytest-31/run0/bonjour/data/soleil.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/soleil.txt 160s copying /tmp/pytest-of-ubuntu/pytest-31/run0/bonjour/data/ciel.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/ciel.txt 160s copying /tmp/pytest-of-ubuntu/pytest-31/run0/bonjour/data/terre.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/terre.txt 160s copying /tmp/pytest-of-ubuntu/pytest-31/run0/bonjour/data/terre.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/terre.txt 160s 160s ----------------------------- Captured stderr call ----------------------------- 160s hint: Using 'master' as the name for the initial branch. This default branch name 160s hint: is subject to change. To configure the initial branch name to use in all 160s hint: of your new repositories, which will suppress this warning, call: 160s hint: 160s hint: git config --global init.defaultBranch 160s hint: 160s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 160s hint: 'development'. The just-created branch can be renamed via this command: 160s hint: 160s hint: git branch -m 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s ------------------------------ Captured log call ------------------------------- 160s INFO root:dist.py:986 running bdist_wheel 160s INFO root:dist.py:986 running build 160s INFO root:dist.py:986 running build_py 160s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 160s ___________________________ test_hello_cython_builds ___________________________ 160s 160s iargs = (), ikwargs = {} 160s 160s @functools.wraps(fun) 160s def wrapped(*iargs, **ikwargs): 160s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 160s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 160s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 160s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 160s 160s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 160s 160s disable_languages_test = False 160s fun = 160s iargs = () 160s ikwargs = {} 160s ret = False 160s wrapped = 160s 160s tests/__init__.py:261: 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s /usr/lib/python3.12/contextlib.py:137: in __enter__ 160s return next(self.gen) 160s self = 160s tests/__init__.py:247: in execute_setup_py 160s exec(setup_code) 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = False 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0') 160s setup = 160s setup_args = ['build'] 160s setup_code = at 0x7bbe04be8130, file "setup.py", line 1> 160s setup.py:5: in 160s ??? 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = False 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0') 160s setup = 160s setup_args = ['build'] 160s setup_code = at 0x7bbe04be8130, file "setup.py", line 1> 160s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 160s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 160s BinaryDistribution = .BinaryDistribution'> 160s build_ext_inplace = False 160s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 160s cmake_args_from_args = [] 160s cmake_executable = '/usr/bin/cmake' 160s cmake_install_dir = '' 160s cmake_install_target = 'install' 160s cmake_install_target_from_command = '' 160s cmake_install_target_from_setup = 'install' 160s cmake_languages = ('C', 'CXX') 160s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so'] 160s cmake_minimum_required_version = None 160s cmake_process_manifest_hook = None 160s cmake_source_dir = '' 160s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 160s cmake_with_sdist = False 160s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 160s cmkr = 160s commands = ['build'] 160s config_type = 'Release' 160s data_files = {} 160s developer_mode = False 160s display_only = False 160s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 160s env_cmake_args = [] 160s force_cmake = False 160s has_cmakelists = True 160s has_invalid_arguments = False 160s help_commands = 0 160s hide_listing = False 160s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cython version)', ...} 160s make_args = ['--config', 'Release'] 160s new_py_modules = {} 160s new_scripts = {} 160s original_manifestin_data_files = [] 160s original_package_data = {} 160s package = 'cython_flags' 160s package_data = {'cython_flags': ['_hello.cpython-312-x86_64-linux-gnu.so', 'hello/__init__.py', 'hello/__main__.py']} 160s package_dir = {'cython_flags': 'hello'} 160s package_prefixes = [('hello', 'cython_flags')] 160s packages = ['cython_flags'] 160s plat_name = None 160s prefix = 'hello' 160s process_manifest = None 160s py_modules = [] 160s scripts = [] 160s skip_cmake = False 160s skip_generator_test = False 160s skip_skbuild = False 160s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 160s return distutils.core.setup(**attrs) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cython version)', ...} 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 160s return run_commands(dist) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cython version)', ...} 160s dist = .BinaryDistribution object at 0x7bbe04aee120> 160s klass = .BinaryDistribution'> 160s ok = True 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 160s dist.run_commands() 160s dist = .BinaryDistribution object at 0x7bbe04aee120> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 160s self.run_command(cmd) 160s cmd = 'build' 160s self = .BinaryDistribution object at 0x7bbe04aee120> 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe04aee120> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe04aee120> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 160s self.run_command(cmd_name) 160s cmd_name = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 160s self.distribution.run_command(command) 160s command = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe04aee120> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe04aee120> 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 160s super().run(*args, **kwargs) 160s __class__ = 160s args = () 160s kwargs = {} 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 160s self.build_packages() 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 160s self.build_module(module, module_file, package) 160s module = '__init__' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 160s modules = [('cython_flags', '__init__', '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py'), ('cython_flags', '__main__', '_skbuild/linux-x86_64-3.12/cmake-install/hello/__main__.py')] 160s package = 'cython_flags' 160s package_ = 'cython_flags' 160s package_dir = '_skbuild/linux-x86_64-3.12/cmake-install/hello' 160s self = 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 160s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 160s __class__ = 160s module = '__init__' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 160s package = 'cython_flags' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 160s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 160s module = '__init__' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 160s package = 'cython_flags' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 160s self.mkpath(dir) 160s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/cython_flags' 160s module = '__init__' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 160s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/cython_flags/__init__.py' 160s package = ['cython_flags'] 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 160s dir_util.mkpath(name, mode, dry_run=self.dry_run) 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/cython_flags' 160s self = 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/cython_flags' 160s mode = 511, verbose = True, dry_run = False 160s 160s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 160s """Create a directory and any missing ancestor directories. 160s 160s If the directory already exists (or if 'name' is the empty string, which 160s means the current directory, which of course exists), then do nothing. 160s Raise DistutilsFileError if unable to create some directory along the way 160s (eg. some sub-path exists, but is a file rather than a directory). 160s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 160s Return the list of directories actually created. 160s 160s os.makedirs is not used because: 160s 160s a) It's new to Python 1.5.2, and 160s b) it blows up if the directory already exists (in which case it should 160s silently succeed). 160s """ 160s 160s global _path_created 160s 160s # Detect a common bug -- name is None 160s if not isinstance(name, str): 160s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 160s 160s # XXX what's the better way to handle verbosity? print as we create 160s # each directory in the path (the current behaviour), or only announce 160s # the creation of the whole path? (quite easy to do the latter since 160s # we're not using a recursive algorithm) 160s 160s name = os.path.normpath(name) 160s created_dirs = [] 160s if os.path.isdir(name) or name == '': 160s return created_dirs 160s if os.path.abspath(name) in _path_created: 160s return created_dirs 160s 160s (head, tail) = os.path.split(name) 160s tails = [tail] # stack of lone dirs to create 160s 160s while head and tail and not os.path.isdir(head): 160s (head, tail) = os.path.split(head) 160s tails.insert(0, tail) # push next higher dir onto stack 160s 160s # now 'head' contains the deepest directory that already exists 160s # (that is, the child of 'head' in 'name' is the highest directory 160s # that does *not* exist) 160s for d in tails: 160s # print "head = %s, d = %s: " % (head, d), 160s head = os.path.join(head, d) 160s abs_head = os.path.abspath(head) 160s 160s if abs_head in _path_created: 160s continue 160s 160s if verbose >= 1: 160s log.info("creating %s", head) 160s 160s if not dry_run: 160s try: 160s os.mkdir(head, mode) 160s except OSError as exc: 160s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 160s raise DistutilsFileError( 160s f"could not create '{head}': {exc.args[-1]}" 160s ) 160s created_dirs.append(head) 160s 160s > _path_created.add(abs_head) 160s E AttributeError: 'dict' object has no attribute 'add' 160s 160s abs_head = '/tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 160s d = 'lib.linux-x86_64-cpython-312' 160s dry_run = False 160s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/cython_flags' 160s tail = 'lib.linux-x86_64-cpython-312' 160s tails = ['lib.linux-x86_64-cpython-312', 'cython_flags'] 160s verbose = True 160s 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 160s ----------------------------- Captured stdout call ----------------------------- 160s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0/.git/ 160s [master (root-commit) 9b8d49d] Initial commit 160s 6 files changed, 40 insertions(+) 160s create mode 100644 CMakeLists.txt 160s create mode 100644 hello/CMakeLists.txt 160s create mode 100644 hello/__init__.py 160s create mode 100644 hello/__main__.py 160s create mode 100644 hello/_hello.pyx 160s create mode 100644 setup.py 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Ninja' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- Configuring incomplete, errors occurred! 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Ninja' generator - failure 160s -------------------------------------------------------------------------------- 160s 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Unix Makefiles' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- The C compiler identification is GNU 14.1.0 160s -- Detecting C compiler ABI info 160s -- Detecting C compiler ABI info - done 160s -- Check for working C compiler: /usr/bin/cc - skipped 160s -- Detecting C compile features 160s -- Detecting C compile features - done 160s -- The CXX compiler identification is GNU 14.1.0 160s -- Detecting CXX compiler ABI info 160s -- Detecting CXX compiler ABI info - done 160s -- Check for working CXX compiler: /usr/bin/c++ - skipped 160s -- Detecting CXX compile features 160s -- Detecting CXX compile features - done 160s -- Configuring done (0.5s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0/_cmake_test_compile/build 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Unix Makefiles' generator - success 160s -------------------------------------------------------------------------------- 160s 160s Configuring Project 160s Working directory: 160s /tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0/_skbuild/linux-x86_64-3.12/cmake-build 160s Command: 160s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 160s 160s Not searching for unused variables given on the command line. 160s -- The C compiler identification is GNU 14.1.0 160s -- The CXX compiler identification is GNU 14.1.0 160s -- Detecting C compiler ABI info 160s -- Detecting C compiler ABI info - done 160s -- Check for working C compiler: /usr/bin/cc - skipped 160s -- Detecting C compile features 160s -- Detecting C compile features - done 160s -- Detecting CXX compiler ABI info 160s -- Detecting CXX compiler ABI info - done 160s -- Check for working CXX compiler: /usr/bin/c++ - skipped 160s -- Detecting CXX compile features 160s -- Detecting CXX compile features - done 160s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 160s -- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.12.so (found version "3.12.4") 160s -- Found Cython: /usr/bin/cython 160s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 160s -- Configuring done (1.1s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0/_skbuild/linux-x86_64-3.12/cmake-build 160s [ 33%] Generating CXX source hello/_hello.cxx 160s [ 66%] Building CXX object hello/CMakeFiles/_hello.dir/_hello.cxx.o 160s [100%] Linking CXX shared module _hello.cpython-312-x86_64-linux-gnu.so 160s [100%] Built target _hello 160s Install the project... 160s -- Install configuration: "Release" 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0/_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so 160s 160s copying hello/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py 160s copying hello/__main__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__main__.py 160s 160s ----------------------------- Captured stderr call ----------------------------- 160s hint: Using 'master' as the name for the initial branch. This default branch name 160s hint: is subject to change. To configure the initial branch name to use in all 160s hint: of your new repositories, which will suppress this warning, call: 160s hint: 160s hint: git config --global init.defaultBranch 160s hint: 160s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 160s hint: 'development'. The just-created branch can be renamed via this command: 160s hint: 160s hint: git branch -m 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 160s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 160s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 160s the cmake_policy command to set the policy and suppress this warning. 160s 160s Call Stack (most recent call first): 160s CMakeLists.txt:5 (find_package) 160s This warning is for project developers. Use -Wno-dev to suppress it. 160s 160s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 160s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 160s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 160s the cmake_policy command to set the policy and suppress this warning. 160s 160s Call Stack (most recent call first): 160s CMakeLists.txt:5 (find_package) 160s This warning is for project developers. Use -Wno-dev to suppress it. 160s 160s _modinit_prefix:PyInit_ 160s /usr/lib/python3/dist-packages/Cython/Compiler/Main.py:381: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /tmp/pytest-of-ubuntu/pytest-34/test_hello_cython_builds0/hello/_hello.pyx 160s tree = Parsing.p_module(s, pxd, full_module_name) 160s ------------------------------ Captured log call ------------------------------- 160s INFO root:dist.py:986 running build 160s INFO root:dist.py:986 running build_py 160s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 160s ___________________________ test_bdist_wheel_command ___________________________ 160s 160s def test_bdist_wheel_command(): 160s project = "test-filter-manifest" 160s 160s expected_content = [ 160s "hello/__init__.py", 160s "hello/swig_mwe.py", 160s "hello/_swig_mwe.pyd", 160s "hello-1.2.3.data/data/bin/hello", 160s ] 160s 160s expected_distribution_name = "hello-1.2.3" 160s 160s tmp_dir = _tmpdir("test_bdist_wheel_command") 160s prepare_project(project, tmp_dir) 160s initialize_git_repo_and_commit(tmp_dir, verbose=True) 160s 160s relative_setup_path = "wrapping/python/" 160s 160s > with execute_setup_py(tmp_dir.join(relative_setup_path), ["bdist_wheel"]): 160s 160s expected_content = ['hello/__init__.py', 'hello/swig_mwe.py', 'hello/_swig_mwe.pyd', 'hello-1.2.3.data/data/bin/hello'] 160s expected_distribution_name = 'hello-1.2.3' 160s project = 'test-filter-manifest' 160s relative_setup_path = 'wrapping/python/' 160s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0') 160s 160s tests/test_filter_manifest.py:27: 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s /usr/lib/python3.12/contextlib.py:137: in __enter__ 160s return next(self.gen) 160s self = 160s tests/__init__.py:247: in execute_setup_py 160s exec(setup_code) 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = False 160s exclude_dev_files = 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python') 160s setup = 160s setup_args = ['bdist_wheel'] 160s setup_code = at 0x7bbe04a61680, file "setup.py", line 1> 160s setup.py:10: in 160s ??? 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = False 160s exclude_dev_files = 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python') 160s setup = 160s setup_args = ['bdist_wheel'] 160s setup_code = at 0x7bbe04a61680, file "setup.py", line 1> 160s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 160s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 160s BinaryDistribution = .BinaryDistribution'> 160s build_ext_inplace = False 160s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 160s cmake_args_from_args = [] 160s cmake_executable = '/usr/bin/cmake' 160s cmake_install_dir = '' 160s cmake_install_target = 'install' 160s cmake_install_target_from_command = '' 160s cmake_install_target_from_setup = 'install' 160s cmake_languages = ('C', 'CXX') 160s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/bin/hello', '_skbuild/linux-x86_64-3.12/cmake-install/hello/swig_mwe.py', '_skbuild/linux-x86_64-3.12/cmake-install/hello/_swig_mwe.pyd'] 160s cmake_minimum_required_version = None 160s cmake_process_manifest_hook = 160s cmake_source_dir = '../../' 160s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 160s cmake_with_sdist = False 160s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 160s cmkr = 160s commands = ['bdist_wheel'] 160s config_type = 'Release' 160s data_files = {'bin': {'_skbuild/linux-x86_64-3.12/cmake-install/bin/hello'}} 160s developer_mode = False 160s display_only = False 160s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 160s env_cmake_args = [] 160s force_cmake = False 160s has_cmakelists = True 160s has_invalid_arguments = False 160s help_commands = 0 160s hide_listing = False 160s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': 160s py_modules = [] 160s scripts = [] 160s skip_cmake = False 160s skip_generator_test = False 160s skip_skbuild = False 160s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 160s return distutils.core.setup(**attrs) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , 'bdist_wheel': .BinaryDistribution object at 0x7bbe04af4cb0> 160s klass = .BinaryDistribution'> 160s ok = True 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 160s dist.run_commands() 160s dist = .BinaryDistribution object at 0x7bbe04af4cb0> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 160s self.run_command(cmd) 160s cmd = 'bdist_wheel' 160s self = .BinaryDistribution object at 0x7bbe04af4cb0> 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'bdist_wheel' 160s self = .BinaryDistribution object at 0x7bbe04af4cb0> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'bdist_wheel' 160s self = .BinaryDistribution object at 0x7bbe04af4cb0> 160s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 160s super().run(*args, **kwargs) 160s __class__ = 160s args = () 160s kwargs = {} 160s old_write_files = 160s self = 160s update_write_files = .update_write_files at 0x7bbe04c09260> 160s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 160s self.run_command("build") 160s build_ext = 160s build_scripts = 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 160s self.distribution.run_command(command) 160s command = 'build' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe04af4cb0> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe04af4cb0> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 160s self.run_command(cmd_name) 160s cmd_name = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 160s self.distribution.run_command(command) 160s command = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe04af4cb0> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe04af4cb0> 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 160s super().run(*args, **kwargs) 160s __class__ = 160s args = () 160s kwargs = {} 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 160s self.build_packages() 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 160s self.build_module(module, module_file, package) 160s module = 'swig_mwe' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/swig_mwe.py' 160s modules = [('hello', 'swig_mwe', '_skbuild/linux-x86_64-3.12/cmake-install/hello/swig_mwe.py'), ('hello', '__init__', '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py')] 160s package = 'hello' 160s package_ = 'hello' 160s package_dir = '_skbuild/linux-x86_64-3.12/cmake-install/hello' 160s self = 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 160s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 160s __class__ = 160s module = 'swig_mwe' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/swig_mwe.py' 160s package = 'hello' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 160s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 160s module = 'swig_mwe' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/swig_mwe.py' 160s package = 'hello' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 160s self.mkpath(dir) 160s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 160s module = 'swig_mwe' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/swig_mwe.py' 160s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello/swig_mwe.py' 160s package = ['hello'] 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 160s dir_util.mkpath(name, mode, dry_run=self.dry_run) 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 160s self = 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 160s mode = 511, verbose = True, dry_run = False 160s 160s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 160s """Create a directory and any missing ancestor directories. 160s 160s If the directory already exists (or if 'name' is the empty string, which 160s means the current directory, which of course exists), then do nothing. 160s Raise DistutilsFileError if unable to create some directory along the way 160s (eg. some sub-path exists, but is a file rather than a directory). 160s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 160s Return the list of directories actually created. 160s 160s os.makedirs is not used because: 160s 160s a) It's new to Python 1.5.2, and 160s b) it blows up if the directory already exists (in which case it should 160s silently succeed). 160s """ 160s 160s global _path_created 160s 160s # Detect a common bug -- name is None 160s if not isinstance(name, str): 160s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 160s 160s # XXX what's the better way to handle verbosity? print as we create 160s # each directory in the path (the current behaviour), or only announce 160s # the creation of the whole path? (quite easy to do the latter since 160s # we're not using a recursive algorithm) 160s 160s name = os.path.normpath(name) 160s created_dirs = [] 160s if os.path.isdir(name) or name == '': 160s return created_dirs 160s if os.path.abspath(name) in _path_created: 160s return created_dirs 160s 160s (head, tail) = os.path.split(name) 160s tails = [tail] # stack of lone dirs to create 160s 160s while head and tail and not os.path.isdir(head): 160s (head, tail) = os.path.split(head) 160s tails.insert(0, tail) # push next higher dir onto stack 160s 160s # now 'head' contains the deepest directory that already exists 160s # (that is, the child of 'head' in 'name' is the highest directory 160s # that does *not* exist) 160s for d in tails: 160s # print "head = %s, d = %s: " % (head, d), 160s head = os.path.join(head, d) 160s abs_head = os.path.abspath(head) 160s 160s if abs_head in _path_created: 160s continue 160s 160s if verbose >= 1: 160s log.info("creating %s", head) 160s 160s if not dry_run: 160s try: 160s os.mkdir(head, mode) 160s except OSError as exc: 160s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 160s raise DistutilsFileError( 160s f"could not create '{head}': {exc.args[-1]}" 160s ) 160s created_dirs.append(head) 160s 160s > _path_created.add(abs_head) 160s E AttributeError: 'dict' object has no attribute 'add' 160s 160s abs_head = '/tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 160s d = 'lib.linux-x86_64-cpython-312' 160s dry_run = False 160s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 160s tail = 'lib.linux-x86_64-cpython-312' 160s tails = ['lib.linux-x86_64-cpython-312', 'hello'] 160s verbose = True 160s 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 160s ----------------------------- Captured stdout call ----------------------------- 160s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/.git/ 160s [master (root-commit) 16be5f4] Initial commit 160s 4 files changed, 60 insertions(+) 160s create mode 100644 CMakeLists.txt 160s create mode 100644 wrapping/python/CMakeLists.txt 160s create mode 100644 wrapping/python/hello/__init__.py 160s create mode 100644 wrapping/python/setup.py 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Ninja' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- Configuring incomplete, errors occurred! 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Ninja' generator - failure 160s -------------------------------------------------------------------------------- 160s 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Unix Makefiles' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- The C compiler identification is GNU 14.1.0 160s -- Detecting C compiler ABI info 160s -- Detecting C compiler ABI info - done 160s -- Check for working C compiler: /usr/bin/cc - skipped 160s -- Detecting C compile features 160s -- Detecting C compile features - done 160s -- The CXX compiler identification is GNU 14.1.0 160s -- Detecting CXX compiler ABI info 160s -- Detecting CXX compiler ABI info - done 160s -- Check for working CXX compiler: /usr/bin/c++ - skipped 160s -- Detecting CXX compile features 160s -- Detecting CXX compile features - done 160s -- Configuring done (0.4s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_cmake_test_compile/build 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Unix Makefiles' generator - success 160s -------------------------------------------------------------------------------- 160s 160s Configuring Project 160s Working directory: 160s /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-build 160s Command: 160s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 160s 160s Not searching for unused variables given on the command line. 160s -- Configuring done (0.0s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-build 160s Install the project... 160s -- Install configuration: "Release" 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-install/include/bar.h 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-install/include/foo.h 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-install/lib/static/libbar.a 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-install/lib/static/libfoo.a 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-install/bin/hello 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-install/hello/swig_mwe.py 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-35/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-install/hello/_swig_mwe.pyd 160s 160s copying hello/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py 160s 160s ----------------------------- Captured stderr call ----------------------------- 160s hint: Using 'master' as the name for the initial branch. This default branch name 160s hint: is subject to change. To configure the initial branch name to use in all 160s hint: of your new repositories, which will suppress this warning, call: 160s hint: 160s hint: git config --global init.defaultBranch 160s hint: 160s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 160s hint: 'development'. The just-created branch can be renamed via this command: 160s hint: 160s hint: git branch -m 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s ------------------------------ Captured log call ------------------------------- 160s INFO root:dist.py:986 running bdist_wheel 160s INFO root:dist.py:986 running build 160s INFO root:dist.py:986 running build_py 160s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 160s ______________________________ test_hello_builds _______________________________ 160s 160s def test_hello_builds(): 160s with push_dir(): 160s 160s @project_setup_py_test("hello-cpp", ["build"], ret=True) 160s def run(): 160s pass 160s 160s # Check that a project can be build twice in a row 160s # See issue scikit-build#120 160s > tmp_dir = run()[0] 160s 160s run = .run at 0x7bbe04ef3f60> 160s 160s tests/test_hello_cpp.py:30: 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s tests/__init__.py:261: in wrapped 160s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 160s disable_languages_test = False 160s fun = .run at 0x7bbe04ef2b60> 160s iargs = () 160s ikwargs = {} 160s ret = True 160s wrapped = .run at 0x7bbe04ef3f60> 160s /usr/lib/python3.12/contextlib.py:137: in __enter__ 160s return next(self.gen) 160s self = 160s tests/__init__.py:247: in execute_setup_py 160s exec(setup_code) 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = False 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-36/run0') 160s setup = 160s setup_args = ['build'] 160s setup_code = at 0x7bbe04b049c0, file "setup.py", line 1> 160s setup.py:5: in 160s ??? 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = False 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-36/run0') 160s setup = 160s setup_args = ['build'] 160s setup_code = at 0x7bbe04b049c0, file "setup.py", line 1> 160s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 160s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 160s BinaryDistribution = .BinaryDistribution'> 160s build_ext_inplace = False 160s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 160s cmake_args_from_args = [] 160s cmake_executable = '/usr/bin/cmake' 160s cmake_install_dir = '' 160s cmake_install_target = 'install' 160s cmake_install_target_from_command = '' 160s cmake_install_target_from_setup = 'install' 160s cmake_languages = ('C', 'CXX') 160s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/helloModule.py', '_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so', '_skbuild/linux-x86_64-3.12/cmake-install/hello/world.py'] 160s cmake_minimum_required_version = None 160s cmake_process_manifest_hook = None 160s cmake_source_dir = '' 160s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 160s cmake_with_sdist = False 160s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 160s cmkr = 160s commands = ['build'] 160s config_type = 'Release' 160s data_files = {} 160s developer_mode = False 160s display_only = False 160s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 160s env_cmake_args = [] 160s force_cmake = False 160s has_cmakelists = True 160s has_invalid_arguments = False 160s help_commands = 0 160s hide_listing = False 160s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s make_args = ['--config', 'Release'] 160s new_py_modules = {'bonjourModule': False, 'helloModule': True} 160s new_scripts = {} 160s original_manifestin_data_files = [] 160s original_package_data = {'bonjour': ['data/*.txt', 'data/terre.txt']} 160s package = 'hello' 160s package_data = {'': ['bonjourModule.py', 'helloModule.py'], 'bonjour': ['data/*.txt', 'data/terre.txt', '__init__.py'], 'hello': ['_hello.cpython-312-x86_64-linux-gnu.so', 'world.py', '__init__.py', '__main__.py']} 160s package_dir = {'bonjour': 'bonjour', 'hello': 'hello'} 160s package_prefixes = [('bonjour', 'bonjour'), ('hello', 'hello')] 160s packages = ['bonjour', 'hello'] 160s plat_name = None 160s process_manifest = None 160s py_modules = ['bonjourModule', 'helloModule'] 160s scripts = [] 160s skip_cmake = False 160s skip_generator_test = False 160s skip_skbuild = False 160s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 160s return distutils.core.setup(**attrs) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 160s return run_commands(dist) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s dist = .BinaryDistribution object at 0x7bbe047e8110> 160s klass = .BinaryDistribution'> 160s ok = True 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 160s dist.run_commands() 160s dist = .BinaryDistribution object at 0x7bbe047e8110> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 160s self.run_command(cmd) 160s cmd = 'build' 160s self = .BinaryDistribution object at 0x7bbe047e8110> 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe047e8110> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe047e8110> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 160s self.run_command(cmd_name) 160s cmd_name = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 160s self.distribution.run_command(command) 160s command = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe047e8110> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe047e8110> 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 160s super().run(*args, **kwargs) 160s __class__ = 160s args = () 160s kwargs = {} 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 160s self.build_modules() 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 160s self.build_module(module, module_file, package) 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s modules = [('', 'bonjourModule', '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py'), ('', 'helloModule', '_skbuild/linux-x86_64-3.12/cmake-install/helloModule.py')] 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 160s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 160s __class__ = 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 160s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 160s self.mkpath(dir) 160s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/bonjourModule.py' 160s package = [''] 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 160s dir_util.mkpath(name, mode, dry_run=self.dry_run) 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s self = 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s mode = 511, verbose = True, dry_run = False 160s 160s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 160s """Create a directory and any missing ancestor directories. 160s 160s If the directory already exists (or if 'name' is the empty string, which 160s means the current directory, which of course exists), then do nothing. 160s Raise DistutilsFileError if unable to create some directory along the way 160s (eg. some sub-path exists, but is a file rather than a directory). 160s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 160s Return the list of directories actually created. 160s 160s os.makedirs is not used because: 160s 160s a) It's new to Python 1.5.2, and 160s b) it blows up if the directory already exists (in which case it should 160s silently succeed). 160s """ 160s 160s global _path_created 160s 160s # Detect a common bug -- name is None 160s if not isinstance(name, str): 160s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 160s 160s # XXX what's the better way to handle verbosity? print as we create 160s # each directory in the path (the current behaviour), or only announce 160s # the creation of the whole path? (quite easy to do the latter since 160s # we're not using a recursive algorithm) 160s 160s name = os.path.normpath(name) 160s created_dirs = [] 160s if os.path.isdir(name) or name == '': 160s return created_dirs 160s if os.path.abspath(name) in _path_created: 160s return created_dirs 160s 160s (head, tail) = os.path.split(name) 160s tails = [tail] # stack of lone dirs to create 160s 160s while head and tail and not os.path.isdir(head): 160s (head, tail) = os.path.split(head) 160s tails.insert(0, tail) # push next higher dir onto stack 160s 160s # now 'head' contains the deepest directory that already exists 160s # (that is, the child of 'head' in 'name' is the highest directory 160s # that does *not* exist) 160s for d in tails: 160s # print "head = %s, d = %s: " % (head, d), 160s head = os.path.join(head, d) 160s abs_head = os.path.abspath(head) 160s 160s if abs_head in _path_created: 160s continue 160s 160s if verbose >= 1: 160s log.info("creating %s", head) 160s 160s if not dry_run: 160s try: 160s os.mkdir(head, mode) 160s except OSError as exc: 160s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 160s raise DistutilsFileError( 160s f"could not create '{head}': {exc.args[-1]}" 160s ) 160s created_dirs.append(head) 160s 160s > _path_created.add(abs_head) 160s E AttributeError: 'dict' object has no attribute 'add' 160s 160s abs_head = '/tmp/pytest-of-ubuntu/pytest-36/run0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 160s d = 'lib.linux-x86_64-cpython-312' 160s dry_run = False 160s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s tail = 'lib.linux-x86_64-cpython-312' 160s tails = ['lib.linux-x86_64-cpython-312'] 160s verbose = True 160s 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 160s ----------------------------- Captured stdout call ----------------------------- 160s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-36/run0/.git/ 160s [master (root-commit) 3e31ff2] Initial commit 160s 11 files changed, 115 insertions(+) 160s create mode 100644 CMakeLists.txt 160s create mode 100644 bonjour/__init__.py 160s create mode 100644 bonjour/data/ciel.txt 160s create mode 100644 bonjour/data/soleil.txt 160s create mode 100644 bonjour/data/terre.txt 160s create mode 100644 bonjourModule.py 160s create mode 100644 hello/CMakeLists.txt 160s create mode 100644 hello/__init__.py 160s create mode 100644 hello/__main__.py 160s create mode 100644 hello/_hello.cxx 160s create mode 100644 setup.py 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Ninja' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- Configuring incomplete, errors occurred! 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Ninja' generator - failure 160s -------------------------------------------------------------------------------- 160s 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Unix Makefiles' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- The C compiler identification is GNU 14.1.0 160s -- Detecting C compiler ABI info 160s -- Detecting C compiler ABI info - done 160s -- Check for working C compiler: /usr/bin/cc - skipped 160s -- Detecting C compile features 160s -- Detecting C compile features - done 160s -- The CXX compiler identification is GNU 14.1.0 160s -- Detecting CXX compiler ABI info 160s -- Detecting CXX compiler ABI info - done 160s -- Check for working CXX compiler: /usr/bin/c++ - skipped 160s -- Detecting CXX compile features 160s -- Detecting CXX compile features - done 160s -- Configuring done (0.5s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-36/run0/_cmake_test_compile/build 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Unix Makefiles' generator - success 160s -------------------------------------------------------------------------------- 160s 160s Configuring Project 160s Working directory: 160s /tmp/pytest-of-ubuntu/pytest-36/run0/_skbuild/linux-x86_64-3.12/cmake-build 160s Command: 160s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-36/run0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-36/run0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 160s 160s Not searching for unused variables given on the command line. 160s -- The C compiler identification is GNU 14.1.0 160s -- The CXX compiler identification is GNU 14.1.0 160s -- Detecting C compiler ABI info 160s -- Detecting C compiler ABI info - done 160s -- Check for working C compiler: /usr/bin/cc - skipped 160s -- Detecting C compile features 160s -- Detecting C compile features - done 160s -- Detecting CXX compiler ABI info 160s -- Detecting CXX compiler ABI info - done 160s -- Check for working CXX compiler: /usr/bin/c++ - skipped 160s -- Detecting CXX compile features 160s -- Detecting CXX compile features - done 160s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 160s -- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.12.so (found version "3.12.4") 160s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 160s -- Configuring done (1.0s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-36/run0/_skbuild/linux-x86_64-3.12/cmake-build 160s [ 50%] Building CXX object hello/CMakeFiles/_hello.dir/_hello.cxx.o 160s [100%] Linking CXX shared module _hello.cpython-312-x86_64-linux-gnu.so 160s [100%] Built target _hello 160s Install the project... 160s -- Install configuration: "Release" 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-36/run0/_skbuild/linux-x86_64-3.12/cmake-install/./helloModule.py 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-36/run0/_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-36/run0/_skbuild/linux-x86_64-3.12/cmake-install/hello/world.py 160s 160s copying bonjourModule.py -> _skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py 160s creating directory _skbuild/linux-x86_64-3.12/cmake-install/bonjour 160s copying bonjour/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/__init__.py 160s copying hello/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py 160s copying hello/__main__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__main__.py 160s creating directory _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data 160s copying /tmp/pytest-of-ubuntu/pytest-36/run0/bonjour/data/soleil.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/soleil.txt 160s copying /tmp/pytest-of-ubuntu/pytest-36/run0/bonjour/data/ciel.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/ciel.txt 160s copying /tmp/pytest-of-ubuntu/pytest-36/run0/bonjour/data/terre.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/terre.txt 160s copying /tmp/pytest-of-ubuntu/pytest-36/run0/bonjour/data/terre.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/terre.txt 160s 160s ----------------------------- Captured stderr call ----------------------------- 160s hint: Using 'master' as the name for the initial branch. This default branch name 160s hint: is subject to change. To configure the initial branch name to use in all 160s hint: of your new repositories, which will suppress this warning, call: 160s hint: 160s hint: git config --global init.defaultBranch 160s hint: 160s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 160s hint: 'development'. The just-created branch can be renamed via this command: 160s hint: 160s hint: git branch -m 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 160s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 160s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 160s the cmake_policy command to set the policy and suppress this warning. 160s 160s Call Stack (most recent call first): 160s CMakeLists.txt:5 (find_package) 160s This warning is for project developers. Use -Wno-dev to suppress it. 160s 160s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 160s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 160s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 160s the cmake_policy command to set the policy and suppress this warning. 160s 160s Call Stack (most recent call first): 160s CMakeLists.txt:5 (find_package) 160s This warning is for project developers. Use -Wno-dev to suppress it. 160s 160s _modinit_prefix:PyInit_ 160s ------------------------------ Captured log call ------------------------------- 160s INFO root:dist.py:986 running build 160s INFO root:dist.py:986 running build_py 160s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 160s _______________________________ test_hello_wheel _______________________________ 160s 160s def test_hello_wheel(): 160s expected_content = [ 160s f"hello/_hello{get_ext_suffix()}", 160s "hello/__init__.py", 160s "hello/__main__.py", 160s "hello/world.py", 160s "helloModule.py", 160s "bonjour/__init__.py", 160s "bonjour/data/ciel.txt", 160s "bonjour/data/soleil.txt", 160s "bonjour/data/terre.txt", 160s "bonjourModule.py", 160s ] 160s 160s expected_distribution_name = "hello-1.2.3" 160s 160s @project_setup_py_test("hello-cpp", ["bdist_wheel"], ret=True) 160s def build_wheel(): 160s whls = glob.glob("dist/*.whl") 160s assert len(whls) == 1 160s check_wheel_content(whls[0], expected_distribution_name, expected_content) 160s os.remove(whls[0]) 160s assert not os.path.exists(whls[0]) 160s 160s assert os.path.exists(os.path.join(CMAKE_BUILD_DIR(), "CMakeCache.txt")) 160s os.remove(os.path.join(CMAKE_BUILD_DIR(), "CMakeCache.txt")) 160s 160s > tmp_dir = build_wheel()[0] 160s 160s build_wheel = .build_wheel at 0x7bbe047f19e0> 160s expected_content = ['hello/_hello.cpython-312-x86_64-linux-gnu.so', 'hello/__init__.py', 'hello/__main__.py', 'hello/world.py', 'helloModule.py', 'bonjour/__init__.py', ...] 160s expected_distribution_name = 'hello-1.2.3' 160s 160s tests/test_hello_cpp.py:98: 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s tests/__init__.py:261: in wrapped 160s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 160s disable_languages_test = False 160s fun = .build_wheel at 0x7bbe04ef3c40> 160s iargs = () 160s ikwargs = {} 160s ret = True 160s wrapped = .build_wheel at 0x7bbe047f19e0> 160s /usr/lib/python3.12/contextlib.py:137: in __enter__ 160s return next(self.gen) 160s self = 160s tests/__init__.py:247: in execute_setup_py 160s exec(setup_code) 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = False 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-37/build_wheel0') 160s setup = 160s setup_args = ['bdist_wheel'] 160s setup_code = at 0x7bbe04b05f00, file "setup.py", line 1> 160s setup.py:5: in 160s ??? 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = False 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-37/build_wheel0') 160s setup = 160s setup_args = ['bdist_wheel'] 160s setup_code = at 0x7bbe04b05f00, file "setup.py", line 1> 160s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 160s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 160s BinaryDistribution = .BinaryDistribution'> 160s build_ext_inplace = False 160s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 160s cmake_args_from_args = [] 160s cmake_executable = '/usr/bin/cmake' 160s cmake_install_dir = '' 160s cmake_install_target = 'install' 160s cmake_install_target_from_command = '' 160s cmake_install_target_from_setup = 'install' 160s cmake_languages = ('C', 'CXX') 160s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/helloModule.py', '_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so', '_skbuild/linux-x86_64-3.12/cmake-install/hello/world.py'] 160s cmake_minimum_required_version = None 160s cmake_process_manifest_hook = None 160s cmake_source_dir = '' 160s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 160s cmake_with_sdist = False 160s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 160s cmkr = 160s commands = ['bdist_wheel'] 160s config_type = 'Release' 160s data_files = {} 160s developer_mode = False 160s display_only = False 160s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 160s env_cmake_args = [] 160s force_cmake = False 160s has_cmakelists = True 160s has_invalid_arguments = False 160s help_commands = 0 160s hide_listing = False 160s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s make_args = ['--config', 'Release'] 160s new_py_modules = {'bonjourModule': False, 'helloModule': True} 160s new_scripts = {} 160s original_manifestin_data_files = [] 160s original_package_data = {'bonjour': ['data/*.txt', 'data/terre.txt']} 160s package = 'hello' 160s package_data = {'': ['bonjourModule.py', 'helloModule.py'], 'bonjour': ['data/*.txt', 'data/terre.txt', '__init__.py'], 'hello': ['_hello.cpython-312-x86_64-linux-gnu.so', 'world.py', '__init__.py', '__main__.py']} 160s package_dir = {'bonjour': 'bonjour', 'hello': 'hello'} 160s package_prefixes = [('bonjour', 'bonjour'), ('hello', 'hello')] 160s packages = ['bonjour', 'hello'] 160s plat_name = None 160s process_manifest = None 160s py_modules = ['bonjourModule', 'helloModule'] 160s scripts = [] 160s skip_cmake = False 160s skip_generator_test = False 160s skip_skbuild = False 160s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 160s return distutils.core.setup(**attrs) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 160s return run_commands(dist) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s dist = .BinaryDistribution object at 0x7bbe047ea3f0> 160s klass = .BinaryDistribution'> 160s ok = True 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 160s dist.run_commands() 160s dist = .BinaryDistribution object at 0x7bbe047ea3f0> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 160s self.run_command(cmd) 160s cmd = 'bdist_wheel' 160s self = .BinaryDistribution object at 0x7bbe047ea3f0> 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'bdist_wheel' 160s self = .BinaryDistribution object at 0x7bbe047ea3f0> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'bdist_wheel' 160s self = .BinaryDistribution object at 0x7bbe047ea3f0> 160s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 160s super().run(*args, **kwargs) 160s __class__ = 160s args = () 160s kwargs = {} 160s old_write_files = 160s self = 160s update_write_files = .update_write_files at 0x7bbe04bffec0> 160s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 160s self.run_command("build") 160s build_ext = 160s build_scripts = 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 160s self.distribution.run_command(command) 160s command = 'build' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe047ea3f0> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe047ea3f0> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 160s self.run_command(cmd_name) 160s cmd_name = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 160s self.distribution.run_command(command) 160s command = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe047ea3f0> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe047ea3f0> 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 160s super().run(*args, **kwargs) 160s __class__ = 160s args = () 160s kwargs = {} 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 160s self.build_modules() 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 160s self.build_module(module, module_file, package) 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s modules = [('', 'bonjourModule', '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py'), ('', 'helloModule', '_skbuild/linux-x86_64-3.12/cmake-install/helloModule.py')] 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 160s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 160s __class__ = 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 160s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 160s self.mkpath(dir) 160s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/bonjourModule.py' 160s package = [''] 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 160s dir_util.mkpath(name, mode, dry_run=self.dry_run) 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s self = 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s mode = 511, verbose = True, dry_run = False 160s 160s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 160s """Create a directory and any missing ancestor directories. 160s 160s If the directory already exists (or if 'name' is the empty string, which 160s means the current directory, which of course exists), then do nothing. 160s Raise DistutilsFileError if unable to create some directory along the way 160s (eg. some sub-path exists, but is a file rather than a directory). 160s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 160s Return the list of directories actually created. 160s 160s os.makedirs is not used because: 160s 160s a) It's new to Python 1.5.2, and 160s b) it blows up if the directory already exists (in which case it should 160s silently succeed). 160s """ 160s 160s global _path_created 160s 160s # Detect a common bug -- name is None 160s if not isinstance(name, str): 160s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 160s 160s # XXX what's the better way to handle verbosity? print as we create 160s # each directory in the path (the current behaviour), or only announce 160s # the creation of the whole path? (quite easy to do the latter since 160s # we're not using a recursive algorithm) 160s 160s name = os.path.normpath(name) 160s created_dirs = [] 160s if os.path.isdir(name) or name == '': 160s return created_dirs 160s if os.path.abspath(name) in _path_created: 160s return created_dirs 160s 160s (head, tail) = os.path.split(name) 160s tails = [tail] # stack of lone dirs to create 160s 160s while head and tail and not os.path.isdir(head): 160s (head, tail) = os.path.split(head) 160s tails.insert(0, tail) # push next higher dir onto stack 160s 160s # now 'head' contains the deepest directory that already exists 160s # (that is, the child of 'head' in 'name' is the highest directory 160s # that does *not* exist) 160s for d in tails: 160s # print "head = %s, d = %s: " % (head, d), 160s head = os.path.join(head, d) 160s abs_head = os.path.abspath(head) 160s 160s if abs_head in _path_created: 160s continue 160s 160s if verbose >= 1: 160s log.info("creating %s", head) 160s 160s if not dry_run: 160s try: 160s os.mkdir(head, mode) 160s except OSError as exc: 160s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 160s raise DistutilsFileError( 160s f"could not create '{head}': {exc.args[-1]}" 160s ) 160s created_dirs.append(head) 160s 160s > _path_created.add(abs_head) 160s E AttributeError: 'dict' object has no attribute 'add' 160s 160s abs_head = '/tmp/pytest-of-ubuntu/pytest-37/build_wheel0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 160s d = 'lib.linux-x86_64-cpython-312' 160s dry_run = False 160s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s tail = 'lib.linux-x86_64-cpython-312' 160s tails = ['lib.linux-x86_64-cpython-312'] 160s verbose = True 160s 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 160s ----------------------------- Captured stdout call ----------------------------- 160s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/.git/ 160s [master (root-commit) f33bc95] Initial commit 160s 11 files changed, 115 insertions(+) 160s create mode 100644 CMakeLists.txt 160s create mode 100644 bonjour/__init__.py 160s create mode 100644 bonjour/data/ciel.txt 160s create mode 100644 bonjour/data/soleil.txt 160s create mode 100644 bonjour/data/terre.txt 160s create mode 100644 bonjourModule.py 160s create mode 100644 hello/CMakeLists.txt 160s create mode 100644 hello/__init__.py 160s create mode 100644 hello/__main__.py 160s create mode 100644 hello/_hello.cxx 160s create mode 100644 setup.py 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Ninja' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- Configuring incomplete, errors occurred! 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Ninja' generator - failure 160s -------------------------------------------------------------------------------- 160s 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Unix Makefiles' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- The C compiler identification is GNU 14.1.0 160s -- Detecting C compiler ABI info 160s -- Detecting C compiler ABI info - done 160s -- Check for working C compiler: /usr/bin/cc - skipped 160s -- Detecting C compile features 160s -- Detecting C compile features - done 160s -- The CXX compiler identification is GNU 14.1.0 160s -- Detecting CXX compiler ABI info 160s -- Detecting CXX compiler ABI info - done 160s -- Check for working CXX compiler: /usr/bin/c++ - skipped 160s -- Detecting CXX compile features 160s -- Detecting CXX compile features - done 160s -- Configuring done (0.4s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/_cmake_test_compile/build 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Unix Makefiles' generator - success 160s -------------------------------------------------------------------------------- 160s 160s Configuring Project 160s Working directory: 160s /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/_skbuild/linux-x86_64-3.12/cmake-build 160s Command: 160s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-37/build_wheel0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-37/build_wheel0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 160s 160s Not searching for unused variables given on the command line. 160s -- The C compiler identification is GNU 14.1.0 160s -- The CXX compiler identification is GNU 14.1.0 160s -- Detecting C compiler ABI info 160s -- Detecting C compiler ABI info - done 160s -- Check for working C compiler: /usr/bin/cc - skipped 160s -- Detecting C compile features 160s -- Detecting C compile features - done 160s -- Detecting CXX compiler ABI info 160s -- Detecting CXX compiler ABI info - done 160s -- Check for working CXX compiler: /usr/bin/c++ - skipped 160s -- Detecting CXX compile features 160s -- Detecting CXX compile features - done 160s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 160s -- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.12.so (found version "3.12.4") 160s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 160s -- Configuring done (1.0s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/_skbuild/linux-x86_64-3.12/cmake-build 160s [ 50%] Building CXX object hello/CMakeFiles/_hello.dir/_hello.cxx.o 160s [100%] Linking CXX shared module _hello.cpython-312-x86_64-linux-gnu.so 160s [100%] Built target _hello 160s Install the project... 160s -- Install configuration: "Release" 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/_skbuild/linux-x86_64-3.12/cmake-install/./helloModule.py 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/_skbuild/linux-x86_64-3.12/cmake-install/hello/world.py 160s 160s copying bonjourModule.py -> _skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py 160s creating directory _skbuild/linux-x86_64-3.12/cmake-install/bonjour 160s copying bonjour/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/__init__.py 160s copying hello/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py 160s copying hello/__main__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__main__.py 160s creating directory _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data 160s copying /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/bonjour/data/soleil.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/soleil.txt 160s copying /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/bonjour/data/ciel.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/ciel.txt 160s copying /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/bonjour/data/terre.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/terre.txt 160s copying /tmp/pytest-of-ubuntu/pytest-37/build_wheel0/bonjour/data/terre.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/terre.txt 160s 160s ----------------------------- Captured stderr call ----------------------------- 160s hint: Using 'master' as the name for the initial branch. This default branch name 160s hint: is subject to change. To configure the initial branch name to use in all 160s hint: of your new repositories, which will suppress this warning, call: 160s hint: 160s hint: git config --global init.defaultBranch 160s hint: 160s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 160s hint: 'development'. The just-created branch can be renamed via this command: 160s hint: 160s hint: git branch -m 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 160s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 160s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 160s the cmake_policy command to set the policy and suppress this warning. 160s 160s Call Stack (most recent call first): 160s CMakeLists.txt:5 (find_package) 160s This warning is for project developers. Use -Wno-dev to suppress it. 160s 160s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 160s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 160s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 160s the cmake_policy command to set the policy and suppress this warning. 160s 160s Call Stack (most recent call first): 160s CMakeLists.txt:5 (find_package) 160s This warning is for project developers. Use -Wno-dev to suppress it. 160s 160s _modinit_prefix:PyInit_ 160s ------------------------------ Captured log call ------------------------------- 160s INFO root:dist.py:986 running bdist_wheel 160s INFO root:dist.py:986 running build 160s INFO root:dist.py:986 running build_py 160s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 160s ________________________ test_hello_clean[with-dry-run] ________________________ 160s 160s dry_run = True 160s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe047e8230> 160s 160s @pytest.mark.parametrize("dry_run", ["with-dry-run", "without-dry-run"]) 160s def test_hello_clean(dry_run, capfd): 160s with push_dir(): 160s dry_run = dry_run == "with-dry-run" 160s 160s @project_setup_py_test("hello-cpp", ["build"], ret=True) 160s def run_build(): 160s pass 160s 160s > tmp_dir = run_build()[0] 160s 160s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe047e8230> 160s dry_run = True 160s run_build = .run_build at 0x7bbe04ef3ec0> 160s 160s tests/test_hello_cpp.py:119: 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s tests/__init__.py:261: in wrapped 160s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 160s disable_languages_test = False 160s fun = .run_build at 0x7bbe04ef3880> 160s iargs = () 160s ikwargs = {} 160s ret = True 160s wrapped = .run_build at 0x7bbe04ef3ec0> 160s /usr/lib/python3.12/contextlib.py:137: in __enter__ 160s return next(self.gen) 160s self = 160s tests/__init__.py:247: in execute_setup_py 160s exec(setup_code) 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = False 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-38/run_build0') 160s setup = 160s setup_args = ['build'] 160s setup_code = at 0x7bbe04a63880, file "setup.py", line 1> 160s setup.py:5: in 160s ??? 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = False 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-38/run_build0') 160s setup = 160s setup_args = ['build'] 160s setup_code = at 0x7bbe04a63880, file "setup.py", line 1> 160s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 160s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 160s BinaryDistribution = .BinaryDistribution'> 160s build_ext_inplace = False 160s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 160s cmake_args_from_args = [] 160s cmake_executable = '/usr/bin/cmake' 160s cmake_install_dir = '' 160s cmake_install_target = 'install' 160s cmake_install_target_from_command = '' 160s cmake_install_target_from_setup = 'install' 160s cmake_languages = ('C', 'CXX') 160s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/helloModule.py', '_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so', '_skbuild/linux-x86_64-3.12/cmake-install/hello/world.py'] 160s cmake_minimum_required_version = None 160s cmake_process_manifest_hook = None 160s cmake_source_dir = '' 160s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 160s cmake_with_sdist = False 160s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 160s cmkr = 160s commands = ['build'] 160s config_type = 'Release' 160s data_files = {} 160s developer_mode = False 160s display_only = False 160s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 160s env_cmake_args = [] 160s force_cmake = False 160s has_cmakelists = True 160s has_invalid_arguments = False 160s help_commands = 0 160s hide_listing = False 160s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s make_args = ['--config', 'Release'] 160s new_py_modules = {'bonjourModule': False, 'helloModule': True} 160s new_scripts = {} 160s original_manifestin_data_files = [] 160s original_package_data = {'bonjour': ['data/*.txt', 'data/terre.txt']} 160s package = 'hello' 160s package_data = {'': ['bonjourModule.py', 'helloModule.py'], 'bonjour': ['data/*.txt', 'data/terre.txt', '__init__.py'], 'hello': ['_hello.cpython-312-x86_64-linux-gnu.so', 'world.py', '__init__.py', '__main__.py']} 160s package_dir = {'bonjour': 'bonjour', 'hello': 'hello'} 160s package_prefixes = [('bonjour', 'bonjour'), ('hello', 'hello')] 160s packages = ['bonjour', 'hello'] 160s plat_name = None 160s process_manifest = None 160s py_modules = ['bonjourModule', 'helloModule'] 160s scripts = [] 160s skip_cmake = False 160s skip_generator_test = False 160s skip_skbuild = False 160s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 160s return distutils.core.setup(**attrs) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 160s return run_commands(dist) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s dist = .BinaryDistribution object at 0x7bbe047b90a0> 160s klass = .BinaryDistribution'> 160s ok = True 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 160s dist.run_commands() 160s dist = .BinaryDistribution object at 0x7bbe047b90a0> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 160s self.run_command(cmd) 160s cmd = 'build' 160s self = .BinaryDistribution object at 0x7bbe047b90a0> 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe047b90a0> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe047b90a0> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 160s self.run_command(cmd_name) 160s cmd_name = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 160s self.distribution.run_command(command) 160s command = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe047b90a0> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe047b90a0> 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 160s super().run(*args, **kwargs) 160s __class__ = 160s args = () 160s kwargs = {} 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 160s self.build_modules() 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 160s self.build_module(module, module_file, package) 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s modules = [('', 'bonjourModule', '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py'), ('', 'helloModule', '_skbuild/linux-x86_64-3.12/cmake-install/helloModule.py')] 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 160s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 160s __class__ = 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 160s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 160s self.mkpath(dir) 160s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/bonjourModule.py' 160s package = [''] 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 160s dir_util.mkpath(name, mode, dry_run=self.dry_run) 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s self = 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s mode = 511, verbose = True, dry_run = False 160s 160s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 160s """Create a directory and any missing ancestor directories. 160s 160s If the directory already exists (or if 'name' is the empty string, which 160s means the current directory, which of course exists), then do nothing. 160s Raise DistutilsFileError if unable to create some directory along the way 160s (eg. some sub-path exists, but is a file rather than a directory). 160s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 160s Return the list of directories actually created. 160s 160s os.makedirs is not used because: 160s 160s a) It's new to Python 1.5.2, and 160s b) it blows up if the directory already exists (in which case it should 160s silently succeed). 160s """ 160s 160s global _path_created 160s 160s # Detect a common bug -- name is None 160s if not isinstance(name, str): 160s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 160s 160s # XXX what's the better way to handle verbosity? print as we create 160s # each directory in the path (the current behaviour), or only announce 160s # the creation of the whole path? (quite easy to do the latter since 160s # we're not using a recursive algorithm) 160s 160s name = os.path.normpath(name) 160s created_dirs = [] 160s if os.path.isdir(name) or name == '': 160s return created_dirs 160s if os.path.abspath(name) in _path_created: 160s return created_dirs 160s 160s (head, tail) = os.path.split(name) 160s tails = [tail] # stack of lone dirs to create 160s 160s while head and tail and not os.path.isdir(head): 160s (head, tail) = os.path.split(head) 160s tails.insert(0, tail) # push next higher dir onto stack 160s 160s # now 'head' contains the deepest directory that already exists 160s # (that is, the child of 'head' in 'name' is the highest directory 160s # that does *not* exist) 160s for d in tails: 160s # print "head = %s, d = %s: " % (head, d), 160s head = os.path.join(head, d) 160s abs_head = os.path.abspath(head) 160s 160s if abs_head in _path_created: 160s continue 160s 160s if verbose >= 1: 160s log.info("creating %s", head) 160s 160s if not dry_run: 160s try: 160s os.mkdir(head, mode) 160s except OSError as exc: 160s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 160s raise DistutilsFileError( 160s f"could not create '{head}': {exc.args[-1]}" 160s ) 160s created_dirs.append(head) 160s 160s > _path_created.add(abs_head) 160s E AttributeError: 'dict' object has no attribute 'add' 160s 160s abs_head = '/tmp/pytest-of-ubuntu/pytest-38/run_build0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 160s d = 'lib.linux-x86_64-cpython-312' 160s dry_run = False 160s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s tail = 'lib.linux-x86_64-cpython-312' 160s tails = ['lib.linux-x86_64-cpython-312'] 160s verbose = True 160s 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 160s ----------------------------- Captured stdout call ----------------------------- 160s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-38/run_build0/.git/ 160s [master (root-commit) cca054c] Initial commit 160s 11 files changed, 115 insertions(+) 160s create mode 100644 CMakeLists.txt 160s create mode 100644 bonjour/__init__.py 160s create mode 100644 bonjour/data/ciel.txt 160s create mode 100644 bonjour/data/soleil.txt 160s create mode 100644 bonjour/data/terre.txt 160s create mode 100644 bonjourModule.py 160s create mode 100644 hello/CMakeLists.txt 160s create mode 100644 hello/__init__.py 160s create mode 100644 hello/__main__.py 160s create mode 100644 hello/_hello.cxx 160s create mode 100644 setup.py 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Ninja' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- Configuring incomplete, errors occurred! 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Ninja' generator - failure 160s -------------------------------------------------------------------------------- 160s 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Unix Makefiles' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- The C compiler identification is GNU 14.1.0 160s -- Detecting C compiler ABI info 160s -- Detecting C compiler ABI info - done 160s -- Check for working C compiler: /usr/bin/cc - skipped 160s -- Detecting C compile features 160s -- Detecting C compile features - done 160s -- The CXX compiler identification is GNU 14.1.0 160s -- Detecting CXX compiler ABI info 160s -- Detecting CXX compiler ABI info - done 160s -- Check for working CXX compiler: /usr/bin/c++ - skipped 160s -- Detecting CXX compile features 160s -- Detecting CXX compile features - done 160s -- Configuring done (0.5s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-38/run_build0/_cmake_test_compile/build 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Unix Makefiles' generator - success 160s -------------------------------------------------------------------------------- 160s 160s Configuring Project 160s Working directory: 160s /tmp/pytest-of-ubuntu/pytest-38/run_build0/_skbuild/linux-x86_64-3.12/cmake-build 160s Command: 160s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-38/run_build0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-38/run_build0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 160s 160s Not searching for unused variables given on the command line. 160s -- The C compiler identification is GNU 14.1.0 160s -- The CXX compiler identification is GNU 14.1.0 160s -- Detecting C compiler ABI info 160s -- Detecting C compiler ABI info - done 160s -- Check for working C compiler: /usr/bin/cc - skipped 160s -- Detecting C compile features 160s -- Detecting C compile features - done 160s -- Detecting CXX compiler ABI info 160s -- Detecting CXX compiler ABI info - done 160s -- Check for working CXX compiler: /usr/bin/c++ - skipped 160s -- Detecting CXX compile features 160s -- Detecting CXX compile features - done 160s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 160s -- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.12.so (found version "3.12.4") 160s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 160s -- Configuring done (1.0s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-38/run_build0/_skbuild/linux-x86_64-3.12/cmake-build 160s [ 50%] Building CXX object hello/CMakeFiles/_hello.dir/_hello.cxx.o 160s [100%] Linking CXX shared module _hello.cpython-312-x86_64-linux-gnu.so 160s [100%] Built target _hello 160s Install the project... 160s -- Install configuration: "Release" 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-38/run_build0/_skbuild/linux-x86_64-3.12/cmake-install/./helloModule.py 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-38/run_build0/_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-38/run_build0/_skbuild/linux-x86_64-3.12/cmake-install/hello/world.py 160s 160s copying bonjourModule.py -> _skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py 160s creating directory _skbuild/linux-x86_64-3.12/cmake-install/bonjour 160s copying bonjour/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/__init__.py 160s copying hello/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py 160s copying hello/__main__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__main__.py 160s creating directory _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data 160s copying /tmp/pytest-of-ubuntu/pytest-38/run_build0/bonjour/data/soleil.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/soleil.txt 160s copying /tmp/pytest-of-ubuntu/pytest-38/run_build0/bonjour/data/ciel.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/ciel.txt 160s copying /tmp/pytest-of-ubuntu/pytest-38/run_build0/bonjour/data/terre.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/terre.txt 160s copying /tmp/pytest-of-ubuntu/pytest-38/run_build0/bonjour/data/terre.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/terre.txt 160s 160s ----------------------------- Captured stderr call ----------------------------- 160s hint: Using 'master' as the name for the initial branch. This default branch name 160s hint: is subject to change. To configure the initial branch name to use in all 160s hint: of your new repositories, which will suppress this warning, call: 160s hint: 160s hint: git config --global init.defaultBranch 160s hint: 160s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 160s hint: 'development'. The just-created branch can be renamed via this command: 160s hint: 160s hint: git branch -m 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 160s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 160s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 160s the cmake_policy command to set the policy and suppress this warning. 160s 160s Call Stack (most recent call first): 160s CMakeLists.txt:5 (find_package) 160s This warning is for project developers. Use -Wno-dev to suppress it. 160s 160s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 160s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 160s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 160s the cmake_policy command to set the policy and suppress this warning. 160s 160s Call Stack (most recent call first): 160s CMakeLists.txt:5 (find_package) 160s This warning is for project developers. Use -Wno-dev to suppress it. 160s 160s _modinit_prefix:PyInit_ 160s ------------------------------ Captured log call ------------------------------- 160s INFO root:dist.py:986 running build 160s INFO root:dist.py:986 running build_py 160s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 160s ______________________ test_hello_clean[without-dry-run] _______________________ 160s 160s dry_run = False 160s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe04af41d0> 160s 160s @pytest.mark.parametrize("dry_run", ["with-dry-run", "without-dry-run"]) 160s def test_hello_clean(dry_run, capfd): 160s with push_dir(): 160s dry_run = dry_run == "with-dry-run" 160s 160s @project_setup_py_test("hello-cpp", ["build"], ret=True) 160s def run_build(): 160s pass 160s 160s > tmp_dir = run_build()[0] 160s 160s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe04af41d0> 160s dry_run = False 160s run_build = .run_build at 0x7bbe04ef2980> 160s 160s tests/test_hello_cpp.py:119: 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s tests/__init__.py:261: in wrapped 160s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 160s disable_languages_test = False 160s fun = .run_build at 0x7bbe04ef2b60> 160s iargs = () 160s ikwargs = {} 160s ret = True 160s wrapped = .run_build at 0x7bbe04ef2980> 160s /usr/lib/python3.12/contextlib.py:137: in __enter__ 160s return next(self.gen) 160s self = 160s tests/__init__.py:247: in execute_setup_py 160s exec(setup_code) 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = False 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-39/run_build0') 160s setup = 160s setup_args = ['build'] 160s setup_code = at 0x7bbe04a62bc0, file "setup.py", line 1> 160s setup.py:5: in 160s ??? 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = False 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-39/run_build0') 160s setup = 160s setup_args = ['build'] 160s setup_code = at 0x7bbe04a62bc0, file "setup.py", line 1> 160s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 160s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 160s BinaryDistribution = .BinaryDistribution'> 160s build_ext_inplace = False 160s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 160s cmake_args_from_args = [] 160s cmake_executable = '/usr/bin/cmake' 160s cmake_install_dir = '' 160s cmake_install_target = 'install' 160s cmake_install_target_from_command = '' 160s cmake_install_target_from_setup = 'install' 160s cmake_languages = ('C', 'CXX') 160s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/helloModule.py', '_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so', '_skbuild/linux-x86_64-3.12/cmake-install/hello/world.py'] 160s cmake_minimum_required_version = None 160s cmake_process_manifest_hook = None 160s cmake_source_dir = '' 160s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 160s cmake_with_sdist = False 160s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 160s cmkr = 160s commands = ['build'] 160s config_type = 'Release' 160s data_files = {} 160s developer_mode = False 160s display_only = False 160s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 160s env_cmake_args = [] 160s force_cmake = False 160s has_cmakelists = True 160s has_invalid_arguments = False 160s help_commands = 0 160s hide_listing = False 160s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s make_args = ['--config', 'Release'] 160s new_py_modules = {'bonjourModule': False, 'helloModule': True} 160s new_scripts = {} 160s original_manifestin_data_files = [] 160s original_package_data = {'bonjour': ['data/*.txt', 'data/terre.txt']} 160s package = 'hello' 160s package_data = {'': ['bonjourModule.py', 'helloModule.py'], 'bonjour': ['data/*.txt', 'data/terre.txt', '__init__.py'], 'hello': ['_hello.cpython-312-x86_64-linux-gnu.so', 'world.py', '__init__.py', '__main__.py']} 160s package_dir = {'bonjour': 'bonjour', 'hello': 'hello'} 160s package_prefixes = [('bonjour', 'bonjour'), ('hello', 'hello')] 160s packages = ['bonjour', 'hello'] 160s plat_name = None 160s process_manifest = None 160s py_modules = ['bonjourModule', 'helloModule'] 160s scripts = [] 160s skip_cmake = False 160s skip_generator_test = False 160s skip_skbuild = False 160s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 160s return distutils.core.setup(**attrs) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 160s return run_commands(dist) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s dist = .BinaryDistribution object at 0x7bbe04aee600> 160s klass = .BinaryDistribution'> 160s ok = True 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 160s dist.run_commands() 160s dist = .BinaryDistribution object at 0x7bbe04aee600> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 160s self.run_command(cmd) 160s cmd = 'build' 160s self = .BinaryDistribution object at 0x7bbe04aee600> 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe04aee600> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe04aee600> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 160s self.run_command(cmd_name) 160s cmd_name = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 160s self.distribution.run_command(command) 160s command = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe04aee600> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe04aee600> 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 160s super().run(*args, **kwargs) 160s __class__ = 160s args = () 160s kwargs = {} 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 160s self.build_modules() 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 160s self.build_module(module, module_file, package) 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s modules = [('', 'bonjourModule', '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py'), ('', 'helloModule', '_skbuild/linux-x86_64-3.12/cmake-install/helloModule.py')] 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 160s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 160s __class__ = 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 160s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 160s self.mkpath(dir) 160s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/bonjourModule.py' 160s package = [''] 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 160s dir_util.mkpath(name, mode, dry_run=self.dry_run) 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s self = 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s mode = 511, verbose = True, dry_run = False 160s 160s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 160s """Create a directory and any missing ancestor directories. 160s 160s If the directory already exists (or if 'name' is the empty string, which 160s means the current directory, which of course exists), then do nothing. 160s Raise DistutilsFileError if unable to create some directory along the way 160s (eg. some sub-path exists, but is a file rather than a directory). 160s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 160s Return the list of directories actually created. 160s 160s os.makedirs is not used because: 160s 160s a) It's new to Python 1.5.2, and 160s b) it blows up if the directory already exists (in which case it should 160s silently succeed). 160s """ 160s 160s global _path_created 160s 160s # Detect a common bug -- name is None 160s if not isinstance(name, str): 160s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 160s 160s # XXX what's the better way to handle verbosity? print as we create 160s # each directory in the path (the current behaviour), or only announce 160s # the creation of the whole path? (quite easy to do the latter since 160s # we're not using a recursive algorithm) 160s 160s name = os.path.normpath(name) 160s created_dirs = [] 160s if os.path.isdir(name) or name == '': 160s return created_dirs 160s if os.path.abspath(name) in _path_created: 160s return created_dirs 160s 160s (head, tail) = os.path.split(name) 160s tails = [tail] # stack of lone dirs to create 160s 160s while head and tail and not os.path.isdir(head): 160s (head, tail) = os.path.split(head) 160s tails.insert(0, tail) # push next higher dir onto stack 160s 160s # now 'head' contains the deepest directory that already exists 160s # (that is, the child of 'head' in 'name' is the highest directory 160s # that does *not* exist) 160s for d in tails: 160s # print "head = %s, d = %s: " % (head, d), 160s head = os.path.join(head, d) 160s abs_head = os.path.abspath(head) 160s 160s if abs_head in _path_created: 160s continue 160s 160s if verbose >= 1: 160s log.info("creating %s", head) 160s 160s if not dry_run: 160s try: 160s os.mkdir(head, mode) 160s except OSError as exc: 160s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 160s raise DistutilsFileError( 160s f"could not create '{head}': {exc.args[-1]}" 160s ) 160s created_dirs.append(head) 160s 160s > _path_created.add(abs_head) 160s E AttributeError: 'dict' object has no attribute 'add' 160s 160s abs_head = '/tmp/pytest-of-ubuntu/pytest-39/run_build0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 160s d = 'lib.linux-x86_64-cpython-312' 160s dry_run = False 160s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s tail = 'lib.linux-x86_64-cpython-312' 160s tails = ['lib.linux-x86_64-cpython-312'] 160s verbose = True 160s 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 160s ----------------------------- Captured stdout call ----------------------------- 160s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-39/run_build0/.git/ 160s [master (root-commit) 55317d0] Initial commit 160s 11 files changed, 115 insertions(+) 160s create mode 100644 CMakeLists.txt 160s create mode 100644 bonjour/__init__.py 160s create mode 100644 bonjour/data/ciel.txt 160s create mode 100644 bonjour/data/soleil.txt 160s create mode 100644 bonjour/data/terre.txt 160s create mode 100644 bonjourModule.py 160s create mode 100644 hello/CMakeLists.txt 160s create mode 100644 hello/__init__.py 160s create mode 100644 hello/__main__.py 160s create mode 100644 hello/_hello.cxx 160s create mode 100644 setup.py 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Ninja' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- Configuring incomplete, errors occurred! 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Ninja' generator - failure 160s -------------------------------------------------------------------------------- 160s 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Unix Makefiles' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- The C compiler identification is GNU 14.1.0 160s -- Detecting C compiler ABI info 160s -- Detecting C compiler ABI info - done 160s -- Check for working C compiler: /usr/bin/cc - skipped 160s -- Detecting C compile features 160s -- Detecting C compile features - done 160s -- The CXX compiler identification is GNU 14.1.0 160s -- Detecting CXX compiler ABI info 160s -- Detecting CXX compiler ABI info - done 160s -- Check for working CXX compiler: /usr/bin/c++ - skipped 160s -- Detecting CXX compile features 160s -- Detecting CXX compile features - done 160s -- Configuring done (0.5s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-39/run_build0/_cmake_test_compile/build 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Unix Makefiles' generator - success 160s -------------------------------------------------------------------------------- 160s 160s Configuring Project 160s Working directory: 160s /tmp/pytest-of-ubuntu/pytest-39/run_build0/_skbuild/linux-x86_64-3.12/cmake-build 160s Command: 160s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-39/run_build0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-39/run_build0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 160s 160s Not searching for unused variables given on the command line. 160s -- The C compiler identification is GNU 14.1.0 160s -- The CXX compiler identification is GNU 14.1.0 160s -- Detecting C compiler ABI info 160s -- Detecting C compiler ABI info - done 160s -- Check for working C compiler: /usr/bin/cc - skipped 160s -- Detecting C compile features 160s -- Detecting C compile features - done 160s -- Detecting CXX compiler ABI info 160s -- Detecting CXX compiler ABI info - done 160s -- Check for working CXX compiler: /usr/bin/c++ - skipped 160s -- Detecting CXX compile features 160s -- Detecting CXX compile features - done 160s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 160s -- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.12.so (found version "3.12.4") 160s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 160s -- Configuring done (1.0s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-39/run_build0/_skbuild/linux-x86_64-3.12/cmake-build 160s [ 50%] Building CXX object hello/CMakeFiles/_hello.dir/_hello.cxx.o 160s [100%] Linking CXX shared module _hello.cpython-312-x86_64-linux-gnu.so 160s [100%] Built target _hello 160s Install the project... 160s -- Install configuration: "Release" 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-39/run_build0/_skbuild/linux-x86_64-3.12/cmake-install/./helloModule.py 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-39/run_build0/_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-39/run_build0/_skbuild/linux-x86_64-3.12/cmake-install/hello/world.py 160s 160s copying bonjourModule.py -> _skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py 160s creating directory _skbuild/linux-x86_64-3.12/cmake-install/bonjour 160s copying bonjour/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/__init__.py 160s copying hello/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py 160s copying hello/__main__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__main__.py 160s creating directory _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data 160s copying /tmp/pytest-of-ubuntu/pytest-39/run_build0/bonjour/data/soleil.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/soleil.txt 160s copying /tmp/pytest-of-ubuntu/pytest-39/run_build0/bonjour/data/ciel.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/ciel.txt 160s copying /tmp/pytest-of-ubuntu/pytest-39/run_build0/bonjour/data/terre.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/terre.txt 160s copying /tmp/pytest-of-ubuntu/pytest-39/run_build0/bonjour/data/terre.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/terre.txt 160s 160s ----------------------------- Captured stderr call ----------------------------- 160s hint: Using 'master' as the name for the initial branch. This default branch name 160s hint: is subject to change. To configure the initial branch name to use in all 160s hint: of your new repositories, which will suppress this warning, call: 160s hint: 160s hint: git config --global init.defaultBranch 160s hint: 160s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 160s hint: 'development'. The just-created branch can be renamed via this command: 160s hint: 160s hint: git branch -m 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 160s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 160s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 160s the cmake_policy command to set the policy and suppress this warning. 160s 160s Call Stack (most recent call first): 160s CMakeLists.txt:5 (find_package) 160s This warning is for project developers. Use -Wno-dev to suppress it. 160s 160s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 160s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 160s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 160s the cmake_policy command to set the policy and suppress this warning. 160s 160s Call Stack (most recent call first): 160s CMakeLists.txt:5 (find_package) 160s This warning is for project developers. Use -Wno-dev to suppress it. 160s 160s _modinit_prefix:PyInit_ 160s ------------------------------ Captured log call ------------------------------- 160s INFO root:dist.py:986 running build 160s INFO root:dist.py:986 running build_py 160s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 160s ______________________________ test_hello_cleans _______________________________ 160s 160s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe04af58b0> 160s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe047c4620> 160s 160s def test_hello_cleans(capfd, caplog): 160s with push_dir(): 160s tmp_dir = _tmpdir("test_hello_cleans") 160s 160s _copy_dir(tmp_dir, os.path.join(SAMPLES_DIR, "hello-cpp")) 160s 160s @project_setup_py_test("hello-cpp", ["build"], tmp_dir=tmp_dir) 160s def run_build(): 160s pass 160s 160s @project_setup_py_test("hello-cpp", ["clean"], tmp_dir=tmp_dir) 160s def run_clean(): 160s pass 160s 160s # Check that a project can be cleaned twice in a row 160s > run_build() 160s 160s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe04af58b0> 160s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe047c4620> 160s run_build = .run_build at 0x7bbe04ef1da0> 160s run_clean = .run_clean at 0x7bbe04ef3ce0> 160s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0') 160s 160s tests/test_hello_cpp.py:163: 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s tests/__init__.py:261: in wrapped 160s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 160s disable_languages_test = False 160s fun = .run_build at 0x7bbe04ef2840> 160s iargs = () 160s ikwargs = {} 160s ret = False 160s wrapped = .run_build at 0x7bbe04ef1da0> 160s /usr/lib/python3.12/contextlib.py:137: in __enter__ 160s return next(self.gen) 160s self = 160s tests/__init__.py:247: in execute_setup_py 160s exec(setup_code) 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = False 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0') 160s setup = 160s setup_args = ['build'] 160s setup_code = at 0x7bbe04a61130, file "setup.py", line 1> 160s setup.py:5: in 160s ??? 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = False 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0') 160s setup = 160s setup_args = ['build'] 160s setup_code = at 0x7bbe04a61130, file "setup.py", line 1> 160s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 160s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 160s BinaryDistribution = .BinaryDistribution'> 160s build_ext_inplace = False 160s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 160s cmake_args_from_args = [] 160s cmake_executable = '/usr/bin/cmake' 160s cmake_install_dir = '' 160s cmake_install_target = 'install' 160s cmake_install_target_from_command = '' 160s cmake_install_target_from_setup = 'install' 160s cmake_languages = ('C', 'CXX') 160s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/helloModule.py', '_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so', '_skbuild/linux-x86_64-3.12/cmake-install/hello/world.py'] 160s cmake_minimum_required_version = None 160s cmake_process_manifest_hook = None 160s cmake_source_dir = '' 160s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 160s cmake_with_sdist = False 160s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 160s cmkr = 160s commands = ['build'] 160s config_type = 'Release' 160s data_files = {} 160s developer_mode = False 160s display_only = False 160s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 160s env_cmake_args = [] 160s force_cmake = False 160s has_cmakelists = True 160s has_invalid_arguments = False 160s help_commands = 0 160s hide_listing = False 160s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s make_args = ['--config', 'Release'] 160s new_py_modules = {'bonjourModule': False, 'helloModule': True} 160s new_scripts = {} 160s original_manifestin_data_files = [] 160s original_package_data = {'bonjour': ['data/*.txt', 'data/terre.txt']} 160s package = 'hello' 160s package_data = {'': ['bonjourModule.py', 'helloModule.py'], 'bonjour': ['data/*.txt', 'data/terre.txt', '__init__.py'], 'hello': ['_hello.cpython-312-x86_64-linux-gnu.so', 'world.py', '__init__.py', '__main__.py']} 160s package_dir = {'bonjour': 'bonjour', 'hello': 'hello'} 160s package_prefixes = [('bonjour', 'bonjour'), ('hello', 'hello')] 160s packages = ['bonjour', 'hello'] 160s plat_name = None 160s process_manifest = None 160s py_modules = ['bonjourModule', 'helloModule'] 160s scripts = [] 160s skip_cmake = False 160s skip_generator_test = False 160s skip_skbuild = False 160s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 160s return distutils.core.setup(**attrs) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 160s return run_commands(dist) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 160s dist = .BinaryDistribution object at 0x7bbe04aefce0> 160s klass = .BinaryDistribution'> 160s ok = True 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 160s dist.run_commands() 160s dist = .BinaryDistribution object at 0x7bbe04aefce0> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 160s self.run_command(cmd) 160s cmd = 'build' 160s self = .BinaryDistribution object at 0x7bbe04aefce0> 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe04aefce0> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe04aefce0> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 160s self.run_command(cmd_name) 160s cmd_name = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 160s self.distribution.run_command(command) 160s command = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe04aefce0> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe04aefce0> 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 160s super().run(*args, **kwargs) 160s __class__ = 160s args = () 160s kwargs = {} 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 160s self.build_modules() 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 160s self.build_module(module, module_file, package) 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s modules = [('', 'bonjourModule', '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py'), ('', 'helloModule', '_skbuild/linux-x86_64-3.12/cmake-install/helloModule.py')] 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 160s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 160s __class__ = 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 160s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s package = '' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 160s self.mkpath(dir) 160s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s module = 'bonjourModule' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 160s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/bonjourModule.py' 160s package = [''] 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 160s dir_util.mkpath(name, mode, dry_run=self.dry_run) 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s self = 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s mode = 511, verbose = True, dry_run = False 160s 160s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 160s """Create a directory and any missing ancestor directories. 160s 160s If the directory already exists (or if 'name' is the empty string, which 160s means the current directory, which of course exists), then do nothing. 160s Raise DistutilsFileError if unable to create some directory along the way 160s (eg. some sub-path exists, but is a file rather than a directory). 160s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 160s Return the list of directories actually created. 160s 160s os.makedirs is not used because: 160s 160s a) It's new to Python 1.5.2, and 160s b) it blows up if the directory already exists (in which case it should 160s silently succeed). 160s """ 160s 160s global _path_created 160s 160s # Detect a common bug -- name is None 160s if not isinstance(name, str): 160s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 160s 160s # XXX what's the better way to handle verbosity? print as we create 160s # each directory in the path (the current behaviour), or only announce 160s # the creation of the whole path? (quite easy to do the latter since 160s # we're not using a recursive algorithm) 160s 160s name = os.path.normpath(name) 160s created_dirs = [] 160s if os.path.isdir(name) or name == '': 160s return created_dirs 160s if os.path.abspath(name) in _path_created: 160s return created_dirs 160s 160s (head, tail) = os.path.split(name) 160s tails = [tail] # stack of lone dirs to create 160s 160s while head and tail and not os.path.isdir(head): 160s (head, tail) = os.path.split(head) 160s tails.insert(0, tail) # push next higher dir onto stack 160s 160s # now 'head' contains the deepest directory that already exists 160s # (that is, the child of 'head' in 'name' is the highest directory 160s # that does *not* exist) 160s for d in tails: 160s # print "head = %s, d = %s: " % (head, d), 160s head = os.path.join(head, d) 160s abs_head = os.path.abspath(head) 160s 160s if abs_head in _path_created: 160s continue 160s 160s if verbose >= 1: 160s log.info("creating %s", head) 160s 160s if not dry_run: 160s try: 160s os.mkdir(head, mode) 160s except OSError as exc: 160s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 160s raise DistutilsFileError( 160s f"could not create '{head}': {exc.args[-1]}" 160s ) 160s created_dirs.append(head) 160s 160s > _path_created.add(abs_head) 160s E AttributeError: 'dict' object has no attribute 'add' 160s 160s abs_head = '/tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 160s d = 'lib.linux-x86_64-cpython-312' 160s dry_run = False 160s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s tail = 'lib.linux-x86_64-cpython-312' 160s tails = ['lib.linux-x86_64-cpython-312'] 160s verbose = True 160s 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 160s ----------------------------- Captured stdout call ----------------------------- 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Ninja' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- Configuring incomplete, errors occurred! 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Ninja' generator - failure 160s -------------------------------------------------------------------------------- 160s 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Unix Makefiles' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- The C compiler identification is GNU 14.1.0 160s -- Detecting C compiler ABI info 160s -- Detecting C compiler ABI info - done 160s -- Check for working C compiler: /usr/bin/cc - skipped 160s -- Detecting C compile features 160s -- Detecting C compile features - done 160s -- The CXX compiler identification is GNU 14.1.0 160s -- Detecting CXX compiler ABI info 160s -- Detecting CXX compiler ABI info - done 160s -- Check for working CXX compiler: /usr/bin/c++ - skipped 160s -- Detecting CXX compile features 160s -- Detecting CXX compile features - done 160s -- Configuring done (0.4s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/_cmake_test_compile/build 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Unix Makefiles' generator - success 160s -------------------------------------------------------------------------------- 160s 160s Configuring Project 160s Working directory: 160s /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/_skbuild/linux-x86_64-3.12/cmake-build 160s Command: 160s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 160s 160s Not searching for unused variables given on the command line. 160s -- The C compiler identification is GNU 14.1.0 160s -- The CXX compiler identification is GNU 14.1.0 160s -- Detecting C compiler ABI info 160s -- Detecting C compiler ABI info - done 160s -- Check for working C compiler: /usr/bin/cc - skipped 160s -- Detecting C compile features 160s -- Detecting C compile features - done 160s -- Detecting CXX compiler ABI info 160s -- Detecting CXX compiler ABI info - done 160s -- Check for working CXX compiler: /usr/bin/c++ - skipped 160s -- Detecting CXX compile features 160s -- Detecting CXX compile features - done 160s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 160s -- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.12.so (found version "3.12.4") 160s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 160s -- Configuring done (1.0s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/_skbuild/linux-x86_64-3.12/cmake-build 160s [ 50%] Building CXX object hello/CMakeFiles/_hello.dir/_hello.cxx.o 160s [100%] Linking CXX shared module _hello.cpython-312-x86_64-linux-gnu.so 160s [100%] Built target _hello 160s Install the project... 160s -- Install configuration: "Release" 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/_skbuild/linux-x86_64-3.12/cmake-install/./helloModule.py 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so 160s -- Installing: /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/_skbuild/linux-x86_64-3.12/cmake-install/hello/world.py 160s 160s copying bonjourModule.py -> _skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py 160s creating directory _skbuild/linux-x86_64-3.12/cmake-install/bonjour 160s copying bonjour/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/__init__.py 160s copying hello/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py 160s copying hello/__main__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__main__.py 160s creating directory _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data 160s copying /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/bonjour/data/soleil.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/soleil.txt 160s copying /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/bonjour/data/ciel.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/ciel.txt 160s copying /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/bonjour/data/terre.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/terre.txt 160s copying /tmp/pytest-of-ubuntu/pytest-40/test_hello_cleans0/bonjour/data/terre.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/terre.txt 160s 160s ----------------------------- Captured stderr call ----------------------------- 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 160s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 160s Compatibility with CMake < 3.5 will be removed from a future version of 160s CMake. 160s 160s Update the VERSION argument value or use a ... suffix to tell 160s CMake that the project does not need compatibility with older versions. 160s 160s 160s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 160s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 160s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 160s the cmake_policy command to set the policy and suppress this warning. 160s 160s Call Stack (most recent call first): 160s CMakeLists.txt:5 (find_package) 160s This warning is for project developers. Use -Wno-dev to suppress it. 160s 160s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 160s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 160s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 160s the cmake_policy command to set the policy and suppress this warning. 160s 160s Call Stack (most recent call first): 160s CMakeLists.txt:5 (find_package) 160s This warning is for project developers. Use -Wno-dev to suppress it. 160s 160s _modinit_prefix:PyInit_ 160s ------------------------------ Captured log call ------------------------------- 160s INFO root:dist.py:986 running build 160s INFO root:dist.py:986 running build_py 160s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 160s ___________________________ test_hello_cython_builds ___________________________ 160s 160s iargs = (), ikwargs = {} 160s 160s @functools.wraps(fun) 160s def wrapped(*iargs, **ikwargs): 160s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 160s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 160s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 160s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 160s 160s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 160s 160s disable_languages_test = False 160s fun = 160s iargs = () 160s ikwargs = {} 160s ret = False 160s wrapped = 160s 160s tests/__init__.py:261: 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s /usr/lib/python3.12/contextlib.py:137: in __enter__ 160s return next(self.gen) 160s self = 160s tests/__init__.py:247: in execute_setup_py 160s exec(setup_code) 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = False 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0') 160s setup = 160s setup_args = ['build'] 160s setup_code = at 0x7bbe04beb730, file "setup.py", line 1> 160s setup.py:5: in 160s ??? 160s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 160s disable_languages_test = False 160s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 160s project_dir = local('/tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0') 160s setup = 160s setup_args = ['build'] 160s setup_code = at 0x7bbe04beb730, file "setup.py", line 1> 160s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 160s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 160s BinaryDistribution = .BinaryDistribution'> 160s build_ext_inplace = False 160s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 160s cmake_args_from_args = [] 160s cmake_executable = '/usr/bin/cmake' 160s cmake_install_dir = '' 160s cmake_install_target = 'install' 160s cmake_install_target_from_command = '' 160s cmake_install_target_from_setup = 'install' 160s cmake_languages = ('C', 'CXX') 160s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so'] 160s cmake_minimum_required_version = None 160s cmake_process_manifest_hook = None 160s cmake_source_dir = '' 160s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 160s cmake_with_sdist = False 160s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 160s cmkr = 160s commands = ['build'] 160s config_type = 'Release' 160s data_files = {} 160s developer_mode = False 160s display_only = False 160s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 160s env_cmake_args = [] 160s force_cmake = False 160s has_cmakelists = True 160s has_invalid_arguments = False 160s help_commands = 0 160s hide_listing = False 160s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cython version)', ...} 160s make_args = ['--config', 'Release'] 160s msg = "package_dir={'hello_cython': 'hello/'} ends with a trailing slash, which is not supported by setuptools." 160s new_py_modules = {} 160s new_scripts = {} 160s original_manifestin_data_files = [] 160s original_package_data = {} 160s package = 'hello_cython' 160s package_data = {'hello_cython': ['_hello.cpython-312-x86_64-linux-gnu.so', 'hello/__init__.py', 'hello/__main__.py']} 160s package_dir = {'hello_cython': 'hello'} 160s package_prefixes = [('hello', 'hello_cython')] 160s packages = ['hello_cython'] 160s plat_name = None 160s prefix = 'hello/' 160s process_manifest = None 160s py_modules = [] 160s scripts = [] 160s skip_cmake = False 160s skip_generator_test = False 160s skip_skbuild = False 160s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 160s return distutils.core.setup(**attrs) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cython version)', ...} 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 160s return run_commands(dist) 160s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cython version)', ...} 160s dist = .BinaryDistribution object at 0x7bbe04ae5790> 160s klass = .BinaryDistribution'> 160s ok = True 160s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 160s dist.run_commands() 160s dist = .BinaryDistribution object at 0x7bbe04ae5790> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 160s self.run_command(cmd) 160s cmd = 'build' 160s self = .BinaryDistribution object at 0x7bbe04ae5790> 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe04ae5790> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build' 160s self = .BinaryDistribution object at 0x7bbe04ae5790> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 160s self.run_command(cmd_name) 160s cmd_name = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 160s self.distribution.run_command(command) 160s command = 'build_py' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 160s super().run_command(command) 160s __class__ = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe04ae5790> 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 160s cmd_obj.run() 160s cmd_obj = 160s command = 'build_py' 160s self = .BinaryDistribution object at 0x7bbe04ae5790> 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 160s super().run(*args, **kwargs) 160s __class__ = 160s args = () 160s kwargs = {} 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 160s self.build_packages() 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 160s self.build_module(module, module_file, package) 160s module = '__init__' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 160s modules = [('hello_cython', '__init__', '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py'), ('hello_cython', '__main__', '_skbuild/linux-x86_64-3.12/cmake-install/hello/__main__.py')] 160s package = 'hello_cython' 160s package_ = 'hello_cython' 160s package_dir = '_skbuild/linux-x86_64-3.12/cmake-install/hello' 160s self = 160s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 160s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 160s __class__ = 160s module = '__init__' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 160s package = 'hello_cython' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 160s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 160s module = '__init__' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 160s package = 'hello_cython' 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 160s self.mkpath(dir) 160s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello_cython' 160s module = '__init__' 160s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 160s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello_cython/__init__.py' 160s package = ['hello_cython'] 160s self = 160s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 160s dir_util.mkpath(name, mode, dry_run=self.dry_run) 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello_cython' 160s self = 160s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 160s 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello_cython' 160s mode = 511, verbose = True, dry_run = False 160s 160s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 160s """Create a directory and any missing ancestor directories. 160s 160s If the directory already exists (or if 'name' is the empty string, which 160s means the current directory, which of course exists), then do nothing. 160s Raise DistutilsFileError if unable to create some directory along the way 160s (eg. some sub-path exists, but is a file rather than a directory). 160s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 160s Return the list of directories actually created. 160s 160s os.makedirs is not used because: 160s 160s a) It's new to Python 1.5.2, and 160s b) it blows up if the directory already exists (in which case it should 160s silently succeed). 160s """ 160s 160s global _path_created 160s 160s # Detect a common bug -- name is None 160s if not isinstance(name, str): 160s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 160s 160s # XXX what's the better way to handle verbosity? print as we create 160s # each directory in the path (the current behaviour), or only announce 160s # the creation of the whole path? (quite easy to do the latter since 160s # we're not using a recursive algorithm) 160s 160s name = os.path.normpath(name) 160s created_dirs = [] 160s if os.path.isdir(name) or name == '': 160s return created_dirs 160s if os.path.abspath(name) in _path_created: 160s return created_dirs 160s 160s (head, tail) = os.path.split(name) 160s tails = [tail] # stack of lone dirs to create 160s 160s while head and tail and not os.path.isdir(head): 160s (head, tail) = os.path.split(head) 160s tails.insert(0, tail) # push next higher dir onto stack 160s 160s # now 'head' contains the deepest directory that already exists 160s # (that is, the child of 'head' in 'name' is the highest directory 160s # that does *not* exist) 160s for d in tails: 160s # print "head = %s, d = %s: " % (head, d), 160s head = os.path.join(head, d) 160s abs_head = os.path.abspath(head) 160s 160s if abs_head in _path_created: 160s continue 160s 160s if verbose >= 1: 160s log.info("creating %s", head) 160s 160s if not dry_run: 160s try: 160s os.mkdir(head, mode) 160s except OSError as exc: 160s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 160s raise DistutilsFileError( 160s f"could not create '{head}': {exc.args[-1]}" 160s ) 160s created_dirs.append(head) 160s 160s > _path_created.add(abs_head) 160s E AttributeError: 'dict' object has no attribute 'add' 160s 160s abs_head = '/tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 160s d = 'lib.linux-x86_64-cpython-312' 160s dry_run = False 160s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 160s mode = 511 160s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello_cython' 160s tail = 'lib.linux-x86_64-cpython-312' 160s tails = ['lib.linux-x86_64-cpython-312', 'hello_cython'] 160s verbose = True 160s 160s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 160s ----------------------------- Captured stdout call ----------------------------- 160s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0/.git/ 160s [master (root-commit) 8191083] Initial commit 160s 6 files changed, 42 insertions(+) 160s create mode 100644 CMakeLists.txt 160s create mode 100644 hello/CMakeLists.txt 160s create mode 100644 hello/__init__.py 160s create mode 100644 hello/__main__.py 160s create mode 100644 hello/_hello.pyx 160s create mode 100644 setup.py 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Ninja' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- Configuring incomplete, errors occurred! 160s -- 160s ------- 160s ------------ 160s ----------------- 160s ---------------------- 160s --------------------------- 160s -------------------------------- 160s -- Trying 'Ninja' generator - failure 160s -------------------------------------------------------------------------------- 160s 160s 160s 160s -------------------------------------------------------------------------------- 160s -- Trying 'Unix Makefiles' generator 160s -------------------------------- 160s --------------------------- 160s ---------------------- 160s ----------------- 160s ------------ 160s ------- 160s -- 160s Not searching for unused variables given on the command line. 160s -- The C compiler identification is GNU 14.1.0 160s -- Detecting C compiler ABI info 160s -- Detecting C compiler ABI info - done 160s -- Check for working C compiler: /usr/bin/cc - skipped 160s -- Detecting C compile features 160s -- Detecting C compile features - done 160s -- The CXX compiler identification is GNU 14.1.0 160s -- Detecting CXX compiler ABI info 160s -- Detecting CXX compiler ABI info - done 160s -- Check for working CXX compiler: /usr/bin/c++ - skipped 160s -- Detecting CXX compile features 160s -- Detecting CXX compile features - done 160s -- Configuring done (0.5s) 160s -- Generating done (0.0s) 160s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0/_cmake_test_compile/build 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Unix Makefiles' generator - success 161s -------------------------------------------------------------------------------- 161s 161s Configuring Project 161s Working directory: 161s /tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0/_skbuild/linux-x86_64-3.12/cmake-build 161s Command: 161s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 161s 161s Not searching for unused variables given on the command line. 161s -- The C compiler identification is GNU 14.1.0 161s -- The CXX compiler identification is GNU 14.1.0 161s -- Detecting C compiler ABI info 161s -- Detecting C compiler ABI info - done 161s -- Check for working C compiler: /usr/bin/cc - skipped 161s -- Detecting C compile features 161s -- Detecting C compile features - done 161s -- Detecting CXX compiler ABI info 161s -- Detecting CXX compiler ABI info - done 161s -- Check for working CXX compiler: /usr/bin/c++ - skipped 161s -- Detecting CXX compile features 161s -- Detecting CXX compile features - done 161s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 161s -- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.12.so (found version "3.12.4") 161s -- Found Cython: /usr/bin/cython 161s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 161s -- Configuring done (1.2s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0/_skbuild/linux-x86_64-3.12/cmake-build 161s [ 33%] Generating CXX source hello/_hello.cxx 161s [ 66%] Building CXX object hello/CMakeFiles/_hello.dir/_hello.cxx.o 161s [100%] Linking CXX shared module _hello.cpython-312-x86_64-linux-gnu.so 161s [100%] Built target _hello 161s Install the project... 161s -- Install configuration: "Release" 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0/_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so 161s 161s copying hello/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py 161s copying hello/__main__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__main__.py 161s 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 161s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 161s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 161s the cmake_policy command to set the policy and suppress this warning. 161s 161s Call Stack (most recent call first): 161s CMakeLists.txt:5 (find_package) 161s This warning is for project developers. Use -Wno-dev to suppress it. 161s 161s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 161s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 161s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 161s the cmake_policy command to set the policy and suppress this warning. 161s 161s Call Stack (most recent call first): 161s CMakeLists.txt:5 (find_package) 161s This warning is for project developers. Use -Wno-dev to suppress it. 161s 161s _modinit_prefix:PyInit_ 161s /usr/lib/python3/dist-packages/Cython/Compiler/Main.py:381: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /tmp/pytest-of-ubuntu/pytest-41/test_hello_cython_builds0/hello/_hello.pyx 161s tree = Parsing.p_module(s, pxd, full_module_name) 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 161s ___________________________ test_hello_cython_sdist ____________________________ 161s 161s iargs = (), ikwargs = {} 161s 161s @functools.wraps(fun) 161s def wrapped(*iargs, **ikwargs): 161s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 161s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 161s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 161s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 161s 161s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 161s 161s disable_languages_test = False 161s fun = 161s iargs = () 161s ikwargs = {} 161s ret = False 161s wrapped = 161s 161s tests/__init__.py:261: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:247: in execute_setup_py 161s exec(setup_code) 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = False 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-42/test_hello_cython_sdist0') 161s setup = 161s setup_args = ['sdist'] 161s setup_code = at 0x7bbe04bea630, file "setup.py", line 1> 161s setup.py:5: in 161s ??? 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = False 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-42/test_hello_cython_sdist0') 161s setup = 161s setup_args = ['sdist'] 161s setup_code = at 0x7bbe04bea630, file "setup.py", line 1> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s build_ext_inplace = False 161s cmake_args = () 161s cmake_args_from_args = [] 161s cmake_executable = None 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s commands = ['sdist'] 161s display_only = False 161s force_cmake = False 161s has_cmakelists = True 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package (cython version)', 'license': 'MIT', ...} 161s make_args = [] 161s msg = "package_dir={'hello_cython': 'hello/'} ends with a trailing slash, which is not supported by setuptools." 161s package = 'hello_cython' 161s plat_name = None 161s prefix = 'hello/' 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = True 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package (cython version)', 'license': 'MIT', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package (cython version)', 'license': 'MIT', ...} 161s dist = 161s klass = 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'sdist' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'sdist' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'sdist' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/sdist.py:39: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/sdist.py:52: in run 161s self.run_command('egg_info') 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'egg_info' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'egg_info' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'egg_info' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/egg_info.py:306: in run 161s self.mkpath(self.egg_info) 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = 'hello/hello_cython.egg-info' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = 'hello/hello_cython.egg-info', mode = 511, verbose = True 161s dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-42/test_hello_cython_sdist0/hello/hello_cython.egg-info' 161s created_dirs = ['hello/hello_cython.egg-info'] 161s d = 'hello_cython.egg-info' 161s dry_run = False 161s head = 'hello/hello_cython.egg-info' 161s mode = 511 161s name = 'hello/hello_cython.egg-info' 161s tail = 'hello_cython.egg-info' 161s tails = ['hello_cython.egg-info'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-42/test_hello_cython_sdist0/.git/ 161s [master (root-commit) 5906ad9] Initial commit 161s 6 files changed, 42 insertions(+) 161s create mode 100644 CMakeLists.txt 161s create mode 100644 hello/CMakeLists.txt 161s create mode 100644 hello/__init__.py 161s create mode 100644 hello/__main__.py 161s create mode 100644 hello/_hello.pyx 161s create mode 100644 setup.py 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running sdist 161s INFO root:dist.py:986 running generate_source_manifest 161s INFO root:dist.py:986 running egg_info 161s INFO root:dir_util.py:70 creating hello/hello_cython.egg-info 161s ___________________________ test_hello_cython_wheel ____________________________ 161s 161s iargs = (), ikwargs = {} 161s 161s @functools.wraps(fun) 161s def wrapped(*iargs, **ikwargs): 161s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 161s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 161s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 161s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 161s 161s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 161s 161s disable_languages_test = False 161s fun = 161s iargs = () 161s ikwargs = {} 161s ret = False 161s wrapped = 161s 161s tests/__init__.py:261: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:247: in execute_setup_py 161s exec(setup_code) 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = False 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0') 161s setup = 161s setup_args = ['bdist_wheel'] 161s setup_code = at 0x7bbe04bea030, file "setup.py", line 1> 161s setup.py:5: in 161s ??? 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = False 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0') 161s setup = 161s setup_args = ['bdist_wheel'] 161s setup_code = at 0x7bbe04bea030, file "setup.py", line 1> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s BinaryDistribution = .BinaryDistribution'> 161s build_ext_inplace = False 161s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 161s cmake_args_from_args = [] 161s cmake_executable = '/usr/bin/cmake' 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_install_target_from_command = '' 161s cmake_install_target_from_setup = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so'] 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s cmkr = 161s commands = ['bdist_wheel'] 161s config_type = 'Release' 161s data_files = {} 161s developer_mode = False 161s display_only = False 161s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 161s env_cmake_args = [] 161s force_cmake = False 161s has_cmakelists = True 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cython version)', ...} 161s make_args = ['--config', 'Release'] 161s msg = "package_dir={'hello_cython': 'hello/'} ends with a trailing slash, which is not supported by setuptools." 161s new_py_modules = {} 161s new_scripts = {} 161s original_manifestin_data_files = [] 161s original_package_data = {} 161s package = 'hello_cython' 161s package_data = {'hello_cython': ['_hello.cpython-312-x86_64-linux-gnu.so', 'hello/__init__.py', 'hello/__main__.py']} 161s package_dir = {'hello_cython': 'hello'} 161s package_prefixes = [('hello', 'hello_cython')] 161s packages = ['hello_cython'] 161s plat_name = None 161s prefix = 'hello/' 161s process_manifest = None 161s py_modules = [] 161s scripts = [] 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = False 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cython version)', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cython version)', ...} 161s dist = .BinaryDistribution object at 0x7bbe04b36180> 161s klass = .BinaryDistribution'> 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = .BinaryDistribution object at 0x7bbe04b36180> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'bdist_wheel' 161s self = .BinaryDistribution object at 0x7bbe04b36180> 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'bdist_wheel' 161s self = .BinaryDistribution object at 0x7bbe04b36180> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'bdist_wheel' 161s self = .BinaryDistribution object at 0x7bbe04b36180> 161s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s old_write_files = 161s self = 161s update_write_files = .update_write_files at 0x7bbe047f0680> 161s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 161s self.run_command("build") 161s build_ext = 161s build_scripts = 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe04b36180> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe04b36180> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe04b36180> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe04b36180> 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 161s self.build_packages() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 161s self.build_module(module, module_file, package) 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 161s modules = [('hello_cython', '__init__', '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py'), ('hello_cython', '__main__', '_skbuild/linux-x86_64-3.12/cmake-install/hello/__main__.py')] 161s package = 'hello_cython' 161s package_ = 'hello_cython' 161s package_dir = '_skbuild/linux-x86_64-3.12/cmake-install/hello' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 161s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 161s __class__ = 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 161s package = 'hello_cython' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 161s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 161s package = 'hello_cython' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 161s self.mkpath(dir) 161s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello_cython' 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 161s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello_cython/__init__.py' 161s package = ['hello_cython'] 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello_cython' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello_cython' 161s mode = 511, verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 161s d = 'lib.linux-x86_64-cpython-312' 161s dry_run = False 161s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello_cython' 161s tail = 'lib.linux-x86_64-cpython-312' 161s tails = ['lib.linux-x86_64-cpython-312', 'hello_cython'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0/.git/ 161s [master (root-commit) ba05bd0] Initial commit 161s 6 files changed, 42 insertions(+) 161s create mode 100644 CMakeLists.txt 161s create mode 100644 hello/CMakeLists.txt 161s create mode 100644 hello/__init__.py 161s create mode 100644 hello/__main__.py 161s create mode 100644 hello/_hello.pyx 161s create mode 100644 setup.py 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Ninja' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s Not searching for unused variables given on the command line. 161s -- Configuring incomplete, errors occurred! 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Ninja' generator - failure 161s -------------------------------------------------------------------------------- 161s 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Unix Makefiles' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s Not searching for unused variables given on the command line. 161s -- The C compiler identification is GNU 14.1.0 161s -- Detecting C compiler ABI info 161s -- Detecting C compiler ABI info - done 161s -- Check for working C compiler: /usr/bin/cc - skipped 161s -- Detecting C compile features 161s -- Detecting C compile features - done 161s -- The CXX compiler identification is GNU 14.1.0 161s -- Detecting CXX compiler ABI info 161s -- Detecting CXX compiler ABI info - done 161s -- Check for working CXX compiler: /usr/bin/c++ - skipped 161s -- Detecting CXX compile features 161s -- Detecting CXX compile features - done 161s -- Configuring done (0.5s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0/_cmake_test_compile/build 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Unix Makefiles' generator - success 161s -------------------------------------------------------------------------------- 161s 161s Configuring Project 161s Working directory: 161s /tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0/_skbuild/linux-x86_64-3.12/cmake-build 161s Command: 161s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 161s 161s Not searching for unused variables given on the command line. 161s -- The C compiler identification is GNU 14.1.0 161s -- The CXX compiler identification is GNU 14.1.0 161s -- Detecting C compiler ABI info 161s -- Detecting C compiler ABI info - done 161s -- Check for working C compiler: /usr/bin/cc - skipped 161s -- Detecting C compile features 161s -- Detecting C compile features - done 161s -- Detecting CXX compiler ABI info 161s -- Detecting CXX compiler ABI info - done 161s -- Check for working CXX compiler: /usr/bin/c++ - skipped 161s -- Detecting CXX compile features 161s -- Detecting CXX compile features - done 161s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 161s -- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.12.so (found version "3.12.4") 161s -- Found Cython: /usr/bin/cython 161s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 161s -- Configuring done (1.1s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0/_skbuild/linux-x86_64-3.12/cmake-build 161s [ 33%] Generating CXX source hello/_hello.cxx 161s [ 66%] Building CXX object hello/CMakeFiles/_hello.dir/_hello.cxx.o 161s [100%] Linking CXX shared module _hello.cpython-312-x86_64-linux-gnu.so 161s [100%] Built target _hello 161s Install the project... 161s -- Install configuration: "Release" 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0/_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so 161s 161s copying hello/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py 161s copying hello/__main__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__main__.py 161s 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 161s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 161s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 161s the cmake_policy command to set the policy and suppress this warning. 161s 161s Call Stack (most recent call first): 161s CMakeLists.txt:5 (find_package) 161s This warning is for project developers. Use -Wno-dev to suppress it. 161s 161s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 161s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 161s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 161s the cmake_policy command to set the policy and suppress this warning. 161s 161s Call Stack (most recent call first): 161s CMakeLists.txt:5 (find_package) 161s This warning is for project developers. Use -Wno-dev to suppress it. 161s 161s _modinit_prefix:PyInit_ 161s /usr/lib/python3/dist-packages/Cython/Compiler/Main.py:381: FutureWarning: Cython directive 'language_level' not set, using '3str' for now (Py3). This has changed from earlier releases! File: /tmp/pytest-of-ubuntu/pytest-43/test_hello_cython_wheel0/hello/_hello.pyx 161s tree = Parsing.p_module(s, pxd, full_module_name) 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running bdist_wheel 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 161s ____________________________ test_hello_pure_builds ____________________________ 161s 161s iargs = () 161s ikwargs = {'capsys': <_pytest.capture.CaptureFixture object at 0x7bbe04a5b440>} 161s 161s @functools.wraps(fun) 161s def wrapped(*iargs, **ikwargs): 161s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 161s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 161s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 161s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 161s 161s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 161s 161s disable_languages_test = True 161s fun = 161s iargs = () 161s ikwargs = {'capsys': <_pytest.capture.CaptureFixture object at 0x7bbe04a5b440>} 161s ret = False 161s wrapped = 161s 161s tests/__init__.py:261: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:244: in execute_setup_py 161s exec(setup_code) 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-44/test_hello_pure_builds0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe04beb330, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe047f2c00> 161s setup.py:5: in 161s ??? 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-44/test_hello_pure_builds0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe04beb330, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe047f2c00> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s build_ext_inplace = False 161s cmake_args = () 161s cmake_args_from_args = [] 161s cmake_executable = None 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s commands = ['build'] 161s display_only = False 161s force_cmake = False 161s has_cmakelists = False 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 161s make_args = [] 161s plat_name = None 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = True 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 161s dist = 161s klass = 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 161s self.build_packages() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 161s self.build_module(module, module_file, package) 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s modules = [('hello', '__init__', 'hello/__init__.py')] 161s package = 'hello' 161s package_ = 'hello' 161s package_dir = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 161s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 161s __class__ = 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 161s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 161s self.mkpath(dir) 161s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello' 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello/__init__.py' 161s package = ['hello'] 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello', mode = 511 161s verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-44/test_hello_pure_builds0/_skbuild' 161s created_dirs = ['_skbuild'] 161s d = '_skbuild' 161s dry_run = False 161s head = '_skbuild' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello' 161s tail = '_skbuild' 161s tails = ['_skbuild', 'linux-x86_64-3.12', 'setuptools', 'lib', 'hello'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-44/test_hello_pure_builds0/.git/ 161s [master (root-commit) 4f2dc80] Initial commit 161s 2 files changed, 12 insertions(+) 161s create mode 100644 hello/__init__.py 161s create mode 100644 setup.py 161s skipping skbuild (no CMakeLists.txt found) 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild 161s ____________________________ test_hello_pure_sdist _____________________________ 161s 161s iargs = (), ikwargs = {} 161s 161s @functools.wraps(fun) 161s def wrapped(*iargs, **ikwargs): 161s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 161s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 161s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 161s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 161s 161s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 161s 161s disable_languages_test = True 161s fun = 161s iargs = () 161s ikwargs = {} 161s ret = False 161s wrapped = 161s 161s tests/__init__.py:261: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:244: in execute_setup_py 161s exec(setup_code) 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-45/test_hello_pure_sdist0') 161s setup = 161s setup_args = ['sdist'] 161s setup_code = at 0x7bbe04be9f30, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe047f3920> 161s setup.py:5: in 161s ??? 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-45/test_hello_pure_sdist0') 161s setup = 161s setup_args = ['sdist'] 161s setup_code = at 0x7bbe04be9f30, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe047f3920> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s build_ext_inplace = False 161s cmake_args = () 161s cmake_args_from_args = [] 161s cmake_executable = None 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s commands = ['sdist'] 161s display_only = False 161s force_cmake = False 161s has_cmakelists = False 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 161s make_args = [] 161s plat_name = None 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = True 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 161s dist = 161s klass = 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'sdist' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'sdist' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'sdist' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/sdist.py:39: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/sdist.py:52: in run 161s self.run_command('egg_info') 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'egg_info' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'egg_info' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'egg_info' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/egg_info.py:306: in run 161s self.mkpath(self.egg_info) 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = 'hello_pure.egg-info' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = 'hello_pure.egg-info', mode = 511, verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-45/test_hello_pure_sdist0/hello_pure.egg-info' 161s created_dirs = ['hello_pure.egg-info'] 161s d = 'hello_pure.egg-info' 161s dry_run = False 161s head = 'hello_pure.egg-info' 161s mode = 511 161s name = 'hello_pure.egg-info' 161s tail = 'hello_pure.egg-info' 161s tails = ['hello_pure.egg-info'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-45/test_hello_pure_sdist0/.git/ 161s [master (root-commit) 4f2dc80] Initial commit 161s 2 files changed, 12 insertions(+) 161s create mode 100644 hello/__init__.py 161s create mode 100644 setup.py 161s skipping skbuild (no CMakeLists.txt found) 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running sdist 161s INFO root:dist.py:986 running generate_source_manifest 161s INFO root:dist.py:986 running egg_info 161s INFO root:dir_util.py:70 creating hello_pure.egg-info 161s ____________________________ test_hello_pure_wheel _____________________________ 161s 161s iargs = (), ikwargs = {} 161s 161s @functools.wraps(fun) 161s def wrapped(*iargs, **ikwargs): 161s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 161s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 161s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 161s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 161s 161s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 161s 161s disable_languages_test = True 161s fun = 161s iargs = () 161s ikwargs = {} 161s ret = False 161s wrapped = 161s 161s tests/__init__.py:261: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:244: in execute_setup_py 161s exec(setup_code) 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-46/test_hello_pure_wheel0') 161s setup = 161s setup_args = ['bdist_wheel'] 161s setup_code = at 0x7bbe04be9830, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe047f3ce0> 161s setup.py:5: in 161s ??? 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-46/test_hello_pure_wheel0') 161s setup = 161s setup_args = ['bdist_wheel'] 161s setup_code = at 0x7bbe04be9830, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe047f3ce0> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s build_ext_inplace = False 161s cmake_args = () 161s cmake_args_from_args = [] 161s cmake_executable = None 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s commands = ['bdist_wheel'] 161s display_only = False 161s force_cmake = False 161s has_cmakelists = False 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 161s make_args = [] 161s plat_name = None 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = True 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 161s dist = 161s klass = 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'bdist_wheel' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'bdist_wheel' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'bdist_wheel' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s old_write_files = 161s self = 161s update_write_files = .update_write_files at 0x7bbe04de9bc0> 161s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 161s self.run_command("build") 161s build_ext = 161s build_scripts = 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 161s self.build_packages() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 161s self.build_module(module, module_file, package) 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s modules = [('hello', '__init__', 'hello/__init__.py')] 161s package = 'hello' 161s package_ = 'hello' 161s package_dir = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 161s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 161s __class__ = 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 161s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 161s self.mkpath(dir) 161s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello' 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello/__init__.py' 161s package = ['hello'] 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello', mode = 511 161s verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-46/test_hello_pure_wheel0/_skbuild' 161s created_dirs = ['_skbuild'] 161s d = '_skbuild' 161s dry_run = False 161s head = '_skbuild' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello' 161s tail = '_skbuild' 161s tails = ['_skbuild', 'linux-x86_64-3.12', 'setuptools', 'lib', 'hello'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-46/test_hello_pure_wheel0/.git/ 161s [master (root-commit) 4524cad] Initial commit 161s 2 files changed, 12 insertions(+) 161s create mode 100644 hello/__init__.py 161s create mode 100644 setup.py 161s skipping skbuild (no CMakeLists.txt found) 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running bdist_wheel 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild 161s _______________________________ test_hello_clean _______________________________ 161s 161s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe0474ca70> 161s 161s def test_hello_clean(capfd): 161s with push_dir(): 161s 161s @project_setup_py_test("hello-pure", ["build"], disable_languages_test=True, ret=True) 161s def run_build(): 161s pass 161s 161s > tmp_dir = run_build()[0] 161s 161s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe0474ca70> 161s run_build = .run_build at 0x7bbe047dd080> 161s 161s tests/test_hello_pure.py:65: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s tests/__init__.py:261: in wrapped 161s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 161s disable_languages_test = True 161s fun = .run_build at 0x7bbe047dcc20> 161s iargs = () 161s ikwargs = {} 161s ret = True 161s wrapped = .run_build at 0x7bbe047dd080> 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:244: in execute_setup_py 161s exec(setup_code) 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-47/run_build0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe04be9730, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe047f3b00> 161s setup.py:5: in 161s ??? 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-47/run_build0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe04be9730, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe047f3b00> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s build_ext_inplace = False 161s cmake_args = () 161s cmake_args_from_args = [] 161s cmake_executable = None 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s commands = ['build'] 161s display_only = False 161s force_cmake = False 161s has_cmakelists = False 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 161s make_args = [] 161s plat_name = None 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = True 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 161s dist = 161s klass = 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 161s self.build_packages() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 161s self.build_module(module, module_file, package) 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s modules = [('hello', '__init__', 'hello/__init__.py')] 161s package = 'hello' 161s package_ = 'hello' 161s package_dir = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 161s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 161s __class__ = 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 161s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 161s self.mkpath(dir) 161s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello' 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello/__init__.py' 161s package = ['hello'] 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello', mode = 511 161s verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-47/run_build0/_skbuild' 161s created_dirs = ['_skbuild'] 161s d = '_skbuild' 161s dry_run = False 161s head = '_skbuild' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello' 161s tail = '_skbuild' 161s tails = ['_skbuild', 'linux-x86_64-3.12', 'setuptools', 'lib', 'hello'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-47/run_build0/.git/ 161s [master (root-commit) 4524cad] Initial commit 161s 2 files changed, 12 insertions(+) 161s create mode 100644 hello/__init__.py 161s create mode 100644 setup.py 161s skipping skbuild (no CMakeLists.txt found) 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild 161s __________________________ test_include_exclude_data ___________________________ 161s 161s iargs = (), ikwargs = {} 161s 161s @functools.wraps(fun) 161s def wrapped(*iargs, **ikwargs): 161s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 161s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 161s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 161s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 161s 161s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 161s 161s disable_languages_test = False 161s fun = 161s iargs = () 161s ikwargs = {} 161s ret = False 161s wrapped = 161s 161s tests/__init__.py:261: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:247: in execute_setup_py 161s exec(setup_code) 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = False 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0') 161s setup = 161s setup_args = ['bdist_wheel'] 161s setup_code = at 0x7bbe04a60f10, file "setup.py", line 1> 161s setup.py:5: in 161s ??? 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = False 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0') 161s setup = 161s setup_args = ['bdist_wheel'] 161s setup_code = at 0x7bbe04a60f10, file "setup.py", line 1> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s BinaryDistribution = .BinaryDistribution'> 161s build_ext_inplace = False 161s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 161s cmake_args_from_args = [] 161s cmake_executable = '/usr/bin/cmake' 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_install_target_from_command = '' 161s cmake_install_target_from_setup = 'install' 161s cmake_languages = () 161s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/hello/cmake_generated_module.py', '_skbuild/linux-x86_64-3.12/cmake-install...d_and_exclude_from_setup.txt', '_skbuild/linux-x86_64-3.12/cmake-install/hello2/hello2_data1_cmake_generated.txt', ...] 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s cmkr = 161s commands = ['bdist_wheel'] 161s config_type = 'Release' 161s data_file = 'hello2/data2/subdata2/hello2_data1_include_from_manifest.txt' 161s data_files = {} 161s dest_data_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello2/data2/subdata2/hello2_data1_include_from_manifest.txt' 161s developer_mode = False 161s display_only = False 161s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 161s env_cmake_args = [] 161s force_cmake = False 161s has_cmakelists = True 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'cmdclass': {'bdist': , 'bdist_wheel': , 'bdist_wheel': , 'bdist_wheel': .BinaryDistribution object at 0x7bbe04b3c200> 161s klass = .BinaryDistribution'> 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = .BinaryDistribution object at 0x7bbe04b3c200> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'bdist_wheel' 161s self = .BinaryDistribution object at 0x7bbe04b3c200> 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'bdist_wheel' 161s self = .BinaryDistribution object at 0x7bbe04b3c200> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'bdist_wheel' 161s self = .BinaryDistribution object at 0x7bbe04b3c200> 161s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s old_write_files = 161s self = 161s update_write_files = .update_write_files at 0x7bbe04c0ba60> 161s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 161s self.run_command("build") 161s build_ext = 161s build_scripts = 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe04b3c200> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe04b3c200> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe04b3c200> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe04b3c200> 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 161s self.build_packages() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 161s self.build_module(module, module_file, package) 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 161s modules = [('hello', '__init__', '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py'), ('hello', 'cmake_generated_module', '_skbuild/linux-x86_64-3.12/cmake-install/hello/cmake_generated_module.py')] 161s package = 'hello' 161s package_ = 'hello' 161s package_dir = '_skbuild/linux-x86_64-3.12/cmake-install/hello' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 161s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 161s __class__ = 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 161s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 161s self.mkpath(dir) 161s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 161s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello/__init__.py' 161s package = ['hello'] 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s mode = 511, verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 161s d = 'lib.linux-x86_64-cpython-312' 161s dry_run = False 161s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s tail = 'lib.linux-x86_64-cpython-312' 161s tails = ['lib.linux-x86_64-cpython-312', 'hello'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/.git/ 161s [master (root-commit) 4b34244] Initial commit 161s 15 files changed, 79 insertions(+) 161s create mode 100644 CMakeLists.txt 161s create mode 100644 MANIFEST.in 161s create mode 100644 hello/__init__.py 161s create mode 100644 hello/data/subdata/hello_data1_include_from_manifest.txt 161s create mode 100644 hello/data/subdata/hello_data2_include_from_manifest.txt 161s create mode 100644 hello/data/subdata/hello_data3_include_from_manifest_and_exclude_from_manifest.txt 161s create mode 100644 hello/data/subdata/hello_data4_include_from_manifest_and_exclude_from_setup.txt 161s create mode 100644 hello/hello_include_from_manifest.txt 161s create mode 100644 hello2/__init__.py 161s create mode 100644 hello2/data2/subdata2/hello2_data1_include_from_manifest.txt 161s create mode 100644 hello2/data2/subdata2/hello2_data2_include_from_manifest.txt 161s create mode 100644 hello2/data2/subdata2/hello2_data3_include_from_manifest_and_exclude_from_manifest.txt 161s create mode 100644 hello2/data2/subdata2/hello2_data4_include_from_manifest_and_exclude_from_setup.txt 161s create mode 100644 hello2/hello2_include_from_manifest.txt 161s create mode 100644 setup.py 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Ninja' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s Not searching for unused variables given on the command line. 161s -- Configuring incomplete, errors occurred! 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Ninja' generator - failure 161s -------------------------------------------------------------------------------- 161s 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Unix Makefiles' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_cmake_test_compile/build 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Unix Makefiles' generator - success 161s -------------------------------------------------------------------------------- 161s 161s Configuring Project 161s Working directory: 161s /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-x86_64-3.12/cmake-build 161s Command: 161s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 161s 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-x86_64-3.12/cmake-build 161s Install the project... 161s -- Install configuration: "Release" 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-x86_64-3.12/cmake-install/hello/cmake_generated_module.py 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-x86_64-3.12/cmake-install/hello/hello_data1_cmake_generated.txt 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-x86_64-3.12/cmake-install/hello/hello_data2_cmake_generated.txt 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-x86_64-3.12/cmake-install/hello/data/subdata/hello_data3_cmake_generated.txt 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-x86_64-3.12/cmake-install/hello/data/subdata/hello_data4_cmake_generated_and_exclude_from_setup.txt 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-x86_64-3.12/cmake-install/hello2/hello2_data1_cmake_generated.txt 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-x86_64-3.12/cmake-install/hello2/hello2_data2_cmake_generated.txt 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-x86_64-3.12/cmake-install/hello2/data2/subdata2/hello2_data3_cmake_generated.txt 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-48/test_include_exclude_data0/_skbuild/linux-x86_64-3.12/cmake-install/hello2/data2/subdata2/hello2_data4_cmake_generated_and_exclude_from_setup.txt 161s 161s copying hello/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py 161s copying hello2/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello2/__init__.py 161s copying hello/hello_include_from_manifest.txt -> _skbuild/linux-x86_64-3.12/cmake-install/hello/hello_include_from_manifest.txt 161s copying hello2/hello2_include_from_manifest.txt -> _skbuild/linux-x86_64-3.12/cmake-install/hello2/hello2_include_from_manifest.txt 161s copying hello/data/subdata/hello_data1_include_from_manifest.txt -> _skbuild/linux-x86_64-3.12/cmake-install/hello/data/subdata/hello_data1_include_from_manifest.txt 161s copying hello/data/subdata/hello_data2_include_from_manifest.txt -> _skbuild/linux-x86_64-3.12/cmake-install/hello/data/subdata/hello_data2_include_from_manifest.txt 161s copying hello/data/subdata/hello_data4_include_from_manifest_and_exclude_from_setup.txt -> _skbuild/linux-x86_64-3.12/cmake-install/hello/data/subdata/hello_data4_include_from_manifest_and_exclude_from_setup.txt 161s copying hello2/data2/subdata2/hello2_data2_include_from_manifest.txt -> _skbuild/linux-x86_64-3.12/cmake-install/hello2/data2/subdata2/hello2_data2_include_from_manifest.txt 161s copying hello2/data2/subdata2/hello2_data4_include_from_manifest_and_exclude_from_setup.txt -> _skbuild/linux-x86_64-3.12/cmake-install/hello2/data2/subdata2/hello2_data4_include_from_manifest_and_exclude_from_setup.txt 161s copying hello2/data2/subdata2/hello2_data1_include_from_manifest.txt -> _skbuild/linux-x86_64-3.12/cmake-install/hello2/data2/subdata2/hello2_data1_include_from_manifest.txt 161s 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s ------------------------------ Captured log call ------------------------------- 161s WARNING root:filelist.py:129 warning: no previously-included files found matching 'MANIFEST.in' 161s INFO root:dist.py:986 running bdist_wheel 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 161s _____________________ test_include_exclude_data_with_base ______________________ 161s 161s iargs = (), ikwargs = {} 161s 161s @functools.wraps(fun) 161s def wrapped(*iargs, **ikwargs): 161s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 161s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 161s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 161s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 161s 161s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 161s 161s disable_languages_test = False 161s fun = 161s iargs = () 161s ikwargs = {} 161s ret = False 161s wrapped = 161s 161s tests/__init__.py:261: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:247: in execute_setup_py 161s exec(setup_code) 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = False 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0') 161s setup = 161s setup_args = ['bdist_wheel'] 161s setup_code = at 0x7bbe04a60140, file "setup.py", line 1> 161s setup.py:5: in 161s ??? 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = False 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0') 161s setup = 161s setup_args = ['bdist_wheel'] 161s setup_code = at 0x7bbe04a60140, file "setup.py", line 1> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s BinaryDistribution = .BinaryDistribution'> 161s build_ext_inplace = False 161s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 161s cmake_args_from_args = [] 161s cmake_executable = '/usr/bin/cmake' 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_install_target_from_command = '' 161s cmake_install_target_from_setup = 'install' 161s cmake_languages = () 161s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/src/hello/cmake_generated_module.py', '_skbuild/linux-x86_64-3.12/cmake-ins...d_exclude_from_setup.txt', '_skbuild/linux-x86_64-3.12/cmake-install/src/hello2/hello2_data1_cmake_generated.txt', ...] 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s cmkr = 161s commands = ['bdist_wheel'] 161s config_type = 'Release' 161s data_file = 'src/hello2/data2/subdata2/hello2_data1_include_from_manifest.txt' 161s data_files = {} 161s dest_data_file = '_skbuild/linux-x86_64-3.12/cmake-install/src/hello2/data2/subdata2/hello2_data1_include_from_manifest.txt' 161s developer_mode = False 161s display_only = False 161s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 161s env_cmake_args = [] 161s force_cmake = False 161s has_cmakelists = True 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'cmdclass': {'bdist': , 'bdist_wheel': , 'bdist_wheel': , 'bdist_wheel': .BinaryDistribution object at 0x7bbe0474cb60> 161s klass = .BinaryDistribution'> 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = .BinaryDistribution object at 0x7bbe0474cb60> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'bdist_wheel' 161s self = .BinaryDistribution object at 0x7bbe0474cb60> 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'bdist_wheel' 161s self = .BinaryDistribution object at 0x7bbe0474cb60> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'bdist_wheel' 161s self = .BinaryDistribution object at 0x7bbe0474cb60> 161s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s old_write_files = 161s self = 161s update_write_files = .update_write_files at 0x7bbe047f1ee0> 161s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 161s self.run_command("build") 161s build_ext = 161s build_scripts = 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe0474cb60> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe0474cb60> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe0474cb60> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe0474cb60> 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 161s self.build_packages() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 161s self.build_module(module, module_file, package) 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/src/hello/__init__.py' 161s modules = [('hello', '__init__', '_skbuild/linux-x86_64-3.12/cmake-install/src/hello/__init__.py'), ('hello', 'cmake_generated_module', '_skbuild/linux-x86_64-3.12/cmake-install/src/hello/cmake_generated_module.py')] 161s package = 'hello' 161s package_ = 'hello' 161s package_dir = '_skbuild/linux-x86_64-3.12/cmake-install/src/hello' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 161s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 161s __class__ = 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/src/hello/__init__.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 161s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/src/hello/__init__.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 161s self.mkpath(dir) 161s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/src/hello/__init__.py' 161s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello/__init__.py' 161s package = ['hello'] 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s mode = 511, verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 161s d = 'lib.linux-x86_64-cpython-312' 161s dry_run = False 161s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s tail = 'lib.linux-x86_64-cpython-312' 161s tails = ['lib.linux-x86_64-cpython-312', 'hello'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/.git/ 161s [master (root-commit) c253076] Initial commit 161s 15 files changed, 80 insertions(+) 161s create mode 100644 CMakeLists.txt 161s create mode 100644 MANIFEST.in 161s create mode 100644 setup.py 161s create mode 100644 src/hello/__init__.py 161s create mode 100644 src/hello/data/subdata/hello_data1_include_from_manifest.txt 161s create mode 100644 src/hello/data/subdata/hello_data2_include_from_manifest.txt 161s create mode 100644 src/hello/data/subdata/hello_data3_include_from_manifest_and_exclude_from_manifest.txt 161s create mode 100644 src/hello/data/subdata/hello_data4_include_from_manifest_and_exclude_from_setup.txt 161s create mode 100644 src/hello/hello_include_from_manifest.txt 161s create mode 100644 src/hello2/__init__.py 161s create mode 100644 src/hello2/data2/subdata2/hello2_data1_include_from_manifest.txt 161s create mode 100644 src/hello2/data2/subdata2/hello2_data2_include_from_manifest.txt 161s create mode 100644 src/hello2/data2/subdata2/hello2_data3_include_from_manifest_and_exclude_from_manifest.txt 161s create mode 100644 src/hello2/data2/subdata2/hello2_data4_include_from_manifest_and_exclude_from_setup.txt 161s create mode 100644 src/hello2/hello2_include_from_manifest.txt 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Ninja' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s Not searching for unused variables given on the command line. 161s -- Configuring incomplete, errors occurred! 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Ninja' generator - failure 161s -------------------------------------------------------------------------------- 161s 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Unix Makefiles' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_cmake_test_compile/build 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Unix Makefiles' generator - success 161s -------------------------------------------------------------------------------- 161s 161s Configuring Project 161s Working directory: 161s /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-x86_64-3.12/cmake-build 161s Command: 161s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 161s 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-x86_64-3.12/cmake-build 161s Install the project... 161s -- Install configuration: "Release" 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-x86_64-3.12/cmake-install/src/hello/cmake_generated_module.py 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-x86_64-3.12/cmake-install/src/hello/hello_data1_cmake_generated.txt 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-x86_64-3.12/cmake-install/src/hello/hello_data2_cmake_generated.txt 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-x86_64-3.12/cmake-install/src/hello/data/subdata/hello_data3_cmake_generated.txt 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-x86_64-3.12/cmake-install/src/hello/data/subdata/hello_data4_cmake_generated_and_exclude_from_setup.txt 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-x86_64-3.12/cmake-install/src/hello2/hello2_data1_cmake_generated.txt 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-x86_64-3.12/cmake-install/src/hello2/hello2_data2_cmake_generated.txt 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-x86_64-3.12/cmake-install/src/hello2/data2/subdata2/hello2_data3_cmake_generated.txt 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-49/test_include_exclude_data_with0/_skbuild/linux-x86_64-3.12/cmake-install/src/hello2/data2/subdata2/hello2_data4_cmake_generated_and_exclude_from_setup.txt 161s 161s copying src/hello/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/src/hello/__init__.py 161s copying src/hello2/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/src/hello2/__init__.py 161s copying src/hello/hello_include_from_manifest.txt -> _skbuild/linux-x86_64-3.12/cmake-install/src/hello/hello_include_from_manifest.txt 161s copying src/hello2/hello2_include_from_manifest.txt -> _skbuild/linux-x86_64-3.12/cmake-install/src/hello2/hello2_include_from_manifest.txt 161s copying src/hello/data/subdata/hello_data1_include_from_manifest.txt -> _skbuild/linux-x86_64-3.12/cmake-install/src/hello/data/subdata/hello_data1_include_from_manifest.txt 161s copying src/hello/data/subdata/hello_data2_include_from_manifest.txt -> _skbuild/linux-x86_64-3.12/cmake-install/src/hello/data/subdata/hello_data2_include_from_manifest.txt 161s copying src/hello/data/subdata/hello_data4_include_from_manifest_and_exclude_from_setup.txt -> _skbuild/linux-x86_64-3.12/cmake-install/src/hello/data/subdata/hello_data4_include_from_manifest_and_exclude_from_setup.txt 161s copying src/hello2/data2/subdata2/hello2_data2_include_from_manifest.txt -> _skbuild/linux-x86_64-3.12/cmake-install/src/hello2/data2/subdata2/hello2_data2_include_from_manifest.txt 161s copying src/hello2/data2/subdata2/hello2_data4_include_from_manifest_and_exclude_from_setup.txt -> _skbuild/linux-x86_64-3.12/cmake-install/src/hello2/data2/subdata2/hello2_data4_include_from_manifest_and_exclude_from_setup.txt 161s copying src/hello2/data2/subdata2/hello2_data1_include_from_manifest.txt -> _skbuild/linux-x86_64-3.12/cmake-install/src/hello2/data2/subdata2/hello2_data1_include_from_manifest.txt 161s 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s ------------------------------ Captured log call ------------------------------- 161s WARNING root:filelist.py:129 warning: no previously-included files found matching 'MANIFEST.in' 161s INFO root:dist.py:986 running bdist_wheel 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 161s ________________________ test_build_ext_inplace_command ________________________ 161s 161s iargs = (), ikwargs = {} 161s 161s @functools.wraps(fun) 161s def wrapped(*iargs, **ikwargs): 161s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 161s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 161s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 161s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 161s 161s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 161s 161s disable_languages_test = True 161s fun = 161s iargs = () 161s ikwargs = {} 161s ret = False 161s wrapped = 161s 161s tests/__init__.py:261: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:244: in execute_setup_py 161s exec(setup_code) 161s Extension = 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0') 161s setup = 161s setup_args = ['build_ext', '--inplace'] 161s setup_code = at 0x7bbe04dcae50, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe047f1580> 161s setup.py:7: in 161s ??? 161s Extension = 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0') 161s setup = 161s setup_args = ['build_ext', '--inplace'] 161s setup_code = at 0x7bbe04dcae50, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe047f1580> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s BinaryDistribution = .BinaryDistribution'> 161s build_ext_inplace = 1 161s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 161s cmake_args_from_args = [] 161s cmake_executable = '/usr/bin/cmake' 161s cmake_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello_sk.cpython-312-x86_64-linux-gnu.so' 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_install_target_from_command = '' 161s cmake_install_target_from_setup = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello_sk.cpython-312-x86_64-linux-gnu.so'] 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s cmkr = 161s commands = ['build_ext'] 161s config_type = 'Release' 161s data_files = {} 161s developer_mode = 1 161s display_only = False 161s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 161s env_cmake_args = [] 161s force_cmake = False 161s has_cmakelists = True 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 161s make_args = ['--config', 'Release'] 161s new_py_modules = {} 161s new_scripts = {} 161s original_manifestin_data_files = [] 161s package = 'hello' 161s package_data = {'hello': ['_hello_sk.cpython-312-x86_64-linux-gnu.so']} 161s package_dir = {'hello': 'hello'} 161s package_file = '_hello_sk.cpython-312-x86_64-linux-gnu.so' 161s package_file_list = ['_hello_sk.cpython-312-x86_64-linux-gnu.so'] 161s package_path = 'hello/_hello_sk.cpython-312-x86_64-linux-gnu.so' 161s package_prefixes = [('hello', 'hello')] 161s packages = ['hello'] 161s plat_name = None 161s process_manifest = None 161s py_modules = [] 161s scripts = [] 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = False 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 161s dist = .BinaryDistribution object at 0x7bbe047b9df0> 161s klass = .BinaryDistribution'> 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = .BinaryDistribution object at 0x7bbe047b9df0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'build_ext' 161s self = .BinaryDistribution object at 0x7bbe047b9df0> 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_ext' 161s self = .BinaryDistribution object at 0x7bbe047b9df0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_ext' 161s self = .BinaryDistribution object at 0x7bbe047b9df0> 161s /usr/lib/python3/dist-packages/setuptools/command/build_ext.py:93: in run 161s _build_ext.run(self) 161s old_inplace = 1 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_ext.py:359: in run 161s self.build_extensions() 161s new_compiler = 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_ext.py:479: in build_extensions 161s self._build_extensions_serial() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_ext.py:505: in _build_extensions_serial 161s self.build_extension(ext) 161s ext = 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_ext.py:254: in build_extension 161s _build_ext.build_extension(self, ext) 161s _compiler = 161s ext = 161s self = 161s /usr/lib/python3/dist-packages/Cython/Distutils/build_ext.py:135: in build_extension 161s super(build_ext, self).build_extension(ext) 161s __class__ = 161s cythonize = 161s directives = {} 161s ext = 161s include_dir = '/usr/include/python3.12' 161s includes = ['/usr/include/python3.12'] 161s new_ext = 161s options = {'build_dir': None, 'c_line_in_traceback': True, 'compile_time_env': None, 'compiler_directives': {}, ...} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_ext.py:560: in build_extension 161s objects = self.compiler.compile( 161s depends = ['hello/_hello_ext.cxx'] 161s ext = 161s ext_path = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello/_hello_ext.cpython-312-x86_64-linux-gnu.so' 161s extra_args = [] 161s macros = [] 161s self = 161s sources = ['hello/_hello_ext.cxx'] 161s /usr/lib/python3/dist-packages/setuptools/_distutils/ccompiler.py:595: in compile 161s macros, objects, extra_postargs, pp_opts, build = self._setup_compile( 161s debug = None 161s depends = [] 161s extra_postargs = [] 161s extra_preargs = None 161s include_dirs = [] 161s macros = [] 161s output_dir = '_skbuild/linux-x86_64-3.12/setuptools/temp.linux-x86_64-cpython-312' 161s self = 161s sources = ['hello/_hello_ext.cxx'] 161s /usr/lib/python3/dist-packages/setuptools/_distutils/ccompiler.py:360: in _setup_compile 161s self.mkpath(os.path.dirname(obj)) 161s build = {} 161s depends = [] 161s ext = '.cxx' 161s extra = [] 161s i = 0 161s incdirs = ['/usr/include/python3.12'] 161s macros = [] 161s obj = '_skbuild/linux-x86_64-3.12/setuptools/temp.linux-x86_64-cpython-312/hello/_hello_ext.o' 161s objects = ['_skbuild/linux-x86_64-3.12/setuptools/temp.linux-x86_64-cpython-312/hello/_hello_ext.o'] 161s outdir = '_skbuild/linux-x86_64-3.12/setuptools/temp.linux-x86_64-cpython-312' 161s pp_opts = ['-I/usr/include/python3.12'] 161s self = 161s sources = ['hello/_hello_ext.cxx'] 161s src = 'hello/_hello_ext.cxx' 161s /usr/lib/python3/dist-packages/setuptools/_distutils/ccompiler.py:1050: in mkpath 161s mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/temp.linux-x86_64-cpython-312/hello' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/temp.linux-x86_64-cpython-312/hello' 161s mode = 511, verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0/_skbuild/linux-x86_64-3.12/setuptools/temp.linux-x86_64-cpython-312' 161s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/temp.linux-x86_64-cpython-312'] 161s d = 'temp.linux-x86_64-cpython-312' 161s dry_run = False 161s head = '_skbuild/linux-x86_64-3.12/setuptools/temp.linux-x86_64-cpython-312' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/temp.linux-x86_64-cpython-312/hello' 161s tail = 'temp.linux-x86_64-cpython-312' 161s tails = ['temp.linux-x86_64-cpython-312', 'hello'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0/.git/ 161s [master (root-commit) fa38b90] Initial commit 161s 5 files changed, 160 insertions(+) 161s create mode 100644 CMakeLists.txt 161s create mode 100644 hello/__init__.py 161s create mode 100644 hello/_hello_ext.cxx 161s create mode 100644 hello/_hello_sk.cxx 161s create mode 100644 setup.py 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Ninja' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s Not searching for unused variables given on the command line. 161s -- Configuring incomplete, errors occurred! 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Ninja' generator - failure 161s -------------------------------------------------------------------------------- 161s 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Unix Makefiles' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0/_cmake_test_compile/build 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Unix Makefiles' generator - success 161s -------------------------------------------------------------------------------- 161s 161s Configuring Project 161s Working directory: 161s /tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0/_skbuild/linux-x86_64-3.12/cmake-build 161s Command: 161s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 161s 161s Not searching for unused variables given on the command line. 161s -- The C compiler identification is GNU 14.1.0 161s -- The CXX compiler identification is GNU 14.1.0 161s -- Detecting C compiler ABI info 161s -- Detecting C compiler ABI info - done 161s -- Check for working C compiler: /usr/bin/cc - skipped 161s -- Detecting C compile features 161s -- Detecting C compile features - done 161s -- Detecting CXX compiler ABI info 161s -- Detecting CXX compiler ABI info - done 161s -- Check for working CXX compiler: /usr/bin/c++ - skipped 161s -- Detecting CXX compile features 161s -- Detecting CXX compile features - done 161s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 161s -- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.12.so (found version "3.12.4") 161s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 161s -- Configuring done (1.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0/_skbuild/linux-x86_64-3.12/cmake-build 161s [ 50%] Building CXX object CMakeFiles/_hello_sk.dir/hello/_hello_sk.cxx.o 161s [100%] Linking CXX shared module _hello_sk.cpython-312-x86_64-linux-gnu.so 161s [100%] Built target _hello_sk 161s Install the project... 161s -- Install configuration: "Release" 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-50/test_build_ext_inplace_command0/_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello_sk.cpython-312-x86_64-linux-gnu.so 161s copying _skbuild/linux-x86_64-3.12/cmake-install/hello/_hello_sk.cpython-312-x86_64-linux-gnu.so -> hello/_hello_sk.cpython-312-x86_64-linux-gnu.so 161s 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 161s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 161s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 161s the cmake_policy command to set the policy and suppress this warning. 161s 161s Call Stack (most recent call first): 161s CMakeLists.txt:5 (find_package) 161s This warning is for project developers. Use -Wno-dev to suppress it. 161s 161s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 161s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 161s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 161s the cmake_policy command to set the policy and suppress this warning. 161s 161s Call Stack (most recent call first): 161s CMakeLists.txt:5 (find_package) 161s This warning is for project developers. Use -Wno-dev to suppress it. 161s 161s _modinit_prefix:PyInit_ 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running build_ext 161s INFO root:build_ext.py:533 building 'hello._hello_ext' extension 161s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/temp.linux-x86_64-cpython-312 161s ___________________________ test_bdist_wheel_command ___________________________ 161s 161s def test_bdist_wheel_command(): 161s project = "issue-335-support-cmake-source-dir" 161s 161s expected_content = [ 161s "hello/__init__.py", 161s "hello/swig_mwe.py", 161s "hello/_swig_mwe.pyd", 161s "hello-1.2.3.data/data/bin/hello", 161s "hello-1.2.3.data/data/lib/static/libbar.a", 161s "hello-1.2.3.data/data/lib/static/libfoo.a", 161s "hello-1.2.3.data/data/include/bar.h", 161s "hello-1.2.3.data/data/include/foo.h", 161s ] 161s 161s expected_distribution_name = "hello-1.2.3" 161s 161s tmp_dir = _tmpdir("test_bdist_wheel_command") 161s prepare_project(project, tmp_dir) 161s initialize_git_repo_and_commit(tmp_dir, verbose=True) 161s 161s relative_setup_path = "wrapping/python/" 161s 161s > with execute_setup_py(tmp_dir.join(relative_setup_path), ["bdist_wheel"]): 161s 161s expected_content = ['hello/__init__.py', 'hello/swig_mwe.py', 'hello/_swig_mwe.pyd', 'hello-1.2.3.data/data/bin/hello', 'hello-1.2.3.data/data/lib/static/libbar.a', 'hello-1.2.3.data/data/lib/static/libfoo.a', ...] 161s expected_distribution_name = 'hello-1.2.3' 161s project = 'issue-335-support-cmake-source-dir' 161s relative_setup_path = 'wrapping/python/' 161s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0') 161s 161s tests/test_issue335_support_cmake_source_dir.py:31: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:247: in execute_setup_py 161s exec(setup_code) 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = False 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python') 161s setup = 161s setup_args = ['bdist_wheel'] 161s setup_code = at 0x7bbe04621430, file "setup.py", line 1> 161s setup.py:5: in 161s ??? 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = False 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python') 161s setup = 161s setup_args = ['bdist_wheel'] 161s setup_code = at 0x7bbe04621430, file "setup.py", line 1> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s BinaryDistribution = .BinaryDistribution'> 161s build_ext_inplace = False 161s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 161s cmake_args_from_args = [] 161s cmake_executable = '/usr/bin/cmake' 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_install_target_from_command = '' 161s cmake_install_target_from_setup = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/include/bar.h', '_skbuild/linux-x86_64-3.12/cmake-install/include/foo.h', '..._skbuild/linux-x86_64-3.12/cmake-install/bin/hello', '_skbuild/linux-x86_64-3.12/cmake-install/hello/swig_mwe.py', ...] 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '../../' 161s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': None, 'PYTHONPATH': None}, 'version': '3.29.6'} 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s cmkr = 161s commands = ['bdist_wheel'] 161s config_type = 'Release' 161s data_files = {'bin': {'_skbuild/linux-x86_64-3.12/cmake-install/bin/hello'}, 'include': {'_skbuild/linux-x86_64-3.12/cmake-install/.../linux-x86_64-3.12/cmake-install/lib/static/libbar.a', '_skbuild/linux-x86_64-3.12/cmake-install/lib/static/libfoo.a'}} 161s developer_mode = False 161s display_only = False 161s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 161s env_cmake_args = [] 161s force_cmake = False 161s has_cmakelists = True 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , 'bdist_wheel': , 'bdist_wheel': .BinaryDistribution object at 0x7bbe04a26810> 161s klass = .BinaryDistribution'> 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = .BinaryDistribution object at 0x7bbe04a26810> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'bdist_wheel' 161s self = .BinaryDistribution object at 0x7bbe04a26810> 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'bdist_wheel' 161s self = .BinaryDistribution object at 0x7bbe04a26810> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'bdist_wheel' 161s self = .BinaryDistribution object at 0x7bbe04a26810> 161s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s old_write_files = 161s self = 161s update_write_files = .update_write_files at 0x7bbe042efd80> 161s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 161s self.run_command("build") 161s build_ext = 161s build_scripts = 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe04a26810> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe04a26810> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe04a26810> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe04a26810> 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 161s self.build_packages() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 161s self.build_module(module, module_file, package) 161s module = 'swig_mwe' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/swig_mwe.py' 161s modules = [('hello', 'swig_mwe', '_skbuild/linux-x86_64-3.12/cmake-install/hello/swig_mwe.py'), ('hello', '__init__', '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py')] 161s package = 'hello' 161s package_ = 'hello' 161s package_dir = '_skbuild/linux-x86_64-3.12/cmake-install/hello' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 161s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 161s __class__ = 161s module = 'swig_mwe' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/swig_mwe.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 161s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 161s module = 'swig_mwe' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/swig_mwe.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 161s self.mkpath(dir) 161s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s module = 'swig_mwe' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/swig_mwe.py' 161s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello/swig_mwe.py' 161s package = ['hello'] 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s mode = 511, verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 161s d = 'lib.linux-x86_64-cpython-312' 161s dry_run = False 161s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s tail = 'lib.linux-x86_64-cpython-312' 161s tails = ['lib.linux-x86_64-cpython-312', 'hello'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/.git/ 161s [master (root-commit) 80e5472] Initial commit 161s 4 files changed, 53 insertions(+) 161s create mode 100644 CMakeLists.txt 161s create mode 100644 wrapping/python/CMakeLists.txt 161s create mode 100644 wrapping/python/hello/__init__.py 161s create mode 100644 wrapping/python/setup.py 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Ninja' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s Not searching for unused variables given on the command line. 161s -- Configuring incomplete, errors occurred! 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Ninja' generator - failure 161s -------------------------------------------------------------------------------- 161s 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Unix Makefiles' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s Not searching for unused variables given on the command line. 161s -- The C compiler identification is GNU 14.1.0 161s -- Detecting C compiler ABI info 161s -- Detecting C compiler ABI info - done 161s -- Check for working C compiler: /usr/bin/cc - skipped 161s -- Detecting C compile features 161s -- Detecting C compile features - done 161s -- The CXX compiler identification is GNU 14.1.0 161s -- Detecting CXX compiler ABI info 161s -- Detecting CXX compiler ABI info - done 161s -- Check for working CXX compiler: /usr/bin/c++ - skipped 161s -- Detecting CXX compile features 161s -- Detecting CXX compile features - done 161s -- Configuring done (0.4s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_cmake_test_compile/build 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Unix Makefiles' generator - success 161s -------------------------------------------------------------------------------- 161s 161s Configuring Project 161s Working directory: 161s /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-build 161s Command: 161s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 161s 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-build 161s Install the project... 161s -- Install configuration: "Release" 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-install/include/bar.h 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-install/include/foo.h 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-install/lib/static/libbar.a 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-install/lib/static/libfoo.a 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-install/bin/hello 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-install/hello/swig_mwe.py 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-51/test_bdist_wheel_command0/wrapping/python/_skbuild/linux-x86_64-3.12/cmake-install/hello/_swig_mwe.pyd 161s 161s copying hello/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py 161s 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running bdist_wheel 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 161s __________________________ test_symbol_visibility[ON] __________________________ 161s 161s skip_override = 'ON' 161s 161s @pytest.mark.skipif( 161s platform.system().lower() not in ["linux"], reason="Executable and Linkable Format (ELF) is specific to Linux" 161s ) 161s @pytest.mark.parametrize("skip_override", ["ON", "OFF"]) 161s def test_symbol_visibility(skip_override): 161s with push_dir(): 161s tmp_dir = _tmpdir("test_issue668_symbol_visibility") 161s project = "issue-668-symbol-visibility" 161s prepare_project(project, tmp_dir) 161s initialize_git_repo_and_commit(tmp_dir, verbose=True) 161s 161s > with execute_setup_py( 161s tmp_dir, ["build", f"-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL={skip_override}"] 161s ): 161s 161s project = 'issue-668-symbol-visibility' 161s skip_override = 'ON' 161s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0') 161s 161s tests/test_issue668_symbol_visibility.py:32: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:247: in execute_setup_py 161s exec(setup_code) 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = False 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0') 161s setup = 161s setup_args = ['build', '-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=ON'] 161s setup_code = at 0x7bbe04622430, file "setup.py", line 1> 161s setup.py:5: in 161s ??? 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = False 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0') 161s setup = 161s setup_args = ['build', '-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=ON'] 161s setup_code = at 0x7bbe04622430, file "setup.py", line 1> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s BinaryDistribution = .BinaryDistribution'> 161s build_ext_inplace = False 161s cmake_args = ['-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=ON', '-DCMAKE_BUILD_TYPE:STRING=Release'] 161s cmake_args_from_args = ['-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=ON'] 161s cmake_executable = '/usr/bin/cmake' 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_install_target_from_command = '' 161s cmake_install_target_from_setup = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so'] 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_spec = {'args': ['/usr/bin/cmake', '-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=ON', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s cmkr = 161s commands = ['build'] 161s config_type = 'Release' 161s data_files = {} 161s developer_mode = False 161s display_only = False 161s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 161s env_cmake_args = [] 161s force_cmake = False 161s has_cmakelists = True 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s item = '-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=ON' 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cpp version)', ...} 161s make_args = ['--config', 'Release'] 161s new_py_modules = {} 161s new_scripts = {} 161s original_manifestin_data_files = [] 161s original_package_data = {} 161s package = 'hello' 161s package_data = {'hello': ['_hello.cpython-312-x86_64-linux-gnu.so', '__init__.py']} 161s package_dir = {'hello': 'hello'} 161s package_prefixes = [('hello', 'hello')] 161s packages = ['hello'] 161s plat_name = None 161s process_manifest = None 161s py_modules = [] 161s scripts = [] 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = False 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cpp version)', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cpp version)', ...} 161s dist = .BinaryDistribution object at 0x7bbe04950ec0> 161s klass = .BinaryDistribution'> 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = .BinaryDistribution object at 0x7bbe04950ec0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'build' 161s self = .BinaryDistribution object at 0x7bbe04950ec0> 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe04950ec0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe04950ec0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe04950ec0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe04950ec0> 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 161s self.build_packages() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 161s self.build_module(module, module_file, package) 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 161s modules = [('hello', '__init__', '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py')] 161s package = 'hello' 161s package_ = 'hello' 161s package_dir = '_skbuild/linux-x86_64-3.12/cmake-install/hello' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 161s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 161s __class__ = 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 161s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 161s self.mkpath(dir) 161s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 161s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello/__init__.py' 161s package = ['hello'] 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s mode = 511, verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 161s d = 'lib.linux-x86_64-cpython-312' 161s dry_run = False 161s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s tail = 'lib.linux-x86_64-cpython-312' 161s tails = ['lib.linux-x86_64-cpython-312', 'hello'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0/.git/ 161s [master (root-commit) cfbd5ee] Initial commit 161s 5 files changed, 121 insertions(+) 161s create mode 100644 CMakeLists.txt 161s create mode 100644 hello/__init__.py 161s create mode 100644 hello/_hello.cxx 161s create mode 100644 pyproject.toml 161s create mode 100644 setup.py 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Ninja' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s Not searching for unused variables given on the command line. 161s -- Configuring incomplete, errors occurred! 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Ninja' generator - failure 161s -------------------------------------------------------------------------------- 161s 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Unix Makefiles' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s Not searching for unused variables given on the command line. 161s -- The C compiler identification is GNU 14.1.0 161s -- Detecting C compiler ABI info 161s -- Detecting C compiler ABI info - done 161s -- Check for working C compiler: /usr/bin/cc - skipped 161s -- Detecting C compile features 161s -- Detecting C compile features - done 161s -- The CXX compiler identification is GNU 14.1.0 161s -- Detecting CXX compiler ABI info 161s -- Detecting CXX compiler ABI info - done 161s -- Check for working CXX compiler: /usr/bin/c++ - skipped 161s -- Detecting CXX compile features 161s -- Detecting CXX compile features - done 161s -- Configuring done (0.5s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0/_cmake_test_compile/build 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Unix Makefiles' generator - success 161s -------------------------------------------------------------------------------- 161s 161s Configuring Project 161s Working directory: 161s /tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0/_skbuild/linux-x86_64-3.12/cmake-build 161s Command: 161s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=ON -DCMAKE_BUILD_TYPE:STRING=Release 161s 161s Not searching for unused variables given on the command line. 161s -- The C compiler identification is GNU 14.1.0 161s -- The CXX compiler identification is GNU 14.1.0 161s -- Detecting C compiler ABI info 161s -- Detecting C compiler ABI info - done 161s -- Check for working C compiler: /usr/bin/cc - skipped 161s -- Detecting C compile features 161s -- Detecting C compile features - done 161s -- Detecting CXX compiler ABI info 161s -- Detecting CXX compiler ABI info - done 161s -- Check for working CXX compiler: /usr/bin/c++ - skipped 161s -- Detecting CXX compile features 161s -- Detecting CXX compile features - done 161s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 161s -- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.12.so (found version "3.12.4") 161s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 161s -- Configuring done (1.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0/_skbuild/linux-x86_64-3.12/cmake-build 161s [ 50%] Building CXX object CMakeFiles/_hello.dir/hello/_hello.cxx.o 161s [100%] Linking CXX shared module _hello.cpython-312-x86_64-linux-gnu.so 161s [100%] Built target _hello 161s Install the project... 161s -- Install configuration: "Release" 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-62/test_issue668_symbol_visibilit0/_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so 161s 161s copying hello/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py 161s 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 161s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 161s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 161s the cmake_policy command to set the policy and suppress this warning. 161s 161s Call Stack (most recent call first): 161s CMakeLists.txt:5 (find_package) 161s This warning is for project developers. Use -Wno-dev to suppress it. 161s 161s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 161s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 161s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 161s the cmake_policy command to set the policy and suppress this warning. 161s 161s Call Stack (most recent call first): 161s CMakeLists.txt:5 (find_package) 161s This warning is for project developers. Use -Wno-dev to suppress it. 161s 161s _modinit_prefix:PyInit_ 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 161s _________________________ test_symbol_visibility[OFF] __________________________ 161s 161s skip_override = 'OFF' 161s 161s @pytest.mark.skipif( 161s platform.system().lower() not in ["linux"], reason="Executable and Linkable Format (ELF) is specific to Linux" 161s ) 161s @pytest.mark.parametrize("skip_override", ["ON", "OFF"]) 161s def test_symbol_visibility(skip_override): 161s with push_dir(): 161s tmp_dir = _tmpdir("test_issue668_symbol_visibility") 161s project = "issue-668-symbol-visibility" 161s prepare_project(project, tmp_dir) 161s initialize_git_repo_and_commit(tmp_dir, verbose=True) 161s 161s > with execute_setup_py( 161s tmp_dir, ["build", f"-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL={skip_override}"] 161s ): 161s 161s project = 'issue-668-symbol-visibility' 161s skip_override = 'OFF' 161s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0') 161s 161s tests/test_issue668_symbol_visibility.py:32: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:247: in execute_setup_py 161s exec(setup_code) 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = False 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0') 161s setup = 161s setup_args = ['build', '-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=OFF'] 161s setup_code = at 0x7bbe04622230, file "setup.py", line 1> 161s setup.py:5: in 161s ??? 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = False 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0') 161s setup = 161s setup_args = ['build', '-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=OFF'] 161s setup_code = at 0x7bbe04622230, file "setup.py", line 1> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s BinaryDistribution = .BinaryDistribution'> 161s build_ext_inplace = False 161s cmake_args = ['-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=OFF', '-DCMAKE_BUILD_TYPE:STRING=Release'] 161s cmake_args_from_args = ['-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=OFF'] 161s cmake_executable = '/usr/bin/cmake' 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_install_target_from_command = '' 161s cmake_install_target_from_setup = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so'] 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_spec = {'args': ['/usr/bin/cmake', '-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=OFF', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s cmkr = 161s commands = ['build'] 161s config_type = 'Release' 161s data_files = {} 161s developer_mode = False 161s display_only = False 161s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 161s env_cmake_args = [] 161s force_cmake = False 161s has_cmakelists = True 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s item = '-DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=OFF' 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cpp version)', ...} 161s make_args = ['--config', 'Release'] 161s new_py_modules = {} 161s new_scripts = {} 161s original_manifestin_data_files = [] 161s original_package_data = {} 161s package = 'hello' 161s package_data = {'hello': ['_hello.cpython-312-x86_64-linux-gnu.so', '__init__.py']} 161s package_dir = {'hello': 'hello'} 161s package_prefixes = [('hello', 'hello')] 161s packages = ['hello'] 161s plat_name = None 161s process_manifest = None 161s py_modules = [] 161s scripts = [] 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = False 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cpp version)', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package (cpp version)', ...} 161s dist = .BinaryDistribution object at 0x7bbe042a5ca0> 161s klass = .BinaryDistribution'> 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = .BinaryDistribution object at 0x7bbe042a5ca0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'build' 161s self = .BinaryDistribution object at 0x7bbe042a5ca0> 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe042a5ca0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe042a5ca0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe042a5ca0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe042a5ca0> 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 161s self.build_packages() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 161s self.build_module(module, module_file, package) 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 161s modules = [('hello', '__init__', '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py')] 161s package = 'hello' 161s package_ = 'hello' 161s package_dir = '_skbuild/linux-x86_64-3.12/cmake-install/hello' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 161s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 161s __class__ = 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 161s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 161s self.mkpath(dir) 161s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py' 161s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello/__init__.py' 161s package = ['hello'] 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s mode = 511, verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 161s d = 'lib.linux-x86_64-cpython-312' 161s dry_run = False 161s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/hello' 161s tail = 'lib.linux-x86_64-cpython-312' 161s tails = ['lib.linux-x86_64-cpython-312', 'hello'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0/.git/ 161s [master (root-commit) c98970e] Initial commit 161s 5 files changed, 121 insertions(+) 161s create mode 100644 CMakeLists.txt 161s create mode 100644 hello/__init__.py 161s create mode 100644 hello/_hello.cxx 161s create mode 100644 pyproject.toml 161s create mode 100644 setup.py 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Ninja' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s Not searching for unused variables given on the command line. 161s -- Configuring incomplete, errors occurred! 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Ninja' generator - failure 161s -------------------------------------------------------------------------------- 161s 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Unix Makefiles' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s Not searching for unused variables given on the command line. 161s -- The C compiler identification is GNU 14.1.0 161s -- Detecting C compiler ABI info 161s -- Detecting C compiler ABI info - done 161s -- Check for working C compiler: /usr/bin/cc - skipped 161s -- Detecting C compile features 161s -- Detecting C compile features - done 161s -- The CXX compiler identification is GNU 14.1.0 161s -- Detecting CXX compiler ABI info 161s -- Detecting CXX compiler ABI info - done 161s -- Check for working CXX compiler: /usr/bin/c++ - skipped 161s -- Detecting CXX compile features 161s -- Detecting CXX compile features - done 161s -- Configuring done (0.4s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0/_cmake_test_compile/build 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Unix Makefiles' generator - success 161s -------------------------------------------------------------------------------- 161s 161s Configuring Project 161s Working directory: 161s /tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0/_skbuild/linux-x86_64-3.12/cmake-build 161s Command: 161s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DSKBUILD_GNU_SKIP_LOCAL_SYMBOL_EXPORT_OVERRIDE:BOOL=OFF -DCMAKE_BUILD_TYPE:STRING=Release 161s 161s Not searching for unused variables given on the command line. 161s -- The C compiler identification is GNU 14.1.0 161s -- The CXX compiler identification is GNU 14.1.0 161s -- Detecting C compiler ABI info 161s -- Detecting C compiler ABI info - done 161s -- Check for working C compiler: /usr/bin/cc - skipped 161s -- Detecting C compile features 161s -- Detecting C compile features - done 161s -- Detecting CXX compiler ABI info 161s -- Detecting CXX compiler ABI info - done 161s -- Check for working CXX compiler: /usr/bin/c++ - skipped 161s -- Detecting CXX compile features 161s -- Detecting CXX compile features - done 161s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 161s -- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.12.so (found version "3.12.4") 161s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 161s -- Configuring done (0.9s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0/_skbuild/linux-x86_64-3.12/cmake-build 161s [ 50%] Building CXX object CMakeFiles/_hello.dir/hello/_hello.cxx.o 161s [100%] Linking CXX shared module _hello.cpython-312-x86_64-linux-gnu.so 161s [100%] Built target _hello 161s Install the project... 161s -- Install configuration: "Release" 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-63/test_issue668_symbol_visibilit0/_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so 161s 161s copying hello/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py 161s 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 161s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 161s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 161s the cmake_policy command to set the policy and suppress this warning. 161s 161s Call Stack (most recent call first): 161s CMakeLists.txt:5 (find_package) 161s This warning is for project developers. Use -Wno-dev to suppress it. 161s 161s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 161s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 161s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 161s the cmake_policy command to set the policy and suppress this warning. 161s 161s Call Stack (most recent call first): 161s CMakeLists.txt:5 (find_package) 161s This warning is for project developers. Use -Wno-dev to suppress it. 161s 161s _modinit_prefix:PyInit_ 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 161s ____________________________ test_manifest_in_wheel ____________________________ 161s 161s iargs = (), ikwargs = {} 161s 161s @functools.wraps(fun) 161s def wrapped(*iargs, **ikwargs): 161s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 161s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 161s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 161s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 161s 161s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 161s 161s disable_languages_test = True 161s fun = 161s iargs = () 161s ikwargs = {} 161s ret = False 161s wrapped = 161s 161s tests/__init__.py:261: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:244: in execute_setup_py 161s exec(setup_code) 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-64/test_manifest_in_wheel0') 161s setup = 161s setup_args = ['bdist_wheel'] 161s setup_code = at 0x7bbe04621e30, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe042bbec0> 161s setup.py:5: in 161s ??? 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-64/test_manifest_in_wheel0') 161s setup = 161s setup_args = ['bdist_wheel'] 161s setup_code = at 0x7bbe04621e30, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe042bbec0> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s build_ext_inplace = False 161s cmake_args = () 161s cmake_args_from_args = [] 161s cmake_executable = None 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s commands = ['bdist_wheel'] 161s display_only = False 161s force_cmake = False 161s has_cmakelists = False 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package with a MANIFEST.in', 'license': 'MIT', ...} 161s make_args = [] 161s plat_name = None 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = True 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package with a MANIFEST.in', 'license': 'MIT', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package with a MANIFEST.in', 'license': 'MIT', ...} 161s dist = 161s klass = 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'bdist_wheel' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'bdist_wheel' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'bdist_wheel' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s old_write_files = 161s self = 161s update_write_files = .update_write_files at 0x7bbe042bb920> 161s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:368: in run 161s self.run_command("build") 161s build_ext = 161s build_scripts = 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 161s self.build_packages() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 161s self.build_module(module, module_file, package) 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s modules = [('hello', '__init__', 'hello/__init__.py')] 161s package = 'hello' 161s package_ = 'hello' 161s package_dir = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 161s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 161s __class__ = 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 161s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 161s self.mkpath(dir) 161s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello' 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello/__init__.py' 161s package = ['hello'] 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello', mode = 511 161s verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-64/test_manifest_in_wheel0/_skbuild' 161s created_dirs = ['_skbuild'] 161s d = '_skbuild' 161s dry_run = False 161s head = '_skbuild' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello' 161s tail = '_skbuild' 161s tails = ['_skbuild', 'linux-x86_64-3.12', 'setuptools', 'lib', 'hello'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-64/test_manifest_in_wheel0/.git/ 161s [master (root-commit) 98e4868] Initial commit 161s 4 files changed, 14 insertions(+) 161s create mode 100644 MANIFEST.in 161s create mode 100644 hello/__init__.py 161s create mode 100644 not_included.txt 161s create mode 100644 setup.py 161s skipping skbuild (no CMakeLists.txt found) 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running bdist_wheel 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild 161s ____________________ test_distribution_is_pure[py_modules] _____________________ 161s 161s distribution_type = 'py_modules' 161s tmpdir = local('/tmp/pytest-of-ubuntu/pytest-21/test_distribution_is_pure_py_m0') 161s 161s @pytest.mark.parametrize("distribution_type", ["unknown", "py_modules", "packages", "skbuild"]) 161s def test_distribution_is_pure(distribution_type, tmpdir): 161s skbuild_setup_kwargs = {} 161s 161s if distribution_type == "unknown": 161s is_pure = False 161s 161s elif distribution_type == "py_modules": 161s is_pure = True 161s hello_py = tmpdir.join("hello.py") 161s hello_py.write("") 161s skbuild_setup_kwargs["py_modules"] = ["hello"] 161s 161s elif distribution_type == "packages": 161s is_pure = True 161s init_py = tmpdir.mkdir("hello").join("__init__.py") 161s init_py.write("") 161s skbuild_setup_kwargs["packages"] = ["hello"] 161s 161s elif distribution_type == "skbuild": 161s is_pure = False 161s cmakelists_txt = tmpdir.join("CMakeLists.txt") 161s cmakelists_txt.write( 161s """ 161s cmake_minimum_required(VERSION 3.5.0) 161s project(test NONE) 161s install(CODE "execute_process( 161s COMMAND \\${CMAKE_COMMAND} -E sleep 0)") 161s """ 161s ) 161s else: 161s msg = f"Unknown distribution_type: {distribution_type}" 161s raise Exception(msg) 161s 161s platform = get_platform() 161s original_write_test_cmakelist = platform.write_test_cmakelist 161s 161s def write_test_cmakelist_no_languages(_self, _languages): 161s original_write_test_cmakelist([]) 161s 161s with patch.object(type(platform), "write_test_cmakelist", new=write_test_cmakelist_no_languages): 161s with push_dir(str(tmpdir)), push_argv(["setup.py", "build"]): 161s > distribution = skbuild_setup( 161s name="test", 161s version="0.0.1", 161s description="test object returned by setup function", 161s author="The scikit-build team", 161s license="MIT", 161s **skbuild_setup_kwargs, # type: ignore[arg-type] 161s ) 161s 161s distribution_type = 'py_modules' 161s hello_py = local('/tmp/pytest-of-ubuntu/pytest-21/test_distribution_is_pure_py_m0/hello.py') 161s is_pure = True 161s original_write_test_cmakelist = 161s platform = 161s skbuild_setup_kwargs = {'py_modules': ['hello']} 161s tmpdir = local('/tmp/pytest-of-ubuntu/pytest-21/test_distribution_is_pure_py_m0') 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe048945e0> 161s 161s tests/test_setup.py:78: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s build_ext_inplace = False 161s cmake_args = () 161s cmake_args_from_args = [] 161s cmake_executable = None 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s commands = ['build'] 161s display_only = False 161s force_cmake = False 161s has_cmakelists = False 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'test object returned by setup function', 'license': 'MIT', ...} 161s make_args = [] 161s plat_name = None 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = True 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'test object returned by setup function', 'license': 'MIT', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'test object returned by setup function', 'license': 'MIT', ...} 161s dist = 161s klass = 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 161s self.build_modules() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 161s self.build_module(module, module_file, package) 161s module = 'hello' 161s module_file = 'hello.py' 161s modules = [('', 'hello', 'hello.py')] 161s package = '' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 161s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 161s __class__ = 161s module = 'hello' 161s module_file = 'hello.py' 161s package = '' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 161s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 161s module = 'hello' 161s module_file = 'hello.py' 161s package = '' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 161s self.mkpath(dir) 161s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib' 161s module = 'hello' 161s module_file = 'hello.py' 161s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello.py' 161s package = [''] 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib', mode = 511, verbose = True 161s dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-21/test_distribution_is_pure_py_m0/_skbuild' 161s created_dirs = ['_skbuild'] 161s d = '_skbuild' 161s dry_run = False 161s head = '_skbuild' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib' 161s tail = '_skbuild' 161s tails = ['_skbuild', 'linux-x86_64-3.12', 'setuptools', 'lib'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s skipping skbuild (no CMakeLists.txt found) 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild 161s _____________________ test_distribution_is_pure[packages] ______________________ 161s 161s distribution_type = 'packages' 161s tmpdir = local('/tmp/pytest-of-ubuntu/pytest-21/test_distribution_is_pure_pack0') 161s 161s @pytest.mark.parametrize("distribution_type", ["unknown", "py_modules", "packages", "skbuild"]) 161s def test_distribution_is_pure(distribution_type, tmpdir): 161s skbuild_setup_kwargs = {} 161s 161s if distribution_type == "unknown": 161s is_pure = False 161s 161s elif distribution_type == "py_modules": 161s is_pure = True 161s hello_py = tmpdir.join("hello.py") 161s hello_py.write("") 161s skbuild_setup_kwargs["py_modules"] = ["hello"] 161s 161s elif distribution_type == "packages": 161s is_pure = True 161s init_py = tmpdir.mkdir("hello").join("__init__.py") 161s init_py.write("") 161s skbuild_setup_kwargs["packages"] = ["hello"] 161s 161s elif distribution_type == "skbuild": 161s is_pure = False 161s cmakelists_txt = tmpdir.join("CMakeLists.txt") 161s cmakelists_txt.write( 161s """ 161s cmake_minimum_required(VERSION 3.5.0) 161s project(test NONE) 161s install(CODE "execute_process( 161s COMMAND \\${CMAKE_COMMAND} -E sleep 0)") 161s """ 161s ) 161s else: 161s msg = f"Unknown distribution_type: {distribution_type}" 161s raise Exception(msg) 161s 161s platform = get_platform() 161s original_write_test_cmakelist = platform.write_test_cmakelist 161s 161s def write_test_cmakelist_no_languages(_self, _languages): 161s original_write_test_cmakelist([]) 161s 161s with patch.object(type(platform), "write_test_cmakelist", new=write_test_cmakelist_no_languages): 161s with push_dir(str(tmpdir)), push_argv(["setup.py", "build"]): 161s > distribution = skbuild_setup( 161s name="test", 161s version="0.0.1", 161s description="test object returned by setup function", 161s author="The scikit-build team", 161s license="MIT", 161s **skbuild_setup_kwargs, # type: ignore[arg-type] 161s ) 161s 161s distribution_type = 'packages' 161s init_py = local('/tmp/pytest-of-ubuntu/pytest-21/test_distribution_is_pure_pack0/hello/__init__.py') 161s is_pure = True 161s original_write_test_cmakelist = 161s platform = 161s skbuild_setup_kwargs = {'packages': ['hello']} 161s tmpdir = local('/tmp/pytest-of-ubuntu/pytest-21/test_distribution_is_pure_pack0') 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04894d60> 161s 161s tests/test_setup.py:78: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s build_ext_inplace = False 161s cmake_args = () 161s cmake_args_from_args = [] 161s cmake_executable = None 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s commands = ['build'] 161s display_only = False 161s force_cmake = False 161s has_cmakelists = False 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'test object returned by setup function', 'license': 'MIT', ...} 161s make_args = [] 161s plat_name = None 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = True 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'test object returned by setup function', 'license': 'MIT', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'test object returned by setup function', 'license': 'MIT', ...} 161s dist = 161s klass = 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 161s self.build_packages() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 161s self.build_module(module, module_file, package) 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s modules = [('hello', '__init__', 'hello/__init__.py')] 161s package = 'hello' 161s package_ = 'hello' 161s package_dir = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 161s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 161s __class__ = 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 161s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s package = 'hello' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 161s self.mkpath(dir) 161s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello' 161s module = '__init__' 161s module_file = 'hello/__init__.py' 161s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello/__init__.py' 161s package = ['hello'] 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello', mode = 511 161s verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-21/test_distribution_is_pure_pack0/_skbuild' 161s created_dirs = ['_skbuild'] 161s d = '_skbuild' 161s dry_run = False 161s head = '_skbuild' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib/hello' 161s tail = '_skbuild' 161s tails = ['_skbuild', 'linux-x86_64-3.12', 'setuptools', 'lib', 'hello'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s skipping skbuild (no CMakeLists.txt found) 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild 161s _______________ test_cmake_install_dir_keyword[banana-False-str] _______________ 161s 161s cmake_install_dir = 'banana', expected_failed = False 161s error_code_type = 161s capsys = <_pytest.capture.CaptureFixture object at 0x7bbe0484dfd0> 161s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe0484f710> 161s 161s @pytest.mark.parametrize( 161s ("cmake_install_dir", "expected_failed", "error_code_type"), 161s [ 161s (None, True, str), 161s ("", True, str), 161s (str(py.path.local.get_temproot().join("scikit-build")), True, SKBuildError), 161s ("banana", False, str), 161s ], 161s ) 161s def test_cmake_install_dir_keyword(cmake_install_dir, expected_failed, error_code_type, capsys, caplog): 161s # ------------------------------------------------------------------------- 161s # "SOURCE" tree layout: 161s # 161s # ROOT/ 161s # 161s # CMakeLists.txt 161s # setup.py 161s # 161s # apple/ 161s # __init__.py 161s # 161s # ------------------------------------------------------------------------- 161s # "BINARY" distribution layout 161s # 161s # ROOT/ 161s # 161s # apple/ 161s # __init__.py 161s # 161s 161s tmp_dir = _tmpdir("cmake_install_dir_keyword") 161s 161s setup_kwarg = "" 161s if cmake_install_dir is not None: 161s setup_kwarg = f"cmake_install_dir={str(cmake_install_dir)!r}" 161s 161s tmp_dir.join("setup.py").write( 161s textwrap.dedent( 161s f""" 161s from skbuild import setup 161s setup( 161s name="test_cmake_install_dir", 161s version="1.2.3", 161s description="a package testing use of cmake_install_dir", 161s author='The scikit-build team', 161s license="MIT", 161s packages=['apple', 'banana'], 161s {setup_kwarg} 161s ) 161s """ 161s ) 161s ) 161s 161s # Install location purposely set to "." so that we can test 161s # usage of "cmake_install_dir" skbuild.setup keyword. 161s tmp_dir.join("CMakeLists.txt").write( 161s textwrap.dedent( 161s """ 161s cmake_minimum_required(VERSION 3.5.0) 161s project(banana NONE) 161s file(WRITE "${CMAKE_BINARY_DIR}/__init__.py" "") 161s install(FILES "${CMAKE_BINARY_DIR}/__init__.py" DESTINATION ".") 161s """ 161s ) 161s ) 161s 161s tmp_dir.ensure("apple", "__init__.py") 161s 161s failed = False 161s message = "" 161s try: 161s > with execute_setup_py(tmp_dir, ["build"], disable_languages_test=True): 161s 161s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe0484f710> 161s capsys = <_pytest.capture.CaptureFixture object at 0x7bbe0484dfd0> 161s cmake_install_dir = 'banana' 161s error_code_type = 161s expected_failed = False 161s failed = False 161s message = '' 161s setup_kwarg = "cmake_install_dir='banana'" 161s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0') 161s 161s tests/test_setup.py:210: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:244: in execute_setup_py 161s exec(setup_code) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe04878430, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04c08cc0> 161s setup.py:3: in 161s setup( 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe04878430, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04c08cc0> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s BinaryDistribution = .BinaryDistribution'> 161s build_ext_inplace = False 161s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 161s cmake_args_from_args = [] 161s cmake_executable = '/usr/bin/cmake' 161s cmake_install_dir = 'banana' 161s cmake_install_target = 'install' 161s cmake_install_target_from_command = '' 161s cmake_install_target_from_setup = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/banana/__init__.py'] 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s cmkr = 161s commands = ['build'] 161s config_type = 'Release' 161s data_files = {} 161s developer_mode = False 161s display_only = False 161s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 161s env_cmake_args = [] 161s force_cmake = False 161s has_cmakelists = True 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of cmake_install_dir', ...} 161s make_args = ['--config', 'Release'] 161s new_py_modules = {} 161s new_scripts = {} 161s original_manifestin_data_files = [] 161s original_package_data = {} 161s package = 'banana' 161s package_data = {'apple': ['__init__.py'], 'banana': ['__init__.py']} 161s package_dir = {'apple': 'apple', 'banana': 'banana'} 161s package_prefixes = [('banana', 'banana'), ('apple', 'apple')] 161s packages = ['apple', 'banana'] 161s plat_name = None 161s process_manifest = None 161s py_modules = [] 161s scripts = [] 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = False 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of cmake_install_dir', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of cmake_install_dir', ...} 161s dist = .BinaryDistribution object at 0x7bbe048d85c0> 161s klass = .BinaryDistribution'> 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = .BinaryDistribution object at 0x7bbe048d85c0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'build' 161s self = .BinaryDistribution object at 0x7bbe048d85c0> 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe048d85c0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe048d85c0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe048d85c0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe048d85c0> 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 161s self.build_packages() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 161s self.build_module(module, module_file, package) 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/apple/__init__.py' 161s modules = [('apple', '__init__', '_skbuild/linux-x86_64-3.12/cmake-install/apple/__init__.py')] 161s package = 'apple' 161s package_ = 'apple' 161s package_dir = '_skbuild/linux-x86_64-3.12/cmake-install/apple' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 161s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 161s __class__ = 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/apple/__init__.py' 161s package = 'apple' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 161s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/apple/__init__.py' 161s package = 'apple' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 161s self.mkpath(dir) 161s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/apple' 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/apple/__init__.py' 161s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/apple/__init__.py' 161s package = ['apple'] 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/apple' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/apple' 161s mode = 511, verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 161s d = 'lib.linux-x86_64-cpython-312' 161s dry_run = False 161s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/apple' 161s tail = 'lib.linux-x86_64-cpython-312' 161s tails = ['lib.linux-x86_64-cpython-312', 'apple'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Not searching for unused variables given on the command line. 161s -- Configuring incomplete, errors occurred! 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0/_cmake_test_compile/build 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0/_skbuild/linux-x86_64-3.12/cmake-build 161s Install the project... 161s -- Install configuration: "Release" 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0/_skbuild/linux-x86_64-3.12/cmake-install/banana/./__init__.py 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Ninja' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Ninja' generator - failure 161s -------------------------------------------------------------------------------- 161s 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Unix Makefiles' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Unix Makefiles' generator - success 161s -------------------------------------------------------------------------------- 161s 161s Configuring Project 161s Working directory: 161s /tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0/_skbuild/linux-x86_64-3.12/cmake-build 161s Command: 161s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-73/cmake_install_dir_keyword0/_skbuild/linux-x86_64-3.12/cmake-install/banana -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 161s 161s 161s creating directory _skbuild/linux-x86_64-3.12/cmake-install/apple 161s copying apple/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/apple/__init__.py 161s 161s ----------------------------- Captured stderr call ----------------------------- 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 161s _____________________ test_cmake_with_sdist_keyword[True] ______________________ 161s 161s cmake_with_sdist = True 161s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe048d9670> 161s 161s @pytest.mark.parametrize("cmake_with_sdist", [True, False]) 161s def test_cmake_with_sdist_keyword(cmake_with_sdist, capfd): 161s tmp_dir = _tmpdir("cmake_with_sdist") 161s 161s tmp_dir.join("setup.py").write( 161s textwrap.dedent( 161s f""" 161s from skbuild import setup 161s setup( 161s name="cmake_with_sdist_keyword", 161s version="1.2.3", 161s description="a minimal example package", 161s author='The scikit-build team', 161s license="MIT", 161s cmake_with_sdist={cmake_with_sdist} 161s ) 161s """ 161s ) 161s ) 161s tmp_dir.join("CMakeLists.txt").write( 161s textwrap.dedent( 161s """ 161s cmake_minimum_required(VERSION 3.5.0) 161s project(test NONE) 161s install(CODE "execute_process( 161s COMMAND \\${CMAKE_COMMAND} -E sleep 0)") 161s """ 161s ) 161s ) 161s 161s initialize_git_repo_and_commit(tmp_dir) 161s 161s > with execute_setup_py(tmp_dir, ["sdist"], disable_languages_test=True): 161s 161s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe048d9670> 161s cmake_with_sdist = True 161s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0') 161s 161s tests/test_setup.py:266: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:244: in execute_setup_py 161s exec(setup_code) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0') 161s setup = 161s setup_args = ['sdist'] 161s setup_code = at 0x7bbe04afda70, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04897c40> 161s setup.py:3: in 161s setup( 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0') 161s setup = 161s setup_args = ['sdist'] 161s setup_code = at 0x7bbe04afda70, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04897c40> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s BinaryDistribution = .BinaryDistribution'> 161s build_ext_inplace = False 161s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 161s cmake_args_from_args = [] 161s cmake_executable = '/usr/bin/cmake' 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_install_target_from_command = '' 161s cmake_install_target_from_setup = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_manifest = [] 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 161s cmake_with_sdist = True 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s cmkr = 161s commands = ['sdist'] 161s config_type = 'Release' 161s data_files = {} 161s developer_mode = False 161s display_only = False 161s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 161s env_cmake_args = [] 161s force_cmake = False 161s has_cmakelists = True 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 161s make_args = ['--config', 'Release'] 161s new_py_modules = {} 161s new_scripts = {} 161s original_manifestin_data_files = [] 161s original_package_data = {} 161s package_data = {} 161s package_dir = {} 161s package_prefixes = [] 161s packages = [] 161s plat_name = None 161s process_manifest = None 161s py_modules = [] 161s scripts = [] 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = False 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 161s dist = .BinaryDistribution object at 0x7bbe048479e0> 161s klass = .BinaryDistribution'> 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = .BinaryDistribution object at 0x7bbe048479e0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'sdist' 161s self = .BinaryDistribution object at 0x7bbe048479e0> 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'sdist' 161s self = .BinaryDistribution object at 0x7bbe048479e0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'sdist' 161s self = .BinaryDistribution object at 0x7bbe048479e0> 161s /usr/lib/python3/dist-packages/skbuild/command/sdist.py:39: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/sdist.py:52: in run 161s self.run_command('egg_info') 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'egg_info' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'egg_info' 161s self = .BinaryDistribution object at 0x7bbe048479e0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'egg_info' 161s self = .BinaryDistribution object at 0x7bbe048479e0> 161s /usr/lib/python3/dist-packages/setuptools/command/egg_info.py:306: in run 161s self.mkpath(self.egg_info) 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = 'cmake_with_sdist_keyword.egg-info' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = 'cmake_with_sdist_keyword.egg-info', mode = 511, verbose = True 161s dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0/cmake_with_sdist_keyword.egg-info' 161s created_dirs = ['cmake_with_sdist_keyword.egg-info'] 161s d = 'cmake_with_sdist_keyword.egg-info' 161s dry_run = False 161s head = 'cmake_with_sdist_keyword.egg-info' 161s mode = 511 161s name = 'cmake_with_sdist_keyword.egg-info' 161s tail = 'cmake_with_sdist_keyword.egg-info' 161s tails = ['cmake_with_sdist_keyword.egg-info'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0/.git/ 161s [master (root-commit) a3e5692] Initial commit 161s 2 files changed, 15 insertions(+) 161s create mode 100644 CMakeLists.txt 161s create mode 100644 setup.py 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Ninja' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s Not searching for unused variables given on the command line. 161s -- Configuring incomplete, errors occurred! 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Ninja' generator - failure 161s -------------------------------------------------------------------------------- 161s 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Unix Makefiles' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0/_cmake_test_compile/build 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Unix Makefiles' generator - success 161s -------------------------------------------------------------------------------- 161s 161s Configuring Project 161s Working directory: 161s /tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0/_skbuild/linux-x86_64-3.12/cmake-build 161s Command: 161s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 161s 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-74/cmake_with_sdist0/_skbuild/linux-x86_64-3.12/cmake-build 161s Install the project... 161s -- Install configuration: "Release" 161s 161s 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running sdist 161s INFO root:dist.py:986 running generate_source_manifest 161s INFO root:dist.py:986 running egg_info 161s INFO root:dir_util.py:70 creating cmake_with_sdist_keyword.egg-info 161s _____________________ test_cmake_with_sdist_keyword[False] _____________________ 161s 161s cmake_with_sdist = False 161s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe048db1a0> 161s 161s @pytest.mark.parametrize("cmake_with_sdist", [True, False]) 161s def test_cmake_with_sdist_keyword(cmake_with_sdist, capfd): 161s tmp_dir = _tmpdir("cmake_with_sdist") 161s 161s tmp_dir.join("setup.py").write( 161s textwrap.dedent( 161s f""" 161s from skbuild import setup 161s setup( 161s name="cmake_with_sdist_keyword", 161s version="1.2.3", 161s description="a minimal example package", 161s author='The scikit-build team', 161s license="MIT", 161s cmake_with_sdist={cmake_with_sdist} 161s ) 161s """ 161s ) 161s ) 161s tmp_dir.join("CMakeLists.txt").write( 161s textwrap.dedent( 161s """ 161s cmake_minimum_required(VERSION 3.5.0) 161s project(test NONE) 161s install(CODE "execute_process( 161s COMMAND \\${CMAKE_COMMAND} -E sleep 0)") 161s """ 161s ) 161s ) 161s 161s initialize_git_repo_and_commit(tmp_dir) 161s 161s > with execute_setup_py(tmp_dir, ["sdist"], disable_languages_test=True): 161s 161s capfd = <_pytest.capture.CaptureFixture object at 0x7bbe048db1a0> 161s cmake_with_sdist = False 161s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-75/cmake_with_sdist0') 161s 161s tests/test_setup.py:266: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:244: in execute_setup_py 161s exec(setup_code) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-75/cmake_with_sdist0') 161s setup = 161s setup_args = ['sdist'] 161s setup_code = at 0x7bbe049f6790, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe048979c0> 161s setup.py:3: in 161s setup( 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-75/cmake_with_sdist0') 161s setup = 161s setup_args = ['sdist'] 161s setup_code = at 0x7bbe049f6790, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe048979c0> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s build_ext_inplace = False 161s cmake_args = () 161s cmake_args_from_args = [] 161s cmake_executable = None 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s commands = ['sdist'] 161s display_only = False 161s force_cmake = False 161s has_cmakelists = True 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 161s make_args = [] 161s plat_name = None 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = True 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a minimal example package', 'license': 'MIT', ...} 161s dist = 161s klass = 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'sdist' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'sdist' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'sdist' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/sdist.py:39: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/sdist.py:52: in run 161s self.run_command('egg_info') 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'egg_info' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'egg_info' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'egg_info' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/egg_info.py:306: in run 161s self.mkpath(self.egg_info) 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = 'cmake_with_sdist_keyword.egg-info' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = 'cmake_with_sdist_keyword.egg-info', mode = 511, verbose = True 161s dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-75/cmake_with_sdist0/cmake_with_sdist_keyword.egg-info' 161s created_dirs = ['cmake_with_sdist_keyword.egg-info'] 161s d = 'cmake_with_sdist_keyword.egg-info' 161s dry_run = False 161s head = 'cmake_with_sdist_keyword.egg-info' 161s mode = 511 161s name = 'cmake_with_sdist_keyword.egg-info' 161s tail = 'cmake_with_sdist_keyword.egg-info' 161s tails = ['cmake_with_sdist_keyword.egg-info'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-75/cmake_with_sdist0/.git/ 161s [master (root-commit) e84d91f] Initial commit 161s 2 files changed, 15 insertions(+) 161s create mode 100644 CMakeLists.txt 161s create mode 100644 setup.py 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running sdist 161s INFO root:dist.py:986 running generate_source_manifest 161s INFO root:dist.py:986 running egg_info 161s INFO root:dir_util.py:70 creating cmake_with_sdist_keyword.egg-info 161s __________________________ test_script_keyword[pure] ___________________________ 161s 161s distribution_type = 'pure' 161s capsys = <_pytest.capture.CaptureFixture object at 0x7bbe04890140> 161s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe04893ad0> 161s 161s @pytest.mark.parametrize("distribution_type", ["pure", "skbuild"]) 161s def test_script_keyword(distribution_type, capsys, caplog): 161s # ------------------------------------------------------------------------- 161s # 161s # "SOURCE" tree layout for "pure" distribution: 161s # 161s # ROOT/ 161s # setup.py 161s # foo.py 161s # bar.py 161s # 161s # "SOURCE" tree layout for "pure" distribution: 161s # 161s # ROOT/ 161s # setup.py 161s # CMakeLists.txt 161s # 161s # ------------------------------------------------------------------------- 161s # "BINARY" distribution layout is identical for both 161s # 161s # ROOT/ 161s # foo.py 161s # bar.py 161s # 161s 161s tmp_dir = _tmpdir("script_keyword") 161s 161s tmp_dir.join("setup.py").write( 161s textwrap.dedent( 161s """ 161s from skbuild import setup 161s setup( 161s name="test_script_keyword", 161s version="1.2.3", 161s description="a package testing use of script keyword", 161s author='The scikit-build team', 161s license="MIT", 161s scripts=['foo.py', 'bar.py'], 161s packages=[], 161s ) 161s """ 161s ) 161s ) 161s 161s if distribution_type == "skbuild": 161s tmp_dir.join("CMakeLists.txt").write( 161s textwrap.dedent( 161s """ 161s cmake_minimum_required(VERSION 3.5.0) 161s project(foo NONE) 161s file(WRITE "${CMAKE_BINARY_DIR}/foo.py" "# foo.py") 161s file(WRITE "${CMAKE_BINARY_DIR}/bar.py" "# bar.py") 161s install( 161s FILES 161s "${CMAKE_BINARY_DIR}/foo.py" 161s "${CMAKE_BINARY_DIR}/bar.py" 161s DESTINATION "." 161s ) 161s """ 161s ) 161s ) 161s 161s messages = [ 161s f"copying {CMAKE_INSTALL_DIR()}/{module}.py -> {SKBUILD_DIR()}/setuptools/scripts-" 161s for module in ["foo", "bar"] 161s ] 161s 161s elif distribution_type == "pure": 161s tmp_dir.join("foo.py").write("# foo.py") 161s tmp_dir.join("bar.py").write("# bar.py") 161s 161s messages = [f"copying {module}.py -> {SKBUILD_DIR()}/setuptools/scripts-" for module in ["foo", "bar"]] 161s 161s > with execute_setup_py(tmp_dir, ["build"], disable_languages_test=True): 161s 161s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe04893ad0> 161s capsys = <_pytest.capture.CaptureFixture object at 0x7bbe04890140> 161s distribution_type = 'pure' 161s messages = ['copying foo.py -> _skbuild/linux-x86_64-3.12/setuptools/scripts-', 'copying bar.py -> _skbuild/linux-x86_64-3.12/setuptools/scripts-'] 161s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-78/script_keyword0') 161s 161s tests/test_setup.py:449: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:244: in execute_setup_py 161s exec(setup_code) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-78/script_keyword0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe04878830, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe0458f920> 161s setup.py:3: in 161s setup( 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-78/script_keyword0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe04878830, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe0458f920> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s build_ext_inplace = False 161s cmake_args = () 161s cmake_args_from_args = [] 161s cmake_executable = None 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s commands = ['build'] 161s display_only = False 161s force_cmake = False 161s has_cmakelists = False 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a package testing use of script keyword', 'license': 'MIT', ...} 161s make_args = [] 161s plat_name = None 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = True 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a package testing use of script keyword', 'license': 'MIT', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a package testing use of script keyword', 'license': 'MIT', ...} 161s dist = 161s klass = 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_scripts' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_scripts' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_scripts' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_scripts' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_scripts.py:57: in run 161s self.copy_scripts() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_scripts.py:68: in copy_scripts 161s self.mkpath(self.build_dir) 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/scripts-3.12' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/scripts-3.12', mode = 511 161s verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-78/script_keyword0/_skbuild' 161s created_dirs = ['_skbuild'] 161s d = '_skbuild' 161s dry_run = False 161s head = '_skbuild' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/scripts-3.12' 161s tail = '_skbuild' 161s tails = ['_skbuild', 'linux-x86_64-3.12', 'setuptools', 'scripts-3.12'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s skipping skbuild (no CMakeLists.txt found) 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_scripts 161s INFO root:dir_util.py:70 creating _skbuild 161s _________________________ test_script_keyword[skbuild] _________________________ 161s 161s distribution_type = 'skbuild' 161s capsys = <_pytest.capture.CaptureFixture object at 0x7bbe048456a0> 161s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe04847f50> 161s 161s @pytest.mark.parametrize("distribution_type", ["pure", "skbuild"]) 161s def test_script_keyword(distribution_type, capsys, caplog): 161s # ------------------------------------------------------------------------- 161s # 161s # "SOURCE" tree layout for "pure" distribution: 161s # 161s # ROOT/ 161s # setup.py 161s # foo.py 161s # bar.py 161s # 161s # "SOURCE" tree layout for "pure" distribution: 161s # 161s # ROOT/ 161s # setup.py 161s # CMakeLists.txt 161s # 161s # ------------------------------------------------------------------------- 161s # "BINARY" distribution layout is identical for both 161s # 161s # ROOT/ 161s # foo.py 161s # bar.py 161s # 161s 161s tmp_dir = _tmpdir("script_keyword") 161s 161s tmp_dir.join("setup.py").write( 161s textwrap.dedent( 161s """ 161s from skbuild import setup 161s setup( 161s name="test_script_keyword", 161s version="1.2.3", 161s description="a package testing use of script keyword", 161s author='The scikit-build team', 161s license="MIT", 161s scripts=['foo.py', 'bar.py'], 161s packages=[], 161s ) 161s """ 161s ) 161s ) 161s 161s if distribution_type == "skbuild": 161s tmp_dir.join("CMakeLists.txt").write( 161s textwrap.dedent( 161s """ 161s cmake_minimum_required(VERSION 3.5.0) 161s project(foo NONE) 161s file(WRITE "${CMAKE_BINARY_DIR}/foo.py" "# foo.py") 161s file(WRITE "${CMAKE_BINARY_DIR}/bar.py" "# bar.py") 161s install( 161s FILES 161s "${CMAKE_BINARY_DIR}/foo.py" 161s "${CMAKE_BINARY_DIR}/bar.py" 161s DESTINATION "." 161s ) 161s """ 161s ) 161s ) 161s 161s messages = [ 161s f"copying {CMAKE_INSTALL_DIR()}/{module}.py -> {SKBUILD_DIR()}/setuptools/scripts-" 161s for module in ["foo", "bar"] 161s ] 161s 161s elif distribution_type == "pure": 161s tmp_dir.join("foo.py").write("# foo.py") 161s tmp_dir.join("bar.py").write("# bar.py") 161s 161s messages = [f"copying {module}.py -> {SKBUILD_DIR()}/setuptools/scripts-" for module in ["foo", "bar"]] 161s 161s > with execute_setup_py(tmp_dir, ["build"], disable_languages_test=True): 161s 161s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe04847f50> 161s capsys = <_pytest.capture.CaptureFixture object at 0x7bbe048456a0> 161s distribution_type = 'skbuild' 161s messages = ['copying _skbuild/linux-x86_64-3.12/cmake-install/foo.py -> _skbuild/linux-x86_64-3.12/setuptools/scripts-', 'copying _skbuild/linux-x86_64-3.12/cmake-install/bar.py -> _skbuild/linux-x86_64-3.12/setuptools/scripts-'] 161s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-79/script_keyword0') 161s 161s tests/test_setup.py:449: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:244: in execute_setup_py 161s exec(setup_code) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-79/script_keyword0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe04623e30, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04c08cc0> 161s setup.py:3: in 161s setup( 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-79/script_keyword0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe04623e30, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04c08cc0> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s BinaryDistribution = .BinaryDistribution'> 161s build_ext_inplace = False 161s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 161s cmake_args_from_args = [] 161s cmake_executable = '/usr/bin/cmake' 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_install_target_from_command = '' 161s cmake_install_target_from_setup = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/foo.py', '_skbuild/linux-x86_64-3.12/cmake-install/bar.py'] 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s cmkr = 161s commands = ['build'] 161s config_type = 'Release' 161s data_files = {} 161s developer_mode = False 161s display_only = False 161s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 161s env_cmake_args = [] 161s force_cmake = False 161s has_cmakelists = True 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of script keyword', ...} 161s make_args = ['--config', 'Release'] 161s new_py_modules = {} 161s new_scripts = {'bar.py': True, 'foo.py': True} 161s original_manifestin_data_files = [] 161s original_package_data = {} 161s package_data = {} 161s package_dir = {} 161s package_prefixes = [] 161s packages = [] 161s plat_name = None 161s process_manifest = None 161s py_modules = [] 161s scripts = ['foo.py', 'bar.py'] 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = False 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of script keyword', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of script keyword', ...} 161s dist = .BinaryDistribution object at 0x7bbe048db470> 161s klass = .BinaryDistribution'> 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = .BinaryDistribution object at 0x7bbe048db470> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'build' 161s self = .BinaryDistribution object at 0x7bbe048db470> 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe048db470> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe048db470> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_scripts' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_scripts' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_scripts' 161s self = .BinaryDistribution object at 0x7bbe048db470> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_scripts' 161s self = .BinaryDistribution object at 0x7bbe048db470> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_scripts.py:57: in run 161s self.copy_scripts() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_scripts.py:68: in copy_scripts 161s self.mkpath(self.build_dir) 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/scripts-3.12' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/scripts-3.12', mode = 511 161s verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-79/script_keyword0/_skbuild/linux-x86_64-3.12/setuptools/scripts-3.12' 161s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/scripts-3.12'] 161s d = 'scripts-3.12' 161s dry_run = False 161s head = '_skbuild/linux-x86_64-3.12/setuptools/scripts-3.12' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/scripts-3.12' 161s tail = 'scripts-3.12' 161s tails = ['scripts-3.12'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Not searching for unused variables given on the command line. 161s -- Configuring incomplete, errors occurred! 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-79/script_keyword0/_cmake_test_compile/build 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-79/script_keyword0/_skbuild/linux-x86_64-3.12/cmake-build 161s Install the project... 161s -- Install configuration: "Release" 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-79/script_keyword0/_skbuild/linux-x86_64-3.12/cmake-install/./foo.py 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-79/script_keyword0/_skbuild/linux-x86_64-3.12/cmake-install/./bar.py 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Ninja' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Ninja' generator - failure 161s -------------------------------------------------------------------------------- 161s 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Unix Makefiles' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Unix Makefiles' generator - success 161s -------------------------------------------------------------------------------- 161s 161s Configuring Project 161s Working directory: 161s /tmp/pytest-of-ubuntu/pytest-79/script_keyword0/_skbuild/linux-x86_64-3.12/cmake-build 161s Command: 161s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-79/script_keyword0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-79/script_keyword0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 161s 161s 161s 161s ----------------------------- Captured stderr call ----------------------------- 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_ext 161s INFO root:dist.py:986 running build_scripts 161s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/scripts-3.12 161s ________________________ test_py_modules_keyword[pure] _________________________ 161s 161s distribution_type = 'pure' 161s capsys = <_pytest.capture.CaptureFixture object at 0x7bbe048dbec0> 161s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe048db3e0> 161s 161s @pytest.mark.parametrize("distribution_type", ["pure", "skbuild"]) 161s def test_py_modules_keyword(distribution_type, capsys, caplog): 161s # ------------------------------------------------------------------------- 161s # 161s # "SOURCE" tree layout for "pure" distribution: 161s # 161s # ROOT/ 161s # setup.py 161s # foo.py 161s # bar.py 161s # 161s # "SOURCE" tree layout for "skbuild" distribution: 161s # 161s # ROOT/ 161s # setup.py 161s # CMakeLists.txt 161s # 161s # ------------------------------------------------------------------------- 161s # "BINARY" distribution layout is identical for both 161s # 161s # ROOT/ 161s # foo.py 161s # bar.py 161s # 161s 161s tmp_dir = _tmpdir("py_modules_keyword") 161s 161s tmp_dir.join("setup.py").write( 161s textwrap.dedent( 161s """ 161s from skbuild import setup 161s setup( 161s name="test_py_modules_keyword", 161s version="1.2.3", 161s description="a package testing use of py_modules keyword", 161s author='The scikit-build team', 161s license="MIT", 161s py_modules=['foo', 'bar'] 161s ) 161s """ 161s ) 161s ) 161s 161s if distribution_type == "skbuild": 161s tmp_dir.join("CMakeLists.txt").write( 161s textwrap.dedent( 161s """ 161s cmake_minimum_required(VERSION 3.5.0) 161s project(foobar NONE) 161s file(WRITE "${CMAKE_BINARY_DIR}/foo.py" "# foo.py") 161s file(WRITE "${CMAKE_BINARY_DIR}/bar.py" "# bar.py") 161s install( 161s FILES 161s "${CMAKE_BINARY_DIR}/foo.py" 161s "${CMAKE_BINARY_DIR}/bar.py" 161s DESTINATION "." 161s ) 161s """ 161s ) 161s ) 161s 161s messages = [ 161s f"copying {CMAKE_INSTALL_DIR()}/{module}.py -> {SKBUILD_DIR()}/setuptools/lib" for module in ["foo", "bar"] 161s ] 161s 161s elif distribution_type == "pure": 161s tmp_dir.join("foo.py").write("# foo.py") 161s tmp_dir.join("bar.py").write("# bar.py") 161s 161s messages = [f"copying {module}.py -> {SKBUILD_DIR()}/setuptools/lib" for module in ["foo", "bar"]] 161s 161s > with execute_setup_py(tmp_dir, ["build"], disable_languages_test=True): 161s 161s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe048db3e0> 161s capsys = <_pytest.capture.CaptureFixture object at 0x7bbe048dbec0> 161s distribution_type = 'pure' 161s messages = ['copying foo.py -> _skbuild/linux-x86_64-3.12/setuptools/lib', 'copying bar.py -> _skbuild/linux-x86_64-3.12/setuptools/lib'] 161s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-80/py_modules_keyword0') 161s 161s tests/test_setup.py:529: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:244: in execute_setup_py 161s exec(setup_code) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-80/py_modules_keyword0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe04ab2100, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04a9b240> 161s setup.py:3: in 161s setup( 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-80/py_modules_keyword0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe04ab2100, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04a9b240> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s build_ext_inplace = False 161s cmake_args = () 161s cmake_args_from_args = [] 161s cmake_executable = None 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s commands = ['build'] 161s display_only = False 161s force_cmake = False 161s has_cmakelists = False 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a package testing use of py_modules keyword', 'license': 'MIT', ...} 161s make_args = [] 161s plat_name = None 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = True 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a package testing use of py_modules keyword', 'license': 'MIT', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'description': 'a package testing use of py_modules keyword', 'license': 'MIT', ...} 161s dist = 161s klass = 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 161s self.build_modules() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 161s self.build_module(module, module_file, package) 161s module = 'foo' 161s module_file = 'foo.py' 161s modules = [('', 'foo', 'foo.py'), ('', 'bar', 'bar.py')] 161s package = '' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 161s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 161s __class__ = 161s module = 'foo' 161s module_file = 'foo.py' 161s package = '' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 161s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 161s module = 'foo' 161s module_file = 'foo.py' 161s package = '' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 161s self.mkpath(dir) 161s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib' 161s module = 'foo' 161s module_file = 'foo.py' 161s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib/foo.py' 161s package = [''] 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib', mode = 511, verbose = True 161s dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-80/py_modules_keyword0/_skbuild' 161s created_dirs = ['_skbuild'] 161s d = '_skbuild' 161s dry_run = False 161s head = '_skbuild' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib' 161s tail = '_skbuild' 161s tails = ['_skbuild', 'linux-x86_64-3.12', 'setuptools', 'lib'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s skipping skbuild (no CMakeLists.txt found) 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild 161s _______________________ test_py_modules_keyword[skbuild] _______________________ 161s 161s distribution_type = 'skbuild' 161s capsys = <_pytest.capture.CaptureFixture object at 0x7bbe04846e70> 161s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe04824d40> 161s 161s @pytest.mark.parametrize("distribution_type", ["pure", "skbuild"]) 161s def test_py_modules_keyword(distribution_type, capsys, caplog): 161s # ------------------------------------------------------------------------- 161s # 161s # "SOURCE" tree layout for "pure" distribution: 161s # 161s # ROOT/ 161s # setup.py 161s # foo.py 161s # bar.py 161s # 161s # "SOURCE" tree layout for "skbuild" distribution: 161s # 161s # ROOT/ 161s # setup.py 161s # CMakeLists.txt 161s # 161s # ------------------------------------------------------------------------- 161s # "BINARY" distribution layout is identical for both 161s # 161s # ROOT/ 161s # foo.py 161s # bar.py 161s # 161s 161s tmp_dir = _tmpdir("py_modules_keyword") 161s 161s tmp_dir.join("setup.py").write( 161s textwrap.dedent( 161s """ 161s from skbuild import setup 161s setup( 161s name="test_py_modules_keyword", 161s version="1.2.3", 161s description="a package testing use of py_modules keyword", 161s author='The scikit-build team', 161s license="MIT", 161s py_modules=['foo', 'bar'] 161s ) 161s """ 161s ) 161s ) 161s 161s if distribution_type == "skbuild": 161s tmp_dir.join("CMakeLists.txt").write( 161s textwrap.dedent( 161s """ 161s cmake_minimum_required(VERSION 3.5.0) 161s project(foobar NONE) 161s file(WRITE "${CMAKE_BINARY_DIR}/foo.py" "# foo.py") 161s file(WRITE "${CMAKE_BINARY_DIR}/bar.py" "# bar.py") 161s install( 161s FILES 161s "${CMAKE_BINARY_DIR}/foo.py" 161s "${CMAKE_BINARY_DIR}/bar.py" 161s DESTINATION "." 161s ) 161s """ 161s ) 161s ) 161s 161s messages = [ 161s f"copying {CMAKE_INSTALL_DIR()}/{module}.py -> {SKBUILD_DIR()}/setuptools/lib" for module in ["foo", "bar"] 161s ] 161s 161s elif distribution_type == "pure": 161s tmp_dir.join("foo.py").write("# foo.py") 161s tmp_dir.join("bar.py").write("# bar.py") 161s 161s messages = [f"copying {module}.py -> {SKBUILD_DIR()}/setuptools/lib" for module in ["foo", "bar"]] 161s 161s > with execute_setup_py(tmp_dir, ["build"], disable_languages_test=True): 161s 161s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe04824d40> 161s capsys = <_pytest.capture.CaptureFixture object at 0x7bbe04846e70> 161s distribution_type = 'skbuild' 161s messages = ['copying _skbuild/linux-x86_64-3.12/cmake-install/foo.py -> _skbuild/linux-x86_64-3.12/setuptools/lib', 'copying _skbuild/linux-x86_64-3.12/cmake-install/bar.py -> _skbuild/linux-x86_64-3.12/setuptools/lib'] 161s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0') 161s 161s tests/test_setup.py:529: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:244: in execute_setup_py 161s exec(setup_code) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe04affe10, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04895bc0> 161s setup.py:3: in 161s setup( 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe04affe10, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe04895bc0> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s BinaryDistribution = .BinaryDistribution'> 161s build_ext_inplace = False 161s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 161s cmake_args_from_args = [] 161s cmake_executable = '/usr/bin/cmake' 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_install_target_from_command = '' 161s cmake_install_target_from_setup = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/foo.py', '_skbuild/linux-x86_64-3.12/cmake-install/bar.py'] 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s cmkr = 161s commands = ['build'] 161s config_type = 'Release' 161s data_files = {} 161s developer_mode = False 161s display_only = False 161s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 161s env_cmake_args = [] 161s force_cmake = False 161s has_cmakelists = True 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of py_modules keyword', ...} 161s make_args = ['--config', 'Release'] 161s new_py_modules = {'bar': True, 'foo': True} 161s new_scripts = {} 161s original_manifestin_data_files = [] 161s original_package_data = {} 161s package_data = {'': ['foo.py', 'bar.py']} 161s package_dir = {} 161s package_prefixes = [] 161s packages = [] 161s plat_name = None 161s process_manifest = None 161s py_modules = ['foo', 'bar'] 161s scripts = [] 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = False 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of py_modules keyword', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of py_modules keyword', ...} 161s dist = .BinaryDistribution object at 0x7bbe0483cc80> 161s klass = .BinaryDistribution'> 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = .BinaryDistribution object at 0x7bbe0483cc80> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'build' 161s self = .BinaryDistribution object at 0x7bbe0483cc80> 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe0483cc80> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe0483cc80> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe0483cc80> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe0483cc80> 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 161s self.build_modules() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 161s self.build_module(module, module_file, package) 161s module = 'foo' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/foo.py' 161s modules = [('', 'foo', '_skbuild/linux-x86_64-3.12/cmake-install/foo.py'), ('', 'bar', '_skbuild/linux-x86_64-3.12/cmake-install/bar.py')] 161s package = '' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 161s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 161s __class__ = 161s module = 'foo' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/foo.py' 161s package = '' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 161s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 161s module = 'foo' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/foo.py' 161s package = '' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 161s self.mkpath(dir) 161s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s module = 'foo' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/foo.py' 161s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/foo.py' 161s package = [''] 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s mode = 511, verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 161s d = 'lib.linux-x86_64-cpython-312' 161s dry_run = False 161s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s tail = 'lib.linux-x86_64-cpython-312' 161s tails = ['lib.linux-x86_64-cpython-312'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Not searching for unused variables given on the command line. 161s -- Configuring incomplete, errors occurred! 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0/_cmake_test_compile/build 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0/_skbuild/linux-x86_64-3.12/cmake-build 161s Install the project... 161s -- Install configuration: "Release" 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0/_skbuild/linux-x86_64-3.12/cmake-install/./foo.py 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0/_skbuild/linux-x86_64-3.12/cmake-install/./bar.py 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Ninja' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Ninja' generator - failure 161s -------------------------------------------------------------------------------- 161s 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Unix Makefiles' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Unix Makefiles' generator - success 161s -------------------------------------------------------------------------------- 161s 161s Configuring Project 161s Working directory: 161s /tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0/_skbuild/linux-x86_64-3.12/cmake-build 161s Command: 161s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-81/py_modules_keyword0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 161s 161s 161s 161s ----------------------------- Captured stderr call ----------------------------- 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 161s ___________________ test_cmake_install_into_pure_package[0] ____________________ 161s 161s with_cmake_source_dir = 0 161s capsys = <_pytest.capture.CaptureFixture object at 0x7bbe04829d90> 161s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe03dc5d60> 161s 161s @pytest.mark.parametrize("with_cmake_source_dir", [0, 1]) 161s def test_cmake_install_into_pure_package(with_cmake_source_dir, capsys, caplog): 161s # ------------------------------------------------------------------------- 161s # "SOURCE" tree layout: 161s # 161s # (1) with_cmake_source_dir == 0 161s # 161s # ROOT/ 161s # 161s # CMakeLists.txt 161s # setup.py 161s # 161s # fruits/ 161s # __init__.py 161s # 161s # 161s # (2) with_cmake_source_dir == 1 161s # 161s # ROOT/ 161s # 161s # setup.py 161s # 161s # fruits/ 161s # __init__.py 161s # 161s # src/ 161s # 161s # CMakeLists.txt 161s # 161s # ------------------------------------------------------------------------- 161s # "BINARY" distribution layout: 161s # 161s # ROOT/ 161s # 161s # fruits/ 161s # 161s # __init__.py 161s # apple.py 161s # banana.py 161s # 161s # data/ 161s # 161s # apple.dat 161s # banana.dat 161s # 161s 161s tmp_dir = _tmpdir("cmake_install_into_pure_package") 161s 161s cmake_source_dir = "src" if with_cmake_source_dir else "" 161s 161s tmp_dir.join("setup.py").write( 161s textwrap.dedent( 161s f""" 161s from skbuild import setup 161s setup( 161s name="test_py_modules_keyword", 161s version="1.2.3", 161s description="a package testing use of py_modules keyword", 161s author='The scikit-build team', 161s license="MIT", 161s packages=['fruits'], 161s cmake_install_dir='fruits', 161s cmake_source_dir='{cmake_source_dir}', 161s ) 161s """ 161s ) 161s ) 161s 161s cmake_src_dir = tmp_dir.ensure(cmake_source_dir, dir=1) 161s cmake_src_dir.join("CMakeLists.txt").write( 161s textwrap.dedent( 161s """ 161s cmake_minimum_required(VERSION 3.5.0) 161s project(test NONE) 161s file(WRITE "${CMAKE_BINARY_DIR}/apple.py" "# apple.py") 161s file(WRITE "${CMAKE_BINARY_DIR}/banana.py" "# banana.py") 161s install( 161s FILES 161s "${CMAKE_BINARY_DIR}/apple.py" 161s "${CMAKE_BINARY_DIR}/banana.py" 161s DESTINATION "." 161s ) 161s file(WRITE "${CMAKE_BINARY_DIR}/apple.dat" "# apple.dat") 161s file(WRITE "${CMAKE_BINARY_DIR}/banana.dat" "# banana.dat") 161s install( 161s FILES 161s "${CMAKE_BINARY_DIR}/apple.dat" 161s "${CMAKE_BINARY_DIR}/banana.dat" 161s DESTINATION "data" 161s ) 161s """ 161s ) 161s ) 161s 161s tmp_dir.ensure("fruits/__init__.py") 161s 161s > with execute_setup_py(tmp_dir, ["build"], disable_languages_test=True): 161s 161s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe03dc5d60> 161s capsys = <_pytest.capture.CaptureFixture object at 0x7bbe04829d90> 161s cmake_source_dir = '' 161s cmake_src_dir = local('/tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0') 161s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0') 161s with_cmake_source_dir = 0 161s 161s tests/test_setup.py:1030: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:244: in execute_setup_py 161s exec(setup_code) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe04879130, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe03d44ea0> 161s setup.py:3: in 161s setup( 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe04879130, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe03d44ea0> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s BinaryDistribution = .BinaryDistribution'> 161s build_ext_inplace = False 161s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 161s cmake_args_from_args = [] 161s cmake_executable = '/usr/bin/cmake' 161s cmake_install_dir = 'fruits' 161s cmake_install_target = 'install' 161s cmake_install_target_from_command = '' 161s cmake_install_target_from_setup = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/fruits/apple.py', '_skbuild/linux-x86_64-3.12/cmake-install/fruits/banana.p...ux-x86_64-3.12/cmake-install/fruits/data/apple.dat', '_skbuild/linux-x86_64-3.12/cmake-install/fruits/data/banana.dat'] 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s cmkr = 161s commands = ['build'] 161s config_type = 'Release' 161s data_files = {} 161s developer_mode = False 161s display_only = False 161s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 161s env_cmake_args = [] 161s force_cmake = False 161s has_cmakelists = True 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of py_modules keyword', ...} 161s make_args = ['--config', 'Release'] 161s new_py_modules = {} 161s new_scripts = {} 161s original_manifestin_data_files = [] 161s original_package_data = {} 161s package = 'fruits' 161s package_data = {'fruits': ['apple.py', 'banana.py', 'data/apple.dat', 'data/banana.dat', '__init__.py']} 161s package_dir = {'fruits': 'fruits'} 161s package_prefixes = [('fruits', 'fruits')] 161s packages = ['fruits'] 161s plat_name = None 161s process_manifest = None 161s py_modules = [] 161s scripts = [] 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = False 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of py_modules keyword', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of py_modules keyword', ...} 161s dist = .BinaryDistribution object at 0x7bbe03dd17f0> 161s klass = .BinaryDistribution'> 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = .BinaryDistribution object at 0x7bbe03dd17f0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'build' 161s self = .BinaryDistribution object at 0x7bbe03dd17f0> 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe03dd17f0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe03dd17f0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe03dd17f0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe03dd17f0> 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 161s self.build_packages() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 161s self.build_module(module, module_file, package) 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/fruits/__init__.py' 161s modules = [('fruits', '__init__', '_skbuild/linux-x86_64-3.12/cmake-install/fruits/__init__.py'), ('fruits', 'banana', '_skbuild...3.12/cmake-install/fruits/banana.py'), ('fruits', 'apple', '_skbuild/linux-x86_64-3.12/cmake-install/fruits/apple.py')] 161s package = 'fruits' 161s package_ = 'fruits' 161s package_dir = '_skbuild/linux-x86_64-3.12/cmake-install/fruits' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 161s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 161s __class__ = 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/fruits/__init__.py' 161s package = 'fruits' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 161s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/fruits/__init__.py' 161s package = 'fruits' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 161s self.mkpath(dir) 161s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/fruits' 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/fruits/__init__.py' 161s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/fruits/__init__.py' 161s package = ['fruits'] 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/fruits' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/fruits' 161s mode = 511, verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 161s d = 'lib.linux-x86_64-cpython-312' 161s dry_run = False 161s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/fruits' 161s tail = 'lib.linux-x86_64-cpython-312' 161s tails = ['lib.linux-x86_64-cpython-312', 'fruits'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Not searching for unused variables given on the command line. 161s -- Configuring incomplete, errors occurred! 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0/_cmake_test_compile/build 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0/_skbuild/linux-x86_64-3.12/cmake-build 161s Install the project... 161s -- Install configuration: "Release" 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0/_skbuild/linux-x86_64-3.12/cmake-install/fruits/./apple.py 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0/_skbuild/linux-x86_64-3.12/cmake-install/fruits/./banana.py 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0/_skbuild/linux-x86_64-3.12/cmake-install/fruits/data/apple.dat 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0/_skbuild/linux-x86_64-3.12/cmake-install/fruits/data/banana.dat 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Ninja' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Ninja' generator - failure 161s -------------------------------------------------------------------------------- 161s 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Unix Makefiles' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Unix Makefiles' generator - success 161s -------------------------------------------------------------------------------- 161s 161s Configuring Project 161s Working directory: 161s /tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0/_skbuild/linux-x86_64-3.12/cmake-build 161s Command: 161s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-146/cmake_install_into_pure_packag0/_skbuild/linux-x86_64-3.12/cmake-install/fruits -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 161s 161s 161s copying fruits/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/fruits/__init__.py 161s 161s ----------------------------- Captured stderr call ----------------------------- 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 161s ___________________ test_cmake_install_into_pure_package[1] ____________________ 161s 161s with_cmake_source_dir = 1 161s capsys = <_pytest.capture.CaptureFixture object at 0x7bbe03d5ba70> 161s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe03dd31d0> 161s 161s @pytest.mark.parametrize("with_cmake_source_dir", [0, 1]) 161s def test_cmake_install_into_pure_package(with_cmake_source_dir, capsys, caplog): 161s # ------------------------------------------------------------------------- 161s # "SOURCE" tree layout: 161s # 161s # (1) with_cmake_source_dir == 0 161s # 161s # ROOT/ 161s # 161s # CMakeLists.txt 161s # setup.py 161s # 161s # fruits/ 161s # __init__.py 161s # 161s # 161s # (2) with_cmake_source_dir == 1 161s # 161s # ROOT/ 161s # 161s # setup.py 161s # 161s # fruits/ 161s # __init__.py 161s # 161s # src/ 161s # 161s # CMakeLists.txt 161s # 161s # ------------------------------------------------------------------------- 161s # "BINARY" distribution layout: 161s # 161s # ROOT/ 161s # 161s # fruits/ 161s # 161s # __init__.py 161s # apple.py 161s # banana.py 161s # 161s # data/ 161s # 161s # apple.dat 161s # banana.dat 161s # 161s 161s tmp_dir = _tmpdir("cmake_install_into_pure_package") 161s 161s cmake_source_dir = "src" if with_cmake_source_dir else "" 161s 161s tmp_dir.join("setup.py").write( 161s textwrap.dedent( 161s f""" 161s from skbuild import setup 161s setup( 161s name="test_py_modules_keyword", 161s version="1.2.3", 161s description="a package testing use of py_modules keyword", 161s author='The scikit-build team', 161s license="MIT", 161s packages=['fruits'], 161s cmake_install_dir='fruits', 161s cmake_source_dir='{cmake_source_dir}', 161s ) 161s """ 161s ) 161s ) 161s 161s cmake_src_dir = tmp_dir.ensure(cmake_source_dir, dir=1) 161s cmake_src_dir.join("CMakeLists.txt").write( 161s textwrap.dedent( 161s """ 161s cmake_minimum_required(VERSION 3.5.0) 161s project(test NONE) 161s file(WRITE "${CMAKE_BINARY_DIR}/apple.py" "# apple.py") 161s file(WRITE "${CMAKE_BINARY_DIR}/banana.py" "# banana.py") 161s install( 161s FILES 161s "${CMAKE_BINARY_DIR}/apple.py" 161s "${CMAKE_BINARY_DIR}/banana.py" 161s DESTINATION "." 161s ) 161s file(WRITE "${CMAKE_BINARY_DIR}/apple.dat" "# apple.dat") 161s file(WRITE "${CMAKE_BINARY_DIR}/banana.dat" "# banana.dat") 161s install( 161s FILES 161s "${CMAKE_BINARY_DIR}/apple.dat" 161s "${CMAKE_BINARY_DIR}/banana.dat" 161s DESTINATION "data" 161s ) 161s """ 161s ) 161s ) 161s 161s tmp_dir.ensure("fruits/__init__.py") 161s 161s > with execute_setup_py(tmp_dir, ["build"], disable_languages_test=True): 161s 161s caplog = <_pytest.logging.LogCaptureFixture object at 0x7bbe03dd31d0> 161s capsys = <_pytest.capture.CaptureFixture object at 0x7bbe03d5ba70> 161s cmake_source_dir = 'src' 161s cmake_src_dir = local('/tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/src') 161s tmp_dir = local('/tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0') 161s with_cmake_source_dir = 1 161s 161s tests/test_setup.py:1030: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:244: in execute_setup_py 161s exec(setup_code) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe04878c30, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe03d76fc0> 161s setup.py:3: in 161s setup( 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe04878c30, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe03d76fc0> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s BinaryDistribution = .BinaryDistribution'> 161s build_ext_inplace = False 161s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 161s cmake_args_from_args = [] 161s cmake_executable = '/usr/bin/cmake' 161s cmake_install_dir = 'fruits' 161s cmake_install_target = 'install' 161s cmake_install_target_from_command = '' 161s cmake_install_target_from_setup = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/fruits/apple.py', '_skbuild/linux-x86_64-3.12/cmake-install/fruits/banana.p...ux-x86_64-3.12/cmake-install/fruits/data/apple.dat', '_skbuild/linux-x86_64-3.12/cmake-install/fruits/data/banana.dat'] 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = 'src' 161s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s cmkr = 161s commands = ['build'] 161s config_type = 'Release' 161s data_files = {} 161s developer_mode = False 161s display_only = False 161s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 161s env_cmake_args = [] 161s force_cmake = False 161s has_cmakelists = True 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of py_modules keyword', ...} 161s make_args = ['--config', 'Release'] 161s new_py_modules = {} 161s new_scripts = {} 161s original_manifestin_data_files = [] 161s original_package_data = {} 161s package = 'fruits' 161s package_data = {'fruits': ['apple.py', 'banana.py', 'data/apple.dat', 'data/banana.dat', 'fruits/__init__.py']} 161s package_dir = {'fruits': 'fruits'} 161s package_prefixes = [('fruits', 'fruits')] 161s packages = ['fruits'] 161s plat_name = None 161s process_manifest = None 161s py_modules = [] 161s scripts = [] 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = False 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of py_modules keyword', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a package testing use of py_modules keyword', ...} 161s dist = .BinaryDistribution object at 0x7bbe049c2300> 161s klass = .BinaryDistribution'> 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = .BinaryDistribution object at 0x7bbe049c2300> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'build' 161s self = .BinaryDistribution object at 0x7bbe049c2300> 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe049c2300> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe049c2300> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe049c2300> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe049c2300> 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:74: in run 161s self.build_packages() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:379: in build_packages 161s self.build_module(module, module_file, package) 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/fruits/__init__.py' 161s modules = [('fruits', '__init__', '_skbuild/linux-x86_64-3.12/cmake-install/fruits/__init__.py'), ('fruits', 'banana', '_skbuild...3.12/cmake-install/fruits/banana.py'), ('fruits', 'apple', '_skbuild/linux-x86_64-3.12/cmake-install/fruits/apple.py')] 161s package = 'fruits' 161s package_ = 'fruits' 161s package_dir = '_skbuild/linux-x86_64-3.12/cmake-install/fruits' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 161s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 161s __class__ = 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/fruits/__init__.py' 161s package = 'fruits' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 161s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/fruits/__init__.py' 161s package = 'fruits' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 161s self.mkpath(dir) 161s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/fruits' 161s module = '__init__' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/fruits/__init__.py' 161s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/fruits/__init__.py' 161s package = ['fruits'] 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/fruits' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/fruits' 161s mode = 511, verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 161s d = 'lib.linux-x86_64-cpython-312' 161s dry_run = False 161s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/fruits' 161s tail = 'lib.linux-x86_64-cpython-312' 161s tails = ['lib.linux-x86_64-cpython-312', 'fruits'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Not searching for unused variables given on the command line. 161s -- Configuring incomplete, errors occurred! 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/_cmake_test_compile/build 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/_skbuild/linux-x86_64-3.12/cmake-build 161s Install the project... 161s -- Install configuration: "Release" 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/_skbuild/linux-x86_64-3.12/cmake-install/fruits/./apple.py 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/_skbuild/linux-x86_64-3.12/cmake-install/fruits/./banana.py 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/_skbuild/linux-x86_64-3.12/cmake-install/fruits/data/apple.dat 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/_skbuild/linux-x86_64-3.12/cmake-install/fruits/data/banana.dat 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Ninja' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Ninja' generator - failure 161s -------------------------------------------------------------------------------- 161s 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Unix Makefiles' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Unix Makefiles' generator - success 161s -------------------------------------------------------------------------------- 161s 161s Configuring Project 161s Working directory: 161s /tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/_skbuild/linux-x86_64-3.12/cmake-build 161s Command: 161s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/src -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-147/cmake_install_into_pure_packag0/_skbuild/linux-x86_64-3.12/cmake-install/fruits -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 161s 161s 161s copying fruits/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/fruits/__init__.py 161s 161s ----------------------------- Captured stderr call ----------------------------- 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Error: CMake was unable to find a build program corresponding to "Ninja". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool. 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 161s _____________________ test_generator[Unix Makefiles-make] ______________________ 161s 161s generator = 'Unix Makefiles', expected_make_program = 'make' 161s 161s @pytest.mark.parametrize( 161s ("generator", "expected_make_program"), [("NMake Makefiles", "nmake"), ("Unix Makefiles", "make")] 161s ) 161s def test_generator(generator, expected_make_program): 161s generator_platform = {"NMake Makefiles": ["windows"], "Unix Makefiles": ["darwin", "linux"]} 161s assert generator in generator_platform 161s 161s this_platform = platform.system().lower() 161s if this_platform not in generator_platform[generator]: 161s pytest.skip(f"{generator} generator is not available on {this_platform.title()}") 161s 161s @project_setup_py_test("hello-cpp", ["build"], ret=True) 161s def run_build(): 161s pass 161s 161s with push_env(CMAKE_GENERATOR=generator): 161s > tmp_dir = run_build()[0] 161s 161s expected_make_program = 'make' 161s generator = 'Unix Makefiles' 161s generator_platform = {'NMake Makefiles': ['windows'], 'Unix Makefiles': ['darwin', 'linux']} 161s run_build = .run_build at 0x7bbe03d45940> 161s this_platform = 'linux' 161s 161s tests/test_skbuild.py:91: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s tests/__init__.py:261: in wrapped 161s with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 161s disable_languages_test = False 161s fun = .run_build at 0x7bbe03d45f80> 161s iargs = () 161s ikwargs = {} 161s ret = True 161s wrapped = .run_build at 0x7bbe03d45940> 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:247: in execute_setup_py 161s exec(setup_code) 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = False 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-151/run_build0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe03dab110, file "setup.py", line 1> 161s setup.py:5: in 161s version="1.2.3", 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = False 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-151/run_build0') 161s setup = 161s setup_args = ['build'] 161s setup_code = at 0x7bbe03dab110, file "setup.py", line 1> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s BinaryDistribution = .BinaryDistribution'> 161s build_ext_inplace = False 161s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 161s cmake_args_from_args = [] 161s cmake_executable = '/usr/bin/cmake' 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_install_target_from_command = '' 161s cmake_install_target_from_setup = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_manifest = ['_skbuild/linux-x86_64-3.12/cmake-install/helloModule.py', '_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so', '_skbuild/linux-x86_64-3.12/cmake-install/hello/world.py'] 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s cmkr = 161s commands = ['build'] 161s config_type = 'Release' 161s data_files = {} 161s developer_mode = False 161s display_only = False 161s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 161s env_cmake_args = [] 161s force_cmake = False 161s has_cmakelists = True 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 161s make_args = ['--config', 'Release'] 161s new_py_modules = {'bonjourModule': False, 'helloModule': True} 161s new_scripts = {} 161s original_manifestin_data_files = [] 161s original_package_data = {'bonjour': ['data/*.txt', 'data/terre.txt']} 161s package = 'hello' 161s package_data = {'': ['bonjourModule.py', 'helloModule.py'], 'bonjour': ['data/*.txt', 'data/terre.txt', '__init__.py'], 'hello': ['_hello.cpython-312-x86_64-linux-gnu.so', 'world.py', '__init__.py', '__main__.py']} 161s package_dir = {'bonjour': 'bonjour', 'hello': 'hello'} 161s package_prefixes = [('bonjour', 'bonjour'), ('hello', 'hello')] 161s packages = ['bonjour', 'hello'] 161s plat_name = None 161s process_manifest = None 161s py_modules = ['bonjourModule', 'helloModule'] 161s scripts = [] 161s skip_cmake = False 161s skip_generator_test = False 161s skip_skbuild = False 161s /usr/lib/python3/dist-packages/setuptools/__init__.py:103: in setup 161s return distutils.core.setup(**attrs) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:184: in setup 161s return run_commands(dist) 161s attrs = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , ...}, 'data_files': [], 'description': 'a minimal example package', ...} 161s dist = .BinaryDistribution object at 0x7bbe03e2caa0> 161s klass = .BinaryDistribution'> 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = .BinaryDistribution object at 0x7bbe03e2caa0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'build' 161s self = .BinaryDistribution object at 0x7bbe03e2caa0> 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe03e2caa0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build' 161s self = .BinaryDistribution object at 0x7bbe03e2caa0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build.py:135: in run 161s self.run_command(cmd_name) 161s cmd_name = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'build_py' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe03e2caa0> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'build_py' 161s self = .BinaryDistribution object at 0x7bbe03e2caa0> 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:41: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:71: in run 161s self.build_modules() 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:359: in build_modules 161s self.build_module(module, module_file, package) 161s module = 'bonjourModule' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 161s modules = [('', 'bonjourModule', '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py'), ('', 'helloModule', '_skbuild/linux-x86_64-3.12/cmake-install/helloModule.py')] 161s package = '' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/build_py.py:31: in build_module 161s super().build_module(module, module_file, package) # type: ignore[no-untyped-call] 161s __class__ = 161s module = 'bonjourModule' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 161s package = '' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/build_py.py:89: in build_module 161s outfile, copied = orig.build_py.build_module(self, module, module_file, package) 161s module = 'bonjourModule' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 161s package = '' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/build_py.py:349: in build_module 161s self.mkpath(dir) 161s dir = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s module = 'bonjourModule' 161s module_file = '_skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py' 161s outfile = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312/bonjourModule.py' 161s package = [''] 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s mode = 511, verbose = True, dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-151/run_build0/_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s created_dirs = ['_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312'] 161s d = 'lib.linux-x86_64-cpython-312' 161s dry_run = False 161s head = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s mode = 511 161s name = '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' 161s tail = 'lib.linux-x86_64-cpython-312' 161s tails = ['lib.linux-x86_64-cpython-312'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-151/run_build0/.git/ 161s [master (root-commit) f557f34] Initial commit 161s 11 files changed, 115 insertions(+) 161s create mode 100644 CMakeLists.txt 161s create mode 100644 bonjour/__init__.py 161s create mode 100644 bonjour/data/ciel.txt 161s create mode 100644 bonjour/data/soleil.txt 161s create mode 100644 bonjour/data/terre.txt 161s create mode 100644 bonjourModule.py 161s create mode 100644 hello/CMakeLists.txt 161s create mode 100644 hello/__init__.py 161s create mode 100644 hello/__main__.py 161s create mode 100644 hello/_hello.cxx 161s create mode 100644 setup.py 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Unix Makefiles' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s Not searching for unused variables given on the command line. 161s -- The C compiler identification is GNU 14.1.0 161s -- Detecting C compiler ABI info 161s -- Detecting C compiler ABI info - done 161s -- Check for working C compiler: /usr/bin/cc - skipped 161s -- Detecting C compile features 161s -- Detecting C compile features - done 161s -- The CXX compiler identification is GNU 14.1.0 161s -- Detecting CXX compiler ABI info 161s -- Detecting CXX compiler ABI info - done 161s -- Check for working CXX compiler: /usr/bin/c++ - skipped 161s -- Detecting CXX compile features 161s -- Detecting CXX compile features - done 161s -- Configuring done (0.5s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-151/run_build0/_cmake_test_compile/build 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Unix Makefiles' generator - success 161s -------------------------------------------------------------------------------- 161s 161s Configuring Project 161s Working directory: 161s /tmp/pytest-of-ubuntu/pytest-151/run_build0/_skbuild/linux-x86_64-3.12/cmake-build 161s Command: 161s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-151/run_build0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-151/run_build0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 161s 161s Not searching for unused variables given on the command line. 161s -- The C compiler identification is GNU 14.1.0 161s -- The CXX compiler identification is GNU 14.1.0 161s -- Detecting C compiler ABI info 161s -- Detecting C compiler ABI info - done 161s -- Check for working C compiler: /usr/bin/cc - skipped 161s -- Detecting C compile features 161s -- Detecting C compile features - done 161s -- Detecting CXX compiler ABI info 161s -- Detecting CXX compiler ABI info - done 161s -- Check for working CXX compiler: /usr/bin/c++ - skipped 161s -- Detecting CXX compile features 161s -- Detecting CXX compile features - done 161s -- Found PythonInterp: /usr/bin/python3.12 (found version "3.12.4") 161s -- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.12.so (found version "3.12.4") 161s -- Performing Test Weak Link MODULE -> SHARED (gnu_ld_ignore) - Success 161s -- Configuring done (1.1s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-151/run_build0/_skbuild/linux-x86_64-3.12/cmake-build 161s [ 50%] Building CXX object hello/CMakeFiles/_hello.dir/_hello.cxx.o 161s [100%] Linking CXX shared module _hello.cpython-312-x86_64-linux-gnu.so 161s [100%] Built target _hello 161s Install the project... 161s -- Install configuration: "Release" 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-151/run_build0/_skbuild/linux-x86_64-3.12/cmake-install/./helloModule.py 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-151/run_build0/_skbuild/linux-x86_64-3.12/cmake-install/hello/_hello.cpython-312-x86_64-linux-gnu.so 161s -- Installing: /tmp/pytest-of-ubuntu/pytest-151/run_build0/_skbuild/linux-x86_64-3.12/cmake-install/hello/world.py 161s 161s copying bonjourModule.py -> _skbuild/linux-x86_64-3.12/cmake-install/bonjourModule.py 161s creating directory _skbuild/linux-x86_64-3.12/cmake-install/bonjour 161s copying bonjour/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/__init__.py 161s copying hello/__init__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__init__.py 161s copying hello/__main__.py -> _skbuild/linux-x86_64-3.12/cmake-install/hello/__main__.py 161s creating directory _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data 161s copying /tmp/pytest-of-ubuntu/pytest-151/run_build0/bonjour/data/soleil.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/soleil.txt 161s copying /tmp/pytest-of-ubuntu/pytest-151/run_build0/bonjour/data/ciel.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/ciel.txt 161s copying /tmp/pytest-of-ubuntu/pytest-151/run_build0/bonjour/data/terre.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/terre.txt 161s copying /tmp/pytest-of-ubuntu/pytest-151/run_build0/bonjour/data/terre.txt -> _skbuild/linux-x86_64-3.12/cmake-install/bonjour/data/terre.txt 161s 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:245 (find_package): 161s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 161s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 161s the cmake_policy command to set the policy and suppress this warning. 161s 161s Call Stack (most recent call first): 161s CMakeLists.txt:5 (find_package) 161s This warning is for project developers. Use -Wno-dev to suppress it. 161s 161s CMake Warning (dev) at /usr/lib/python3/dist-packages/skbuild/resources/cmake/FindPythonExtensions.cmake:252 (find_package): 161s Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules 161s are removed. Run "cmake --help-policy CMP0148" for policy details. Use 161s the cmake_policy command to set the policy and suppress this warning. 161s 161s Call Stack (most recent call first): 161s CMakeLists.txt:5 (find_package) 161s This warning is for project developers. Use -Wno-dev to suppress it. 161s 161s _modinit_prefix:PyInit_ 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_py 161s INFO root:dir_util.py:70 creating _skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312 161s _________________________ test_skbuild_variable_sdist __________________________ 161s 161s iargs = (), ikwargs = {} 161s 161s @functools.wraps(fun) 161s def wrapped(*iargs, **ikwargs): 161s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 161s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 161s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 161s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 161s 161s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 161s 161s disable_languages_test = True 161s fun = 161s iargs = () 161s ikwargs = {} 161s ret = False 161s wrapped = 161s 161s tests/__init__.py:261: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:244: in execute_setup_py 161s exec(setup_code) 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-155/test_skbuild_variable_sdist0') 161s setup = 161s setup_args = ['sdist'] 161s setup_code = at 0x7bbe04621c30, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe049fc180> 161s setup.py:5: in 161s version="1.2.3", 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-155/test_skbuild_variable_sdist0') 161s setup = 161s setup_args = ['sdist'] 161s setup_code = at 0x7bbe04621c30, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe049fc180> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:513: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s build_ext_inplace = False 161s cmake_args = () 161s cmake_args_from_args = [] 161s cmake_executable = None 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s commands = ['sdist'] 161s display_only = False 161s force_cmake = False 161s has_cmakelists = True 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , 'bdist_wheel': , 'bdist_wheel': 161s klass = 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'sdist' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'sdist' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'sdist' 161s self = 161s /usr/lib/python3/dist-packages/skbuild/command/sdist.py:39: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/sdist.py:52: in run 161s self.run_command('egg_info') 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'egg_info' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'egg_info' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'egg_info' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/command/egg_info.py:306: in run 161s self.mkpath(self.egg_info) 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = 'fail_unless_skbuild_set.egg-info' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = 'fail_unless_skbuild_set.egg-info', mode = 511, verbose = True 161s dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-155/test_skbuild_variable_sdist0/fail_unless_skbuild_set.egg-info' 161s created_dirs = ['fail_unless_skbuild_set.egg-info'] 161s d = 'fail_unless_skbuild_set.egg-info' 161s dry_run = False 161s head = 'fail_unless_skbuild_set.egg-info' 161s mode = 511 161s name = 'fail_unless_skbuild_set.egg-info' 161s tail = 'fail_unless_skbuild_set.egg-info' 161s tails = ['fail_unless_skbuild_set.egg-info'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-155/test_skbuild_variable_sdist0/.git/ 161s [master (root-commit) 20b0ca3] Initial commit 161s 2 files changed, 20 insertions(+) 161s create mode 100644 CMakeLists.txt 161s create mode 100644 setup.py 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running sdist 161s INFO root:dist.py:986 running generate_source_manifest 161s INFO root:dist.py:986 running egg_info 161s INFO root:dir_util.py:70 creating fail_unless_skbuild_set.egg-info 161s _________________________ test_skbuild_variable_wheel __________________________ 161s 161s iargs = (), ikwargs = {} 161s 161s @functools.wraps(fun) 161s def wrapped(*iargs, **ikwargs): 161s if wrapped.tmp_dir is None: # type: ignore[attr-defined] 161s wrapped.tmp_dir = _tmpdir(fun.__name__) # type: ignore[attr-defined] 161s prepare_project(wrapped.project, wrapped.tmp_dir) # type: ignore[attr-defined] 161s initialize_git_repo_and_commit(wrapped.tmp_dir, verbose=wrapped.verbose_git) # type: ignore[attr-defined] 161s 161s > with execute_setup_py(wrapped.tmp_dir, wrapped.setup_args, disable_languages_test=disable_languages_test): # type: ignore[attr-defined] 161s 161s disable_languages_test = True 161s fun = 161s iargs = () 161s ikwargs = {} 161s ret = False 161s wrapped = 161s 161s tests/__init__.py:261: 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s /usr/lib/python3.12/contextlib.py:137: in __enter__ 161s return next(self.gen) 161s self = 161s tests/__init__.py:244: in execute_setup_py 161s exec(setup_code) 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-156/test_skbuild_variable_wheel0') 161s setup = 161s setup_args = ['bdist_wheel'] 161s setup_code = at 0x7bbe04878130, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe03d75580> 161s setup.py:5: in 161s version="1.2.3", 161s annotations = _Feature((3, 7, 0, 'beta', 1), None, 16777216) 161s disable_languages_test = True 161s fp = <_io.TextIOWrapper name='setup.py' mode='r' encoding='UTF-8'> 161s original_write_test_cmakelist = 161s platform = 161s project_dir = local('/tmp/pytest-of-ubuntu/pytest-156/test_skbuild_variable_wheel0') 161s setup = 161s setup_args = ['bdist_wheel'] 161s setup_code = at 0x7bbe04878130, file "setup.py", line 1> 161s write_test_cmakelist_no_languages = .write_test_cmakelist_no_languages at 0x7bbe03d75580> 161s /usr/lib/python3/dist-packages/skbuild/setuptools_wrap.py:781: in setup 161s return setuptools.setup(**kw) # type: ignore[no-any-return, func-returns-value] 161s BinaryDistribution = .BinaryDistribution'> 161s build_ext_inplace = False 161s cmake_args = ['-DCMAKE_BUILD_TYPE:STRING=Release'] 161s cmake_args_from_args = [] 161s cmake_executable = '/usr/bin/cmake' 161s cmake_install_dir = '' 161s cmake_install_target = 'install' 161s cmake_install_target_from_command = '' 161s cmake_install_target_from_setup = 'install' 161s cmake_languages = ('C', 'CXX') 161s cmake_manifest = [] 161s cmake_minimum_required_version = None 161s cmake_process_manifest_hook = None 161s cmake_source_dir = '' 161s cmake_spec = {'args': ['/usr/bin/cmake', '-DCMAKE_BUILD_TYPE:STRING=Release'], 'environment': {'PYTHONNOUSERSITE': '1', 'PYTHONPATH': '/path/to/anything'}, 'version': '3.29.6'} 161s cmake_with_sdist = False 161s cmdclass = {'bdist': , 'bdist_wheel': , 'build': , 'build_ext': , ...} 161s cmkr = 161s commands = ['bdist_wheel'] 161s config_type = 'Release' 161s data_files = {} 161s developer_mode = False 161s display_only = False 161s env = {'ADTTMP': '/tmp/autopkgtest.9ApnOP/autopkgtest_tmp', 'ADT_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', 'ADT_TEST_TRIGGERS': 'setuptools/70.3.0-2', 'AUTOPKGTEST_ARTIFACTS': '/tmp/autopkgtest.9ApnOP/testsuite-artifacts', ...} 161s env_cmake_args = [] 161s force_cmake = False 161s has_cmakelists = True 161s has_invalid_arguments = False 161s help_commands = 0 161s hide_listing = False 161s kw = {'author': 'The scikit-build team', 'cmdclass': {'bdist': , 'bdist_wheel': , 'bdist_wheel': , 'bdist_wheel': .BinaryDistribution object at 0x7bbe03d41b20> 161s klass = .BinaryDistribution'> 161s ok = True 161s /usr/lib/python3/dist-packages/setuptools/_distutils/core.py:200: in run_commands 161s dist.run_commands() 161s dist = .BinaryDistribution object at 0x7bbe03d41b20> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:970: in run_commands 161s self.run_command(cmd) 161s cmd = 'bdist_wheel' 161s self = .BinaryDistribution object at 0x7bbe03d41b20> 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'bdist_wheel' 161s self = .BinaryDistribution object at 0x7bbe03d41b20> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'bdist_wheel' 161s self = .BinaryDistribution object at 0x7bbe03d41b20> 161s /usr/lib/python3/dist-packages/skbuild/command/bdist_wheel.py:33: in run 161s super().run(*args, **kwargs) 161s __class__ = 161s args = () 161s kwargs = {} 161s old_write_files = 161s self = 161s update_write_files = .update_write_files at 0x7bbe04c0b420> 161s /usr/lib/python3/dist-packages/wheel/bdist_wheel.py:403: in run 161s self.run_command("install") 161s basedir_observed = '' 161s build_ext = 161s build_scripts = 161s install = 161s install_scripts = 161s key = 'platlib' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'install' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'install' 161s self = .BinaryDistribution object at 0x7bbe03d41b20> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'install' 161s self = .BinaryDistribution object at 0x7bbe03d41b20> 161s /usr/lib/python3/dist-packages/setuptools/command/install.py:81: in run 161s return super().run() 161s __class__ = 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/command/install.py:705: in run 161s self.run_command(cmd_name) 161s build_plat = 'linux-x86_64' 161s cmd_name = 'install_egg_info' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'install_egg_info' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'install_egg_info' 161s self = .BinaryDistribution object at 0x7bbe03d41b20> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'install_egg_info' 161s self = .BinaryDistribution object at 0x7bbe03d41b20> 161s /usr/lib/python3/dist-packages/setuptools/command/install_egg_info.py:48: in run 161s self.run_command('egg_info') 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:316: in run_command 161s self.distribution.run_command(command) 161s command = 'egg_info' 161s self = 161s /usr/lib/python3/dist-packages/setuptools/dist.py:974: in run_command 161s super().run_command(command) 161s __class__ = 161s command = 'egg_info' 161s self = .BinaryDistribution object at 0x7bbe03d41b20> 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:989: in run_command 161s cmd_obj.run() 161s cmd_obj = 161s command = 'egg_info' 161s self = .BinaryDistribution object at 0x7bbe03d41b20> 161s /usr/lib/python3/dist-packages/setuptools/command/egg_info.py:306: in run 161s self.mkpath(self.egg_info) 161s self = 161s /usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:340: in mkpath 161s dir_util.mkpath(name, mode, dry_run=self.dry_run) 161s mode = 511 161s name = 'fail_unless_skbuild_set.egg-info' 161s self = 161s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 161s 161s name = 'fail_unless_skbuild_set.egg-info', mode = 511, verbose = True 161s dry_run = False 161s 161s def mkpath(name, mode=0o777, verbose=True, dry_run=False): # noqa: C901 161s """Create a directory and any missing ancestor directories. 161s 161s If the directory already exists (or if 'name' is the empty string, which 161s means the current directory, which of course exists), then do nothing. 161s Raise DistutilsFileError if unable to create some directory along the way 161s (eg. some sub-path exists, but is a file rather than a directory). 161s If 'verbose' is true, print a one-line summary of each mkdir to stdout. 161s Return the list of directories actually created. 161s 161s os.makedirs is not used because: 161s 161s a) It's new to Python 1.5.2, and 161s b) it blows up if the directory already exists (in which case it should 161s silently succeed). 161s """ 161s 161s global _path_created 161s 161s # Detect a common bug -- name is None 161s if not isinstance(name, str): 161s raise DistutilsInternalError(f"mkpath: 'name' must be a string (got {name!r})") 161s 161s # XXX what's the better way to handle verbosity? print as we create 161s # each directory in the path (the current behaviour), or only announce 161s # the creation of the whole path? (quite easy to do the latter since 161s # we're not using a recursive algorithm) 161s 161s name = os.path.normpath(name) 161s created_dirs = [] 161s if os.path.isdir(name) or name == '': 161s return created_dirs 161s if os.path.abspath(name) in _path_created: 161s return created_dirs 161s 161s (head, tail) = os.path.split(name) 161s tails = [tail] # stack of lone dirs to create 161s 161s while head and tail and not os.path.isdir(head): 161s (head, tail) = os.path.split(head) 161s tails.insert(0, tail) # push next higher dir onto stack 161s 161s # now 'head' contains the deepest directory that already exists 161s # (that is, the child of 'head' in 'name' is the highest directory 161s # that does *not* exist) 161s for d in tails: 161s # print "head = %s, d = %s: " % (head, d), 161s head = os.path.join(head, d) 161s abs_head = os.path.abspath(head) 161s 161s if abs_head in _path_created: 161s continue 161s 161s if verbose >= 1: 161s log.info("creating %s", head) 161s 161s if not dry_run: 161s try: 161s os.mkdir(head, mode) 161s except OSError as exc: 161s if not (exc.errno == errno.EEXIST and os.path.isdir(head)): 161s raise DistutilsFileError( 161s f"could not create '{head}': {exc.args[-1]}" 161s ) 161s created_dirs.append(head) 161s 161s > _path_created.add(abs_head) 161s E AttributeError: 'dict' object has no attribute 'add' 161s 161s abs_head = '/tmp/pytest-of-ubuntu/pytest-156/test_skbuild_variable_wheel0/fail_unless_skbuild_set.egg-info' 161s created_dirs = ['fail_unless_skbuild_set.egg-info'] 161s d = 'fail_unless_skbuild_set.egg-info' 161s dry_run = False 161s head = 'fail_unless_skbuild_set.egg-info' 161s mode = 511 161s name = 'fail_unless_skbuild_set.egg-info' 161s tail = 'fail_unless_skbuild_set.egg-info' 161s tails = ['fail_unless_skbuild_set.egg-info'] 161s verbose = True 161s 161s /usr/lib/python3/dist-packages/setuptools/_distutils/dir_util.py:82: AttributeError 161s ----------------------------- Captured stdout call ----------------------------- 161s Initialized empty Git repository in /tmp/pytest-of-ubuntu/pytest-156/test_skbuild_variable_wheel0/.git/ 161s [master (root-commit) 20b0ca3] Initial commit 161s 2 files changed, 20 insertions(+) 161s create mode 100644 CMakeLists.txt 161s create mode 100644 setup.py 161s 161s 161s -------------------------------------------------------------------------------- 161s -- Trying 'Unix Makefiles' generator 161s -------------------------------- 161s --------------------------- 161s ---------------------- 161s ----------------- 161s ------------ 161s ------- 161s -- 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-156/test_skbuild_variable_wheel0/_cmake_test_compile/build 161s -- 161s ------- 161s ------------ 161s ----------------- 161s ---------------------- 161s --------------------------- 161s -------------------------------- 161s -- Trying 'Unix Makefiles' generator - success 161s -------------------------------------------------------------------------------- 161s 161s Configuring Project 161s Working directory: 161s /tmp/pytest-of-ubuntu/pytest-156/test_skbuild_variable_wheel0/_skbuild/linux-x86_64-3.12/cmake-build 161s Command: 161s /usr/bin/cmake /tmp/pytest-of-ubuntu/pytest-156/test_skbuild_variable_wheel0 -G 'Unix Makefiles' --no-warn-unused-cli -DCMAKE_INSTALL_PREFIX:PATH=/tmp/pytest-of-ubuntu/pytest-156/test_skbuild_variable_wheel0/_skbuild/linux-x86_64-3.12/cmake-install -DPYTHON_VERSION_STRING:STRING=3.12.4 -DSKBUILD:INTERNAL=TRUE -DCMAKE_MODULE_PATH:PATH=/usr/lib/python3/dist-packages/skbuild/resources/cmake -DPYTHON_EXECUTABLE:PATH=/usr/bin/python3.12 -DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPYTHON_LIBRARY:PATH=/usr/lib/x86_64-linux-gnu/libpython3.12.so -DPython_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython_ROOT_DIR:PATH=/usr -DPython_FIND_REGISTRY:STRING=NEVER -DPython_INCLUDE_DIR:PATH=/usr/include/python3.12 -DPython3_EXECUTABLE:PATH=/usr/bin/python3.12 -DPython3_ROOT_DIR:PATH=/usr -DPython3_FIND_REGISTRY:STRING=NEVER -DPython3_INCLUDE_DIR:PATH=/usr/include/python3.12 -DCMAKE_BUILD_TYPE:STRING=Release 161s 161s Not searching for unused variables given on the command line. 161s -- Configuring done (0.0s) 161s -- Generating done (0.0s) 161s -- Build files have been written to: /tmp/pytest-of-ubuntu/pytest-156/test_skbuild_variable_wheel0/_skbuild/linux-x86_64-3.12/cmake-build 161s Install the project... 161s -- Install configuration: "Release" 161s 161s 161s ----------------------------- Captured stderr call ----------------------------- 161s hint: Using 'master' as the name for the initial branch. This default branch name 161s hint: is subject to change. To configure the initial branch name to use in all 161s hint: of your new repositories, which will suppress this warning, call: 161s hint: 161s hint: git config --global init.defaultBranch 161s hint: 161s hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and 161s hint: 'development'. The just-created branch can be renamed via this command: 161s hint: 161s hint: git branch -m 161s CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): 161s Compatibility with CMake < 3.5 will be removed from a future version of 161s CMake. 161s 161s Update the VERSION argument value or use a ... suffix to tell 161s CMake that the project does not need compatibility with older versions. 161s 161s 161s ------------------------------ Captured log call ------------------------------- 161s INFO root:dist.py:986 running bdist_wheel 161s INFO root:dist.py:986 running build 161s INFO root:dist.py:986 running build_ext 161s INFO wheel:bdist_wheel.py:401 installing to _skbuild/linux-x86_64-3.12/setuptools/bdist.linux-x86_64/wheel 161s INFO root:dist.py:986 running install 161s INFO root:dist.py:986 running install_lib 161s WARNING root:cmd.py:334 warning: install_lib: '_skbuild/linux-x86_64-3.12/setuptools/lib.linux-x86_64-cpython-312' does not exist -- no Python modules to install 161s 161s INFO root:dist.py:986 running install_egg_info 161s INFO root:dist.py:986 running egg_info 161s INFO root:dir_util.py:70 creating fail_unless_skbuild_set.egg-info 161s =========================== short test summary info ============================ 161s SKIPPED [1] tests/test_hello_fortran.py:18: could not import 'numpy': No module named 'numpy' 161s SKIPPED [1] tests/test_platform.py:120: Requires Windows 161s SKIPPED [24] tests/test_setup.py:584: unsupported configuration: python package fully generated by CMake does *NOT* work. At least __init__.py should be in the project source tree 161s SKIPPED [1] tests/test_skbuild.py:84: NMake Makefiles generator is not available on Linux 161s SKIPPED [3] tests/test_skbuild.py:127: Requires Windows 161s SKIPPED [1] tests/test_skbuild.py:151: Requires Windows 161s FAILED tests/test_cmakelists_not_in_top_level_dir.py::test_build - AttributeE... 161s FAILED tests/test_command_line.py::test_hide_listing[True-sdist] - AttributeE... 161s FAILED tests/test_command_line.py::test_hide_listing[True-bdist_wheel] - Attr... 161s FAILED tests/test_command_line.py::test_hide_listing[False-sdist] - Attribute... 161s FAILED tests/test_command_line.py::test_hide_listing[False-bdist_wheel] - Att... 161s FAILED tests/test_cython_flags.py::test_hello_cython_builds - AttributeError:... 161s FAILED tests/test_filter_manifest.py::test_bdist_wheel_command - AttributeErr... 161s FAILED tests/test_hello_cpp.py::test_hello_builds - AttributeError: 'dict' ob... 161s FAILED tests/test_hello_cpp.py::test_hello_wheel - AttributeError: 'dict' obj... 161s FAILED tests/test_hello_cpp.py::test_hello_clean[with-dry-run] - AttributeErr... 161s FAILED tests/test_hello_cpp.py::test_hello_clean[without-dry-run] - Attribute... 161s FAILED tests/test_hello_cpp.py::test_hello_cleans - AttributeError: 'dict' ob... 161s FAILED tests/test_hello_cython.py::test_hello_cython_builds - AttributeError:... 161s FAILED tests/test_hello_cython.py::test_hello_cython_sdist - AttributeError: ... 161s FAILED tests/test_hello_cython.py::test_hello_cython_wheel - AttributeError: ... 161s FAILED tests/test_hello_pure.py::test_hello_pure_builds - AttributeError: 'di... 161s FAILED tests/test_hello_pure.py::test_hello_pure_sdist - AttributeError: 'dic... 161s FAILED tests/test_hello_pure.py::test_hello_pure_wheel - AttributeError: 'dic... 161s FAILED tests/test_hello_pure.py::test_hello_clean - AttributeError: 'dict' ob... 161s FAILED tests/test_include_exclude_data.py::test_include_exclude_data - Attrib... 161s FAILED tests/test_include_exclude_data.py::test_include_exclude_data_with_base 161s FAILED tests/test_issue284_build_ext_inplace.py::test_build_ext_inplace_command 161s FAILED tests/test_issue335_support_cmake_source_dir.py::test_bdist_wheel_command 161s FAILED tests/test_issue668_symbol_visibility.py::test_symbol_visibility[ON] 161s FAILED tests/test_issue668_symbol_visibility.py::test_symbol_visibility[OFF] 161s FAILED tests/test_manifest_in.py::test_manifest_in_wheel - AttributeError: 'd... 161s FAILED tests/test_setup.py::test_distribution_is_pure[py_modules] - Attribute... 161s FAILED tests/test_setup.py::test_distribution_is_pure[packages] - AttributeEr... 161s FAILED tests/test_setup.py::test_cmake_install_dir_keyword[banana-False-str] 161s FAILED tests/test_setup.py::test_cmake_with_sdist_keyword[True] - AttributeEr... 161s FAILED tests/test_setup.py::test_cmake_with_sdist_keyword[False] - AttributeE... 161s FAILED tests/test_setup.py::test_script_keyword[pure] - AttributeError: 'dict... 161s FAILED tests/test_setup.py::test_script_keyword[skbuild] - AttributeError: 'd... 161s FAILED tests/test_setup.py::test_py_modules_keyword[pure] - AttributeError: '... 161s FAILED tests/test_setup.py::test_py_modules_keyword[skbuild] - AttributeError... 161s FAILED tests/test_setup.py::test_cmake_install_into_pure_package[0] - Attribu... 161s FAILED tests/test_setup.py::test_cmake_install_into_pure_package[1] - Attribu... 161s FAILED tests/test_skbuild.py::test_generator[Unix Makefiles-make] - Attribute... 161s FAILED tests/test_skbuild_variable.py::test_skbuild_variable_sdist - Attribut... 161s FAILED tests/test_skbuild_variable.py::test_skbuild_variable_wheel - Attribut... 161s ===== 40 failed, 152 passed, 31 skipped, 19 deselected in 67.87s (0:01:07) ===== 161s autopkgtest [16:06:00]: test testsuite: -----------------------] 162s testsuite FAIL non-zero exit status 1 162s autopkgtest [16:06:01]: test testsuite: - - - - - - - - - - results - - - - - - - - - - 164s autopkgtest [16:06:03]: @@@@@@@@@@@@@@@@@@@@ summary 164s testsuite FAIL non-zero exit status 1 198s nova [W] Skipping flock for amd64 198s Creating nova instance adt-oracular-i386-scikit-build-20240726-160318-juju-7f2275-prod-proposed-migration-environment-3-97117eef-8019-49c4-b440-8b90323e408f from image adt/ubuntu-oracular-amd64-server-20240726.img (UUID 6c5f29e9-79d7-45b1-9721-03e2205f6a0e)...