Sat Jan 11 06:20:51 UTC 2025 I: starting to build mkdocs-test/unstable/arm64 on jenkins on '2025-01-11 06:20' Sat Jan 11 06:20:51 UTC 2025 I: The jenkins build log is/was available at https://jenkins.debian.net/userContent/reproducible/debian/build_service/arm64_18/76950/console.log Sat Jan 11 06:20:51 UTC 2025 I: Downloading source for unstable/mkdocs-test=0.5.3-2 --2025-01-11 06:20:51-- http://deb.debian.org/debian/pool/main/m/mkdocs-test/mkdocs-test_0.5.3-2.dsc Connecting to 46.16.76.132:3128... connected. Proxy request sent, awaiting response... 200 OK Length: 2796 (2.7K) [text/prs.lines.tag] Saving to: ‘mkdocs-test_0.5.3-2.dsc’ 0K .. 100% 384M=0s 2025-01-11 06:20:51 (384 MB/s) - ‘mkdocs-test_0.5.3-2.dsc’ saved [2796/2796] Sat Jan 11 06:20:51 UTC 2025 I: mkdocs-test_0.5.3-2.dsc -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Format: 3.0 (quilt) Source: mkdocs-test Binary: python3-mkdocs-test Architecture: all Version: 0.5.3-2 Maintainer: Debian Python Team Uploaders: Boyuan Yang , Homepage: https://github.com/fralau/mkdocs-test Description: Testing framework for MkDocs projects The purpose of Mkdocs-Test is to facilitate the comparison of source pages (Markdown files) and destination pages (HTML) in an MkDocs project. . MkDocs-Test is a framework composed of two parts: - an MkDocs plugin (test): it creates a __test__ directory, which contains the data necessary to map the pages of the website. - a framework for conducting the test. The DocProject class groups together all the information necessary for the tests on a specific MkDocs project. Standards-Version: 4.7.0 Vcs-Browser: https://salsa.debian.org/python-team/packages/mkdocs-test Vcs-Git: https://salsa.debian.org/python-team/packages/mkdocs-test.git Testsuite: autopkgtest-pkg-python Build-Depends: debhelper-compat (= 13), dh-sequence-python3, pybuild-plugin-pyproject, python3, python3-bs4, python3-markdown, python3-pandas, python3-pytest , python3-rich , python3-setuptools, python3-setuptools-scm, python3-super-collections , python3-yaml Package-List: python3-mkdocs-test deb python optional arch=all Checksums-Sha1: d5acc3da52061566c7b58672f6187a1600fb1359 29719 mkdocs-test_0.5.3.orig.tar.gz 397c7103482a4e1fd7d353f3aeede6852b641789 2216 mkdocs-test_0.5.3-2.debian.tar.xz Checksums-Sha256: f4f3463a3c80d4998917101d38a1dae62913b60ba8603ebc21440876c939d526 29719 mkdocs-test_0.5.3.orig.tar.gz 76b07e9ca135a74b175cda829860841ca36c309e3b80e73cd047ccf39771b330 2216 mkdocs-test_0.5.3-2.debian.tar.xz Files: d21851f9f15dfc5749a02c573b41bc63 29719 mkdocs-test_0.5.3.orig.tar.gz 930d759635359b0b8103175f85c1bc29 2216 mkdocs-test_0.5.3-2.debian.tar.xz -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEfncpR22H1vEdkazLwpPntGGCWs4FAmeBshcACgkQwpPntGGC Ws74QA//XJtwrpetPCag8ccl2qLKbemp3Bcju8XsUDjuxxp8Tv2Dz27VGhwHy874 143jpeBSLt1gbzo/skS73wVossaXWZXTnIP47TjQLabioqmZge/c5H6hc46Rrbsa ++GTgPYhfCzvs8PhNFzxy35uGtGSqoNLFB3yKl2zoDGYjyf00T6iJKxPRLDvtJla Wzg3FGE1s/qyphUPrXvXFxjoq6TpLuF7EMgjNsQSj1DxTnMm0bDeS470V/FFea/Y RSzR8bNt7C+63mIE7JEH8ysKDGQJ2CmIPYcoy7wZb+p3MA20Hkt6pv9SftBNNG4u qM4U0Xn8MVysm9j/TA+mVXChh1ZUUyLH63N5YpQxaapkOBTqY/sv1Tug4TGMN0Rj ByMplGzapYUZ1hlaCWGpDPMxbnlEtFrxYs+LRDA9fnk3GYBdYt6t432Fx0gRK6iD mwpHZuMTNPqJnFPTUnD7Baf/af1oNzc2NHJYtK/Gx+ErzJRHKr7Jse9eaqkIQ8kA AmWcyJc+uxdOnWMm8UlM7IzWo/g05QA+6dllIbGLTAchm/vHnHvp+ZFebS6rGZA/ gn57EXyQCR9jXXkPcvI4Vm/MlE8IjYvC31z2MkkxYp9C10WxLeVasKrBcM8kfAxh ea1SpTjgrSDpaWH/d/05nGbnu19Pcr7u+WZ/tuIN6L9nhd58ueQ= =stAu -----END PGP SIGNATURE----- Sat Jan 11 06:20:51 UTC 2025 I: Checking whether the package is not for us Sat Jan 11 06:20:51 UTC 2025 I: Starting 1st build on remote node codethink04-arm64.debian.net. Sat Jan 11 06:20:51 UTC 2025 I: Preparing to do remote build '1' on codethink04-arm64.debian.net. Sat Jan 11 06:22:07 UTC 2025 I: Deleting $TMPDIR on codethink04-arm64.debian.net. I: pbuilder: network access will be disabled during build I: Current time: Fri Jan 10 18:20:53 -12 2025 I: pbuilder-time-stamp: 1736576453 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration W: --override-config is not set; not updating apt.conf Read the manpage for details. I: mounting /proc filesystem I: mounting /sys filesystem I: creating /{dev,run}/shm I: mounting /dev/pts filesystem I: redirecting /dev/ptmx to /dev/pts/ptmx I: policy-rc.d already exists I: Copying source file I: copying [mkdocs-test_0.5.3-2.dsc] I: copying [./mkdocs-test_0.5.3.orig.tar.gz] I: copying [./mkdocs-test_0.5.3-2.debian.tar.xz] I: Extracting source dpkg-source: warning: cannot verify inline signature for ./mkdocs-test_0.5.3-2.dsc: unsupported subcommand dpkg-source: info: extracting mkdocs-test in mkdocs-test-0.5.3 dpkg-source: info: unpacking mkdocs-test_0.5.3.orig.tar.gz dpkg-source: info: unpacking mkdocs-test_0.5.3-2.debian.tar.xz I: Not using root during the build. I: Installing the build-deps I: user script /srv/workspace/pbuilder/1227558/tmp/hooks/D02_print_environment starting I: set BUILDDIR='/build/reproducible-path' BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' BUILDUSERNAME='pbuilder1' BUILD_ARCH='arm64' DEBIAN_FRONTEND='noninteractive' DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 ' DISTRIBUTION='unstable' HOME='/root' HOST_ARCH='arm64' IFS=' ' INVOCATION_ID='faa9641627f642798dc215c09908fcb0' LANG='C' LANGUAGE='en_US:en' LC_ALL='C' MAIL='/var/mail/root' OPTIND='1' PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' PBCURRENTCOMMANDLINEOPERATION='build' PBUILDER_OPERATION='build' PBUILDER_PKGDATADIR='/usr/share/pbuilder' PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' PBUILDER_SYSCONFDIR='/etc' PPID='1227558' PS1='# ' PS2='> ' PS4='+ ' PWD='/' SHELL='/bin/bash' SHLVL='2' SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.vbNT72NV/pbuilderrc_uCav --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.vbNT72NV/b1 --logfile b1/build.log mkdocs-test_0.5.3-2.dsc' SUDO_GID='109' SUDO_UID='104' SUDO_USER='jenkins' TERM='unknown' TZ='/usr/share/zoneinfo/Etc/GMT+12' USER='root' _='/usr/bin/systemd-run' http_proxy='http://192.168.101.4:3128' I: uname -a Linux codethink04-arm64 6.1.0-28-cloud-arm64 #1 SMP Debian 6.1.119-1 (2024-11-22) aarch64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Nov 22 14:40 /bin -> usr/bin I: user script /srv/workspace/pbuilder/1227558/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy Version: 0.invalid.0 Architecture: arm64 Maintainer: Debian Pbuilder Team Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder This package was created automatically by pbuilder to satisfy the build-dependencies of the package being currently built. Depends: debhelper-compat (= 13), dh-sequence-python3, pybuild-plugin-pyproject, python3, python3-bs4, python3-markdown, python3-pandas, python3-pytest, python3-rich, python3-setuptools, python3-setuptools-scm, python3-super-collections, python3-yaml dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'. Selecting previously unselected package pbuilder-satisfydepends-dummy. (Reading database ... 19963 files and directories currently installed.) Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ... Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ... dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested: pbuilder-satisfydepends-dummy depends on debhelper-compat (= 13); however: Package debhelper-compat is not installed. pbuilder-satisfydepends-dummy depends on dh-sequence-python3; however: Package dh-sequence-python3 is not installed. pbuilder-satisfydepends-dummy depends on pybuild-plugin-pyproject; however: Package pybuild-plugin-pyproject is not installed. pbuilder-satisfydepends-dummy depends on python3; however: Package python3 is not installed. pbuilder-satisfydepends-dummy depends on python3-bs4; however: Package python3-bs4 is not installed. pbuilder-satisfydepends-dummy depends on python3-markdown; however: Package python3-markdown is not installed. pbuilder-satisfydepends-dummy depends on python3-pandas; however: Package python3-pandas is not installed. pbuilder-satisfydepends-dummy depends on python3-pytest; however: Package python3-pytest is not installed. pbuilder-satisfydepends-dummy depends on python3-rich; however: Package python3-rich is not installed. pbuilder-satisfydepends-dummy depends on python3-setuptools; however: Package python3-setuptools is not installed. pbuilder-satisfydepends-dummy depends on python3-setuptools-scm; however: Package python3-setuptools-scm is not installed. pbuilder-satisfydepends-dummy depends on python3-super-collections; however: Package python3-super-collections is not installed. pbuilder-satisfydepends-dummy depends on python3-yaml; however: Package python3-yaml is not installed. Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ... Reading package lists... Building dependency tree... Reading state information... Initializing package states... Writing extended state information... Building tag database... pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0) The following NEW packages will be installed: autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdextrautils{a} debhelper{a} dh-autoreconf{a} dh-python{a} dh-strip-nondeterminism{a} dwz{a} file{a} gettext{a} gettext-base{a} groff-base{a} intltool-debian{a} libarchive-zip-perl{a} libblas3{a} libdebhelper-perl{a} libelf1t64{a} libexpat1{a} libffi8{a} libfile-stripnondeterminism-perl{a} libgfortran5{a} libicu72{a} liblapack3{a} libmagic-mgc{a} libmagic1t64{a} libpipeline1{a} libpython3-stdlib{a} libpython3.13-minimal{a} libpython3.13-stdlib{a} libreadline8t64{a} libtool{a} libuchardet0{a} libunistring5{a} libxml2{a} libyaml-0-2{a} m4{a} man-db{a} media-types{a} netbase{a} po-debconf{a} pybuild-plugin-pyproject{a} python3{a} python3-autocommand{a} python3-bs4{a} python3-build{a} python3-dateutil{a} python3-hjson{a} python3-inflect{a} python3-iniconfig{a} python3-installer{a} python3-jaraco.context{a} python3-jaraco.functools{a} python3-jaraco.text{a} python3-markdown{a} python3-markdown-it{a} python3-mdurl{a} python3-minimal{a} python3-more-itertools{a} python3-numpy{a} python3-packaging{a} python3-pandas{a} python3-pandas-lib{a} python3-pkg-resources{a} python3-pluggy{a} python3-pygments{a} python3-pyproject-hooks{a} python3-pytest{a} python3-rich{a} python3-setuptools{a} python3-setuptools-scm{a} python3-soupsieve{a} python3-super-collections{a} python3-toml{a} python3-typeguard{a} python3-typing-extensions{a} python3-tz{a} python3-wheel{a} python3-yaml{a} python3-zipp{a} python3.13{a} python3.13-minimal{a} readline-common{a} sensible-utils{a} tzdata{a} The following packages are RECOMMENDED but will NOT be installed: ca-certificates curl libarchive-cpio-perl libltdl-dev libmail-sendmail-perl lynx python3-bottleneck python3-chardet python3-charset-normalizer python3-html5lib python3-jinja2 python3-lxml python3-matplotlib python3-numexpr python3-odf python3-openpyxl python3-scipy python3-tables wget 0 packages upgraded, 86 newly installed, 0 to remove and 0 not upgraded. Need to get 44.9 MB of archives. After unpacking 223 MB will be used. Writing extended state information... Get: 1 http://deb.debian.org/debian unstable/main arm64 libpython3.13-minimal arm64 3.13.1-3 [852 kB] Get: 2 http://deb.debian.org/debian unstable/main arm64 libexpat1 arm64 2.6.4-1 [90.7 kB] Get: 3 http://deb.debian.org/debian unstable/main arm64 python3.13-minimal arm64 3.13.1-3 [1990 kB] Get: 4 http://deb.debian.org/debian unstable/main arm64 python3-minimal arm64 3.13.1-2 [27.0 kB] Get: 5 http://deb.debian.org/debian unstable/main arm64 media-types all 10.1.0 [26.9 kB] Get: 6 http://deb.debian.org/debian unstable/main arm64 netbase all 6.4 [12.8 kB] Get: 7 http://deb.debian.org/debian unstable/main arm64 tzdata all 2024b-5 [256 kB] Get: 8 http://deb.debian.org/debian unstable/main arm64 libffi8 arm64 3.4.6-1 [20.9 kB] Get: 9 http://deb.debian.org/debian unstable/main arm64 readline-common all 8.2-6 [69.4 kB] Get: 10 http://deb.debian.org/debian unstable/main arm64 libreadline8t64 arm64 8.2-6 [159 kB] Get: 11 http://deb.debian.org/debian unstable/main arm64 libpython3.13-stdlib arm64 3.13.1-3 [1912 kB] Get: 12 http://deb.debian.org/debian unstable/main arm64 python3.13 arm64 3.13.1-3 [740 kB] Get: 13 http://deb.debian.org/debian unstable/main arm64 libpython3-stdlib arm64 3.13.1-2 [9952 B] Get: 14 http://deb.debian.org/debian unstable/main arm64 python3 arm64 3.13.1-2 [28.0 kB] Get: 15 http://deb.debian.org/debian unstable/main arm64 sensible-utils all 0.0.24 [24.8 kB] Get: 16 http://deb.debian.org/debian unstable/main arm64 libmagic-mgc arm64 1:5.45-3+b1 [314 kB] Get: 17 http://deb.debian.org/debian unstable/main arm64 libmagic1t64 arm64 1:5.45-3+b1 [102 kB] Get: 18 http://deb.debian.org/debian unstable/main arm64 file arm64 1:5.45-3+b1 [43.4 kB] Get: 19 http://deb.debian.org/debian unstable/main arm64 gettext-base arm64 0.22.5-4 [198 kB] Get: 20 http://deb.debian.org/debian unstable/main arm64 libuchardet0 arm64 0.0.8-1+b2 [69.2 kB] Get: 21 http://deb.debian.org/debian unstable/main arm64 groff-base arm64 1.23.0-7 [1129 kB] Get: 22 http://deb.debian.org/debian unstable/main arm64 bsdextrautils arm64 2.40.3-1 [91.5 kB] Get: 23 http://deb.debian.org/debian unstable/main arm64 libpipeline1 arm64 1.5.8-1 [40.2 kB] Get: 24 http://deb.debian.org/debian unstable/main arm64 man-db arm64 2.13.0-1 [1404 kB] Get: 25 http://deb.debian.org/debian unstable/main arm64 m4 arm64 1.4.19-5 [284 kB] Get: 26 http://deb.debian.org/debian unstable/main arm64 autoconf all 2.72-3 [493 kB] Get: 27 http://deb.debian.org/debian unstable/main arm64 autotools-dev all 20220109.1 [51.6 kB] Get: 28 http://deb.debian.org/debian unstable/main arm64 automake all 1:1.16.5-1.3 [823 kB] Get: 29 http://deb.debian.org/debian unstable/main arm64 autopoint all 0.22.5-4 [723 kB] Get: 30 http://deb.debian.org/debian unstable/main arm64 libdebhelper-perl all 13.23 [90.6 kB] Get: 31 http://deb.debian.org/debian unstable/main arm64 libtool all 2.5.4-2 [539 kB] Get: 32 http://deb.debian.org/debian unstable/main arm64 dh-autoreconf all 20 [17.1 kB] Get: 33 http://deb.debian.org/debian unstable/main arm64 libarchive-zip-perl all 1.68-1 [104 kB] Get: 34 http://deb.debian.org/debian unstable/main arm64 libfile-stripnondeterminism-perl all 1.14.0-1 [19.5 kB] Get: 35 http://deb.debian.org/debian unstable/main arm64 dh-strip-nondeterminism all 1.14.0-1 [8448 B] Get: 36 http://deb.debian.org/debian unstable/main arm64 libelf1t64 arm64 0.192-4 [189 kB] Get: 37 http://deb.debian.org/debian unstable/main arm64 dwz arm64 0.15-1+b1 [102 kB] Get: 38 http://deb.debian.org/debian unstable/main arm64 libunistring5 arm64 1.3-1 [449 kB] Get: 39 http://deb.debian.org/debian unstable/main arm64 libicu72 arm64 72.1-6 [9239 kB] Get: 40 http://deb.debian.org/debian unstable/main arm64 libxml2 arm64 2.12.7+dfsg+really2.9.14-0.2+b1 [630 kB] Get: 41 http://deb.debian.org/debian unstable/main arm64 gettext arm64 0.22.5-4 [1532 kB] Get: 42 http://deb.debian.org/debian unstable/main arm64 intltool-debian all 0.35.0+20060710.6 [22.9 kB] Get: 43 http://deb.debian.org/debian unstable/main arm64 po-debconf all 1.0.21+nmu1 [248 kB] Get: 44 http://deb.debian.org/debian unstable/main arm64 debhelper all 13.23 [919 kB] Get: 45 http://deb.debian.org/debian unstable/main arm64 python3-autocommand all 2.2.2-3 [13.6 kB] Get: 46 http://deb.debian.org/debian unstable/main arm64 python3-more-itertools all 10.5.0-1 [63.8 kB] Get: 47 http://deb.debian.org/debian unstable/main arm64 python3-typing-extensions all 4.12.2-2 [73.0 kB] Get: 48 http://deb.debian.org/debian unstable/main arm64 python3-typeguard all 4.4.1-1 [37.0 kB] Get: 49 http://deb.debian.org/debian unstable/main arm64 python3-inflect all 7.3.1-2 [32.4 kB] Get: 50 http://deb.debian.org/debian unstable/main arm64 python3-jaraco.context all 6.0.0-1 [7984 B] Get: 51 http://deb.debian.org/debian unstable/main arm64 python3-jaraco.functools all 4.1.0-1 [12.0 kB] Get: 52 http://deb.debian.org/debian unstable/main arm64 python3-pkg-resources all 75.6.0-1 [222 kB] Get: 53 http://deb.debian.org/debian unstable/main arm64 python3-jaraco.text all 4.0.0-1 [11.4 kB] Get: 54 http://deb.debian.org/debian unstable/main arm64 python3-zipp all 3.21.0-1 [10.6 kB] Get: 55 http://deb.debian.org/debian unstable/main arm64 python3-setuptools all 75.6.0-1 [720 kB] Get: 56 http://deb.debian.org/debian unstable/main arm64 dh-python all 6.20250108 [113 kB] Get: 57 http://deb.debian.org/debian unstable/main arm64 libblas3 arm64 3.12.0-4 [98.7 kB] Get: 58 http://deb.debian.org/debian unstable/main arm64 libgfortran5 arm64 14.2.0-12 [361 kB] Get: 59 http://deb.debian.org/debian unstable/main arm64 liblapack3 arm64 3.12.0-4 [1812 kB] Get: 60 http://deb.debian.org/debian unstable/main arm64 libyaml-0-2 arm64 0.2.5-2 [49.2 kB] Get: 61 http://deb.debian.org/debian unstable/main arm64 python3-packaging all 24.2-1 [55.3 kB] Get: 62 http://deb.debian.org/debian unstable/main arm64 python3-pyproject-hooks all 1.2.0-1 [11.7 kB] Get: 63 http://deb.debian.org/debian unstable/main arm64 python3-toml all 0.10.2-1 [16.2 kB] Get: 64 http://deb.debian.org/debian unstable/main arm64 python3-wheel all 0.45.1-1 [56.7 kB] Get: 65 http://deb.debian.org/debian unstable/main arm64 python3-build all 1.2.2-1 [36.0 kB] Get: 66 http://deb.debian.org/debian unstable/main arm64 python3-installer all 0.7.0+dfsg1-3 [18.6 kB] Get: 67 http://deb.debian.org/debian unstable/main arm64 pybuild-plugin-pyproject all 6.20250108 [11.6 kB] Get: 68 http://deb.debian.org/debian unstable/main arm64 python3-soupsieve all 2.6-1 [38.3 kB] Get: 69 http://deb.debian.org/debian unstable/main arm64 python3-bs4 all 4.12.3-3 [133 kB] Get: 70 http://deb.debian.org/debian unstable/main arm64 python3-dateutil all 2.9.0-3 [79.3 kB] Get: 71 http://deb.debian.org/debian unstable/main arm64 python3-hjson all 3.1.0-3 [33.3 kB] Get: 72 http://deb.debian.org/debian unstable/main arm64 python3-iniconfig all 1.1.1-2 [6396 B] Get: 73 http://deb.debian.org/debian unstable/main arm64 python3-markdown all 3.7-2 [85.2 kB] Get: 74 http://deb.debian.org/debian unstable/main arm64 python3-mdurl all 0.1.2-1 [9444 B] Get: 75 http://deb.debian.org/debian unstable/main arm64 python3-markdown-it all 3.0.0-2 [62.5 kB] Get: 76 http://deb.debian.org/debian unstable/main arm64 python3-numpy arm64 1:1.26.4+ds-12 [3816 kB] Get: 77 http://deb.debian.org/debian unstable/main arm64 python3-tz all 2024.2-1 [31.0 kB] Get: 78 http://deb.debian.org/debian unstable/main arm64 python3-pandas-lib arm64 2.2.3+dfsg-5+b1 [6028 kB] Get: 79 http://deb.debian.org/debian unstable/main arm64 python3-pandas all 2.2.3+dfsg-5 [3096 kB] Get: 80 http://deb.debian.org/debian unstable/main arm64 python3-pluggy all 1.5.0-1 [26.9 kB] Get: 81 http://deb.debian.org/debian unstable/main arm64 python3-pygments all 2.18.0+dfsg-1 [836 kB] Get: 82 http://deb.debian.org/debian unstable/main arm64 python3-pytest all 8.3.4-1 [250 kB] Get: 83 http://deb.debian.org/debian unstable/main arm64 python3-rich all 13.9.4-1 [203 kB] Get: 84 http://deb.debian.org/debian unstable/main arm64 python3-setuptools-scm all 8.1.0-1 [40.5 kB] Get: 85 http://deb.debian.org/debian unstable/main arm64 python3-super-collections all 0.5.3-2 [12.2 kB] Get: 86 http://deb.debian.org/debian unstable/main arm64 python3-yaml arm64 6.0.2-1+b1 [148 kB] Fetched 44.9 MB in 0s (162 MB/s) Preconfiguring packages ... Selecting previously unselected package libpython3.13-minimal:arm64. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19963 files and directories currently installed.) Preparing to unpack .../libpython3.13-minimal_3.13.1-3_arm64.deb ... Unpacking libpython3.13-minimal:arm64 (3.13.1-3) ... Selecting previously unselected package libexpat1:arm64. Preparing to unpack .../libexpat1_2.6.4-1_arm64.deb ... Unpacking libexpat1:arm64 (2.6.4-1) ... Selecting previously unselected package python3.13-minimal. Preparing to unpack .../python3.13-minimal_3.13.1-3_arm64.deb ... Unpacking python3.13-minimal (3.13.1-3) ... Setting up libpython3.13-minimal:arm64 (3.13.1-3) ... Setting up libexpat1:arm64 (2.6.4-1) ... Setting up python3.13-minimal (3.13.1-3) ... Selecting previously unselected package python3-minimal. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 20297 files and directories currently installed.) Preparing to unpack .../0-python3-minimal_3.13.1-2_arm64.deb ... Unpacking python3-minimal (3.13.1-2) ... Selecting previously unselected package media-types. Preparing to unpack .../1-media-types_10.1.0_all.deb ... Unpacking media-types (10.1.0) ... Selecting previously unselected package netbase. Preparing to unpack .../2-netbase_6.4_all.deb ... Unpacking netbase (6.4) ... Selecting previously unselected package tzdata. Preparing to unpack .../3-tzdata_2024b-5_all.deb ... Unpacking tzdata (2024b-5) ... Selecting previously unselected package libffi8:arm64. Preparing to unpack .../4-libffi8_3.4.6-1_arm64.deb ... Unpacking libffi8:arm64 (3.4.6-1) ... Selecting previously unselected package readline-common. Preparing to unpack .../5-readline-common_8.2-6_all.deb ... Unpacking readline-common (8.2-6) ... Selecting previously unselected package libreadline8t64:arm64. Preparing to unpack .../6-libreadline8t64_8.2-6_arm64.deb ... Adding 'diversion of /lib/aarch64-linux-gnu/libhistory.so.8 to /lib/aarch64-linux-gnu/libhistory.so.8.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/aarch64-linux-gnu/libhistory.so.8.2 to /lib/aarch64-linux-gnu/libhistory.so.8.2.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/aarch64-linux-gnu/libreadline.so.8 to /lib/aarch64-linux-gnu/libreadline.so.8.usr-is-merged by libreadline8t64' Adding 'diversion of /lib/aarch64-linux-gnu/libreadline.so.8.2 to /lib/aarch64-linux-gnu/libreadline.so.8.2.usr-is-merged by libreadline8t64' Unpacking libreadline8t64:arm64 (8.2-6) ... Selecting previously unselected package libpython3.13-stdlib:arm64. Preparing to unpack .../7-libpython3.13-stdlib_3.13.1-3_arm64.deb ... Unpacking libpython3.13-stdlib:arm64 (3.13.1-3) ... Selecting previously unselected package python3.13. Preparing to unpack .../8-python3.13_3.13.1-3_arm64.deb ... Unpacking python3.13 (3.13.1-3) ... Selecting previously unselected package libpython3-stdlib:arm64. Preparing to unpack .../9-libpython3-stdlib_3.13.1-2_arm64.deb ... Unpacking libpython3-stdlib:arm64 (3.13.1-2) ... Setting up python3-minimal (3.13.1-2) ... Selecting previously unselected package python3. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 21307 files and directories currently installed.) Preparing to unpack .../00-python3_3.13.1-2_arm64.deb ... Unpacking python3 (3.13.1-2) ... Selecting previously unselected package sensible-utils. Preparing to unpack .../01-sensible-utils_0.0.24_all.deb ... Unpacking sensible-utils (0.0.24) ... Selecting previously unselected package libmagic-mgc. Preparing to unpack .../02-libmagic-mgc_1%3a5.45-3+b1_arm64.deb ... Unpacking libmagic-mgc (1:5.45-3+b1) ... Selecting previously unselected package libmagic1t64:arm64. Preparing to unpack .../03-libmagic1t64_1%3a5.45-3+b1_arm64.deb ... Unpacking libmagic1t64:arm64 (1:5.45-3+b1) ... Selecting previously unselected package file. Preparing to unpack .../04-file_1%3a5.45-3+b1_arm64.deb ... Unpacking file (1:5.45-3+b1) ... Selecting previously unselected package gettext-base. Preparing to unpack .../05-gettext-base_0.22.5-4_arm64.deb ... Unpacking gettext-base (0.22.5-4) ... Selecting previously unselected package libuchardet0:arm64. Preparing to unpack .../06-libuchardet0_0.0.8-1+b2_arm64.deb ... Unpacking libuchardet0:arm64 (0.0.8-1+b2) ... Selecting previously unselected package groff-base. Preparing to unpack .../07-groff-base_1.23.0-7_arm64.deb ... Unpacking groff-base (1.23.0-7) ... Selecting previously unselected package bsdextrautils. Preparing to unpack .../08-bsdextrautils_2.40.3-1_arm64.deb ... Unpacking bsdextrautils (2.40.3-1) ... Selecting previously unselected package libpipeline1:arm64. Preparing to unpack .../09-libpipeline1_1.5.8-1_arm64.deb ... Unpacking libpipeline1:arm64 (1.5.8-1) ... Selecting previously unselected package man-db. Preparing to unpack .../10-man-db_2.13.0-1_arm64.deb ... Unpacking man-db (2.13.0-1) ... Selecting previously unselected package m4. Preparing to unpack .../11-m4_1.4.19-5_arm64.deb ... Unpacking m4 (1.4.19-5) ... Selecting previously unselected package autoconf. Preparing to unpack .../12-autoconf_2.72-3_all.deb ... Unpacking autoconf (2.72-3) ... Selecting previously unselected package autotools-dev. Preparing to unpack .../13-autotools-dev_20220109.1_all.deb ... Unpacking autotools-dev (20220109.1) ... Selecting previously unselected package automake. Preparing to unpack .../14-automake_1%3a1.16.5-1.3_all.deb ... Unpacking automake (1:1.16.5-1.3) ... Selecting previously unselected package autopoint. Preparing to unpack .../15-autopoint_0.22.5-4_all.deb ... Unpacking autopoint (0.22.5-4) ... Selecting previously unselected package libdebhelper-perl. Preparing to unpack .../16-libdebhelper-perl_13.23_all.deb ... Unpacking libdebhelper-perl (13.23) ... Selecting previously unselected package libtool. Preparing to unpack .../17-libtool_2.5.4-2_all.deb ... Unpacking libtool (2.5.4-2) ... Selecting previously unselected package dh-autoreconf. Preparing to unpack .../18-dh-autoreconf_20_all.deb ... Unpacking dh-autoreconf (20) ... Selecting previously unselected package libarchive-zip-perl. Preparing to unpack .../19-libarchive-zip-perl_1.68-1_all.deb ... Unpacking libarchive-zip-perl (1.68-1) ... Selecting previously unselected package libfile-stripnondeterminism-perl. Preparing to unpack .../20-libfile-stripnondeterminism-perl_1.14.0-1_all.deb ... Unpacking libfile-stripnondeterminism-perl (1.14.0-1) ... Selecting previously unselected package dh-strip-nondeterminism. Preparing to unpack .../21-dh-strip-nondeterminism_1.14.0-1_all.deb ... Unpacking dh-strip-nondeterminism (1.14.0-1) ... Selecting previously unselected package libelf1t64:arm64. Preparing to unpack .../22-libelf1t64_0.192-4_arm64.deb ... Unpacking libelf1t64:arm64 (0.192-4) ... Selecting previously unselected package dwz. Preparing to unpack .../23-dwz_0.15-1+b1_arm64.deb ... Unpacking dwz (0.15-1+b1) ... Selecting previously unselected package libunistring5:arm64. Preparing to unpack .../24-libunistring5_1.3-1_arm64.deb ... Unpacking libunistring5:arm64 (1.3-1) ... Selecting previously unselected package libicu72:arm64. Preparing to unpack .../25-libicu72_72.1-6_arm64.deb ... Unpacking libicu72:arm64 (72.1-6) ... Selecting previously unselected package libxml2:arm64. Preparing to unpack .../26-libxml2_2.12.7+dfsg+really2.9.14-0.2+b1_arm64.deb ... Unpacking libxml2:arm64 (2.12.7+dfsg+really2.9.14-0.2+b1) ... Selecting previously unselected package gettext. Preparing to unpack .../27-gettext_0.22.5-4_arm64.deb ... Unpacking gettext (0.22.5-4) ... Selecting previously unselected package intltool-debian. Preparing to unpack .../28-intltool-debian_0.35.0+20060710.6_all.deb ... Unpacking intltool-debian (0.35.0+20060710.6) ... Selecting previously unselected package po-debconf. Preparing to unpack .../29-po-debconf_1.0.21+nmu1_all.deb ... Unpacking po-debconf (1.0.21+nmu1) ... Selecting previously unselected package debhelper. Preparing to unpack .../30-debhelper_13.23_all.deb ... Unpacking debhelper (13.23) ... Selecting previously unselected package python3-autocommand. Preparing to unpack .../31-python3-autocommand_2.2.2-3_all.deb ... Unpacking python3-autocommand (2.2.2-3) ... Selecting previously unselected package python3-more-itertools. Preparing to unpack .../32-python3-more-itertools_10.5.0-1_all.deb ... Unpacking python3-more-itertools (10.5.0-1) ... Selecting previously unselected package python3-typing-extensions. Preparing to unpack .../33-python3-typing-extensions_4.12.2-2_all.deb ... Unpacking python3-typing-extensions (4.12.2-2) ... Selecting previously unselected package python3-typeguard. Preparing to unpack .../34-python3-typeguard_4.4.1-1_all.deb ... Unpacking python3-typeguard (4.4.1-1) ... Selecting previously unselected package python3-inflect. Preparing to unpack .../35-python3-inflect_7.3.1-2_all.deb ... Unpacking python3-inflect (7.3.1-2) ... Selecting previously unselected package python3-jaraco.context. Preparing to unpack .../36-python3-jaraco.context_6.0.0-1_all.deb ... Unpacking python3-jaraco.context (6.0.0-1) ... Selecting previously unselected package python3-jaraco.functools. Preparing to unpack .../37-python3-jaraco.functools_4.1.0-1_all.deb ... Unpacking python3-jaraco.functools (4.1.0-1) ... Selecting previously unselected package python3-pkg-resources. Preparing to unpack .../38-python3-pkg-resources_75.6.0-1_all.deb ... Unpacking python3-pkg-resources (75.6.0-1) ... Selecting previously unselected package python3-jaraco.text. Preparing to unpack .../39-python3-jaraco.text_4.0.0-1_all.deb ... Unpacking python3-jaraco.text (4.0.0-1) ... Selecting previously unselected package python3-zipp. Preparing to unpack .../40-python3-zipp_3.21.0-1_all.deb ... Unpacking python3-zipp (3.21.0-1) ... Selecting previously unselected package python3-setuptools. Preparing to unpack .../41-python3-setuptools_75.6.0-1_all.deb ... Unpacking python3-setuptools (75.6.0-1) ... Selecting previously unselected package dh-python. Preparing to unpack .../42-dh-python_6.20250108_all.deb ... Unpacking dh-python (6.20250108) ... Selecting previously unselected package libblas3:arm64. Preparing to unpack .../43-libblas3_3.12.0-4_arm64.deb ... Unpacking libblas3:arm64 (3.12.0-4) ... Selecting previously unselected package libgfortran5:arm64. Preparing to unpack .../44-libgfortran5_14.2.0-12_arm64.deb ... Unpacking libgfortran5:arm64 (14.2.0-12) ... Selecting previously unselected package liblapack3:arm64. Preparing to unpack .../45-liblapack3_3.12.0-4_arm64.deb ... Unpacking liblapack3:arm64 (3.12.0-4) ... Selecting previously unselected package libyaml-0-2:arm64. Preparing to unpack .../46-libyaml-0-2_0.2.5-2_arm64.deb ... Unpacking libyaml-0-2:arm64 (0.2.5-2) ... Selecting previously unselected package python3-packaging. Preparing to unpack .../47-python3-packaging_24.2-1_all.deb ... Unpacking python3-packaging (24.2-1) ... Selecting previously unselected package python3-pyproject-hooks. Preparing to unpack .../48-python3-pyproject-hooks_1.2.0-1_all.deb ... Unpacking python3-pyproject-hooks (1.2.0-1) ... Selecting previously unselected package python3-toml. Preparing to unpack .../49-python3-toml_0.10.2-1_all.deb ... Unpacking python3-toml (0.10.2-1) ... Selecting previously unselected package python3-wheel. Preparing to unpack .../50-python3-wheel_0.45.1-1_all.deb ... Unpacking python3-wheel (0.45.1-1) ... Selecting previously unselected package python3-build. Preparing to unpack .../51-python3-build_1.2.2-1_all.deb ... Unpacking python3-build (1.2.2-1) ... Selecting previously unselected package python3-installer. Preparing to unpack .../52-python3-installer_0.7.0+dfsg1-3_all.deb ... Unpacking python3-installer (0.7.0+dfsg1-3) ... Selecting previously unselected package pybuild-plugin-pyproject. Preparing to unpack .../53-pybuild-plugin-pyproject_6.20250108_all.deb ... Unpacking pybuild-plugin-pyproject (6.20250108) ... Selecting previously unselected package python3-soupsieve. Preparing to unpack .../54-python3-soupsieve_2.6-1_all.deb ... Unpacking python3-soupsieve (2.6-1) ... Selecting previously unselected package python3-bs4. Preparing to unpack .../55-python3-bs4_4.12.3-3_all.deb ... Unpacking python3-bs4 (4.12.3-3) ... Selecting previously unselected package python3-dateutil. Preparing to unpack .../56-python3-dateutil_2.9.0-3_all.deb ... Unpacking python3-dateutil (2.9.0-3) ... Selecting previously unselected package python3-hjson. Preparing to unpack .../57-python3-hjson_3.1.0-3_all.deb ... Unpacking python3-hjson (3.1.0-3) ... Selecting previously unselected package python3-iniconfig. Preparing to unpack .../58-python3-iniconfig_1.1.1-2_all.deb ... Unpacking python3-iniconfig (1.1.1-2) ... Selecting previously unselected package python3-markdown. Preparing to unpack .../59-python3-markdown_3.7-2_all.deb ... Unpacking python3-markdown (3.7-2) ... Selecting previously unselected package python3-mdurl. Preparing to unpack .../60-python3-mdurl_0.1.2-1_all.deb ... Unpacking python3-mdurl (0.1.2-1) ... Selecting previously unselected package python3-markdown-it. Preparing to unpack .../61-python3-markdown-it_3.0.0-2_all.deb ... Unpacking python3-markdown-it (3.0.0-2) ... Selecting previously unselected package python3-numpy. Preparing to unpack .../62-python3-numpy_1%3a1.26.4+ds-12_arm64.deb ... Unpacking python3-numpy (1:1.26.4+ds-12) ... Selecting previously unselected package python3-tz. Preparing to unpack .../63-python3-tz_2024.2-1_all.deb ... Unpacking python3-tz (2024.2-1) ... Selecting previously unselected package python3-pandas-lib:arm64. Preparing to unpack .../64-python3-pandas-lib_2.2.3+dfsg-5+b1_arm64.deb ... Unpacking python3-pandas-lib:arm64 (2.2.3+dfsg-5+b1) ... Selecting previously unselected package python3-pandas. Preparing to unpack .../65-python3-pandas_2.2.3+dfsg-5_all.deb ... Unpacking python3-pandas (2.2.3+dfsg-5) ... Selecting previously unselected package python3-pluggy. Preparing to unpack .../66-python3-pluggy_1.5.0-1_all.deb ... Unpacking python3-pluggy (1.5.0-1) ... Selecting previously unselected package python3-pygments. Preparing to unpack .../67-python3-pygments_2.18.0+dfsg-1_all.deb ... Unpacking python3-pygments (2.18.0+dfsg-1) ... Selecting previously unselected package python3-pytest. Preparing to unpack .../68-python3-pytest_8.3.4-1_all.deb ... Unpacking python3-pytest (8.3.4-1) ... Selecting previously unselected package python3-rich. Preparing to unpack .../69-python3-rich_13.9.4-1_all.deb ... Unpacking python3-rich (13.9.4-1) ... Selecting previously unselected package python3-setuptools-scm. Preparing to unpack .../70-python3-setuptools-scm_8.1.0-1_all.deb ... Unpacking python3-setuptools-scm (8.1.0-1) ... Selecting previously unselected package python3-super-collections. Preparing to unpack .../71-python3-super-collections_0.5.3-2_all.deb ... Unpacking python3-super-collections (0.5.3-2) ... Selecting previously unselected package python3-yaml. Preparing to unpack .../72-python3-yaml_6.0.2-1+b1_arm64.deb ... Unpacking python3-yaml (6.0.2-1+b1) ... Setting up media-types (10.1.0) ... Setting up libpipeline1:arm64 (1.5.8-1) ... Setting up libicu72:arm64 (72.1-6) ... Setting up bsdextrautils (2.40.3-1) ... Setting up libmagic-mgc (1:5.45-3+b1) ... Setting up libarchive-zip-perl (1.68-1) ... Setting up libyaml-0-2:arm64 (0.2.5-2) ... Setting up libdebhelper-perl (13.23) ... Setting up libmagic1t64:arm64 (1:5.45-3+b1) ... Setting up gettext-base (0.22.5-4) ... Setting up m4 (1.4.19-5) ... Setting up file (1:5.45-3+b1) ... Setting up libelf1t64:arm64 (0.192-4) ... Setting up tzdata (2024b-5) ... Current default time zone: 'Etc/UTC' Local time is now: Sat Jan 11 06:21:23 UTC 2025. Universal Time is now: Sat Jan 11 06:21:23 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up autotools-dev (20220109.1) ... Setting up libblas3:arm64 (3.12.0-4) ... update-alternatives: using /usr/lib/aarch64-linux-gnu/blas/libblas.so.3 to provide /usr/lib/aarch64-linux-gnu/libblas.so.3 (libblas.so.3-aarch64-linux-gnu) in auto mode Setting up libunistring5:arm64 (1.3-1) ... Setting up autopoint (0.22.5-4) ... Setting up libgfortran5:arm64 (14.2.0-12) ... Setting up autoconf (2.72-3) ... Setting up libffi8:arm64 (3.4.6-1) ... Setting up dwz (0.15-1+b1) ... Setting up sensible-utils (0.0.24) ... Setting up libuchardet0:arm64 (0.0.8-1+b2) ... Setting up netbase (6.4) ... Setting up readline-common (8.2-6) ... Setting up libxml2:arm64 (2.12.7+dfsg+really2.9.14-0.2+b1) ... Setting up automake (1:1.16.5-1.3) ... update-alternatives: using /usr/bin/automake-1.16 to provide /usr/bin/automake (automake) in auto mode Setting up libfile-stripnondeterminism-perl (1.14.0-1) ... Setting up liblapack3:arm64 (3.12.0-4) ... update-alternatives: using /usr/lib/aarch64-linux-gnu/lapack/liblapack.so.3 to provide /usr/lib/aarch64-linux-gnu/liblapack.so.3 (liblapack.so.3-aarch64-linux-gnu) in auto mode Setting up gettext (0.22.5-4) ... Setting up libtool (2.5.4-2) ... Setting up intltool-debian (0.35.0+20060710.6) ... Setting up dh-autoreconf (20) ... Setting up libreadline8t64:arm64 (8.2-6) ... Setting up dh-strip-nondeterminism (1.14.0-1) ... Setting up groff-base (1.23.0-7) ... Setting up libpython3.13-stdlib:arm64 (3.13.1-3) ... Setting up libpython3-stdlib:arm64 (3.13.1-2) ... Setting up python3.13 (3.13.1-3) ... Setting up po-debconf (1.0.21+nmu1) ... Setting up python3 (3.13.1-2) ... Setting up python3-zipp (3.21.0-1) ... Setting up python3-autocommand (2.2.2-3) ... Setting up man-db (2.13.0-1) ... Not building database; man-db/auto-update is not 'true'. Setting up python3-hjson (3.1.0-3) ... Setting up python3-wheel (0.45.1-1) ... Setting up python3-tz (2024.2-1) ... Setting up python3-packaging (24.2-1) ... Setting up python3-pyproject-hooks (1.2.0-1) ... Setting up python3-mdurl (0.1.2-1) ... Setting up python3-markdown (3.7-2) ... Setting up python3-typing-extensions (4.12.2-2) ... Setting up python3-toml (0.10.2-1) ... Setting up python3-installer (0.7.0+dfsg1-3) ... Setting up python3-pluggy (1.5.0-1) ... Setting up python3-markdown-it (3.0.0-2) ... Setting up python3-dateutil (2.9.0-3) ... Setting up python3-build (1.2.2-1) ... Setting up python3-soupsieve (2.6-1) ... Setting up python3-more-itertools (10.5.0-1) ... Setting up python3-iniconfig (1.1.1-2) ... Setting up python3-jaraco.functools (4.1.0-1) ... Setting up python3-jaraco.context (6.0.0-1) ... Setting up python3-pytest (8.3.4-1) ... Setting up python3-typeguard (4.4.1-1) ... Setting up python3-yaml (6.0.2-1+b1) ... Setting up debhelper (13.23) ... Setting up python3-super-collections (0.5.3-2) ... Setting up python3-bs4 (4.12.3-3) ... Setting up python3-inflect (7.3.1-2) ... Setting up python3-jaraco.text (4.0.0-1) ... Setting up python3-pkg-resources (75.6.0-1) ... Setting up python3-setuptools (75.6.0-1) ... Setting up python3-setuptools-scm (8.1.0-1) ... Setting up python3-pygments (2.18.0+dfsg-1) ... Setting up python3-numpy (1:1.26.4+ds-12) ... Setting up dh-python (6.20250108) ... Setting up python3-rich (13.9.4-1) ... Setting up pybuild-plugin-pyproject (6.20250108) ... Setting up python3-pandas-lib:arm64 (2.2.3+dfsg-5+b1) ... Setting up python3-pandas (2.2.3+dfsg-5) ... Processing triggers for libc-bin (2.40-5) ... Reading package lists... Building dependency tree... Reading state information... Reading extended state information... Initializing package states... Writing extended state information... Building tag database... -> Finished parsing the build-deps I: Building the package I: Running cd /build/reproducible-path/mkdocs-test-0.5.3/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../mkdocs-test_0.5.3-2_source.changes dpkg-buildpackage: info: source package mkdocs-test dpkg-buildpackage: info: source version 0.5.3-2 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Boyuan Yang dpkg-source --before-build . dpkg-buildpackage: info: host architecture arm64 debian/rules clean dh clean --buildsystem=pybuild dh_auto_clean -O--buildsystem=pybuild dh_autoreconf_clean -O--buildsystem=pybuild dh_clean -O--buildsystem=pybuild debian/rules binary dh binary --buildsystem=pybuild dh_update_autotools_config -O--buildsystem=pybuild dh_autoreconf -O--buildsystem=pybuild dh_auto_configure -O--buildsystem=pybuild dh_auto_build -O--buildsystem=pybuild I: pybuild plugin_pyproject:129: Building wheel for python3.13 with "build" module I: pybuild base:311: python3.13 -m build --skip-dependency-check --no-isolation --wheel --outdir /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test * Building wheel... running bdist_wheel running build running build_py creating build/lib/mkdocs_test copying mkdocs_test/plugin.py -> build/lib/mkdocs_test copying mkdocs_test/common.py -> build/lib/mkdocs_test copying mkdocs_test/__init__.py -> build/lib/mkdocs_test running egg_info creating mkdocs_test.egg-info writing mkdocs_test.egg-info/PKG-INFO writing dependency_links to mkdocs_test.egg-info/dependency_links.txt writing entry points to mkdocs_test.egg-info/entry_points.txt writing requirements to mkdocs_test.egg-info/requires.txt writing top-level names to mkdocs_test.egg-info/top_level.txt writing manifest file 'mkdocs_test.egg-info/SOURCES.txt' reading manifest file 'mkdocs_test.egg-info/SOURCES.txt' adding license file 'LICENSE' writing manifest file 'mkdocs_test.egg-info/SOURCES.txt' installing to build/bdist.linux-aarch64/wheel running install running install_lib creating build/bdist.linux-aarch64/wheel creating build/bdist.linux-aarch64/wheel/mkdocs_test copying build/lib/mkdocs_test/__init__.py -> build/bdist.linux-aarch64/wheel/./mkdocs_test copying build/lib/mkdocs_test/common.py -> build/bdist.linux-aarch64/wheel/./mkdocs_test copying build/lib/mkdocs_test/plugin.py -> build/bdist.linux-aarch64/wheel/./mkdocs_test running install_egg_info Copying mkdocs_test.egg-info to build/bdist.linux-aarch64/wheel/./mkdocs_test-0.5.3.egg-info running install_scripts creating build/bdist.linux-aarch64/wheel/mkdocs_test-0.5.3.dist-info/WHEEL creating '/build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/.tmp-d1gogh8a/mkdocs_test-0.5.3-py3-none-any.whl' and adding 'build/bdist.linux-aarch64/wheel' to it adding 'mkdocs_test/__init__.py' adding 'mkdocs_test/common.py' adding 'mkdocs_test/plugin.py' adding 'mkdocs_test-0.5.3.dist-info/LICENSE' adding 'mkdocs_test-0.5.3.dist-info/METADATA' adding 'mkdocs_test-0.5.3.dist-info/WHEEL' adding 'mkdocs_test-0.5.3.dist-info/entry_points.txt' adding 'mkdocs_test-0.5.3.dist-info/top_level.txt' adding 'mkdocs_test-0.5.3.dist-info/RECORD' removing build/bdist.linux-aarch64/wheel Successfully built mkdocs_test-0.5.3-py3-none-any.whl I: pybuild plugin_pyproject:144: Unpacking wheel built for python3.13 with "installer" module debian/rules override_dh_auto_test make[1]: Entering directory '/build/reproducible-path/mkdocs-test-0.5.3' dh_auto_test I: pybuild base:311: cd /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build; python3.13 -m pytest test ============================= test session starts ============================== platform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0 rootdir: /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build configfile: pyproject.toml plugins: typeguard-4.4.1 collected 8 items test/advanced/test_advanced.py FF [ 25%] test/alter_markdown/test_site.py F [ 37%] test/simple/test_site.py FF [ 62%] test/test_simple.py F.F [100%] =================================== FAILURES =================================== __________________________________ test_pages __________________________________ def test_pages(): project = DocProject() > project.build(strict=False) /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/test/advanced/test_advanced.py:19: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/mkdocs_test/__init__.py:482: in build self._build_result = run_command(*command) /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/mkdocs_test/common.py:332: in run_command return subprocess.run(full_command, capture_output=True, text=True) /usr/lib/python3.13/subprocess.py:554: in run with Popen(*popenargs, **kwargs) as process: /usr/lib/python3.13/subprocess.py:1036: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['mkdocs', 'build'], executable = b'mkdocs', preexec_fn = None close_fds = True, pass_fds = (), cwd = None, env = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 c2pwrite = 12, errread = 13, errwrite = 14, restore_signals = True, gid = None gids = None, uid = None, umask = -1, start_new_session = False process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn, _USE_VFORK) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'mkdocs' /usr/lib/python3.13/subprocess.py:1966: FileNotFoundError ----------------------------- Captured stdout call ----------------------------- BUILD COMMAND: ['mkdocs', 'build'] _________________________________ test_strict __________________________________ def test_strict(): "This project must fail" project = DocProject() # it must not fail with the --strict option, > project.build(strict=True) /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/test/advanced/test_advanced.py:71: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/mkdocs_test/__init__.py:482: in build self._build_result = run_command(*command) /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/mkdocs_test/common.py:332: in run_command return subprocess.run(full_command, capture_output=True, text=True) /usr/lib/python3.13/subprocess.py:554: in run with Popen(*popenargs, **kwargs) as process: /usr/lib/python3.13/subprocess.py:1036: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['mkdocs', 'build', '--strict'], executable = b'mkdocs' preexec_fn = None, close_fds = True, pass_fds = (), cwd = None, env = None startupinfo = None, creationflags = 0, shell = False, p2cread = -1 p2cwrite = -1, c2pread = 11, c2pwrite = 12, errread = 13, errwrite = 14 restore_signals = True, gid = None, gids = None, uid = None, umask = -1 start_new_session = False, process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn, _USE_VFORK) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'mkdocs' /usr/lib/python3.13/subprocess.py:1966: FileNotFoundError ----------------------------- Captured stdout call ----------------------------- BUILD COMMAND: ['mkdocs', 'build', '--strict'] __________________________________ test_pages __________________________________ def test_pages(): project = DocProject() > project.build(strict=True) /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/test/alter_markdown/test_site.py:20: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/mkdocs_test/__init__.py:482: in build self._build_result = run_command(*command) /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/mkdocs_test/common.py:332: in run_command return subprocess.run(full_command, capture_output=True, text=True) /usr/lib/python3.13/subprocess.py:554: in run with Popen(*popenargs, **kwargs) as process: /usr/lib/python3.13/subprocess.py:1036: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['mkdocs', 'build', '--strict'], executable = b'mkdocs' preexec_fn = None, close_fds = True, pass_fds = (), cwd = None, env = None startupinfo = None, creationflags = 0, shell = False, p2cread = -1 p2cwrite = -1, c2pread = 11, c2pwrite = 12, errread = 13, errwrite = 14 restore_signals = True, gid = None, gids = None, uid = None, umask = -1 start_new_session = False, process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn, _USE_VFORK) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'mkdocs' /usr/lib/python3.13/subprocess.py:1966: FileNotFoundError ----------------------------- Captured stdout call ----------------------------- BUILD COMMAND: ['mkdocs', 'build', '--strict'] __________________________________ test_pages __________________________________ def test_pages(): project = DocProject() > project.build(strict=False) /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/test/simple/test_site.py:19: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/mkdocs_test/__init__.py:482: in build self._build_result = run_command(*command) /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/mkdocs_test/common.py:332: in run_command return subprocess.run(full_command, capture_output=True, text=True) /usr/lib/python3.13/subprocess.py:554: in run with Popen(*popenargs, **kwargs) as process: /usr/lib/python3.13/subprocess.py:1036: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['mkdocs', 'build'], executable = b'mkdocs', preexec_fn = None close_fds = True, pass_fds = (), cwd = None, env = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 c2pwrite = 12, errread = 13, errwrite = 14, restore_signals = True, gid = None gids = None, uid = None, umask = -1, start_new_session = False process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn, _USE_VFORK) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'mkdocs' /usr/lib/python3.13/subprocess.py:1966: FileNotFoundError ----------------------------- Captured stdout call ----------------------------- BUILD COMMAND: ['mkdocs', 'build'] _________________________________ test_strict __________________________________ def test_strict(): "This project must fail" project = DocProject() # it must not fail with the --strict option, > project.build(strict=True) /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/test/simple/test_site.py:78: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/mkdocs_test/__init__.py:482: in build self._build_result = run_command(*command) /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/mkdocs_test/common.py:332: in run_command return subprocess.run(full_command, capture_output=True, text=True) /usr/lib/python3.13/subprocess.py:554: in run with Popen(*popenargs, **kwargs) as process: /usr/lib/python3.13/subprocess.py:1036: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['mkdocs', 'build', '--strict'], executable = b'mkdocs' preexec_fn = None, close_fds = True, pass_fds = (), cwd = None, env = None startupinfo = None, creationflags = 0, shell = False, p2cread = -1 p2cwrite = -1, c2pread = 11, c2pwrite = 12, errread = 13, errwrite = 14 restore_signals = True, gid = None, gids = None, uid = None, umask = -1 start_new_session = False, process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn, _USE_VFORK) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'mkdocs' /usr/lib/python3.13/subprocess.py:1966: FileNotFoundError ----------------------------- Captured stdout call ----------------------------- BUILD COMMAND: ['mkdocs', 'build', '--strict'] ________________________________ test_functions ________________________________ name = 'lxml.etree', extra = '', errors = 'raise', min_version = None def import_optional_dependency( name: str, extra: str = "", errors: str = "raise", min_version: str | None = None, ): """ Import an optional dependency. By default, if a dependency is missing an ImportError with a nice message will be raised. If a dependency is present, but too old, we raise. Parameters ---------- name : str The module name. extra : str Additional text to include in the ImportError message. errors : str {'raise', 'warn', 'ignore'} What to do when a dependency is not found or its version is too old. * raise : Raise an ImportError * warn : Only applicable when a module's version is to old. Warns that the version is too old and returns None * ignore: If the module is not installed, return None, otherwise, return the module, even if the version is too old. It's expected that users validate the version locally when using ``errors="ignore"`` (see. ``io/html.py``) min_version : str, default None Specify a minimum version that is different from the global pandas minimum version required. Returns ------- maybe_module : Optional[ModuleType] The imported module, when found and the version is correct. None is returned when the package is not found and `errors` is False, or when the package's version is too old and `errors` is ``'warn'`` or ``'ignore'``. """ assert errors in {"warn", "raise", "ignore"} if name=='numba' and warn_numba_platform: warnings.warn(warn_numba_platform) package_name = INSTALL_MAPPING.get(name) install_name = package_name if package_name is not None else name msg = ( f"Missing optional dependency '{install_name}'. {extra} " f"Use pip or conda to install {install_name}." ) try: > module = importlib.import_module(name) /usr/lib/python3/dist-packages/pandas/compat/_optional.py:140: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'lxml.etree', package = None def import_module(name, package=None): """Import a module. The 'package' argument is required when performing a relative import. It specifies the package to use as the anchor point from which to resolve the relative import to an absolute import. """ level = 0 if name.startswith('.'): if not package: raise TypeError("the 'package' argument is required to perform a " f"relative import for {name!r}") for character in name: if character != '.': break level += 1 > return _bootstrap._gcd_import(name[level:], package, level) E ModuleNotFoundError: No module named 'lxml' /usr/lib/python3.13/importlib/__init__.py:88: ModuleNotFoundError During handling of the above exception, another exception occurred: def test_functions(): "Test the low level fixtures" h1("Unit tests") # Print the list of directories h2("Directories containing mkdocs.yml") for directory in PROJECTS: print(directory) print(PROJECTS) print() # Example usage h2("Parse tables") SOURCE_DOCUMENT = """ # Header 1 Some text. ## Table 1 | Column 1 | Column 2 | |----------|----------| | Value 1 | Value 2 | | Value 3 | Value 4 | ## Table 2 | Column A | Column B | |----------|----------| | Value A | Value B | | Value C | Value D | ## Another Section Some more text. | Column X | Column Y | |----------|----------| | Value X1 | Value Y1 | | Value X2 | Value Y2 | """ > dfs = get_tables(SOURCE_DOCUMENT) /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/test/test_simple.py:66: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/mkdocs_test/common.py:320: in get_tables dataframes = extract_tables_from_html(html, /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/mkdocs_test/common.py:175: in extract_tables_from_html df = pd.read_html(StringIO(str(table)))[0] /usr/lib/python3/dist-packages/pandas/io/html.py:1240: in read_html return _parse( /usr/lib/python3/dist-packages/pandas/io/html.py:971: in _parse parser = _parser_dispatch(flav) /usr/lib/python3/dist-packages/pandas/io/html.py:918: in _parser_dispatch import_optional_dependency("lxml.etree") _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ name = 'lxml.etree', extra = '', errors = 'raise', min_version = None def import_optional_dependency( name: str, extra: str = "", errors: str = "raise", min_version: str | None = None, ): """ Import an optional dependency. By default, if a dependency is missing an ImportError with a nice message will be raised. If a dependency is present, but too old, we raise. Parameters ---------- name : str The module name. extra : str Additional text to include in the ImportError message. errors : str {'raise', 'warn', 'ignore'} What to do when a dependency is not found or its version is too old. * raise : Raise an ImportError * warn : Only applicable when a module's version is to old. Warns that the version is too old and returns None * ignore: If the module is not installed, return None, otherwise, return the module, even if the version is too old. It's expected that users validate the version locally when using ``errors="ignore"`` (see. ``io/html.py``) min_version : str, default None Specify a minimum version that is different from the global pandas minimum version required. Returns ------- maybe_module : Optional[ModuleType] The imported module, when found and the version is correct. None is returned when the package is not found and `errors` is False, or when the package's version is too old and `errors` is ``'warn'`` or ``'ignore'``. """ assert errors in {"warn", "raise", "ignore"} if name=='numba' and warn_numba_platform: warnings.warn(warn_numba_platform) package_name = INSTALL_MAPPING.get(name) install_name = package_name if package_name is not None else name msg = ( f"Missing optional dependency '{install_name}'. {extra} " f"Use pip or conda to install {install_name}." ) try: module = importlib.import_module(name) except ImportError: if errors == "raise": > raise ImportError(msg) E ImportError: Missing optional dependency 'lxml'. Use pip or conda to install lxml. /usr/lib/python3/dist-packages/pandas/compat/_optional.py:143: ImportError ----------------------------- Captured stdout call ----------------------------- ╭──────────────────────────────────────────────────────────────────────────────╮ │ Unit tests │ ╰──────────────────────────────────────────────────────────────────────────────╯ Directories containing mkdocs.yml advanced alter_markdown simple ['advanced', 'alter_markdown', 'simple'] Parse tables Found a table _______________________________ test_doc_project _______________________________ def test_doc_project(): """ Test a project """ PROJECT_NAME = 'simple' # MYPROJECT = 'simple' h1(f"TESTING MKDOCS PROJECT ({PROJECT_NAME})") h2("Config") myproject = DocProject(PROJECT_NAME) config = myproject.config print(config) h2("Build") > result = myproject.build() /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/test/test_simple.py:165: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/mkdocs_test/__init__.py:482: in build self._build_result = run_command(*command) /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build/mkdocs_test/common.py:332: in run_command return subprocess.run(full_command, capture_output=True, text=True) /usr/lib/python3.13/subprocess.py:554: in run with Popen(*popenargs, **kwargs) as process: /usr/lib/python3.13/subprocess.py:1036: in __init__ self._execute_child(args, executable, preexec_fn, close_fds, _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = args = ['mkdocs', 'build'], executable = b'mkdocs', preexec_fn = None close_fds = True, pass_fds = (), cwd = None, env = None, startupinfo = None creationflags = 0, shell = False, p2cread = -1, p2cwrite = -1, c2pread = 11 c2pwrite = 12, errread = 13, errwrite = 14, restore_signals = True, gid = None gids = None, uid = None, umask = -1, start_new_session = False process_group = -1 def _execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, restore_signals, gid, gids, uid, umask, start_new_session, process_group): """Execute program (POSIX version)""" if isinstance(args, (str, bytes)): args = [args] elif isinstance(args, os.PathLike): if shell: raise TypeError('path-like args is not allowed when ' 'shell is true') args = [args] else: args = list(args) if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if hasattr(sys, 'getandroidapilevel') else '/bin/sh') args = [unix_shell, "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] sys.audit("subprocess.Popen", executable, args, cwd, env) if (_USE_POSIX_SPAWN and os.path.dirname(executable) and preexec_fn is None and (not close_fds or _HAVE_POSIX_SPAWN_CLOSEFROM) and not pass_fds and cwd is None and (p2cread == -1 or p2cread > 2) and (c2pwrite == -1 or c2pwrite > 2) and (errwrite == -1 or errwrite > 2) and not start_new_session and process_group == -1 and gid is None and gids is None and uid is None and umask < 0): self._posix_spawn(args, executable, env, restore_signals, close_fds, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) return orig_executable = executable # For transferring possible exec failure from child to parent. # Data format: "exception name:hex errno:description" # Pickle is not used; it is complex and involves memory allocation. errpipe_read, errpipe_write = os.pipe() # errpipe_write must not be in the standard io 0, 1, or 2 fd range. low_fds_to_close = [] while errpipe_write < 3: low_fds_to_close.append(errpipe_write) errpipe_write = os.dup(errpipe_write) for low_fd in low_fds_to_close: os.close(low_fd) try: try: # We must avoid complex work that could involve # malloc or free in the child process to avoid # potential deadlocks, thus we do all this here. # and pass it to fork_exec() if env is not None: env_list = [] for k, v in env.items(): k = os.fsencode(k) if b'=' in k: raise ValueError("illegal environment variable name") env_list.append(k + b'=' + os.fsencode(v)) else: env_list = None # Use execv instead of execve. executable = os.fsencode(executable) if os.path.dirname(executable): executable_list = (executable,) else: # This matches the behavior of os._execvpe(). executable_list = tuple( os.path.join(os.fsencode(dir), executable) for dir in os.get_exec_path(env)) fds_to_keep = set(pass_fds) fds_to_keep.add(errpipe_write) self.pid = _fork_exec( args, executable_list, close_fds, tuple(sorted(map(int, fds_to_keep))), cwd, env_list, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, errpipe_read, errpipe_write, restore_signals, start_new_session, process_group, gid, gids, uid, umask, preexec_fn, _USE_VFORK) self._child_created = True finally: # be sure the FD is closed no matter what os.close(errpipe_write) self._close_pipe_fds(p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite) # Wait for exec to fail or succeed; possibly raising an # exception (limited in size) errpipe_data = bytearray() while True: part = os.read(errpipe_read, 50000) errpipe_data += part if not part or len(errpipe_data) > 50000: break finally: # be sure the FD is closed no matter what os.close(errpipe_read) if errpipe_data: try: pid, sts = os.waitpid(self.pid, 0) if pid == self.pid: self._handle_exitstatus(sts) else: self.returncode = sys.maxsize except ChildProcessError: pass try: exception_name, hex_errno, err_msg = ( errpipe_data.split(b':', 2)) # The encoding here should match the encoding # written in by the subprocess implementations # like _posixsubprocess err_msg = err_msg.decode() except ValueError: exception_name = b'SubprocessError' hex_errno = b'0' err_msg = 'Bad exception data from child: {!r}'.format( bytes(errpipe_data)) child_exception_type = getattr( builtins, exception_name.decode('ascii'), SubprocessError) if issubclass(child_exception_type, OSError) and hex_errno: errno_num = int(hex_errno, 16) if err_msg == "noexec:chdir": err_msg = "" # The error must be from chdir(cwd). err_filename = cwd elif err_msg == "noexec": err_msg = "" err_filename = None else: err_filename = orig_executable if errno_num != 0: err_msg = os.strerror(errno_num) if err_filename is not None: > raise child_exception_type(errno_num, err_msg, err_filename) E FileNotFoundError: [Errno 2] No such file or directory: 'mkdocs' /usr/lib/python3.13/subprocess.py:1966: FileNotFoundError ----------------------------- Captured stdout call ----------------------------- ╭──────────────────────────────────────────────────────────────────────────────╮ │ TESTING MKDOCS PROJECT (simple) │ ╰──────────────────────────────────────────────────────────────────────────────╯ Config { site_name: Simple MkDocs Website theme: mkdocs nav: [ { Home: index.md } { "Next page": second.md } ] plugins: [ search test ] } Build BUILD COMMAND: ['mkdocs', 'build'] =========================== short test summary info ============================ FAILED test/advanced/test_advanced.py::test_pages - FileNotFoundError: [Errno... FAILED test/advanced/test_advanced.py::test_strict - FileNotFoundError: [Errn... FAILED test/alter_markdown/test_site.py::test_pages - FileNotFoundError: [Err... FAILED test/simple/test_site.py::test_pages - FileNotFoundError: [Errno 2] No... FAILED test/simple/test_site.py::test_strict - FileNotFoundError: [Errno 2] N... FAILED test/test_simple.py::test_functions - ImportError: Missing optional de... FAILED test/test_simple.py::test_doc_project - FileNotFoundError: [Errno 2] N... ========================= 7 failed, 1 passed in 1.80s ========================== E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /build/reproducible-path/mkdocs-test-0.5.3/.pybuild/cpython3_3.13_mkdocs-test/build; python3.13 -m pytest test dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.13 returned exit code 13 make[1]: [debian/rules:10: override_dh_auto_test] Error 25 (ignored) make[1]: Leaving directory '/build/reproducible-path/mkdocs-test-0.5.3' create-stamp debian/debhelper-build-stamp dh_testroot -O--buildsystem=pybuild dh_prep -O--buildsystem=pybuild dh_auto_install --destdir=debian/python3-mkdocs-test/ -O--buildsystem=pybuild I: pybuild plugin_pyproject:178: Copying package built for python3.13 to destdir dh_installdocs -O--buildsystem=pybuild dh_installchangelogs -O--buildsystem=pybuild dh_python3 -O--buildsystem=pybuild dh_installsystemduser -O--buildsystem=pybuild dh_perl -O--buildsystem=pybuild dh_link -O--buildsystem=pybuild dh_strip_nondeterminism -O--buildsystem=pybuild dh_compress -O--buildsystem=pybuild dh_fixperms -O--buildsystem=pybuild dh_missing -O--buildsystem=pybuild dh_installdeb -O--buildsystem=pybuild dh_gencontrol -O--buildsystem=pybuild dpkg-gencontrol: warning: Recommends field of package python3-mkdocs-test: substitution variable ${python3:Recommends} used, but is not defined dh_md5sums -O--buildsystem=pybuild dh_builddeb -O--buildsystem=pybuild dpkg-deb: building package 'python3-mkdocs-test' in '../python3-mkdocs-test_0.5.3-2_all.deb'. dpkg-genbuildinfo --build=binary -O../mkdocs-test_0.5.3-2_arm64.buildinfo dpkg-genchanges --build=binary -O../mkdocs-test_0.5.3-2_arm64.changes dpkg-genchanges: info: binary-only upload (no source code included) dpkg-source --after-build . dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env I: removing directory /srv/workspace/pbuilder/1227558 and its subdirectories I: Current time: Fri Jan 10 18:22:05 -12 2025 I: pbuilder-time-stamp: 1736576525 Sat Jan 11 06:22:08 UTC 2025 I: 1st build successful. Starting 2nd build on remote node codethink01-arm64.debian.net. Sat Jan 11 06:22:08 UTC 2025 I: Preparing to do remote build '2' on codethink01-arm64.debian.net. Sat Jan 11 06:23:20 UTC 2025 I: Deleting $TMPDIR on codethink01-arm64.debian.net. Sat Jan 11 06:23:21 UTC 2025 I: mkdocs-test_0.5.3-2_arm64.changes: Format: 1.8 Date: Fri, 10 Jan 2025 18:48:19 -0500 Source: mkdocs-test Binary: python3-mkdocs-test Architecture: all Version: 0.5.3-2 Distribution: unstable Urgency: medium Maintainer: Debian Python Team Changed-By: Boyuan Yang Description: python3-mkdocs-test - Testing framework for MkDocs projects (Python 3) Changes: mkdocs-test (0.5.3-2) unstable; urgency=medium . * Source-only upload. Checksums-Sha1: 904dd43964ce8e792121bf63ee8f404f8343502b 6489 mkdocs-test_0.5.3-2_arm64.buildinfo 4354e058e3bccab73b74f979ae46055d8a3ac84b 14584 python3-mkdocs-test_0.5.3-2_all.deb Checksums-Sha256: d5a99a5c1e14647921ed951e6114f49d0c921fe966760f540863c6716345bfe5 6489 mkdocs-test_0.5.3-2_arm64.buildinfo 442915a0d9c8e3d2b8741ca78ba23f4a3efb876796fbe6aea623a79ee96e8e63 14584 python3-mkdocs-test_0.5.3-2_all.deb Files: e6c3aa986f6f393edcb2cdbf4f5a10ae 6489 python optional mkdocs-test_0.5.3-2_arm64.buildinfo b2ae1c2cf836fde435bf72b6873ddf7d 14584 python optional python3-mkdocs-test_0.5.3-2_all.deb Sat Jan 11 06:23:22 UTC 2025 I: diffoscope 284 will be used to compare the two builds: Running as unit: rb-diffoscope-arm64_18-76950.service # Profiling output for: /usr/bin/diffoscope --timeout 7200 --html /srv/reproducible-results/rbuild-debian/r-b-build.vbNT72NV/mkdocs-test_0.5.3-2.diffoscope.html --text /srv/reproducible-results/rbuild-debian/r-b-build.vbNT72NV/mkdocs-test_0.5.3-2.diffoscope.txt --json /srv/reproducible-results/rbuild-debian/r-b-build.vbNT72NV/mkdocs-test_0.5.3-2.diffoscope.json --profile=- /srv/reproducible-results/rbuild-debian/r-b-build.vbNT72NV/b1/mkdocs-test_0.5.3-2_arm64.changes /srv/reproducible-results/rbuild-debian/r-b-build.vbNT72NV/b2/mkdocs-test_0.5.3-2_arm64.changes ## command (total time: 0.000s) 0.000s 1 call cmp (internal) ## has_same_content_as (total time: 0.000s) 0.000s 1 call abc.DotChangesFile ## main (total time: 0.330s) 0.330s 2 calls outputs 0.000s 1 call cleanup ## recognizes (total time: 0.013s) 0.013s 12 calls diffoscope.comparators.binary.FilesystemFile ## specialize (total time: 0.000s) 0.000s 1 call specialize Finished with result: success Main processes terminated with: code=exited/status=0 Service runtime: 624ms CPU time consumed: 616ms Sat Jan 11 06:23:23 UTC 2025 I: diffoscope 284 found no differences in the changes files, and a .buildinfo file also exists. Sat Jan 11 06:23:23 UTC 2025 I: mkdocs-test from unstable built successfully and reproducibly on arm64. Sat Jan 11 06:23:24 UTC 2025 I: Submitting .buildinfo files to external archives: Sat Jan 11 06:23:24 UTC 2025 I: Submitting 8.0K b1/mkdocs-test_0.5.3-2_arm64.buildinfo.asc Sat Jan 11 06:23:24 UTC 2025 I: Submitting 8.0K b2/mkdocs-test_0.5.3-2_arm64.buildinfo.asc Sat Jan 11 06:23:25 UTC 2025 I: Done submitting .buildinfo files to http://buildinfo.debian.net/api/submit. Sat Jan 11 06:23:25 UTC 2025 I: Done submitting .buildinfo files. Sat Jan 11 06:23:25 UTC 2025 I: Removing signed mkdocs-test_0.5.3-2_arm64.buildinfo.asc files: removed './b1/mkdocs-test_0.5.3-2_arm64.buildinfo.asc' removed './b2/mkdocs-test_0.5.3-2_arm64.buildinfo.asc'