0s autopkgtest [22:06:01]: starting date and time: 2025-03-15 22:06:01+0000 0s autopkgtest [22:06:01]: git checkout: 325255d2 Merge branch 'pin-any-arch' into 'ubuntu/production' 0s autopkgtest [22:06:01]: host juju-7f2275-prod-proposed-migration-environment-2; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.3lq8l2ji/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:glibc --apt-upgrade r-cran-diffobj --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=glibc/2.41-1ubuntu2 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-2@lcy02-3.secgroup --name adt-plucky-amd64-r-cran-diffobj-20250315-220601-juju-7f2275-prod-proposed-migration-environment-2-befaefa7-e26a-4522-aac6-a7c6fe55f033 --image adt/ubuntu-plucky-amd64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-2 --net-id=net_prod-proposed-migration -e TERM=linux -e ''"'"'http_proxy=http://squid.internal:3128'"'"'' -e ''"'"'https_proxy=http://squid.internal:3128'"'"'' -e ''"'"'no_proxy=127.0.0.1,127.0.1.1,login.ubuntu.com,localhost,localdomain,novalocal,internal,archive.ubuntu.com,ports.ubuntu.com,security.ubuntu.com,ddebs.ubuntu.com,changelogs.ubuntu.com,keyserver.ubuntu.com,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,10.24.0.0/24,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com,radosgw.ps5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/ 54s autopkgtest [22:06:55]: testbed dpkg architecture: amd64 54s autopkgtest [22:06:55]: testbed apt version: 2.9.31ubuntu1 55s autopkgtest [22:06:56]: @@@@@@@@@@@@@@@@@@@@ test bed setup 55s autopkgtest [22:06:56]: testbed release detected to be: None 55s autopkgtest [22:06:56]: updating testbed package index (apt update) 55s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [126 kB] 55s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 55s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 55s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 55s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [14.5 kB] 55s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [369 kB] 55s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [44.1 kB] 55s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 Packages [85.7 kB] 55s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main i386 Packages [67.4 kB] 55s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 c-n-f Metadata [1852 B] 55s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/restricted amd64 c-n-f Metadata [116 B] 55s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 Packages [342 kB] 55s Get:13 http://ftpmaster.internal/ubuntu plucky-proposed/universe i386 Packages [174 kB] 55s Get:14 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 c-n-f Metadata [15.3 kB] 55s Get:15 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse amd64 Packages [16.1 kB] 55s Get:16 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse i386 Packages [8544 B] 55s Get:17 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse amd64 c-n-f Metadata [628 B] 56s Fetched 1265 kB in 0s (3855 kB/s) 57s Reading package lists... 57s Reading package lists... 57s Building dependency tree... 57s Reading state information... 57s Calculating upgrade... 58s Calculating upgrade... 58s The following package was automatically installed and is no longer required: 58s libnl-genl-3-200 58s Use 'sudo apt autoremove' to remove it. 58s The following NEW packages will be installed: 58s bpftool libdebuginfod-common libdebuginfod1t64 linux-headers-6.14.0-10 58s linux-headers-6.14.0-10-generic linux-image-6.14.0-10-generic 58s linux-modules-6.14.0-10-generic linux-modules-extra-6.14.0-10-generic 58s linux-perf linux-tools-6.14.0-10 linux-tools-6.14.0-10-generic pnp.ids 58s The following packages will be upgraded: 58s apparmor apt apt-utils binutils binutils-common binutils-x86-64-linux-gnu 58s cloud-init cloud-init-base curl dosfstools fwupd gir1.2-girepository-2.0 58s gir1.2-glib-2.0 htop hwdata libapparmor1 libapt-pkg7.0 libaudit-common 58s libaudit1 libbinutils libbrotli1 libcap-ng0 libctf-nobfd0 libctf0 58s libcurl3t64-gnutls libcurl4t64 libestr0 libfwupd3 libgirepository-1.0-1 58s libglib2.0-0t64 libglib2.0-data libgprofng0 libjemalloc2 liblz4-1 liblzma5 58s libmm-glib0 libncurses6 libncursesw6 libnl-3-200 libnl-genl-3-200 58s libnl-route-3-200 libpci3 libpython3-stdlib libpython3.13 58s libpython3.13-minimal libpython3.13-stdlib libselinux1 libsframe1 58s libsqlite3-0 libtinfo6 libxml2 linux-firmware linux-generic 58s linux-headers-generic linux-headers-virtual linux-image-generic 58s linux-image-virtual linux-libc-dev linux-tools-common linux-virtual 58s media-types ncurses-base ncurses-bin ncurses-term pci.ids pciutils 58s pinentry-curses python-apt-common python3 python3-apt python3-cffi-backend 58s python3-dbus python3-gi python3-jinja2 python3-lazr.uri python3-markupsafe 58s python3-minimal python3-systemd python3-yaml python3.13 python3.13-gdbm 58s python3.13-minimal rsync rsyslog strace xz-utils 58s 86 upgraded, 12 newly installed, 0 to remove and 0 not upgraded. 58s Need to get 807 MB of archives. 58s After this operation, 326 MB of additional disk space will be used. 58s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 ncurses-bin amd64 6.5+20250216-2 [194 kB] 58s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 ncurses-base all 6.5+20250216-2 [25.9 kB] 58s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 ncurses-term all 6.5+20250216-2 [276 kB] 58s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 liblz4-1 amd64 1.10.0-4 [66.4 kB] 58s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 liblzma5 amd64 5.6.4-1 [157 kB] 58s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 libapt-pkg7.0 amd64 2.9.33 [1138 kB] 58s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 apt amd64 2.9.33 [1439 kB] 58s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 apt-utils amd64 2.9.33 [222 kB] 58s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-minimal amd64 3.13.2-2 [27.7 kB] 58s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 python3 amd64 3.13.2-2 [24.0 kB] 58s Get:11 http://ftpmaster.internal/ubuntu plucky/main amd64 libpython3.13 amd64 3.13.2-2 [2341 kB] 58s Get:12 http://ftpmaster.internal/ubuntu plucky/main amd64 media-types all 13.0.0 [29.9 kB] 58s Get:13 http://ftpmaster.internal/ubuntu plucky/main amd64 libncurses6 amd64 6.5+20250216-2 [126 kB] 58s Get:14 http://ftpmaster.internal/ubuntu plucky/main amd64 libncursesw6 amd64 6.5+20250216-2 [165 kB] 58s Get:15 http://ftpmaster.internal/ubuntu plucky/main amd64 libtinfo6 amd64 6.5+20250216-2 [119 kB] 58s Get:16 http://ftpmaster.internal/ubuntu plucky/main amd64 libsqlite3-0 amd64 3.46.1-2 [715 kB] 59s Get:17 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.13 amd64 3.13.2-2 [735 kB] 59s Get:18 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.13-minimal amd64 3.13.2-2 [2365 kB] 59s Get:19 http://ftpmaster.internal/ubuntu plucky/main amd64 libpython3.13-minimal amd64 3.13.2-2 [883 kB] 59s Get:20 http://ftpmaster.internal/ubuntu plucky/main amd64 libpython3.13-stdlib amd64 3.13.2-2 [2066 kB] 59s Get:21 http://ftpmaster.internal/ubuntu plucky/main amd64 libpython3-stdlib amd64 3.13.2-2 [10.4 kB] 59s Get:22 http://ftpmaster.internal/ubuntu plucky/main amd64 rsync amd64 3.4.1+ds1-3 [482 kB] 59s Get:23 http://ftpmaster.internal/ubuntu plucky/main amd64 libdebuginfod-common all 0.192-4 [15.4 kB] 59s Get:24 http://ftpmaster.internal/ubuntu plucky/main amd64 libaudit-common all 1:4.0.2-2ubuntu2 [6628 B] 59s Get:25 http://ftpmaster.internal/ubuntu plucky/main amd64 libcap-ng0 amd64 0.8.5-4build1 [15.6 kB] 59s Get:26 http://ftpmaster.internal/ubuntu plucky/main amd64 libaudit1 amd64 1:4.0.2-2ubuntu2 [54.0 kB] 59s Get:27 http://ftpmaster.internal/ubuntu plucky/main amd64 libselinux1 amd64 3.7-3ubuntu3 [87.3 kB] 59s Get:28 http://ftpmaster.internal/ubuntu plucky/main amd64 gir1.2-girepository-2.0 amd64 1.83.4-1 [25.3 kB] 59s Get:29 http://ftpmaster.internal/ubuntu plucky/main amd64 gir1.2-glib-2.0 amd64 2.84.0-1 [184 kB] 59s Get:30 http://ftpmaster.internal/ubuntu plucky/main amd64 libglib2.0-0t64 amd64 2.84.0-1 [1669 kB] 59s Get:31 http://ftpmaster.internal/ubuntu plucky/main amd64 libgirepository-1.0-1 amd64 1.83.4-1 [89.5 kB] 59s Get:32 http://ftpmaster.internal/ubuntu plucky/main amd64 libapparmor1 amd64 4.1.0~beta5-0ubuntu8 [55.0 kB] 59s Get:33 http://ftpmaster.internal/ubuntu plucky/main amd64 libestr0 amd64 0.1.11-2 [8340 B] 59s Get:34 http://ftpmaster.internal/ubuntu plucky/main amd64 libglib2.0-data all 2.84.0-1 [53.0 kB] 59s Get:35 http://ftpmaster.internal/ubuntu plucky/main amd64 libxml2 amd64 2.12.7+dfsg+really2.9.14-0.2ubuntu5 [772 kB] 59s Get:36 http://ftpmaster.internal/ubuntu plucky/main amd64 python-apt-common all 2.9.9build1 [21.3 kB] 59s Get:37 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-apt amd64 2.9.9build1 [172 kB] 59s Get:38 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-cffi-backend amd64 1.17.1-2build2 [96.6 kB] 59s Get:39 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-dbus amd64 1.3.2-5build5 [102 kB] 59s Get:40 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-gi amd64 3.50.0-4build1 [252 kB] 59s Get:41 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-yaml amd64 6.0.2-1build2 [144 kB] 59s Get:42 http://ftpmaster.internal/ubuntu plucky/main amd64 rsyslog amd64 8.2412.0-2ubuntu2 [555 kB] 59s Get:43 http://ftpmaster.internal/ubuntu plucky/main amd64 apparmor amd64 4.1.0~beta5-0ubuntu8 [701 kB] 59s Get:44 http://ftpmaster.internal/ubuntu plucky/main amd64 dosfstools amd64 4.2-1.2 [95.0 kB] 59s Get:45 http://ftpmaster.internal/ubuntu plucky/main amd64 libnl-genl-3-200 amd64 3.7.0-1 [12.2 kB] 59s Get:46 http://ftpmaster.internal/ubuntu plucky/main amd64 libnl-route-3-200 amd64 3.7.0-1 [191 kB] 59s Get:47 http://ftpmaster.internal/ubuntu plucky/main amd64 libnl-3-200 amd64 3.7.0-1 [64.9 kB] 59s Get:48 http://ftpmaster.internal/ubuntu plucky/main amd64 pci.ids all 0.0~2025.03.09-1 [285 kB] 59s Get:49 http://ftpmaster.internal/ubuntu plucky/main amd64 pciutils amd64 1:3.13.0-2 [110 kB] 59s Get:50 http://ftpmaster.internal/ubuntu plucky/main amd64 libpci3 amd64 1:3.13.0-2 [39.8 kB] 59s Get:51 http://ftpmaster.internal/ubuntu plucky/main amd64 strace amd64 6.13+ds-1ubuntu1 [622 kB] 59s Get:52 http://ftpmaster.internal/ubuntu plucky/main amd64 xz-utils amd64 5.6.4-1 [278 kB] 59s Get:53 http://ftpmaster.internal/ubuntu plucky/main amd64 libgprofng0 amd64 2.44-3ubuntu1 [886 kB] 59s Get:54 http://ftpmaster.internal/ubuntu plucky/main amd64 libctf0 amd64 2.44-3ubuntu1 [96.5 kB] 59s Get:55 http://ftpmaster.internal/ubuntu plucky/main amd64 libctf-nobfd0 amd64 2.44-3ubuntu1 [98.9 kB] 59s Get:56 http://ftpmaster.internal/ubuntu plucky/main amd64 binutils-x86-64-linux-gnu amd64 2.44-3ubuntu1 [1108 kB] 59s Get:57 http://ftpmaster.internal/ubuntu plucky/main amd64 libbinutils amd64 2.44-3ubuntu1 [585 kB] 59s Get:58 http://ftpmaster.internal/ubuntu plucky/main amd64 binutils amd64 2.44-3ubuntu1 [208 kB] 59s Get:59 http://ftpmaster.internal/ubuntu plucky/main amd64 binutils-common amd64 2.44-3ubuntu1 [215 kB] 59s Get:60 http://ftpmaster.internal/ubuntu plucky/main amd64 libsframe1 amd64 2.44-3ubuntu1 [14.8 kB] 59s Get:61 http://ftpmaster.internal/ubuntu plucky/main amd64 hwdata all 0.393-3 [1562 B] 59s Get:62 http://ftpmaster.internal/ubuntu plucky/main amd64 pnp.ids all 0.393-3 [29.5 kB] 59s Get:63 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-tools-common all 6.14.0-10.10 [295 kB] 59s Get:64 http://ftpmaster.internal/ubuntu plucky/main amd64 bpftool amd64 7.6.0+6.14.0-10.10 [1147 kB] 59s Get:65 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-markupsafe amd64 2.1.5-1build4 [13.4 kB] 59s Get:66 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-jinja2 all 3.1.5-2ubuntu1 [109 kB] 59s Get:67 http://ftpmaster.internal/ubuntu plucky/main amd64 cloud-init-base all 25.1-0ubuntu3 [616 kB] 59s Get:68 http://ftpmaster.internal/ubuntu plucky/main amd64 libbrotli1 amd64 1.1.0-2build4 [365 kB] 59s Get:69 http://ftpmaster.internal/ubuntu plucky/main amd64 curl amd64 8.12.1-3ubuntu1 [258 kB] 59s Get:70 http://ftpmaster.internal/ubuntu plucky/main amd64 libcurl4t64 amd64 8.12.1-3ubuntu1 [437 kB] 59s Get:71 http://ftpmaster.internal/ubuntu plucky/main amd64 libcurl3t64-gnutls amd64 8.12.1-3ubuntu1 [432 kB] 59s Get:72 http://ftpmaster.internal/ubuntu plucky/main amd64 fwupd amd64 2.0.6-4 [5408 kB] 59s Get:73 http://ftpmaster.internal/ubuntu plucky/main amd64 libfwupd3 amd64 2.0.6-4 [136 kB] 59s Get:74 http://ftpmaster.internal/ubuntu plucky/main amd64 libmm-glib0 amd64 1.23.4-0ubuntu3 [251 kB] 59s Get:75 http://ftpmaster.internal/ubuntu plucky/main amd64 htop amd64 3.4.0-2 [195 kB] 59s Get:76 http://ftpmaster.internal/ubuntu plucky/main amd64 libdebuginfod1t64 amd64 0.192-4 [21.0 kB] 59s Get:77 http://ftpmaster.internal/ubuntu plucky/main amd64 libjemalloc2 amd64 5.3.0-3 [277 kB] 60s Get:78 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-firmware amd64 20250310.git9e1370d3-0ubuntu1 [571 MB] 68s Get:79 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-modules-6.14.0-10-generic amd64 6.14.0-10.10 [41.2 MB] 68s Get:80 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-image-6.14.0-10-generic amd64 6.14.0-10.10 [15.3 MB] 68s Get:81 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-modules-extra-6.14.0-10-generic amd64 6.14.0-10.10 [120 MB] 69s Get:82 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-generic amd64 6.14.0-10.10 [1730 B] 69s Get:83 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-image-generic amd64 6.14.0-10.10 [11.1 kB] 69s Get:84 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-virtual amd64 6.14.0-10.10 [1722 B] 69s Get:85 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-image-virtual amd64 6.14.0-10.10 [11.1 kB] 69s Get:86 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-headers-virtual amd64 6.14.0-10.10 [1642 B] 69s Get:87 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-headers-6.14.0-10 all 6.14.0-10.10 [14.2 MB] 70s Get:88 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-headers-6.14.0-10-generic amd64 6.14.0-10.10 [3915 kB] 70s Get:89 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-headers-generic amd64 6.14.0-10.10 [11.0 kB] 70s Get:90 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-libc-dev amd64 6.14.0-10.10 [1723 kB] 70s Get:91 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-perf amd64 6.14.0-10.10 [4122 kB] 70s Get:92 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-tools-6.14.0-10 amd64 6.14.0-10.10 [1394 kB] 70s Get:93 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-tools-6.14.0-10-generic amd64 6.14.0-10.10 [830 B] 70s Get:94 http://ftpmaster.internal/ubuntu plucky/main amd64 pinentry-curses amd64 1.3.1-2ubuntu3 [42.3 kB] 70s Get:95 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-lazr.uri all 1.0.6-6 [13.7 kB] 70s Get:96 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-systemd amd64 235-1build6 [43.9 kB] 70s Get:97 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.13-gdbm amd64 3.13.2-2 [31.9 kB] 70s Get:98 http://ftpmaster.internal/ubuntu plucky/main amd64 cloud-init all 25.1-0ubuntu3 [2100 B] 70s Preconfiguring packages ... 70s Fetched 807 MB in 12s (68.1 MB/s) 71s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 109138 files and directories currently installed.) 71s Preparing to unpack .../ncurses-bin_6.5+20250216-2_amd64.deb ... 71s Unpacking ncurses-bin (6.5+20250216-2) over (6.5+20250216-1) ... 71s Setting up ncurses-bin (6.5+20250216-2) ... 71s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 109138 files and directories currently installed.) 71s Preparing to unpack .../ncurses-base_6.5+20250216-2_all.deb ... 71s Unpacking ncurses-base (6.5+20250216-2) over (6.5+20250216-1) ... 71s Setting up ncurses-base (6.5+20250216-2) ... 71s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 109138 files and directories currently installed.) 71s Preparing to unpack .../ncurses-term_6.5+20250216-2_all.deb ... 71s Unpacking ncurses-term (6.5+20250216-2) over (6.5+20250216-1) ... 71s Preparing to unpack .../liblz4-1_1.10.0-4_amd64.deb ... 71s Unpacking liblz4-1:amd64 (1.10.0-4) over (1.10.0-3) ... 71s Setting up liblz4-1:amd64 (1.10.0-4) ... 72s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 109138 files and directories currently installed.) 72s Preparing to unpack .../liblzma5_5.6.4-1_amd64.deb ... 72s Unpacking liblzma5:amd64 (5.6.4-1) over (5.6.3-1) ... 72s Setting up liblzma5:amd64 (5.6.4-1) ... 72s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 109138 files and directories currently installed.) 72s Preparing to unpack .../libapt-pkg7.0_2.9.33_amd64.deb ... 72s Unpacking libapt-pkg7.0:amd64 (2.9.33) over (2.9.31ubuntu1) ... 72s Setting up libapt-pkg7.0:amd64 (2.9.33) ... 72s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 109138 files and directories currently installed.) 72s Preparing to unpack .../archives/apt_2.9.33_amd64.deb ... 72s Unpacking apt (2.9.33) over (2.9.31ubuntu1) ... 72s Setting up apt (2.9.33) ... 73s (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 ... 109138 files and directories currently installed.) 73s Preparing to unpack .../apt-utils_2.9.33_amd64.deb ... 73s Unpacking apt-utils (2.9.33) over (2.9.31ubuntu1) ... 73s Preparing to unpack .../python3-minimal_3.13.2-2_amd64.deb ... 73s Unpacking python3-minimal (3.13.2-2) over (3.13.2-1) ... 73s Setting up python3-minimal (3.13.2-2) ... 73s (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 ... 109138 files and directories currently installed.) 73s Preparing to unpack .../0-python3_3.13.2-2_amd64.deb ... 73s Unpacking python3 (3.13.2-2) over (3.13.2-1) ... 73s Preparing to unpack .../1-libpython3.13_3.13.2-2_amd64.deb ... 73s Unpacking libpython3.13:amd64 (3.13.2-2) over (3.13.2-1) ... 73s Preparing to unpack .../2-media-types_13.0.0_all.deb ... 73s Unpacking media-types (13.0.0) over (12.0.0) ... 73s Preparing to unpack .../3-libncurses6_6.5+20250216-2_amd64.deb ... 73s Unpacking libncurses6:amd64 (6.5+20250216-2) over (6.5+20250216-1) ... 73s Preparing to unpack .../4-libncursesw6_6.5+20250216-2_amd64.deb ... 73s Unpacking libncursesw6:amd64 (6.5+20250216-2) over (6.5+20250216-1) ... 73s Preparing to unpack .../5-libtinfo6_6.5+20250216-2_amd64.deb ... 73s Unpacking libtinfo6:amd64 (6.5+20250216-2) over (6.5+20250216-1) ... 73s Setting up libtinfo6:amd64 (6.5+20250216-2) ... 73s (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 ... 109138 files and directories currently installed.) 73s Preparing to unpack .../0-libsqlite3-0_3.46.1-2_amd64.deb ... 73s Unpacking libsqlite3-0:amd64 (3.46.1-2) over (3.46.1-1) ... 73s Preparing to unpack .../1-python3.13_3.13.2-2_amd64.deb ... 74s Unpacking python3.13 (3.13.2-2) over (3.13.2-1) ... 74s Preparing to unpack .../2-python3.13-minimal_3.13.2-2_amd64.deb ... 74s Unpacking python3.13-minimal (3.13.2-2) over (3.13.2-1) ... 74s Preparing to unpack .../3-libpython3.13-minimal_3.13.2-2_amd64.deb ... 74s Unpacking libpython3.13-minimal:amd64 (3.13.2-2) over (3.13.2-1) ... 74s Preparing to unpack .../4-libpython3.13-stdlib_3.13.2-2_amd64.deb ... 74s Unpacking libpython3.13-stdlib:amd64 (3.13.2-2) over (3.13.2-1) ... 74s Preparing to unpack .../5-libpython3-stdlib_3.13.2-2_amd64.deb ... 74s Unpacking libpython3-stdlib:amd64 (3.13.2-2) over (3.13.2-1) ... 74s Preparing to unpack .../6-rsync_3.4.1+ds1-3_amd64.deb ... 74s Unpacking rsync (3.4.1+ds1-3) over (3.4.1-0syncable1) ... 74s Selecting previously unselected package libdebuginfod-common. 74s Preparing to unpack .../7-libdebuginfod-common_0.192-4_all.deb ... 74s Unpacking libdebuginfod-common (0.192-4) ... 74s Preparing to unpack .../8-libaudit-common_1%3a4.0.2-2ubuntu2_all.deb ... 74s Unpacking libaudit-common (1:4.0.2-2ubuntu2) over (1:4.0.2-2ubuntu1) ... 74s Setting up libaudit-common (1:4.0.2-2ubuntu2) ... 74s (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 ... 109147 files and directories currently installed.) 74s Preparing to unpack .../libcap-ng0_0.8.5-4build1_amd64.deb ... 74s Unpacking libcap-ng0:amd64 (0.8.5-4build1) over (0.8.5-4) ... 74s Setting up libcap-ng0:amd64 (0.8.5-4build1) ... 74s (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 ... 109147 files and directories currently installed.) 74s Preparing to unpack .../libaudit1_1%3a4.0.2-2ubuntu2_amd64.deb ... 74s Unpacking libaudit1:amd64 (1:4.0.2-2ubuntu2) over (1:4.0.2-2ubuntu1) ... 74s Setting up libaudit1:amd64 (1:4.0.2-2ubuntu2) ... 74s (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 ... 109147 files and directories currently installed.) 74s Preparing to unpack .../libselinux1_3.7-3ubuntu3_amd64.deb ... 74s Unpacking libselinux1:amd64 (3.7-3ubuntu3) over (3.7-3ubuntu2) ... 75s Setting up libselinux1:amd64 (3.7-3ubuntu3) ... 75s (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 ... 109147 files and directories currently installed.) 75s Preparing to unpack .../00-gir1.2-girepository-2.0_1.83.4-1_amd64.deb ... 75s Unpacking gir1.2-girepository-2.0:amd64 (1.83.4-1) over (1.82.0-4) ... 75s Preparing to unpack .../01-gir1.2-glib-2.0_2.84.0-1_amd64.deb ... 75s Unpacking gir1.2-glib-2.0:amd64 (2.84.0-1) over (2.83.5-1) ... 75s Preparing to unpack .../02-libglib2.0-0t64_2.84.0-1_amd64.deb ... 75s Unpacking libglib2.0-0t64:amd64 (2.84.0-1) over (2.83.5-1) ... 75s Preparing to unpack .../03-libgirepository-1.0-1_1.83.4-1_amd64.deb ... 75s Unpacking libgirepository-1.0-1:amd64 (1.83.4-1) over (1.82.0-4) ... 75s Preparing to unpack .../04-libapparmor1_4.1.0~beta5-0ubuntu8_amd64.deb ... 75s Unpacking libapparmor1:amd64 (4.1.0~beta5-0ubuntu8) over (4.1.0~beta5-0ubuntu6) ... 75s Preparing to unpack .../05-libestr0_0.1.11-2_amd64.deb ... 75s Unpacking libestr0:amd64 (0.1.11-2) over (0.1.11-1build1) ... 75s Preparing to unpack .../06-libglib2.0-data_2.84.0-1_all.deb ... 75s Unpacking libglib2.0-data (2.84.0-1) over (2.83.5-1) ... 75s Preparing to unpack .../07-libxml2_2.12.7+dfsg+really2.9.14-0.2ubuntu5_amd64.deb ... 75s Unpacking libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.2ubuntu5) over (2.12.7+dfsg+really2.9.14-0.2ubuntu4) ... 75s Preparing to unpack .../08-python-apt-common_2.9.9build1_all.deb ... 75s Unpacking python-apt-common (2.9.9build1) over (2.9.9) ... 75s Preparing to unpack .../09-python3-apt_2.9.9build1_amd64.deb ... 75s Unpacking python3-apt (2.9.9build1) over (2.9.9) ... 75s Preparing to unpack .../10-python3-cffi-backend_1.17.1-2build2_amd64.deb ... 75s Unpacking python3-cffi-backend:amd64 (1.17.1-2build2) over (1.17.1-2build1) ... 75s Preparing to unpack .../11-python3-dbus_1.3.2-5build5_amd64.deb ... 75s Unpacking python3-dbus (1.3.2-5build5) over (1.3.2-5build4) ... 75s Preparing to unpack .../12-python3-gi_3.50.0-4build1_amd64.deb ... 75s Unpacking python3-gi (3.50.0-4build1) over (3.50.0-4) ... 76s Preparing to unpack .../13-python3-yaml_6.0.2-1build2_amd64.deb ... 76s Unpacking python3-yaml (6.0.2-1build2) over (6.0.2-1build1) ... 76s Preparing to unpack .../14-rsyslog_8.2412.0-2ubuntu2_amd64.deb ... 76s Unpacking rsyslog (8.2412.0-2ubuntu2) over (8.2412.0-2ubuntu1) ... 76s Preparing to unpack .../15-apparmor_4.1.0~beta5-0ubuntu8_amd64.deb ... 77s Unpacking apparmor (4.1.0~beta5-0ubuntu8) over (4.1.0~beta5-0ubuntu6) ... 77s Preparing to unpack .../16-dosfstools_4.2-1.2_amd64.deb ... 77s Unpacking dosfstools (4.2-1.2) over (4.2-1.1build1) ... 77s Preparing to unpack .../17-libnl-genl-3-200_3.7.0-1_amd64.deb ... 77s Unpacking libnl-genl-3-200:amd64 (3.7.0-1) over (3.7.0-0.3build2) ... 77s Preparing to unpack .../18-libnl-route-3-200_3.7.0-1_amd64.deb ... 77s Unpacking libnl-route-3-200:amd64 (3.7.0-1) over (3.7.0-0.3build2) ... 77s Preparing to unpack .../19-libnl-3-200_3.7.0-1_amd64.deb ... 77s Unpacking libnl-3-200:amd64 (3.7.0-1) over (3.7.0-0.3build2) ... 77s Preparing to unpack .../20-pci.ids_0.0~2025.03.09-1_all.deb ... 77s Unpacking pci.ids (0.0~2025.03.09-1) over (0.0~2025.02.12-1) ... 77s Preparing to unpack .../21-pciutils_1%3a3.13.0-2_amd64.deb ... 77s Unpacking pciutils (1:3.13.0-2) over (1:3.13.0-1) ... 77s Preparing to unpack .../22-libpci3_1%3a3.13.0-2_amd64.deb ... 77s Unpacking libpci3:amd64 (1:3.13.0-2) over (1:3.13.0-1) ... 77s Preparing to unpack .../23-strace_6.13+ds-1ubuntu1_amd64.deb ... 77s Unpacking strace (6.13+ds-1ubuntu1) over (6.11-0ubuntu1) ... 77s Preparing to unpack .../24-xz-utils_5.6.4-1_amd64.deb ... 77s Unpacking xz-utils (5.6.4-1) over (5.6.3-1) ... 77s Preparing to unpack .../25-libgprofng0_2.44-3ubuntu1_amd64.deb ... 77s Unpacking libgprofng0:amd64 (2.44-3ubuntu1) over (2.44-2ubuntu1) ... 77s Preparing to unpack .../26-libctf0_2.44-3ubuntu1_amd64.deb ... 77s Unpacking libctf0:amd64 (2.44-3ubuntu1) over (2.44-2ubuntu1) ... 77s Preparing to unpack .../27-libctf-nobfd0_2.44-3ubuntu1_amd64.deb ... 77s Unpacking libctf-nobfd0:amd64 (2.44-3ubuntu1) over (2.44-2ubuntu1) ... 77s Preparing to unpack .../28-binutils-x86-64-linux-gnu_2.44-3ubuntu1_amd64.deb ... 77s Unpacking binutils-x86-64-linux-gnu (2.44-3ubuntu1) over (2.44-2ubuntu1) ... 78s Preparing to unpack .../29-libbinutils_2.44-3ubuntu1_amd64.deb ... 78s Unpacking libbinutils:amd64 (2.44-3ubuntu1) over (2.44-2ubuntu1) ... 78s Preparing to unpack .../30-binutils_2.44-3ubuntu1_amd64.deb ... 78s Unpacking binutils (2.44-3ubuntu1) over (2.44-2ubuntu1) ... 78s Preparing to unpack .../31-binutils-common_2.44-3ubuntu1_amd64.deb ... 78s Unpacking binutils-common:amd64 (2.44-3ubuntu1) over (2.44-2ubuntu1) ... 78s Preparing to unpack .../32-libsframe1_2.44-3ubuntu1_amd64.deb ... 78s Unpacking libsframe1:amd64 (2.44-3ubuntu1) over (2.44-2ubuntu1) ... 78s Preparing to unpack .../33-hwdata_0.393-3_all.deb ... 78s Unpacking hwdata (0.393-3) over (0.393-1) ... 78s Selecting previously unselected package pnp.ids. 78s Preparing to unpack .../34-pnp.ids_0.393-3_all.deb ... 78s Unpacking pnp.ids (0.393-3) ... 78s Preparing to unpack .../35-linux-tools-common_6.14.0-10.10_all.deb ... 78s Unpacking linux-tools-common (6.14.0-10.10) over (6.12.0-16.16) ... 78s Selecting previously unselected package bpftool. 78s Preparing to unpack .../36-bpftool_7.6.0+6.14.0-10.10_amd64.deb ... 78s Unpacking bpftool (7.6.0+6.14.0-10.10) ... 78s Preparing to unpack .../37-python3-markupsafe_2.1.5-1build4_amd64.deb ... 78s Unpacking python3-markupsafe (2.1.5-1build4) over (2.1.5-1build3) ... 78s Preparing to unpack .../38-python3-jinja2_3.1.5-2ubuntu1_all.deb ... 78s Unpacking python3-jinja2 (3.1.5-2ubuntu1) over (3.1.5-2) ... 78s Preparing to unpack .../39-cloud-init-base_25.1-0ubuntu3_all.deb ... 78s Unpacking cloud-init-base (25.1-0ubuntu3) over (25.1-0ubuntu2) ... 79s Preparing to unpack .../40-libbrotli1_1.1.0-2build4_amd64.deb ... 79s Unpacking libbrotli1:amd64 (1.1.0-2build4) over (1.1.0-2build3) ... 79s Preparing to unpack .../41-curl_8.12.1-3ubuntu1_amd64.deb ... 79s Unpacking curl (8.12.1-3ubuntu1) over (8.12.1-2ubuntu1) ... 79s Preparing to unpack .../42-libcurl4t64_8.12.1-3ubuntu1_amd64.deb ... 79s Unpacking libcurl4t64:amd64 (8.12.1-3ubuntu1) over (8.12.1-2ubuntu1) ... 79s Preparing to unpack .../43-libcurl3t64-gnutls_8.12.1-3ubuntu1_amd64.deb ... 79s Unpacking libcurl3t64-gnutls:amd64 (8.12.1-3ubuntu1) over (8.12.1-2ubuntu1) ... 79s Preparing to unpack .../44-fwupd_2.0.6-4_amd64.deb ... 79s Unpacking fwupd (2.0.6-4) over (2.0.6-3) ... 79s Preparing to unpack .../45-libfwupd3_2.0.6-4_amd64.deb ... 79s Unpacking libfwupd3:amd64 (2.0.6-4) over (2.0.6-3) ... 79s Preparing to unpack .../46-libmm-glib0_1.23.4-0ubuntu3_amd64.deb ... 79s Unpacking libmm-glib0:amd64 (1.23.4-0ubuntu3) over (1.23.4-0ubuntu2) ... 79s Preparing to unpack .../47-htop_3.4.0-2_amd64.deb ... 79s Unpacking htop (3.4.0-2) over (3.3.0-5) ... 79s Selecting previously unselected package libdebuginfod1t64:amd64. 79s Preparing to unpack .../48-libdebuginfod1t64_0.192-4_amd64.deb ... 79s Unpacking libdebuginfod1t64:amd64 (0.192-4) ... 79s Preparing to unpack .../49-libjemalloc2_5.3.0-3_amd64.deb ... 79s Unpacking libjemalloc2:amd64 (5.3.0-3) over (5.3.0-2build1) ... 79s Preparing to unpack .../50-linux-firmware_20250310.git9e1370d3-0ubuntu1_amd64.deb ... 79s Unpacking linux-firmware (20250310.git9e1370d3-0ubuntu1) over (20250204.git0fd450ee-0ubuntu1) ... 83s Selecting previously unselected package linux-modules-6.14.0-10-generic. 83s Preparing to unpack .../51-linux-modules-6.14.0-10-generic_6.14.0-10.10_amd64.deb ... 83s Unpacking linux-modules-6.14.0-10-generic (6.14.0-10.10) ... 83s Selecting previously unselected package linux-image-6.14.0-10-generic. 83s Preparing to unpack .../52-linux-image-6.14.0-10-generic_6.14.0-10.10_amd64.deb ... 83s Unpacking linux-image-6.14.0-10-generic (6.14.0-10.10) ... 83s Selecting previously unselected package linux-modules-extra-6.14.0-10-generic. 83s Preparing to unpack .../53-linux-modules-extra-6.14.0-10-generic_6.14.0-10.10_amd64.deb ... 83s Unpacking linux-modules-extra-6.14.0-10-generic (6.14.0-10.10) ... 84s Preparing to unpack .../54-linux-generic_6.14.0-10.10_amd64.deb ... 84s Unpacking linux-generic (6.14.0-10.10) over (6.12.0-16.16+2) ... 84s Preparing to unpack .../55-linux-image-generic_6.14.0-10.10_amd64.deb ... 84s Unpacking linux-image-generic (6.14.0-10.10) over (6.12.0-16.16+2) ... 85s Preparing to unpack .../56-linux-virtual_6.14.0-10.10_amd64.deb ... 85s Unpacking linux-virtual (6.14.0-10.10) over (6.12.0-16.16+2) ... 85s Preparing to unpack .../57-linux-image-virtual_6.14.0-10.10_amd64.deb ... 85s Unpacking linux-image-virtual (6.14.0-10.10) over (6.12.0-16.16+2) ... 85s Preparing to unpack .../58-linux-headers-virtual_6.14.0-10.10_amd64.deb ... 85s Unpacking linux-headers-virtual (6.14.0-10.10) over (6.12.0-16.16+2) ... 85s Selecting previously unselected package linux-headers-6.14.0-10. 85s Preparing to unpack .../59-linux-headers-6.14.0-10_6.14.0-10.10_all.deb ... 85s Unpacking linux-headers-6.14.0-10 (6.14.0-10.10) ... 87s Selecting previously unselected package linux-headers-6.14.0-10-generic. 87s Preparing to unpack .../60-linux-headers-6.14.0-10-generic_6.14.0-10.10_amd64.deb ... 87s Unpacking linux-headers-6.14.0-10-generic (6.14.0-10.10) ... 89s Preparing to unpack .../61-linux-headers-generic_6.14.0-10.10_amd64.deb ... 89s Unpacking linux-headers-generic (6.14.0-10.10) over (6.12.0-16.16+2) ... 89s Preparing to unpack .../62-linux-libc-dev_6.14.0-10.10_amd64.deb ... 89s Unpacking linux-libc-dev:amd64 (6.14.0-10.10) over (6.12.0-16.16) ... 89s Selecting previously unselected package linux-perf. 89s Preparing to unpack .../63-linux-perf_6.14.0-10.10_amd64.deb ... 89s Unpacking linux-perf (6.14.0-10.10) ... 89s Selecting previously unselected package linux-tools-6.14.0-10. 89s Preparing to unpack .../64-linux-tools-6.14.0-10_6.14.0-10.10_amd64.deb ... 89s Unpacking linux-tools-6.14.0-10 (6.14.0-10.10) ... 89s Selecting previously unselected package linux-tools-6.14.0-10-generic. 89s Preparing to unpack .../65-linux-tools-6.14.0-10-generic_6.14.0-10.10_amd64.deb ... 89s Unpacking linux-tools-6.14.0-10-generic (6.14.0-10.10) ... 89s Preparing to unpack .../66-pinentry-curses_1.3.1-2ubuntu3_amd64.deb ... 89s Unpacking pinentry-curses (1.3.1-2ubuntu3) over (1.3.1-2ubuntu2) ... 89s Preparing to unpack .../67-python3-lazr.uri_1.0.6-6_all.deb ... 89s Unpacking python3-lazr.uri (1.0.6-6) over (1.0.6-5) ... 89s Preparing to unpack .../68-python3-systemd_235-1build6_amd64.deb ... 89s Unpacking python3-systemd (235-1build6) over (235-1build5) ... 89s Preparing to unpack .../69-python3.13-gdbm_3.13.2-2_amd64.deb ... 89s Unpacking python3.13-gdbm (3.13.2-2) over (3.13.2-1) ... 90s Preparing to unpack .../70-cloud-init_25.1-0ubuntu3_all.deb ... 90s Unpacking cloud-init (25.1-0ubuntu3) over (25.1-0ubuntu2) ... 90s Setting up linux-headers-6.14.0-10 (6.14.0-10.10) ... 90s Setting up media-types (13.0.0) ... 90s Installing new version of config file /etc/mime.types ... 90s Setting up linux-headers-6.14.0-10-generic (6.14.0-10.10) ... 90s Setting up libapparmor1:amd64 (4.1.0~beta5-0ubuntu8) ... 90s Setting up pci.ids (0.0~2025.03.09-1) ... 90s Setting up apt-utils (2.9.33) ... 90s Setting up libdebuginfod-common (0.192-4) ... 90s Setting up linux-firmware (20250310.git9e1370d3-0ubuntu1) ... 90s Setting up bpftool (7.6.0+6.14.0-10.10) ... 90s Setting up libestr0:amd64 (0.1.11-2) ... 90s Setting up libbrotli1:amd64 (1.1.0-2build4) ... 90s Setting up libsqlite3-0:amd64 (3.46.1-2) ... 90s Setting up dosfstools (4.2-1.2) ... 90s Setting up rsyslog (8.2412.0-2ubuntu2) ... 90s info: The user `syslog' is already a member of `adm'. 91s Setting up binutils-common:amd64 (2.44-3ubuntu1) ... 91s Setting up libcurl3t64-gnutls:amd64 (8.12.1-3ubuntu1) ... 91s Setting up linux-libc-dev:amd64 (6.14.0-10.10) ... 91s Setting up libctf-nobfd0:amd64 (2.44-3ubuntu1) ... 91s Setting up linux-headers-generic (6.14.0-10.10) ... 91s Setting up libjemalloc2:amd64 (5.3.0-3) ... 91s Setting up libsframe1:amd64 (2.44-3ubuntu1) ... 91s Setting up libpython3.13-minimal:amd64 (3.13.2-2) ... 91s Setting up apparmor (4.1.0~beta5-0ubuntu8) ... 91s Installing new version of config file /etc/apparmor.d/openvpn ... 92s Reloading AppArmor profiles 94s Setting up libglib2.0-0t64:amd64 (2.84.0-1) ... 94s No schema files found: doing nothing. 94s Setting up libglib2.0-data (2.84.0-1) ... 94s Setting up libncurses6:amd64 (6.5+20250216-2) ... 94s Setting up strace (6.13+ds-1ubuntu1) ... 94s Setting up xz-utils (5.6.4-1) ... 94s Setting up gir1.2-glib-2.0:amd64 (2.84.0-1) ... 94s Setting up linux-modules-6.14.0-10-generic (6.14.0-10.10) ... 96s Setting up libncursesw6:amd64 (6.5+20250216-2) ... 96s Setting up libpci3:amd64 (1:3.13.0-2) ... 96s Setting up python-apt-common (2.9.9build1) ... 96s Setting up libmm-glib0:amd64 (1.23.4-0ubuntu3) ... 96s Setting up pnp.ids (0.393-3) ... 96s Setting up libnl-3-200:amd64 (3.7.0-1) ... 96s Setting up python3.13-minimal (3.13.2-2) ... 97s Setting up libgirepository-1.0-1:amd64 (1.83.4-1) ... 97s Setting up libbinutils:amd64 (2.44-3ubuntu1) ... 97s Setting up libpython3.13-stdlib:amd64 (3.13.2-2) ... 97s Setting up libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.2ubuntu5) ... 97s Setting up rsync (3.4.1+ds1-3) ... 97s rsync.service is a disabled or a static unit not running, not starting it. 97s Setting up python3.13-gdbm (3.13.2-2) ... 97s Setting up libpython3-stdlib:amd64 (3.13.2-2) ... 97s Setting up ncurses-term (6.5+20250216-2) ... 97s Setting up libctf0:amd64 (2.44-3ubuntu1) ... 97s Setting up libpython3.13:amd64 (3.13.2-2) ... 97s Setting up pinentry-curses (1.3.1-2ubuntu3) ... 97s Setting up libdebuginfod1t64:amd64 (0.192-4) ... 97s Setting up linux-headers-virtual (6.14.0-10.10) ... 97s Setting up libcurl4t64:amd64 (8.12.1-3ubuntu1) ... 97s Setting up python3.13 (3.13.2-2) ... 98s Setting up htop (3.4.0-2) ... 98s Setting up linux-image-6.14.0-10-generic (6.14.0-10.10) ... 100s I: /boot/vmlinuz.old is now a symlink to vmlinuz-6.12.0-16-generic 100s I: /boot/initrd.img.old is now a symlink to initrd.img-6.12.0-16-generic 100s I: /boot/vmlinuz is now a symlink to vmlinuz-6.14.0-10-generic 100s I: /boot/initrd.img is now a symlink to initrd.img-6.14.0-10-generic 100s Setting up libfwupd3:amd64 (2.0.6-4) ... 100s Setting up python3 (3.13.2-2) ... 101s Setting up python3-markupsafe (2.1.5-1build4) ... 101s Setting up linux-modules-extra-6.14.0-10-generic (6.14.0-10.10) ... 103s Setting up libnl-route-3-200:amd64 (3.7.0-1) ... 103s Setting up hwdata (0.393-3) ... 103s Setting up python3-jinja2 (3.1.5-2ubuntu1) ... 103s Setting up libgprofng0:amd64 (2.44-3ubuntu1) ... 103s Setting up linux-perf (6.14.0-10.10) ... 103s Setting up gir1.2-girepository-2.0:amd64 (1.83.4-1) ... 103s Setting up python3-gi (3.50.0-4build1) ... 103s Setting up pciutils (1:3.13.0-2) ... 103s Setting up libnl-genl-3-200:amd64 (3.7.0-1) ... 103s Setting up curl (8.12.1-3ubuntu1) ... 103s Setting up linux-image-virtual (6.14.0-10.10) ... 103s Setting up linux-tools-common (6.14.0-10.10) ... 103s Setting up fwupd (2.0.6-4) ... 104s fwupd-refresh.service is a disabled or a static unit not running, not starting it. 104s Setting up python3-systemd (235-1build6) ... 104s Setting up python3-cffi-backend:amd64 (1.17.1-2build2) ... 104s Setting up binutils-x86-64-linux-gnu (2.44-3ubuntu1) ... 104s Setting up linux-image-generic (6.14.0-10.10) ... 104s Setting up python3-dbus (1.3.2-5build5) ... 104s Setting up linux-tools-6.14.0-10 (6.14.0-10.10) ... 104s Setting up linux-generic (6.14.0-10.10) ... 104s Setting up python3-apt (2.9.9build1) ... 105s Setting up python3-yaml (6.0.2-1build2) ... 105s Setting up python3-lazr.uri (1.0.6-6) ... 105s Setting up binutils (2.44-3ubuntu1) ... 105s Setting up cloud-init-base (25.1-0ubuntu3) ... 106s Setting up linux-virtual (6.14.0-10.10) ... 106s Setting up linux-tools-6.14.0-10-generic (6.14.0-10.10) ... 106s Setting up cloud-init (25.1-0ubuntu3) ... 106s Processing triggers for systemd (257.3-1ubuntu3) ... 106s Processing triggers for man-db (2.13.0-1) ... 108s Processing triggers for dbus (1.16.2-1ubuntu1) ... 108s Processing triggers for libc-bin (2.41-1ubuntu1) ... 108s Processing triggers for initramfs-tools (0.146ubuntu1) ... 108s update-initramfs: Generating /boot/initrd.img-6.12.0-16-generic 108s W: No lz4 in /usr/bin:/sbin:/bin, using gzip 119s Processing triggers for linux-image-6.14.0-10-generic (6.14.0-10.10) ... 119s /etc/kernel/postinst.d/initramfs-tools: 119s update-initramfs: Generating /boot/initrd.img-6.14.0-10-generic 119s W: No lz4 in /usr/bin:/sbin:/bin, using gzip 130s /etc/kernel/postinst.d/zz-update-grub: 130s Sourcing file `/etc/default/grub' 130s Sourcing file `/etc/default/grub.d/50-cloudimg-settings.cfg' 130s Sourcing file `/etc/default/grub.d/90-autopkgtest.cfg' 130s Generating grub configuration file ... 131s Found linux image: /boot/vmlinuz-6.14.0-10-generic 131s Found initrd image: /boot/initrd.img-6.14.0-10-generic 131s Found linux image: /boot/vmlinuz-6.12.0-16-generic 131s Found initrd image: /boot/initrd.img-6.12.0-16-generic 131s Found linux image: /boot/vmlinuz-6.11.0-8-generic 131s Found initrd image: /boot/initrd.img-6.11.0-8-generic 131s Warning: os-prober will not be executed to detect other bootable partitions. 131s Systems on them will not be added to the GRUB boot configuration. 131s Check GRUB_DISABLE_OS_PROBER documentation entry. 131s Adding boot menu entry for UEFI Firmware Settings ... 131s done 133s Reading package lists... 133s Building dependency tree... 133s Reading state information... 133s Solving dependencies... 133s The following packages will be REMOVED: 133s libnl-genl-3-200* libnsl2* libpython3.12-minimal* libpython3.12-stdlib* 133s libpython3.12t64* linux-headers-6.11.0-8* linux-headers-6.11.0-8-generic* 133s linux-headers-6.12.0-16* linux-headers-6.12.0-16-generic* 133s linux-image-6.11.0-8-generic* linux-image-6.12.0-16-generic* 133s linux-modules-6.11.0-8-generic* linux-modules-6.12.0-16-generic* 133s linux-modules-extra-6.12.0-16-generic* linux-tools-6.11.0-8* 133s linux-tools-6.11.0-8-generic* linux-tools-6.12.0-16* 133s linux-tools-6.12.0-16-generic* 134s 0 upgraded, 0 newly installed, 18 to remove and 5 not upgraded. 134s After this operation, 545 MB disk space will be freed. 134s (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 ... 148643 files and directories currently installed.) 134s Removing libnl-genl-3-200:amd64 (3.7.0-1) ... 134s Removing linux-tools-6.11.0-8-generic (6.11.0-8.8) ... 134s Removing linux-tools-6.11.0-8 (6.11.0-8.8) ... 134s Removing libpython3.12t64:amd64 (3.12.9-1) ... 134s Removing libpython3.12-stdlib:amd64 (3.12.9-1) ... 134s Removing libnsl2:amd64 (1.3.0-3build3) ... 134s Removing libpython3.12-minimal:amd64 (3.12.9-1) ... 134s Removing linux-headers-6.11.0-8-generic (6.11.0-8.8) ... 135s Removing linux-headers-6.11.0-8 (6.11.0-8.8) ... 137s Removing linux-headers-6.12.0-16-generic (6.12.0-16.16) ... 138s Removing linux-headers-6.12.0-16 (6.12.0-16.16) ... 140s Removing linux-image-6.11.0-8-generic (6.11.0-8.8) ... 140s /etc/kernel/postrm.d/initramfs-tools: 140s update-initramfs: Deleting /boot/initrd.img-6.11.0-8-generic 140s /etc/kernel/postrm.d/zz-update-grub: 140s Sourcing file `/etc/default/grub' 140s Sourcing file `/etc/default/grub.d/50-cloudimg-settings.cfg' 140s Sourcing file `/etc/default/grub.d/90-autopkgtest.cfg' 140s Generating grub configuration file ... 140s Found linux image: /boot/vmlinuz-6.14.0-10-generic 140s Found initrd image: /boot/initrd.img-6.14.0-10-generic 140s Found linux image: /boot/vmlinuz-6.12.0-16-generic 140s Found initrd image: /boot/initrd.img-6.12.0-16-generic 141s Warning: os-prober will not be executed to detect other bootable partitions. 141s Systems on them will not be added to the GRUB boot configuration. 141s Check GRUB_DISABLE_OS_PROBER documentation entry. 141s Adding boot menu entry for UEFI Firmware Settings ... 141s done 141s Removing linux-image-6.12.0-16-generic (6.12.0-16.16) ... 141s W: Removing the running kernel 141s I: /boot/vmlinuz.old is now a symlink to vmlinuz-6.14.0-10-generic 141s I: /boot/initrd.img.old is now a symlink to initrd.img-6.14.0-10-generic 141s /etc/kernel/postrm.d/initramfs-tools: 141s update-initramfs: Deleting /boot/initrd.img-6.12.0-16-generic 141s /etc/kernel/postrm.d/zz-update-grub: 141s Sourcing file `/etc/default/grub' 141s Sourcing file `/etc/default/grub.d/50-cloudimg-settings.cfg' 141s Sourcing file `/etc/default/grub.d/90-autopkgtest.cfg' 141s Generating grub configuration file ... 141s Found linux image: /boot/vmlinuz-6.14.0-10-generic 141s Found initrd image: /boot/initrd.img-6.14.0-10-generic 141s Warning: os-prober will not be executed to detect other bootable partitions. 141s Systems on them will not be added to the GRUB boot configuration. 141s Check GRUB_DISABLE_OS_PROBER documentation entry. 141s Adding boot menu entry for UEFI Firmware Settings ... 141s done 141s Removing linux-modules-6.11.0-8-generic (6.11.0-8.8) ... 142s Removing linux-modules-extra-6.12.0-16-generic (6.12.0-16.16) ... 143s Removing linux-modules-6.12.0-16-generic (6.12.0-16.16) ... 143s Removing linux-tools-6.12.0-16-generic (6.12.0-16.16) ... 143s Removing linux-tools-6.12.0-16 (6.12.0-16.16) ... 143s Processing triggers for libc-bin (2.41-1ubuntu1) ... 143s (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 ... 76972 files and directories currently installed.) 143s Purging configuration files for linux-image-6.11.0-8-generic (6.11.0-8.8) ... 143s Purging configuration files for libpython3.12-minimal:amd64 (3.12.9-1) ... 143s Purging configuration files for linux-modules-extra-6.12.0-16-generic (6.12.0-16.16) ... 143s Purging configuration files for linux-modules-6.12.0-16-generic (6.12.0-16.16) ... 143s dpkg: warning: while removing linux-modules-6.12.0-16-generic, directory '/lib/modules/6.12.0-16-generic' not empty so not removed 143s Purging configuration files for linux-modules-6.11.0-8-generic (6.11.0-8.8) ... 143s Purging configuration files for linux-image-6.12.0-16-generic (6.12.0-16.16) ... 143s rmdir: failed to remove '/lib/modules/6.12.0-16-generic': Directory not empty 144s autopkgtest [22:08:25]: upgrading testbed (apt dist-upgrade and autopurge) 144s Reading package lists... 144s Building dependency tree... 144s Reading state information... 144s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 144s Starting 2 pkgProblemResolver with broken count: 0 144s Done 145s Entering ResolveByKeep 145s 145s Calculating upgrade... 146s The following packages will be upgraded: 146s libc-bin libc-dev-bin libc6 libc6-dev locales 146s 5 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 146s Need to get 10.5 MB of archives. 146s After this operation, 1024 B of additional disk space will be used. 146s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libc6-dev amd64 2.41-1ubuntu2 [2183 kB] 146s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libc-dev-bin amd64 2.41-1ubuntu2 [24.7 kB] 146s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libc6 amd64 2.41-1ubuntu2 [3327 kB] 146s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libc-bin amd64 2.41-1ubuntu2 [700 kB] 146s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 locales all 2.41-1ubuntu2 [4246 kB] 146s Preconfiguring packages ... 146s Fetched 10.5 MB in 0s (36.3 MB/s) 146s (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 ... 76968 files and directories currently installed.) 146s Preparing to unpack .../libc6-dev_2.41-1ubuntu2_amd64.deb ... 146s Unpacking libc6-dev:amd64 (2.41-1ubuntu2) over (2.41-1ubuntu1) ... 147s Preparing to unpack .../libc-dev-bin_2.41-1ubuntu2_amd64.deb ... 147s Unpacking libc-dev-bin (2.41-1ubuntu2) over (2.41-1ubuntu1) ... 147s Preparing to unpack .../libc6_2.41-1ubuntu2_amd64.deb ... 147s Unpacking libc6:amd64 (2.41-1ubuntu2) over (2.41-1ubuntu1) ... 147s Setting up libc6:amd64 (2.41-1ubuntu2) ... 147s (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 ... 76968 files and directories currently installed.) 147s Preparing to unpack .../libc-bin_2.41-1ubuntu2_amd64.deb ... 147s Unpacking libc-bin (2.41-1ubuntu2) over (2.41-1ubuntu1) ... 147s Setting up libc-bin (2.41-1ubuntu2) ... 147s (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 ... 76968 files and directories currently installed.) 147s Preparing to unpack .../locales_2.41-1ubuntu2_all.deb ... 147s Unpacking locales (2.41-1ubuntu2) over (2.41-1ubuntu1) ... 147s Setting up locales (2.41-1ubuntu2) ... 148s Generating locales (this might take a while)... 150s en_US.UTF-8... done 150s Generation complete. 150s Setting up libc-dev-bin (2.41-1ubuntu2) ... 150s Setting up libc6-dev:amd64 (2.41-1ubuntu2) ... 150s Processing triggers for man-db (2.13.0-1) ... 150s Processing triggers for systemd (257.3-1ubuntu3) ... 151s Reading package lists... 152s Building dependency tree... 152s Reading state information... 152s Starting pkgProblemResolver with broken count: 0 152s Starting 2 pkgProblemResolver with broken count: 0 152s Done 152s Solving dependencies... 153s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 153s autopkgtest [22:08:34]: rebooting testbed after setup commands that affected boot 157s autopkgtest-virt-ssh: WARNING: ssh connection failed. Retrying in 3 seconds... 169s autopkgtest [22:08:50]: testbed running kernel: Linux 6.14.0-10-generic #10-Ubuntu SMP PREEMPT_DYNAMIC Wed Mar 12 16:07:00 UTC 2025 170s autopkgtest [22:08:51]: @@@@@@@@@@@@@@@@@@@@ apt-source r-cran-diffobj 171s Get:1 http://ftpmaster.internal/ubuntu plucky/universe r-cran-diffobj 0.3.5-1 (dsc) [2117 B] 171s Get:2 http://ftpmaster.internal/ubuntu plucky/universe r-cran-diffobj 0.3.5-1 (tar) [479 kB] 171s Get:3 http://ftpmaster.internal/ubuntu plucky/universe r-cran-diffobj 0.3.5-1 (diff) [3480 B] 172s gpgv: Signature made Tue Oct 12 17:58:35 2021 UTC 172s gpgv: using RSA key F1F007320A035541F0A663CA578A0494D1C646D1 172s gpgv: issuer "tille@debian.org" 172s gpgv: Can't check signature: No public key 172s dpkg-source: warning: cannot verify inline signature for ./r-cran-diffobj_0.3.5-1.dsc: no acceptable signature found 172s autopkgtest [22:08:53]: testing package r-cran-diffobj version 0.3.5-1 172s autopkgtest [22:08:53]: build not needed 174s autopkgtest [22:08:55]: test run-unit-test: preparing testbed 174s Reading package lists... 175s Building dependency tree... 175s Reading state information... 175s Starting pkgProblemResolver with broken count: 0 175s Starting 2 pkgProblemResolver with broken count: 0 175s Done 176s The following NEW packages will be installed: 176s fontconfig fontconfig-config fonts-dejavu-core fonts-dejavu-mono libblas3 176s libcairo2 libdatrie1 libdeflate0 libfontconfig1 libgfortran5 libgomp1 176s libgraphite2-3 libharfbuzz0b libice6 libjbig0 libjpeg-turbo8 libjpeg8 176s liblapack3 liblerc4 libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0 176s libpaper-utils libpaper2 libpixman-1-0 libsharpyuv0 libsm6 libtcl8.6 176s libthai-data libthai0 libtiff6 libtk8.6 libwebp7 libxcb-render0 libxcb-shm0 176s libxft2 libxrender1 libxss1 libxt6t64 r-base-core r-cran-brio r-cran-callr 176s r-cran-cli r-cran-crayon r-cran-desc r-cran-diffobj r-cran-digest 176s r-cran-evaluate r-cran-fs r-cran-glue r-cran-jsonlite r-cran-lifecycle 176s r-cran-magrittr r-cran-pkgbuild r-cran-pkgload r-cran-praise r-cran-processx 176s r-cran-ps r-cran-r6 r-cran-rlang r-cran-rprojroot r-cran-testthat 176s r-cran-waldo r-cran-withr unzip x11-common xdg-utils zip 176s 0 upgraded, 68 newly installed, 0 to remove and 0 not upgraded. 176s Need to get 51.5 MB of archives. 176s After this operation, 103 MB of additional disk space will be used. 176s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 fonts-dejavu-mono all 2.37-8 [502 kB] 176s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 fonts-dejavu-core all 2.37-8 [835 kB] 176s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 fontconfig-config amd64 2.15.0-2ubuntu1 [37.4 kB] 176s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 libfontconfig1 amd64 2.15.0-2ubuntu1 [164 kB] 176s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 fontconfig amd64 2.15.0-2ubuntu1 [180 kB] 176s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 libblas3 amd64 3.12.1-2 [359 kB] 176s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 libpixman-1-0 amd64 0.44.0-3 [427 kB] 176s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 libxcb-render0 amd64 1.17.0-2 [16.2 kB] 176s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 libxcb-shm0 amd64 1.17.0-2 [5758 B] 176s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 libxrender1 amd64 1:0.9.10-1.1build1 [19.0 kB] 176s Get:11 http://ftpmaster.internal/ubuntu plucky/main amd64 libcairo2 amd64 1.18.2-2 [569 kB] 176s Get:12 http://ftpmaster.internal/ubuntu plucky/main amd64 libdatrie1 amd64 0.2.13-3build1 [19.0 kB] 176s Get:13 http://ftpmaster.internal/ubuntu plucky/main amd64 libdeflate0 amd64 1.23-1 [64.1 kB] 176s Get:14 http://ftpmaster.internal/ubuntu plucky/main amd64 libgfortran5 amd64 15-20250222-0ubuntu1 [919 kB] 176s Get:15 http://ftpmaster.internal/ubuntu plucky/main amd64 libgomp1 amd64 15-20250222-0ubuntu1 [148 kB] 176s Get:16 http://ftpmaster.internal/ubuntu plucky/main amd64 libgraphite2-3 amd64 1.3.14-2ubuntu1 [73.1 kB] 176s Get:17 http://ftpmaster.internal/ubuntu plucky/main amd64 libharfbuzz0b amd64 10.2.0-1 [543 kB] 176s Get:18 http://ftpmaster.internal/ubuntu plucky/main amd64 x11-common all 1:7.7+23ubuntu3 [21.7 kB] 176s Get:19 http://ftpmaster.internal/ubuntu plucky/main amd64 libice6 amd64 2:1.1.1-1 [44.1 kB] 176s Get:20 http://ftpmaster.internal/ubuntu plucky/main amd64 libjpeg-turbo8 amd64 2.1.5-3ubuntu2 [179 kB] 176s Get:21 http://ftpmaster.internal/ubuntu plucky/main amd64 libjpeg8 amd64 8c-2ubuntu11 [2148 B] 176s Get:22 http://ftpmaster.internal/ubuntu plucky/main amd64 liblapack3 amd64 3.12.1-2 [3179 kB] 176s Get:23 http://ftpmaster.internal/ubuntu plucky/main amd64 liblerc4 amd64 4.0.0+ds-5ubuntu1 [271 kB] 176s Get:24 http://ftpmaster.internal/ubuntu plucky/main amd64 libthai-data all 0.1.29-2build1 [158 kB] 176s Get:25 http://ftpmaster.internal/ubuntu plucky/main amd64 libthai0 amd64 0.1.29-2build1 [18.9 kB] 176s Get:26 http://ftpmaster.internal/ubuntu plucky/main amd64 libpango-1.0-0 amd64 1.56.2-1 [255 kB] 176s Get:27 http://ftpmaster.internal/ubuntu plucky/main amd64 libpangoft2-1.0-0 amd64 1.56.2-1 [52.6 kB] 176s Get:28 http://ftpmaster.internal/ubuntu plucky/main amd64 libpangocairo-1.0-0 amd64 1.56.2-1 [29.1 kB] 176s Get:29 http://ftpmaster.internal/ubuntu plucky/main amd64 libpaper2 amd64 2.2.5-0.3 [17.4 kB] 176s Get:30 http://ftpmaster.internal/ubuntu plucky/main amd64 libpaper-utils amd64 2.2.5-0.3 [15.5 kB] 176s Get:31 http://ftpmaster.internal/ubuntu plucky/main amd64 libsharpyuv0 amd64 1.5.0-0.1 [25.9 kB] 176s Get:32 http://ftpmaster.internal/ubuntu plucky/main amd64 libsm6 amd64 2:1.2.4-1 [17.4 kB] 176s Get:33 http://ftpmaster.internal/ubuntu plucky/main amd64 libtcl8.6 amd64 8.6.16+dfsg-1 [1086 kB] 176s Get:34 http://ftpmaster.internal/ubuntu plucky/main amd64 libjbig0 amd64 2.1-6.1ubuntu2 [29.7 kB] 176s Get:35 http://ftpmaster.internal/ubuntu plucky/main amd64 libwebp7 amd64 1.5.0-0.1 [378 kB] 176s Get:36 http://ftpmaster.internal/ubuntu plucky/main amd64 libtiff6 amd64 4.5.1+git230720-4ubuntu4 [200 kB] 176s Get:37 http://ftpmaster.internal/ubuntu plucky/main amd64 libxft2 amd64 2.3.6-1build1 [45.3 kB] 176s Get:38 http://ftpmaster.internal/ubuntu plucky/main amd64 libxss1 amd64 1:1.2.3-1build3 [7204 B] 176s Get:39 http://ftpmaster.internal/ubuntu plucky/main amd64 libtk8.6 amd64 8.6.16-1 [868 kB] 176s Get:40 http://ftpmaster.internal/ubuntu plucky/main amd64 libxt6t64 amd64 1:1.2.1-1.2build1 [171 kB] 176s Get:41 http://ftpmaster.internal/ubuntu plucky/main amd64 zip amd64 3.0-14ubuntu2 [185 kB] 176s Get:42 http://ftpmaster.internal/ubuntu plucky/main amd64 unzip amd64 6.0-28ubuntu6 [181 kB] 176s Get:43 http://ftpmaster.internal/ubuntu plucky/main amd64 xdg-utils all 1.2.1-2ubuntu1 [66.0 kB] 176s Get:44 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-base-core amd64 4.4.3-1 [28.9 MB] 176s Get:45 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-brio amd64 1.1.5-1 [39.0 kB] 176s Get:46 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-ps amd64 1.9.0-1 [408 kB] 176s Get:47 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-r6 all 2.6.1-1 [101 kB] 176s Get:48 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-processx amd64 3.8.6-1 [365 kB] 176s Get:49 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-callr all 3.7.6-1 [458 kB] 176s Get:50 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-cli amd64 3.6.4-1 [1394 kB] 176s Get:51 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-crayon all 1.5.3-1 [165 kB] 176s Get:52 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-desc all 1.4.3-1 [359 kB] 176s Get:53 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-diffobj amd64 0.3.5-1 [1117 kB] 176s Get:54 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-digest amd64 0.6.37-1 [200 kB] 176s Get:55 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-evaluate all 1.0.3-1 [114 kB] 176s Get:56 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-fs amd64 1.6.5+dfsg-1 [246 kB] 176s Get:57 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-glue amd64 1.8.0-1 [164 kB] 176s Get:58 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-jsonlite amd64 1.9.1+dfsg-1 [447 kB] 176s Get:59 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-rlang amd64 1.1.5-1 [1719 kB] 176s Get:60 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-lifecycle all 1.0.4+dfsg-1 [110 kB] 176s Get:61 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-magrittr amd64 2.0.3-1 [154 kB] 176s Get:62 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-pkgbuild all 1.4.6-1 [213 kB] 176s Get:63 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-rprojroot all 2.0.4-2 [125 kB] 176s Get:64 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-withr all 3.0.2+dfsg-1 [214 kB] 176s Get:65 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-pkgload all 1.4.0-1 [247 kB] 176s Get:66 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-praise all 1.0.0-4build1 [20.3 kB] 176s Get:67 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-waldo all 0.6.1-2 [150 kB] 176s Get:68 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-testthat amd64 3.2.3-1 [1651 kB] 177s Preconfiguring packages ... 177s Fetched 51.5 MB in 1s (63.5 MB/s) 177s Selecting previously unselected package fonts-dejavu-mono. 177s (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 ... 76968 files and directories currently installed.) 177s Preparing to unpack .../00-fonts-dejavu-mono_2.37-8_all.deb ... 177s Unpacking fonts-dejavu-mono (2.37-8) ... 177s Selecting previously unselected package fonts-dejavu-core. 177s Preparing to unpack .../01-fonts-dejavu-core_2.37-8_all.deb ... 177s Unpacking fonts-dejavu-core (2.37-8) ... 177s Selecting previously unselected package fontconfig-config. 177s Preparing to unpack .../02-fontconfig-config_2.15.0-2ubuntu1_amd64.deb ... 178s Unpacking fontconfig-config (2.15.0-2ubuntu1) ... 178s Selecting previously unselected package libfontconfig1:amd64. 178s Preparing to unpack .../03-libfontconfig1_2.15.0-2ubuntu1_amd64.deb ... 178s Unpacking libfontconfig1:amd64 (2.15.0-2ubuntu1) ... 178s Selecting previously unselected package fontconfig. 178s Preparing to unpack .../04-fontconfig_2.15.0-2ubuntu1_amd64.deb ... 178s Unpacking fontconfig (2.15.0-2ubuntu1) ... 178s Selecting previously unselected package libblas3:amd64. 178s Preparing to unpack .../05-libblas3_3.12.1-2_amd64.deb ... 178s Unpacking libblas3:amd64 (3.12.1-2) ... 178s Selecting previously unselected package libpixman-1-0:amd64. 178s Preparing to unpack .../06-libpixman-1-0_0.44.0-3_amd64.deb ... 178s Unpacking libpixman-1-0:amd64 (0.44.0-3) ... 178s Selecting previously unselected package libxcb-render0:amd64. 178s Preparing to unpack .../07-libxcb-render0_1.17.0-2_amd64.deb ... 178s Unpacking libxcb-render0:amd64 (1.17.0-2) ... 178s Selecting previously unselected package libxcb-shm0:amd64. 178s Preparing to unpack .../08-libxcb-shm0_1.17.0-2_amd64.deb ... 178s Unpacking libxcb-shm0:amd64 (1.17.0-2) ... 178s Selecting previously unselected package libxrender1:amd64. 178s Preparing to unpack .../09-libxrender1_1%3a0.9.10-1.1build1_amd64.deb ... 178s Unpacking libxrender1:amd64 (1:0.9.10-1.1build1) ... 178s Selecting previously unselected package libcairo2:amd64. 178s Preparing to unpack .../10-libcairo2_1.18.2-2_amd64.deb ... 178s Unpacking libcairo2:amd64 (1.18.2-2) ... 178s Selecting previously unselected package libdatrie1:amd64. 178s Preparing to unpack .../11-libdatrie1_0.2.13-3build1_amd64.deb ... 178s Unpacking libdatrie1:amd64 (0.2.13-3build1) ... 178s Selecting previously unselected package libdeflate0:amd64. 178s Preparing to unpack .../12-libdeflate0_1.23-1_amd64.deb ... 178s Unpacking libdeflate0:amd64 (1.23-1) ... 178s Selecting previously unselected package libgfortran5:amd64. 178s Preparing to unpack .../13-libgfortran5_15-20250222-0ubuntu1_amd64.deb ... 178s Unpacking libgfortran5:amd64 (15-20250222-0ubuntu1) ... 178s Selecting previously unselected package libgomp1:amd64. 178s Preparing to unpack .../14-libgomp1_15-20250222-0ubuntu1_amd64.deb ... 178s Unpacking libgomp1:amd64 (15-20250222-0ubuntu1) ... 178s Selecting previously unselected package libgraphite2-3:amd64. 178s Preparing to unpack .../15-libgraphite2-3_1.3.14-2ubuntu1_amd64.deb ... 178s Unpacking libgraphite2-3:amd64 (1.3.14-2ubuntu1) ... 178s Selecting previously unselected package libharfbuzz0b:amd64. 178s Preparing to unpack .../16-libharfbuzz0b_10.2.0-1_amd64.deb ... 178s Unpacking libharfbuzz0b:amd64 (10.2.0-1) ... 178s Selecting previously unselected package x11-common. 178s Preparing to unpack .../17-x11-common_1%3a7.7+23ubuntu3_all.deb ... 178s Unpacking x11-common (1:7.7+23ubuntu3) ... 178s Selecting previously unselected package libice6:amd64. 178s Preparing to unpack .../18-libice6_2%3a1.1.1-1_amd64.deb ... 178s Unpacking libice6:amd64 (2:1.1.1-1) ... 178s Selecting previously unselected package libjpeg-turbo8:amd64. 178s Preparing to unpack .../19-libjpeg-turbo8_2.1.5-3ubuntu2_amd64.deb ... 178s Unpacking libjpeg-turbo8:amd64 (2.1.5-3ubuntu2) ... 178s Selecting previously unselected package libjpeg8:amd64. 178s Preparing to unpack .../20-libjpeg8_8c-2ubuntu11_amd64.deb ... 178s Unpacking libjpeg8:amd64 (8c-2ubuntu11) ... 178s Selecting previously unselected package liblapack3:amd64. 178s Preparing to unpack .../21-liblapack3_3.12.1-2_amd64.deb ... 178s Unpacking liblapack3:amd64 (3.12.1-2) ... 178s Selecting previously unselected package liblerc4:amd64. 178s Preparing to unpack .../22-liblerc4_4.0.0+ds-5ubuntu1_amd64.deb ... 178s Unpacking liblerc4:amd64 (4.0.0+ds-5ubuntu1) ... 178s Selecting previously unselected package libthai-data. 178s Preparing to unpack .../23-libthai-data_0.1.29-2build1_all.deb ... 178s Unpacking libthai-data (0.1.29-2build1) ... 178s Selecting previously unselected package libthai0:amd64. 178s Preparing to unpack .../24-libthai0_0.1.29-2build1_amd64.deb ... 178s Unpacking libthai0:amd64 (0.1.29-2build1) ... 178s Selecting previously unselected package libpango-1.0-0:amd64. 178s Preparing to unpack .../25-libpango-1.0-0_1.56.2-1_amd64.deb ... 178s Unpacking libpango-1.0-0:amd64 (1.56.2-1) ... 178s Selecting previously unselected package libpangoft2-1.0-0:amd64. 178s Preparing to unpack .../26-libpangoft2-1.0-0_1.56.2-1_amd64.deb ... 178s Unpacking libpangoft2-1.0-0:amd64 (1.56.2-1) ... 178s Selecting previously unselected package libpangocairo-1.0-0:amd64. 178s Preparing to unpack .../27-libpangocairo-1.0-0_1.56.2-1_amd64.deb ... 178s Unpacking libpangocairo-1.0-0:amd64 (1.56.2-1) ... 178s Selecting previously unselected package libpaper2:amd64. 178s Preparing to unpack .../28-libpaper2_2.2.5-0.3_amd64.deb ... 178s Unpacking libpaper2:amd64 (2.2.5-0.3) ... 178s Selecting previously unselected package libpaper-utils. 178s Preparing to unpack .../29-libpaper-utils_2.2.5-0.3_amd64.deb ... 178s Unpacking libpaper-utils (2.2.5-0.3) ... 178s Selecting previously unselected package libsharpyuv0:amd64. 178s Preparing to unpack .../30-libsharpyuv0_1.5.0-0.1_amd64.deb ... 178s Unpacking libsharpyuv0:amd64 (1.5.0-0.1) ... 178s Selecting previously unselected package libsm6:amd64. 178s Preparing to unpack .../31-libsm6_2%3a1.2.4-1_amd64.deb ... 178s Unpacking libsm6:amd64 (2:1.2.4-1) ... 178s Selecting previously unselected package libtcl8.6:amd64. 178s Preparing to unpack .../32-libtcl8.6_8.6.16+dfsg-1_amd64.deb ... 178s Unpacking libtcl8.6:amd64 (8.6.16+dfsg-1) ... 178s Selecting previously unselected package libjbig0:amd64. 178s Preparing to unpack .../33-libjbig0_2.1-6.1ubuntu2_amd64.deb ... 178s Unpacking libjbig0:amd64 (2.1-6.1ubuntu2) ... 178s Selecting previously unselected package libwebp7:amd64. 178s Preparing to unpack .../34-libwebp7_1.5.0-0.1_amd64.deb ... 178s Unpacking libwebp7:amd64 (1.5.0-0.1) ... 178s Selecting previously unselected package libtiff6:amd64. 178s Preparing to unpack .../35-libtiff6_4.5.1+git230720-4ubuntu4_amd64.deb ... 178s Unpacking libtiff6:amd64 (4.5.1+git230720-4ubuntu4) ... 179s Selecting previously unselected package libxft2:amd64. 179s Preparing to unpack .../36-libxft2_2.3.6-1build1_amd64.deb ... 179s Unpacking libxft2:amd64 (2.3.6-1build1) ... 179s Selecting previously unselected package libxss1:amd64. 179s Preparing to unpack .../37-libxss1_1%3a1.2.3-1build3_amd64.deb ... 179s Unpacking libxss1:amd64 (1:1.2.3-1build3) ... 179s Selecting previously unselected package libtk8.6:amd64. 179s Preparing to unpack .../38-libtk8.6_8.6.16-1_amd64.deb ... 179s Unpacking libtk8.6:amd64 (8.6.16-1) ... 179s Selecting previously unselected package libxt6t64:amd64. 179s Preparing to unpack .../39-libxt6t64_1%3a1.2.1-1.2build1_amd64.deb ... 179s Unpacking libxt6t64:amd64 (1:1.2.1-1.2build1) ... 179s Selecting previously unselected package zip. 179s Preparing to unpack .../40-zip_3.0-14ubuntu2_amd64.deb ... 179s Unpacking zip (3.0-14ubuntu2) ... 179s Selecting previously unselected package unzip. 179s Preparing to unpack .../41-unzip_6.0-28ubuntu6_amd64.deb ... 179s Unpacking unzip (6.0-28ubuntu6) ... 179s Selecting previously unselected package xdg-utils. 179s Preparing to unpack .../42-xdg-utils_1.2.1-2ubuntu1_all.deb ... 179s Unpacking xdg-utils (1.2.1-2ubuntu1) ... 179s Selecting previously unselected package r-base-core. 179s Preparing to unpack .../43-r-base-core_4.4.3-1_amd64.deb ... 179s Unpacking r-base-core (4.4.3-1) ... 179s Selecting previously unselected package r-cran-brio. 179s Preparing to unpack .../44-r-cran-brio_1.1.5-1_amd64.deb ... 179s Unpacking r-cran-brio (1.1.5-1) ... 179s Selecting previously unselected package r-cran-ps. 179s Preparing to unpack .../45-r-cran-ps_1.9.0-1_amd64.deb ... 179s Unpacking r-cran-ps (1.9.0-1) ... 179s Selecting previously unselected package r-cran-r6. 179s Preparing to unpack .../46-r-cran-r6_2.6.1-1_all.deb ... 179s Unpacking r-cran-r6 (2.6.1-1) ... 179s Selecting previously unselected package r-cran-processx. 179s Preparing to unpack .../47-r-cran-processx_3.8.6-1_amd64.deb ... 179s Unpacking r-cran-processx (3.8.6-1) ... 179s Selecting previously unselected package r-cran-callr. 179s Preparing to unpack .../48-r-cran-callr_3.7.6-1_all.deb ... 179s Unpacking r-cran-callr (3.7.6-1) ... 179s Selecting previously unselected package r-cran-cli. 179s Preparing to unpack .../49-r-cran-cli_3.6.4-1_amd64.deb ... 179s Unpacking r-cran-cli (3.6.4-1) ... 179s Selecting previously unselected package r-cran-crayon. 179s Preparing to unpack .../50-r-cran-crayon_1.5.3-1_all.deb ... 179s Unpacking r-cran-crayon (1.5.3-1) ... 179s Selecting previously unselected package r-cran-desc. 179s Preparing to unpack .../51-r-cran-desc_1.4.3-1_all.deb ... 179s Unpacking r-cran-desc (1.4.3-1) ... 179s Selecting previously unselected package r-cran-diffobj. 179s Preparing to unpack .../52-r-cran-diffobj_0.3.5-1_amd64.deb ... 179s Unpacking r-cran-diffobj (0.3.5-1) ... 180s Selecting previously unselected package r-cran-digest. 180s Preparing to unpack .../53-r-cran-digest_0.6.37-1_amd64.deb ... 180s Unpacking r-cran-digest (0.6.37-1) ... 180s Selecting previously unselected package r-cran-evaluate. 180s Preparing to unpack .../54-r-cran-evaluate_1.0.3-1_all.deb ... 180s Unpacking r-cran-evaluate (1.0.3-1) ... 180s Selecting previously unselected package r-cran-fs. 180s Preparing to unpack .../55-r-cran-fs_1.6.5+dfsg-1_amd64.deb ... 180s Unpacking r-cran-fs (1.6.5+dfsg-1) ... 180s Selecting previously unselected package r-cran-glue. 180s Preparing to unpack .../56-r-cran-glue_1.8.0-1_amd64.deb ... 180s Unpacking r-cran-glue (1.8.0-1) ... 180s Selecting previously unselected package r-cran-jsonlite. 180s Preparing to unpack .../57-r-cran-jsonlite_1.9.1+dfsg-1_amd64.deb ... 180s Unpacking r-cran-jsonlite (1.9.1+dfsg-1) ... 180s Selecting previously unselected package r-cran-rlang. 180s Preparing to unpack .../58-r-cran-rlang_1.1.5-1_amd64.deb ... 180s Unpacking r-cran-rlang (1.1.5-1) ... 180s Selecting previously unselected package r-cran-lifecycle. 180s Preparing to unpack .../59-r-cran-lifecycle_1.0.4+dfsg-1_all.deb ... 180s Unpacking r-cran-lifecycle (1.0.4+dfsg-1) ... 180s Selecting previously unselected package r-cran-magrittr. 180s Preparing to unpack .../60-r-cran-magrittr_2.0.3-1_amd64.deb ... 180s Unpacking r-cran-magrittr (2.0.3-1) ... 180s Selecting previously unselected package r-cran-pkgbuild. 180s Preparing to unpack .../61-r-cran-pkgbuild_1.4.6-1_all.deb ... 180s Unpacking r-cran-pkgbuild (1.4.6-1) ... 180s Selecting previously unselected package r-cran-rprojroot. 180s Preparing to unpack .../62-r-cran-rprojroot_2.0.4-2_all.deb ... 180s Unpacking r-cran-rprojroot (2.0.4-2) ... 180s Selecting previously unselected package r-cran-withr. 180s Preparing to unpack .../63-r-cran-withr_3.0.2+dfsg-1_all.deb ... 180s Unpacking r-cran-withr (3.0.2+dfsg-1) ... 180s Selecting previously unselected package r-cran-pkgload. 180s Preparing to unpack .../64-r-cran-pkgload_1.4.0-1_all.deb ... 180s Unpacking r-cran-pkgload (1.4.0-1) ... 180s Selecting previously unselected package r-cran-praise. 180s Preparing to unpack .../65-r-cran-praise_1.0.0-4build1_all.deb ... 180s Unpacking r-cran-praise (1.0.0-4build1) ... 180s Selecting previously unselected package r-cran-waldo. 180s Preparing to unpack .../66-r-cran-waldo_0.6.1-2_all.deb ... 180s Unpacking r-cran-waldo (0.6.1-2) ... 180s Selecting previously unselected package r-cran-testthat. 180s Preparing to unpack .../67-r-cran-testthat_3.2.3-1_amd64.deb ... 180s Unpacking r-cran-testthat (3.2.3-1) ... 180s Setting up libgraphite2-3:amd64 (1.3.14-2ubuntu1) ... 180s Setting up libpixman-1-0:amd64 (0.44.0-3) ... 180s Setting up libsharpyuv0:amd64 (1.5.0-0.1) ... 180s Setting up liblerc4:amd64 (4.0.0+ds-5ubuntu1) ... 180s Setting up libxrender1:amd64 (1:0.9.10-1.1build1) ... 180s Setting up libdatrie1:amd64 (0.2.13-3build1) ... 180s Setting up libxcb-render0:amd64 (1.17.0-2) ... 180s Setting up unzip (6.0-28ubuntu6) ... 180s Setting up x11-common (1:7.7+23ubuntu3) ... 181s Setting up libdeflate0:amd64 (1.23-1) ... 181s Setting up libxcb-shm0:amd64 (1.17.0-2) ... 181s Setting up libgomp1:amd64 (15-20250222-0ubuntu1) ... 181s Setting up libjbig0:amd64 (2.1-6.1ubuntu2) ... 181s Setting up zip (3.0-14ubuntu2) ... 181s Setting up libblas3:amd64 (3.12.1-2) ... 181s update-alternatives: using /usr/lib/x86_64-linux-gnu/blas/libblas.so.3 to provide /usr/lib/x86_64-linux-gnu/libblas.so.3 (libblas.so.3-x86_64-linux-gnu) in auto mode 181s Setting up fonts-dejavu-mono (2.37-8) ... 181s Setting up libtcl8.6:amd64 (8.6.16+dfsg-1) ... 181s Setting up fonts-dejavu-core (2.37-8) ... 181s Setting up libjpeg-turbo8:amd64 (2.1.5-3ubuntu2) ... 181s Setting up libgfortran5:amd64 (15-20250222-0ubuntu1) ... 181s Setting up libwebp7:amd64 (1.5.0-0.1) ... 181s Setting up libharfbuzz0b:amd64 (10.2.0-1) ... 181s Setting up libthai-data (0.1.29-2build1) ... 181s Setting up libxss1:amd64 (1:1.2.3-1build3) ... 181s Setting up libpaper2:amd64 (2.2.5-0.3) ... 181s Setting up xdg-utils (1.2.1-2ubuntu1) ... 181s update-alternatives: using /usr/bin/xdg-open to provide /usr/bin/open (open) in auto mode 181s Setting up libjpeg8:amd64 (8c-2ubuntu11) ... 181s Setting up libice6:amd64 (2:1.1.1-1) ... 181s Setting up liblapack3:amd64 (3.12.1-2) ... 181s update-alternatives: using /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3 to provide /usr/lib/x86_64-linux-gnu/liblapack.so.3 (liblapack.so.3-x86_64-linux-gnu) in auto mode 181s Setting up fontconfig-config (2.15.0-2ubuntu1) ... 181s Setting up libpaper-utils (2.2.5-0.3) ... 181s Setting up libthai0:amd64 (0.1.29-2build1) ... 181s Setting up libtiff6:amd64 (4.5.1+git230720-4ubuntu4) ... 181s Setting up libfontconfig1:amd64 (2.15.0-2ubuntu1) ... 181s Setting up libsm6:amd64 (2:1.2.4-1) ... 181s Setting up fontconfig (2.15.0-2ubuntu1) ... 183s Regenerating fonts cache... done. 183s Setting up libxft2:amd64 (2.3.6-1build1) ... 183s Setting up libtk8.6:amd64 (8.6.16-1) ... 183s Setting up libpango-1.0-0:amd64 (1.56.2-1) ... 183s Setting up libcairo2:amd64 (1.18.2-2) ... 183s Setting up libxt6t64:amd64 (1:1.2.1-1.2build1) ... 183s Setting up libpangoft2-1.0-0:amd64 (1.56.2-1) ... 183s Setting up libpangocairo-1.0-0:amd64 (1.56.2-1) ... 183s Setting up r-base-core (4.4.3-1) ... 183s Creating config file /etc/R/Renviron with new version 183s Setting up r-cran-crayon (1.5.3-1) ... 183s Setting up r-cran-ps (1.9.0-1) ... 183s Setting up r-cran-r6 (2.6.1-1) ... 183s Setting up r-cran-magrittr (2.0.3-1) ... 183s Setting up r-cran-fs (1.6.5+dfsg-1) ... 183s Setting up r-cran-brio (1.1.5-1) ... 183s Setting up r-cran-diffobj (0.3.5-1) ... 183s Setting up r-cran-rlang (1.1.5-1) ... 183s Setting up r-cran-withr (3.0.2+dfsg-1) ... 183s Setting up r-cran-processx (3.8.6-1) ... 183s Setting up r-cran-praise (1.0.0-4build1) ... 183s Setting up r-cran-digest (0.6.37-1) ... 183s Setting up r-cran-evaluate (1.0.3-1) ... 183s Setting up r-cran-glue (1.8.0-1) ... 183s Setting up r-cran-cli (3.6.4-1) ... 183s Setting up r-cran-lifecycle (1.0.4+dfsg-1) ... 183s Setting up r-cran-rprojroot (2.0.4-2) ... 183s Setting up r-cran-jsonlite (1.9.1+dfsg-1) ... 183s Setting up r-cran-waldo (0.6.1-2) ... 183s Setting up r-cran-callr (3.7.6-1) ... 183s Setting up r-cran-desc (1.4.3-1) ... 183s Setting up r-cran-pkgbuild (1.4.6-1) ... 183s Setting up r-cran-pkgload (1.4.0-1) ... 183s Setting up r-cran-testthat (3.2.3-1) ... 183s Processing triggers for libc-bin (2.41-1ubuntu2) ... 183s Processing triggers for man-db (2.13.0-1) ... 184s Processing triggers for install-info (7.1.1-1) ... 185s autopkgtest [22:09:06]: test run-unit-test: [----------------------- 185s Begin testing test-atomic.R 185s 185s R version 4.4.3 (2025-02-28) -- "Trophy Case" 185s Copyright (C) 2025 The R Foundation for Statistical Computing 185s Platform: x86_64-pc-linux-gnu 185s 185s R is free software and comes with ABSOLUTELY NO WARRANTY. 185s You are welcome to redistribute it under certain conditions. 185s Type 'license()' or 'licence()' for distribution details. 185s 185s R is a collaborative project with many contributors. 185s Type 'contributors()' for more information and 185s 'citation()' on how to cite R or R packages in publications. 185s 185s Type 'demo()' for some demos, 'help()' for on-line help, or 185s 'help.start()' for an HTML browser interface to help. 185s Type 'q()' to quit R. 185s 185s > NAME <- "atomic" 185s > source(file.path('_helper', 'init.R')) 186s > 186s > # - Basic Tests 186s > 186s > all.equal(as.character(diffPrint(chr.1, chr.2)), rdsf(100)) 186s [1] TRUE 186s > all.equal( 186s + as.character(diffPrint(chr.1, chr.2, mode="unified")), rdsf(200) 186s + ) 186s [1] TRUE 186s > all.equal( 186s + as.character(diffPrint(chr.1, chr.2, mode="context")), rdsf(400) 186s + ) 186s [1] TRUE 186s > all.equal( 186s + as.character(diffPrint(chr.1[2:3], chr.2[2], mode="sidebyside")), rdsf(500) 186s + ) 186s [1] TRUE 186s > # Check that `extra` works 186s > 186s > all.equal( 186s + as.character( 186s + diffPrint(chr.1, chr.2, mode="unified", extra=list(quote=FALSE)) 186s + ), 186s + rdsf(600) 186s + ) 186s [1] TRUE 186s > # make sure blanks line up correctly 186s > 186s > all.equal( 186s + as.character(diffPrint(chr.3, chr.4)), rdsf(700) 186s + ) 186s [1] TRUE 186s > all.equal( 186s + as.character(diffPrint(chr.3, chr.4, mode="unified")), rdsf(800) 186s + ) 186s [1] TRUE 186s > 186s > # - Word wrap in atomic 186s > 186s > A <- A.1 <- B <- c(letters, LETTERS) 186s > B[15] <- "Alabama" 186s > A.1[5] <- "Ee" 186s > C <- A[-15] 186s > D <- C 186s > E <- B[-45] 186s > 186s > # Test simple changes to vectors; at 80 columns removing 1:8 corresponds to 186s > # row deletion 186s > 186s > all.equal(as.character(diffPrint(A[-(1:8)], A)), rdsf(900)) 186s [1] TRUE 186s > all.equal(as.character(diffPrint(A, A[-(1:8)])), rdsf(1000)) 186s [1] TRUE 186s > 186s > all.equal(as.character(diffPrint(A[-1], A[-2])), rdsf(1100)) 186s [1] TRUE 186s > 186s > # Replace single word 186s > 186s > all.equal(as.character(diffPrint(A, B)), rdsf(1200)) 186s [1] TRUE 186s > all.equal(as.character(diffPrint(B, A)), rdsf(1250)) 186s [1] TRUE 186s > 186s > # Make sure turning off word.diff also turns of unwrapping, but that we can 186s > # turn off unwrapping without turning off word diff 186s > 186s > all.equal( 186s + as.character(diffPrint(A, B, word.diff=FALSE)), rdsf(1300) 186s + ) 186s [1] TRUE 186s > all.equal( 186s + as.character(diffPrint(A, B, unwrap.atomic=FALSE)), rdsf(1400) 186s + ) 186s [1] TRUE 186s > # Different wrap frequency and removed words that span lines 186s > 186s > all.equal( 186s + as.character(diffPrint(A, A.1[-(13:18)])), rdsf(1425) 186s + ) 186s [1] TRUE 186s > # Removing words 186s > 186s > all.equal(as.character(diffPrint(C, B)), rdsf(1450)) 186s [1] TRUE 186s > 186s > # Two hunks 186s > 186s > all.equal(as.character(diffPrint(D, E)), rdsf(1500)) 186s [1] TRUE 186s > all.equal(as.character(diffPrint(E, D)), rdsf(1600)) 186s [1] TRUE 186s > 186s > # Vignette example 186s > 186s > state.abb.2 <- state.abb 186s > state.abb.2[38] <- "Pennsylvania" 186s > 186s > all.equal( 186s + as.character(diffPrint(state.abb, state.abb.2)), rdsf(1700) 186s + ) 186s [1] TRUE 186s > # Number corner cases 186s > 186s > all.equal(as.character(diffPrint(1:100, 2:101)), rdsf(1800)) 186s [1] TRUE 186s > all.equal(as.character(diffPrint(2:101, 1:100)), rdsf(1900)) 186s [1] TRUE 186s > all.equal( 186s + as.character(diffPrint(2:101, (1:100)[-9])), rdsf(2000) 186s + ) 186s [1] TRUE 186s > all.equal( 186s + as.character(diffPrint((2:101)[-98], (1:100)[-9])), rdsf(2100) 186s + ) 187s [1] TRUE 187s > # This is one of those that a better in-hunk align algorithm would benefit 187s > 187s > int.1 <- int.2 <- 1:100 187s > int.2[c(8, 20, 60)] <- 99 187s > int.2 <- c(50:1, int.2) 187s > all.equal(as.character(diffPrint(int.1, int.2)), rdsf(2200)) 187s [1] TRUE 187s > 187s > # - with names 187s > rand.chrs <- do.call(paste0, expand.grid(LETTERS, LETTERS)) 187s > F <- F1 <- F2 <- (2:105)[-98] 187s > G <- G2 <- G3 <- G4 <- G5 <- (1:100)[-9] 187s > nm.1 <- rand.chrs[seq_along(F)] 187s > nm.2 <- rand.chrs[seq_along(G)] 187s > names(F1) <- names(F2) <- nm.1 187s > names(G3) <- names(G2) <- names(G3) <- names(G4) <- names(G5) <- nm.2 187s > names(G3)[c(5, 25, 60)] <- c("XXXXX", rand.chrs[c(300, 350)]) 187s > names(G4)[c(5, 25, 60)] <- names(G5)[c(5, 25, 60)] <- 187s + c("XX", rand.chrs[c(300, 350)]) 187s > attr(F2, "blah") <- 1:5 187s > attr(G5, "blah") <- 3:8 187s > 187s > all.equal(as.character(diffPrint(F, G)), rdsf(2300)) 187s [1] TRUE 187s > all.equal(as.character(diffPrint(F1, G2)), rdsf(2400)) 187s [1] TRUE 187s > 187s > # Challenging case b/c the names wrap with values, and you have to pick one or 187s > # the other to match when the wrap frequencies are different 187s > 187s > all.equal(as.character(diffPrint(F1, G3)), rdsf(2500)) 187s [1] TRUE 187s > all.equal(as.character(diffPrint(F1, G4)), rdsf(2520)) 187s [1] TRUE 187s > 187s > # Attributes 187s > 187s > all.equal(as.character(diffPrint(F2, G5)), rdsf(2530)) 187s [1] TRUE 187s > all.equal(as.character(diffPrint(F1, G5)), rdsf(2540)) 187s [1] TRUE 187s > 187s > # - Original tests 187s > set.seed(2) 187s > w1 <- sample( 187s + c( 187s + "carrot", "cat", "cake", "eat", "rabbit", "holes", "the", "a", "pasta", 187s + "boom", "noon", "sky", "hat", "blah", "paris", "dog", "snake" 187s + ), 25, replace=TRUE 187s + ) 187s > w4 <- w3 <- w2 <- w1 187s > w2[sample(seq_along(w1), 5)] <- LETTERS[1:5] 187s > w3 <- w1[8:15] 187s > w4 <- c(w1[1:5], toupper(w1[1:5]), w1[6:15], toupper(w1[1:5])) 187s > 187s > all.equal(as.character(diffPrint(w1, w2)), rdsf(2600)) 187s [1] TRUE 187s > all.equal(as.character(diffPrint(w1, w3)), rdsf(2700)) 187s [1] TRUE 187s > all.equal(as.character(diffPrint(w1, w4)), rdsf(2800)) 187s [1] TRUE 187s > 187s > # - Simple word diffs 187s > a <- c("a", "b", "c", "d") 187s > b <- c("b", "c", "d", "e") 187s > all.equal(as.character(diffPrint(a, b)), rdsf(2900)) 187s [1] TRUE 187s > 187s > a <- c("x", "a", "b", "c", "d", "z") 187s > b <- c("x", "b", "c", "d", "e", "z") 187s > all.equal(as.character(diffPrint(a, b)), rdsf(3000)) 187s [1] TRUE 187s > 187s > a <- c("x", "a", "b", "c", "d", "z") 187s > b <- c("z", "b", "c", "d", "e", "x") 187s > all.equal(as.character(diffPrint(a, b)), rdsf(3100)) 187s [1] TRUE 187s > 187s > # - Alignment edge cases 187s > all.equal( 187s + as.character(diffPrint(20:50, 30:62)), rdsf(3200) 187s + ) 187s [1] TRUE 187s > # below is off; should be aligning matching context line, part of the problem 187s > # might be that we're doing the realignment without thinking about what the 187s > # other hunk has. 187s > # 187s > # Possible encode each line as hunk#:diff/mix/cont 187s > 187s > # all.equal( 187s > # as.character(diffPrint(20:50, 35:62)), rdsf(3300) 187s > # ) 187s > 187s > # another interesting example where the existing algo seems to lead to a 187s > # reasonable outcome 187s > 187s > all.equal( 187s + as.character(diffPrint(c(1:24,35:45), c(1:8, 17:45))), rdsf(3400) 187s + ) 187s [1] TRUE 187s > 187s PASS 187s Begin testing test-banner.R 187s 187s R version 4.4.3 (2025-02-28) -- "Trophy Case" 187s Copyright (C) 2025 The R Foundation for Statistical Computing 187s Platform: x86_64-pc-linux-gnu 187s 187s R is free software and comes with ABSOLUTELY NO WARRANTY. 187s You are welcome to redistribute it under certain conditions. 187s Type 'license()' or 'licence()' for distribution details. 187s 187s R is a collaborative project with many contributors. 187s Type 'contributors()' for more information and 187s 'citation()' on how to cite R or R packages in publications. 187s 187s Type 'demo()' for some demos, 'help()' for on-line help, or 187s 'help.start()' for an HTML browser interface to help. 187s Type 'q()' to quit R. 187s 187s > NAME <- "banner" 187s > source(file.path('_helper', 'init.R')) 187s > 187s > # - Banner Capture ------------------------------------------------------------ 187s > 187s > ref <- as.character( 187s + diffPrint(1 + 2, letters, tar.banner="1 + 2", cur.banner="letters") 187s + ) 188s > identical(as.character(diffPrint(1 + 2, letters)), ref) 188s [1] TRUE 188s > invisible( 188s + setMethod( 188s + "diffPrint", c("numeric", "character"), 188s + function(target, current, ...) callNextMethod() 188s + ) ) 188s > identical(as.character(diffPrint(1 + 2, letters)), ref) 188s [1] TRUE 188s > isTRUE( 188s + !identical(as.character(diffPrint(1 + 2, LETTERS)), ref) 188s + ) 188s [1] TRUE 188s > 188s PASS 188s Begin testing test-capture.R 188s 188s R version 4.4.3 (2025-02-28) -- "Trophy Case" 188s Copyright (C) 2025 The R Foundation for Statistical Computing 188s Platform: x86_64-pc-linux-gnu 188s 188s R is free software and comes with ABSOLUTELY NO WARRANTY. 188s You are welcome to redistribute it under certain conditions. 188s Type 'license()' or 'licence()' for distribution details. 188s 188s R is a collaborative project with many contributors. 188s Type 'contributors()' for more information and 188s 'citation()' on how to cite R or R packages in publications. 188s 188s Type 'demo()' for some demos, 'help()' for on-line help, or 188s 'help.start()' for an HTML browser interface to help. 188s Type 'q()' to quit R. 188s 188s > NAME <- "capture" 188s > source(file.path('_helper', 'init.R')) 188s > 188s > # - capture width issues ------------------------------------------------------- 188s > 188s > local({ 188s + old.opt <- options(width=40L) 188s + on.exit(options(old.opt)) 188s + etc <- new("Settings", style=StyleRaw(), text.width=5L) # impossible width 188s + # warn: "Unable to set desired " 188s + res <- diffobj:::capture(letters, etc, function(...) do.call(cat, list(...))) 188s + all.equal(nchar(res), c(40L, 40L, 36L)) 188s + }) 188s [1] TRUE 188s Warning message: 188s In diffobj:::capture(letters, etc, function(...) do.call(cat, list(...))) : 188s Unable to set desired width 5, (invalid 'width' parameter, allowed 10...10000);proceeding with existing setting. 188s > 188s > # - errors in capture ---------------------------------------------------------- 188s > 188s > etc <- new("Settings", style=StyleRaw()) 188s > try(diffobj:::capture(stop('boom'), etc, function(...) stop(...))) # boom 188s Error in eval(x, etc@frame) : boom 188s Error in err("Failed attempting to get text representation of object: ", : 188s Failed attempting to get text representation of object: boom 188s > print <- function() NULL 188s > str <- function() NULL 188s > etc@mode <- "auto" 188s > etc@frame <- environment() 188s > try(diffobj:::capt_print(1, 2, etc, function(...) stop(...), list())) # compose 188s Error in match.call(definition, call, expand.dots, envir) : 188s unused argument (x = NULL) 188s Error in err("Unable to compose `print` call") : 188s Unable to compose `print` call 188s > # spec object 188s > try(diffobj:::capt_str(1, 2, etc, function(...) stop(...), list(object=1))) 188s Error in err("You may not specify `object` as part of `extra`") : 188s You may not specify `object` as part of `extra` 188s > try( # attempting to deparse 188s + diffobj:::capt_deparse( 188s + stop('a'), stop('b'), etc, function(...) stop(...), list() 188s + ) 188s + ) 188s Error in do.call(deparse, c(list(target), extra), quote = TRUE) : a 188s Error in err("Error attempting to deparse object(s)") : 188s Error attempting to deparse object(s) 188s > try( # target 188s + suppressWarnings( 188s + diffobj:::capt_file( 188s + tempfile(), tempfile(), etc, function(...) stop(...), list() 188s + ) ) 188s + ) 188s Error in file(con, "r") : cannot open the connection 188s Error in err("Unable to read `target` file.") : 188s Unable to read `target` file. 188s > local({ 188s + f <- tempfile() 188s + on.exit(unlink(f), add=TRUE) 188s + writeLines(letters, f) 188s + try( # "`current`" 188s + suppressWarnings( 188s + diffobj:::capt_file(f, tempfile(), etc, function(...) stop(...), list()) 188s + ) 188s + ) 188s + try( # "`target`" 188s + suppressWarnings( 188s + diffobj:::capt_csv( 188s + tempfile(), tempfile(), etc, function(...) stop(...), list() 188s + ) ) 188s + ) 188s + try( # "`current`" 188s + suppressWarnings( 188s + diffobj:::capt_csv( 188s + f, tempfile(), etc, function(...) stop(...), list() 188s + ) ) 188s + ) 188s + }) 188s Error in file(con, "r") : cannot open the connection 188s Error in err("Unable to read `current` file.") : 188s Unable to read `current` file. 188s Error in file(file, "rt") : cannot open the connection 188s Error in err("Unable to read `target` file.") : 188s Unable to read `target` file. 188s Error in file(file, "rt") : cannot open the connection 188s Error in err("Unable to read `current` file.") : 188s Unable to read `current` file. 188s > bad_obj <- structure(list(NULL), class='diffobj_ogewlhgiadfl3') 188s > try( # "Coercion of `target`" 188s + diffobj:::capt_chr(bad_obj, letters, etc, function(...) stop(...), list()) 188s + ) 188s Error in diffobj:::capt_chr(bad_obj, letters, etc, function(...) stop(...), : 188s Coercion of `target` did not produce character object (list). 188s > try( # "Coercion of `current`" 188s + diffobj:::capt_chr(letters, bad_obj, etc, function(...) stop(...), list()) 188s + ) 188s Error in diffobj:::capt_chr(letters, bad_obj, etc, function(...) stop(...), : 188s Coercion of `current` did not produce character object (list). 188s > 188s PASS 188s Begin testing test-check.R 188s 188s R version 4.4.3 (2025-02-28) -- "Trophy Case" 188s Copyright (C) 2025 The R Foundation for Statistical Computing 188s Platform: x86_64-pc-linux-gnu 188s 188s R is free software and comes with ABSOLUTELY NO WARRANTY. 188s You are welcome to redistribute it under certain conditions. 188s Type 'license()' or 'licence()' for distribution details. 188s 188s R is a collaborative project with many contributors. 188s Type 'contributors()' for more information and 188s 'citation()' on how to cite R or R packages in publications. 188s 188s Type 'demo()' for some demos, 'help()' for on-line help, or 188s 'help.start()' for an HTML browser interface to help. 188s Type 'q()' to quit R. 188s 188s > NAME <- "check" 188s > source(file.path('_helper', 'init.R')) 188s > 188s > # - is.less_flags -------------------------------------------------------------- 188s > 188s > isTRUE(diffobj:::is.less_flags("RVXF")) 188s [1] TRUE 188s > isTRUE(diffobj:::is.less_flags("rvxF")) 188s [1] TRUE 188s > identical(diffobj:::is.less_flags(c("rvxF", "RVXF")), FALSE) 188s [1] TRUE 188s > identical(diffobj:::is.less_flags(23), FALSE) 188s [1] TRUE 188s > identical(diffobj:::is.less_flags("rv xF"), FALSE) 188s [1] TRUE 188s > 188s > # - is.int.2L ------------------------------------------------------------------ 188s > 188s > isTRUE(diffobj:::is.int.2L(1:2)) 188s [1] TRUE 188s > isTRUE(diffobj:::is.int.2L(as.numeric(1:2))) 188s [1] TRUE 188s > identical(diffobj:::is.int.2L(c(1.3, 2.2)), FALSE) 188s [1] TRUE 188s > identical(diffobj:::is.int.2L(1:3), FALSE) 188s [1] TRUE 188s > identical(diffobj:::is.int.2L(c(1, NA)), FALSE) 188s [1] TRUE 188s > 188s > # - arg.funs ------------------------------------------------------------------- 188s > 188s > isTRUE(diffobj:::is.one.arg.fun(function(x) NULL)) 188s [1] TRUE 188s > isTRUE(diffobj:::is.one.arg.fun(function(x, y=5) NULL)) 188s [1] TRUE 188s > 188s > diffobj:::is.one.arg.fun(function(..., x) NULL) # "cannot have `...` as " 188s [1] "cannot have `...` as the first argument" 188s > diffobj:::is.one.arg.fun(NULL) # "is not a fun" 188s [1] "is not a function" 188s > diffobj:::is.one.arg.fun(function() NULL) # "have at least" 188s [1] "does not have at least one arguments" 188s > diffobj:::is.one.arg.fun(function(x, y) NULL) # "cannot have any" 188s [1] "cannot have any non-optional arguments other than first one" 188s > 188s > isTRUE(diffobj:::is.two.arg.fun(function(x, y) NULL)) 188s [1] TRUE 188s > isTRUE(diffobj:::is.two.arg.fun(function(x, y=5) NULL)) 188s [1] TRUE 188s > 188s > diffobj:::is.two.arg.fun(function(x, ..., y) NULL) # "cannot have `...` as " 188s [1] "cannot have `...` as one of the first two arguments" 188s > diffobj:::is.two.arg.fun(NULL) # "is not a fun" 188s [1] "is not a function" 188s > diffobj:::is.two.arg.fun(function(x) NULL) # "have at least") 188s [1] "does not have at least two arguments" 188s > diffobj:::is.two.arg.fun(function(x, y, z) NULL) # "cannot have any" 188s [1] "cannot have any non-optional arguments other than first two" 188s > 188s > # - valid_object --------------------------------------------------------------- 188s > 188s > s.h <- StyleHtml() 188s > s.h@wrap <- TRUE 188s > try(diffobj:::valid_object(s.h, "style", stop)) #an invalid `StyleHtml` object 188s Error in diffobj:::valid_object(s.h, "style", stop) : 188s Argument `style` is an invalid `StyleHtml` object because: - slot `wrap` must be FALSE for `styleHtml` objects. 188s > 188s > pal <- PaletteOfStyles() 188s > pal["html", "light", "yb"] <- list(s.h) 188s > try(# "`palette.of.styles` is an invalid" 188s + diffChr( 188s + "A", "B", palette.of.styles=pal, style="auto", format="html", 188s + brightness="light", color.mode="yb" 188s + ) 188s + ) 189s Error in diffChr(target = "A", current = "B", palette.of.styles = pal, : 189s Argument `palette.of.styles` is an invalid `StyleHtml` because it contains and invalid `Style` object: - slot `wrap` must be FALSE for `styleHtml` objects. 189s > # - brightness ----------------------------------------------------------------- 189s > 189s > try(diffPrint(1:3, 3:6, brightness=NA)) # "must be character" 189s Error in diffPrint(target = 1:3, current = 3:6, brightness = NA) : 189s Argument `brightness` must be character and not contain NAs 189s > try(diffPrint(1:3, 3:6, brightness="red")) # "may only contain values" 189s Error in diffPrint(target = 1:3, current = 3:6, brightness = "red") : 189s Argument `brightness` may only contain values in `c("neutral", "light", "dark")` 189s > try(diffPrint(1:3, 3:6, brightness=c(raw='light'))) # "one empty name" 189s Error in diffPrint(target = 1:3, current = 3:6, brightness = c(raw = "light")) : 189s Argument `brightness` must include at least one empty name `""` if it has names. 189s > try(diffPrint(1:3, 3:6, brightness=c('light', 'dark'))) # have names 189s Error in diffPrint(target = 1:3, current = 3:6, brightness = c("light", : 189s Argument `brightness` must have names if it has length > 1, and those names must include at least an empty name `""` as well as names only from `c("raw", "ansi8", "ansi256", "html")`. 189s > 189s > # - misc ----------------------------------------------------------------------- 189s > 189s > diffobj:::is.one.file.name(1) # "must be character" 189s [1] "must be character(1L) and not NA" 189s > try(diffPrint(1:3, 2:6, extra="hello")) # "must be a list" 189s Error in diffPrint(target = 1:3, current = 2:6, extra = "hello") : 189s Argument `extra` must be a list. 189s > try(diffPrint(1:3, 2:6, context=TRUE)) # "Argument `context` must" 189s Error in diffPrint(target = 1:3, current = 2:6, context = TRUE) : 189s Argument `context` must be integer(1L) and not NA, an object produced by `auto_context`, or "auto". 189s > try(diffPrint(1:3, 2:6, mode=1)) # "must be character" 189s Error in diffPrint(target = 1:3, current = 2:6, mode = 1) : 189s Argument `mode` must be character(1L) and in `c("auto", "unified", "context", "sidebyside")`. 189s > try(diffPrint(1:3, 2:6, tab.stops=-1)) # "strictly positive" 189s Error in diffPrint(target = 1:3, current = 2:6, tab.stops = -1) : 189s Argument `tab.stops` must be integer containing at least one value and with all values strictly positive 189s > try(diffPrint(1:3, 2:6, hunk.limit='hello')) # "integer vector" 189s Error in diffPrint(target = 1:3, current = 2:6, hunk.limit = "hello") : 189s Argument `hunk.limit` must be an integer vector of length 1 or 2 and if length 2, with the first value larger than or equal to the second. 189s > try(diffPrint(1:3, 2:6, guides='hello')) # "or a function" 189s Error in diffPrint(target = 1:3, current = 2:6, guides = "hello") : 189s Argument `guides` must be TRUE, FALSE, or a function 189s > try(diffPrint(1:3, 2:6, guides=function(x, y, z) NULL))# "cannot have any non" 189s Error in diffPrint(target = 1:3, current = 2:6, guides = function(x, y, : 189s Argument `guides` cannot have any non-optional arguments other than first two 189s > try(diffPrint(1:3, 2:6, trim='hello')) # "TRUE, FALSE, or a function" 189s Error in diffPrint(target = 1:3, current = 2:6, trim = "hello") : 189s Argument `trim` must be TRUE, FALSE, or a function 189s > try(diffPrint(1:3, 2:6, trim=function(x, y, z) NULL)) # "cannot have any non" 189s Error in diffPrint(target = 1:3, current = 2:6, trim = function(x, y, : 189s Argument `trim` cannot have any non-optional arguments other than first two 189s > try(diffPrint(1:3, 2:6, interactive='hello')) # "must be TRUE or" 189s Error in diffPrint(target = 1:3, current = 2:6, interactive = "hello") : 189s Argument `interactive` must be TRUE or FALSE. 189s > try(diffPrint(1:3, 2:6, max.diffs=1:10)) # "must be integer" 189s Error in diffPrint(target = 1:3, current = 2:6, max.diffs = 1:10) : 189s Argument `max.diffs` must be integer(1L) and not NA. 189s > try(diffPrint(1:3, 2:6, tar.banner=1:10)) # "must be atomic" 189s Error in diffPrint(target = 1:3, current = 2:6, tar.banner = 1:10) : 189s Argument `tar.banner` must be atomic and length(1L), NULL, a symbol, or a call 189s > try(diffPrint(1:3, 2:6, style=1:10)) # "must be \"auto\", a" 189s Error in diffPrint(target = 1:3, current = 2:6, style = 1:10) : 189s Argument `style` must be "auto", a `Style` object, or a list. 189s > try(diffPrint(1:3, 2:6, pager=1:10)) # "must be one of" 189s Error in diffPrint(target = 1:3, current = 2:6, pager = 1:10) : 189s Argument `pager` must be one of `c("auto", "off", "on")`, a `Pager` object, or a list. 189s > try(diffPrint(1:3, 2:6, format=1:10)) # "must be character" 189s Error in diffPrint(target = 1:3, current = 2:6, format = 1:10) : 189s Argument `format` must be character(1L) and not NA 189s > try(diffPrint(1:3, 2:6, palette.of.styles=1:10)) # "must be a `PaletteOfStyles`" 189s Error in diffPrint(target = 1:3, current = 2:6, palette.of.styles = 1:10) : 189s Argument `palette.of.styles` must be a `PaletteOfStyles` object. 189s > try(diffChr(letters, LETTERS, context=NA)) # "must be integer" 189s Error in diffChr(target = letters, current = LETTERS, context = NA) : 189s Argument `context` must be integer(1L) and not NA, an object produced by `auto_context`, or "auto". 189s > 189s > 189s > 189s PASS 189s Begin testing test-context.R 189s 189s R version 4.4.3 (2025-02-28) -- "Trophy Case" 189s Copyright (C) 2025 The R Foundation for Statistical Computing 189s Platform: x86_64-pc-linux-gnu 189s 189s R is free software and comes with ABSOLUTELY NO WARRANTY. 189s You are welcome to redistribute it under certain conditions. 189s Type 'license()' or 'licence()' for distribution details. 189s 189s R is a collaborative project with many contributors. 189s Type 'contributors()' for more information and 189s 'citation()' on how to cite R or R packages in publications. 189s 189s Type 'demo()' for some demos, 'help()' for on-line help, or 189s 'help.start()' for an HTML browser interface to help. 189s Type 'q()' to quit R. 189s 189s > NAME <- "context" 189s > source(file.path('_helper', 'init.R')) 189s > 189s > # - interesting context values ------------------------------------------------- 189s > 189s > all.equal( 189s + as.character(diffChr(chr.9, chr.10, context=0)), 189s + rdsf(100) 189s + ) 189s [1] TRUE 189s > all.equal( 189s + as.character(diffChr(chr.9, chr.10, context=-1L)), 189s + rdsf(150) 189s + ) 189s [1] TRUE 189s > all.equal( 189s + as.character(diffChr(chr.9, chr.10, context="auto")), 189s + rdsf(200) 189s + ) 189s [1] TRUE 189s > all.equal( 189s + as.character(diffChr(chr.9, chr.10, context=0, mode="context")), rdsf(300) 189s + ) 189s [1] TRUE 189s > # - with line limit ------------------------------------------------------------ 189s > 189s > all.equal( 189s + as.character(diffChr(chr.9, chr.10, context="auto", line.limit=18)), 189s + rdsf(400) 189s + ) 189s [1] TRUE 189s > all.equal( 189s + as.character(diffChr(chr.9, chr.10, context="auto", line.limit=25)), 189s + rdsf(500) 189s + ) 189s [1] TRUE 189s > # default to min context 189s > 189s > a <- b <- letters 189s > b[c(3, 20)] <- LETTERS[c(3,20)] 189s > all.equal( 189s + capture.output( 189s + show(diffChr(a, b, line.limit=c(20, 10), context='auto', format='raw')) 189s + ), 189s + txtf(100) 189s + ) 189s [1] TRUE 189s > # trim hunks in auto-context mode 189s > 189s > a <- b <- letters 189s > b[c(3, 10, 20)] <- LETTERS[c(3,10,20)] 189s > all.equal( 189s + capture.output(show( 189s + diffChr( 189s + a, b, hunk.limit=c(2, 1), context=auto_context(1, 5), line.limit=20, 189s + format='raw' 189s + ) 189s + )), 189s + txtf(200) 189s + ) 190s [1] TRUE 190s > # - error handling ------------------------------------------------------------- 190s > 190s > try(auto_context(min=-1, max=1:3)) # "`min` must be" 190s Error in auto_context(min = -1, max = 1:3) : 190s Argument `min` must be integer(1L) and greater than zero 190s > try(auto_context(min=1, max=1:3)) # "`max` must be" 190s Error in auto_context(min = 1, max = 1:3) : 190s Argument `max` must be integer(1L) and not NA 190s > 190s > 190s PASS 190s Begin testing test-core.R 190s 190s R version 4.4.3 (2025-02-28) -- "Trophy Case" 190s Copyright (C) 2025 The R Foundation for Statistical Computing 190s Platform: x86_64-pc-linux-gnu 190s 190s R is free software and comes with ABSOLUTELY NO WARRANTY. 190s You are welcome to redistribute it under certain conditions. 190s Type 'license()' or 'licence()' for distribution details. 190s 190s R is a collaborative project with many contributors. 190s Type 'contributors()' for more information and 190s 'citation()' on how to cite R or R packages in publications. 190s 190s Type 'demo()' for some demos, 'help()' for on-line help, or 190s 'help.start()' for an HTML browser interface to help. 190s Type 'q()' to quit R. 190s 190s > NAME <- "core" 190s > source(file.path('_helper', 'init.R')) 190s > 190s > # The Myers paper strings 190s > 190s > A <- c("a", "b", "c", "a", "b", "b", "a") 190s > B <- c("c", "b", "a", "b", "a", "c") 190s > 190s > # - diff myers simple ---------------------------------------------------------- 190s > 190s > identical( 190s + diffobj:::myers_simple(character(), character()), 190s + list(target = integer(0), current = integer(0)) 190s + ) 190s [1] TRUE 190s > identical( 190s + diffobj:::myers_simple("a", character()), 190s + list(target = NA_integer_, current = integer(0)) 190s + ) 190s [1] TRUE 190s > identical( 190s + diffobj:::myers_simple(character(), "a"), 190s + list(target = integer(0), current = NA_integer_) 190s + ) 190s [1] TRUE 190s > identical( 190s + diffobj:::myers_simple("a", "a"), list(target = 0L, current = 0L) 190s + ) 190s [1] TRUE 190s > identical( 190s + diffobj:::myers_simple("a", "b"), 190s + list(target = 1L, current = 1L) 190s + ) 190s [1] TRUE 190s > identical( 190s + diffobj:::myers_simple(c("a", "b"), "b"), 190s + list(target = c(NA, 0L), current = 0L) 190s + ) 190s [1] TRUE 190s > identical( 190s + diffobj:::myers_simple(c("a", "b"), "a"), 190s + list(target = c(0L, NA), current = 0L) 190s + ) 190s [1] TRUE 190s > identical( 190s + diffobj:::myers_simple("a", c("a", "b")), 190s + list(target = 0L, current = c(0L, NA)) 190s + ) 190s [1] TRUE 190s > identical( 190s + diffobj:::myers_simple("b", c("a", "b")), 190s + list(target = 0L, current = c(NA, 0L)) 190s + ) 190s [1] TRUE 190s > identical( 190s + diffobj:::myers_simple(c("a", "b"), c("b", "c")), 190s + list(target = c(NA, 0L), current = c(0L, NA)) 190s + ) 190s [1] TRUE 190s > identical( 190s + diffobj:::myers_simple(c("a", "b", "c", "d"), c("a", "c", "d", "b")), 190s + list(target = c(0L, NA, 0L, 0L), current = c(0L, 0L, 0L, NA)) 190s + ) 190s [1] TRUE 190s > # Actual Myers sample string 190s > identical( 190s + diffobj:::myers_simple(A, B), 190s + list(target = c(NA, NA, 0L, 0L, 0L, NA, 0L), current = c(0L, NA, 0L, 0L, 0L, NA)) 190s + ) 190s [1] TRUE 190s > # - diff myers mba ------------------------------------------------------------- 190s > 190s > identical(ses(character(), character()), character()) 190s [1] TRUE 190s > identical(ses("a", character()), "1d0") 190s [1] TRUE 190s > identical(ses(character(), "a"), "0a1") 190s [1] TRUE 190s > identical(ses("a", "a"), character()) 190s [1] TRUE 190s > identical(ses("a", "b"), "1c1") 190s [1] TRUE 190s > identical(ses(c("a", "b"), "b"), "1d0") 190s [1] TRUE 190s > identical(ses(c("a", "b"), "a"), "2d1") 190s [1] TRUE 190s > identical(ses("a", c("a", "b")), "1a2") 190s [1] TRUE 190s > identical(ses("b", c("a", "b")), "0a1") 190s [1] TRUE 190s > identical(ses(c("a", "b"), c("b", "c")), c("1d0", "2a2")) 190s [1] TRUE 190s > identical( 190s + ses(c("a", "b", "c", "d"), c("a", "c", "d", "b")), c("2d1", "4a4") 190s + ) 190s [1] TRUE 190s > # Actual Myers sample string 190s > identical(ses(A, B), c("1,2d0", "4d1", "5a3", "7a6")) 190s [1] TRUE 190s > # This used to cause errors due to under-allocated buffer vector 190s > identical(ses(letters[1:10], LETTERS[1:2]), "1,10c1,2") 190s [1] TRUE 190s > 190s > # A little more complex with changes, this was a problem at some point 190s > 190s > A2 <- c("A", "B", "C") 190s > B2 <- c("X", "A", "Y", "C") 190s > identical(ses(A2, B2), c("0a1", "2c3")) 190s [1] TRUE 190s > 190s > # More complicated strings; intended for use with contexts for hunks, 190s > # but making sure the diffs are correct 190s > 190s > A1 <- c("A", "AA", "B", "C", "D", "E", "F", "G", "H") 190s > B1 <- c("A", "B", "X", "W", "D", "DD", "E", "Y", "Z") 190s > C1 <- c("X", "D", "E", "Y", "Z", "H") 190s > 190s > identical(ses(A1, B1), c("2d1", "4c3,4", "5a6", "7,9c8,9")) 190s [1] TRUE 190s > identical(ses(A1, C1), c("1,4c1", "7,8c4,5")) 190s [1] TRUE 190s > 190s > A5 <- c("A", "AA", "B", "C", "D", "E", "F", "G", "H") 190s > B5 <- c("A", "B", "X", "W", "D", "E", "F", "W", "G") 190s > identical(ses(A5, B5), c("2d1", "4c3,4", "7a8", "9d9")) 190s [1] TRUE 190s > 190s > # NAs treated as strings 190s > 190s > identical(ses(c(NA, "a", "b"), c("a", "b", NA)), c("1d0", "3a3")) 190s [1] TRUE 190s > 190s > # Coersion to character 190s > 190s > identical(ses(1:5, 4:6), c("1,3d0", "5a3")) 190s [1] TRUE 190s > 190s > # - print/summary -------------------------------------------------------------- 190s > capture.output( 190s + res.1 <- summary(diffobj:::diff_myers(A, B), with.match=TRUE) 190s + ) 190s [1] " type string len offset" "1 Delete ab 2 1" 190s [3] "2 Match c 1 3" "3 Delete a 1 4" 190s [5] "4 Match b 1 5" "5 Insert a 1 3" 190s [7] "6 Match ba 2 6" "7 Insert c 1 6" 190s > identical( 190s + res.1, 190s + structure(list(type = structure(c(3L, 1L, 3L, 1L, 2L, 1L, 2L), .Label = c("Match", 190s + "Insert", "Delete"), class = "factor"), string = c("ab", "c", 190s + "a", "b", "a", "ba", "c"), len = c(2L, 1L, 1L, 1L, 1L, 2L, 1L 190s + ), offset = c(1L, 3L, 4L, 5L, 3L, 6L, 6L)), class = "data.frame", row.names = c(NA, 190s + -7L)) 190s + ) 190s [1] TRUE 190s > capture.output( 190s + res.2 <- summary(diffobj:::diff_myers(A, B), with.match=FALSE) 190s + ) 190s [1] " type len offset" "1 Delete 2 1" "2 Match 1 3" 190s [4] "3 Delete 1 4" "4 Match 1 5" "5 Insert 1 3" 190s [7] "6 Match 2 6" "7 Insert 1 6" 190s > identical( 190s + res.2, 190s + structure(list(type = structure(c(3L, 1L, 3L, 1L, 2L, 1L, 2L), .Label = c("Match", "Insert", "Delete"), class = "factor"), len = c(2L, 1L, 1L, 1L, 1L, 2L, 1L), offset = c(1L, 3L, 4L, 5L, 3L, 6L, 6L)), .Names = c("type", "len", "offset"), row.names = c(NA, -7L), class = "data.frame") 190s + ) 190s [1] TRUE 190s > identical( 190s + capture.output(print(diffobj:::diff_myers(A, B))), ses(A, B) 190s + ) 190s [1] TRUE 190s > # # - translate 190s > # aa <- c("a", "b", "b", "c", "e") 190s > # bb <- c("x", "y", "c", "f", "e") 190s > # identical( 190s > # diffobj:::diffObjCompact(diffobj:::diff_myers(A, B)), 190s > # list(target = c(NA, NA, 0L, NA, 0L, 0L, 0L), current = c(0L, 0L, NA, 0L, 0L, NA)) 190s > # ) 190s > # identical( 190s > # diffobj:::diffObjCompact(diffobj:::diff_myers(aa, bb)), 190s > # list(target = c(1L, 2L, NA, 0L, 0L), current = c(1L, 2L, 0L, NA, 0L)) 190s > # ) 190s > # 190s > # } ) 190s > 190s PASS 190s Begin testing test-diffChr.R 190s 190s R version 4.4.3 (2025-02-28) -- "Trophy Case" 190s Copyright (C) 2025 The R Foundation for Statistical Computing 190s Platform: x86_64-pc-linux-gnu 190s 190s R is free software and comes with ABSOLUTELY NO WARRANTY. 190s You are welcome to redistribute it under certain conditions. 190s Type 'license()' or 'licence()' for distribution details. 190s 190s R is a collaborative project with many contributors. 190s Type 'contributors()' for more information and 190s 'citation()' on how to cite R or R packages in publications. 190s 190s Type 'demo()' for some demos, 'help()' for on-line help, or 190s 'help.start()' for an HTML browser interface to help. 190s Type 'q()' to quit R. 190s 190s > NAME <- "diffChr" 190s > source(file.path('_helper', 'init.R')) 190s > 190s > # - Corner Cases --------------------------------------------------------------- 190s > 190s > # Corner cases from https://neil.fraser.name/writing/diff/ 190s > # Both of these appear handled correctly by the algorithm here 190s > # first one: suboptimal edit script due to two sided approach 190s > 190s > A1 <- c("X", "A", "X", "C", "X", "A", "B", "C") 190s > B1 <- c("A", "B", "C", "Y") 190s > all.equal(as.character(diffChr(A1, B1)), rdsf(100)) 191s [1] TRUE 191s > 191s > # second one: failure to find intersection at ends of paths (paths run into 191s > # each other eventually) 191s > 191s > A2 <- c("A", "B", "X", "A", "B") 191s > B2 <- c("A", "Y", "B") 191s > all.equal(as.character(diffChr(A2, B2)), rdsf(200)) 191s [1] TRUE 191s > 191s > # Simple corner cases 191s > 191s > all.equal( 191s + as.character(diffChr(character(), character())), rdsf(225) 191s + ) 191s [1] TRUE 191s > all.equal(as.character(diffChr("", "")), rdsf(250)) 191s [1] TRUE 191s > 191s > # - Larger strings ------------------------------------------------------------- 191s > 191s > # diffChr(X[1:2000], X[2001:4000]) 191s > 191s > all.equal(as.character(diffChr(chr.7, chr.8)), rdsf(300)) 191s [1] TRUE 191s > 191s > # Too slow to run; useful for benchmarking though 191s > 191s > # X1 <- X[1:2e4] 191s > # X2 <- X1[-sample(seq_along(X1), 2e3)] 191s > # X2[sample(seq_along(X2), 4e3)] <- "XXXXXX" 191s > # res <- diffChr(X1, X2) 191s > # res <- diffChr(X[1:10000], X[7500:17500]) 191s > # res <- ses(X[1:10000], X[7500:17500]) 191s > # res <- diffChr(X[1:25000], X[10001:50000], max.diffs=65000) 191s > 191s > # - Sentences 191s > chr.5 <- c( 191s + "hello there how are you doing", 191s + "humpty dumpty took a big fall", 191s + "lorem ipsum dolor sic est boom", 191s + "a computer once wrote a phrase" 191s + ) 191s > chr.6 <- c( 191s + "hello THERE how are you doing", 191s + "and another SENTENCE blah blah", 191s + "humpty dumpty TOOK a big fall", 191s + "a COMPUTER once wrote a phrase" 191s + ) 191s > all.equal(as.character(diffChr(chr.5, chr.6)), rdsf(400)) 191s [1] TRUE 191s > all.equal( 191s + as.character(diffChr(chr.5, chr.6, mode="unified")), rdsf(500) 191s + ) 191s [1] TRUE 191s > all.equal( 191s + as.character(diffChr(chr.5, chr.6, mode="context")), rdsf(600) 191s + ) 191s [1] TRUE 191s > # - Whitespace ----------------------------------------------------------------- 191s > 191s > all.equal( 191s + as.character(diffChr(c("a", "b", "c"), c("a ", "b", "c"))), rdsf(800) 191s + ) 191s [1] TRUE 191s > all.equal( 191s + as.character( 191s + diffChr(c("a", "b", "c"), c("a ", "b", "c"), ignore.white.space=FALSE) 191s + ), 191s + rdsf(900) 191s + ) 191s [1] TRUE 191s > # New lines count as new elements 191s > all.equal( 191s + as.character(diffChr("woo\nhoo\nfoo", c("woo", "foo"))), rdsf(1000) 191s + ) 191s [1] TRUE 191s > all.equal( 191s + capture.output(diffChr("hello . world", "hello. world", format='raw')), 191s + txtf(100) 191s + ) 191s [1] TRUE 191s > # - SGR ------------------------------------------------------------------------ 191s > 191s > a <- c("hello \033[31mworld\033[m", "umbrellas", "tomatoes") 191s > b <- c("hello world", "umbrellas", "tomatoes") 191s > 191s > local({ 191s + old.opt <- options(diffobj.sgr.supported=TRUE) 191s + on.exit(options(old.opt)) 191s + diff <- diffChr(a, b) # warn: 'contained ANSI CSI SGR' 191s + try(diffChr(a, b, strip.sgr=1:3)) # "TRUE, FALSE, or NULL" 191s + try(diffChr(a, b, sgr.supported=1:3)) # "TRUE, FALSE, or NULL" 191s + 191s + c( 191s + all.equal(capture.output(show(diff)), txtf(200)), 191s + all.equal(capture.output(show(diffChr(a, b, strip.sgr=FALSE))), txtf(300)), 191s + all.equal(capture.output(show(diffChr(a, b, format='raw'))), txtf(400)) 191s + ) 191s + }) 191s Error in diffChr(target = a, current = b, strip.sgr = 1:3) : 191s Argument `strip.sgr` must be TRUE, FALSE, or NULL 191s In addition: Warning message: 191s In diffChr(target = a, current = b) : 191s `target` or `current` contained ANSI CSI SGR when rendered; these were stripped. Use `strip.sgr=FALSE` to preserve them in the diffs. 191s Error in diffChr(target = a, current = b, sgr.supported = 1:3) : 191s Argument `sgr.supported` must be TRUE, FALSE, or NULL 191s [1] TRUE TRUE TRUE 191s > # - Alignment ------------------------------------------------------------------ 191s > 191s > chr.7 <- c("a b c d e", "F G h i j k", "xxx", "yyy", "k l m n o") 191s > chr.8 <- c("f g h i j k", "hello", "goodbye", "yo", "k l m n o") 191s > 191s > all.equal(as.character(diffChr(chr.7, chr.8)), rdsf(1100)) 191s [1] TRUE 191s > all.equal( 191s + as.character(diffChr(chr.7, chr.8, align=4/6)), rdsf(1100) # same as above 191s + ) 191s [1] TRUE 191s > # No longer aligns 191s > all.equal( 191s + as.character(diffChr(chr.7, chr.8, align=4.01/6)), rdsf(1200) 191s + ) 191s [1] TRUE 191s > all.equal( 191s + as.character(diffChr(chr.7, chr.8, align=AlignThreshold(min.chars=4))), 191s + rdsf(1100) # same as earlier 191s + ) 191s [1] TRUE 191s > all.equal( 191s + as.character(diffChr(chr.7, chr.8, align=AlignThreshold(min.chars=5))), 191s + rdsf(1200) # same as above 191s + ) 191s [1] TRUE 191s > 191s > ## Normally this would not align, but we allow symbols to count towards 191s > ## alignment 191s > chr.7a <- c("a b c e", "d [ f g") 191s > chr.7b <- "D [ f g" 191s > a1 <- AlignThreshold(threshold=0, min.chars=2, count.alnum.only=FALSE) 191s > all.equal( 191s + as.character(diffChr(chr.7a, chr.7b, align=a1, format='raw')), 191s + structure( 191s + c("< chr.7a > chr.7b ", "@@ 1,2 @@ @@ 1 @@ ", 191s + "< a b c e ~ ", "< d [ f g > D [ f g "), len = 4L) 191s + ) 191s [1] TRUE 191s > # corner case where alignment alog exits early because it runs out of B values 191s > # to match A values to. 191s > 191s > b <- c('a b c e', 'x w z f', 'e f g h') 191s > a <- c('z o o o', 'p o o o', 'A b c e') 191s > al <- AlignThreshold(threshold=0, min.chars=0) 191s > all.equal( 191s + capture.output(show(diffChr(b, a, align=al, format='raw'))), txtf(500) 191s + ) 191s [1] TRUE 191s > # - NAs ------------------------------------------------------------------------ 191s > 191s > all.equal( 191s + as.character( 191s + diffChr(c(NA, letters[1:3]), c(letters[1:3], LETTERS[1:2], NA)) 191s + ), 191s + rdsf(1300) 191s + ) 191s [1] TRUE 191s > all.equal( 191s + as.character( 191s + diffChr(c(letters[1:3]), c(letters[1:3], LETTERS[1:2], NA)) 191s + ), 191s + rdsf(1400) 191s + ) 191s [1] TRUE 191s > all.equal( 191s + as.character( 191s + diffChr(c(NA, letters[1:3]), c(letters[1:3], LETTERS[1:2])) 191s + ), 191s + rdsf(1500) 191s + ) 191s [1] TRUE 191s > # - Nested dots issue 134, h/t Noam Ross --------------------------------------- 191s > 191s > fn <- function(target, current, ...) { 191s + diffChr(target, current, ...) 191s + } 191s > all.equal( 191s + as.character(fn("a", "b", format = "raw")), 191s + structure( 191s + c( 191s + "< target > current ", 191s + "@@ 1 @@ @@ 1 @@ ", 191s + "< a > b "), len = 3L 191s + ) 191s + ) 191s [1] TRUE 191s > 191s > # - Newlines in input, issue 135, h/t Flying Sheep ----------------------------- 191s > 191s > a <- 'A Time Series:\n[1] 1 2 3 4' 191s > b <- 'A Time Series:\n[1] 9 4 1 4' 191s > all.equal( 191s + c(as.character(diffobj::diffChr(a, b, format = 'raw'))), 191s + c("< a > b ", 191s + "@@ 1,2 @@ @@ 1,2 @@ ", 191s + " A Time Series: A Time Series:", 191s + "< [1] 1 2 3 4 > [1] 9 4 1 4 ") 191s + ) 191s [1] TRUE 191s > 191s > # - Attributes causing dispatch in guides, issue 142 --------------------------- 191s > 191s > zlold <- c("0x0000, 0x001F", "0x007F, 0x009F", "0x0300, 0x036F") 191s > zlnew <- structure( 191s + c("0x0000, 0x001F", "0x008F, 0x009F", "0x0300, 0x036F"), .Dim = 3L 191s + ) 191s > diffChr(zlold, zlnew) # no warning 191s < zlold > zlnew 191s @@ 1,3 @@  @@ 1,3 @@  191s 0x0000, 0x001F 0x0000, 0x001F 191s < 0x007F, 0x009F > 0x008F, 0x009F 191s 0x0300, 0x036F 0x0300, 0x036F 191s > 191s > # - do.call, issue 158 --------------------------------------------------------- 191s > 191s > do.call(diffChr, list(1:2, 3:4, format='raw')) 191s < 1:2 > 3:4 191s @@ 1,2 @@ @@ 1,2 @@ 191s < 1 > 3 191s < 2 > 4 191s > 191s > 191s PASS 191s Begin testing test-diffDeparse.R 191s 191s R version 4.4.3 (2025-02-28) -- "Trophy Case" 191s Copyright (C) 2025 The R Foundation for Statistical Computing 191s Platform: x86_64-pc-linux-gnu 191s 191s R is free software and comes with ABSOLUTELY NO WARRANTY. 191s You are welcome to redistribute it under certain conditions. 191s Type 'license()' or 'licence()' for distribution details. 191s 191s R is a collaborative project with many contributors. 191s Type 'contributors()' for more information and 191s 'citation()' on how to cite R or R packages in publications. 191s 191s Type 'demo()' for some demos, 'help()' for on-line help, or 191s 'help.start()' for an HTML browser interface to help. 191s Type 'q()' to quit R. 191s 192s > NAME <- "diffDeparse" 192s > source(file.path('_helper', 'init.R')) 192s > 192s > # - deparse -------------------------------------------------------------------- 192s > 192s > # First one will be done in unified mode since `deparse` disregards 192s > # option(width=), second will be done side by side 192s > 192s > all.equal(as.character(diffDeparse(letters, LETTERS)), rdsf(100)) 192s [1] TRUE 192s > all.equal( 192s + as.character( 192s + diffDeparse(letters, LETTERS, extra=list(width.cutoff=20)) 192s + ), 192s + rdsf(200) 192s + ) 192s [1] TRUE 192s > 192s PASS 192s Begin testing test-diffObj.R 192s 192s R version 4.4.3 (2025-02-28) -- "Trophy Case" 192s Copyright (C) 2025 The R Foundation for Statistical Computing 192s Platform: x86_64-pc-linux-gnu 192s 192s R is free software and comes with ABSOLUTELY NO WARRANTY. 192s You are welcome to redistribute it under certain conditions. 192s Type 'license()' or 'licence()' for distribution details. 192s 192s R is a collaborative project with many contributors. 192s Type 'contributors()' for more information and 192s 'citation()' on how to cite R or R packages in publications. 192s 192s Type 'demo()' for some demos, 'help()' for on-line help, or 192s 'help.start()' for an HTML browser interface to help. 192s Type 'q()' to quit R. 192s 192s > NAME <- "diffObj" 192s > source(file.path('_helper', 'init.R')) 192s > 192s > # - simple diffobj ------------------------------------------------------------- 192s > 192s > # no diff for print 192s > all.equal(as.character(diffObj(iris.s, iris.c)), rdsf(100)) 192s [1] TRUE 192s > # no diff for str 192s > all.equal( 192s + as.character(diffObj(1:100, c(1:99, 200L))), rdsf(200) 192s + ) 193s [1] TRUE 193s > # diffs for both and must pick one, first one is str, second is print 193s > all.equal( 193s + as.character(diffObj(mdl1[7], mdl2[7])), rdsf(300) 193s + ) 193s [1] TRUE 193s > all.equal(as.character(diffObj(mdl1, mdl2)), rdsf(400)) 193s [1] TRUE 193s > 193s > # - fits or doesn't ------------------------------------------------------------ 193s > 193s > # Note, the first test used to favor str until we handicapped print 193s > all.equal( 193s + diffObj(matrix(1:20, ncol=2), matrix(2:21, ncol=2), line.limit=5)@capt.mode, 193s + "str" 193s + ) 193s [1] TRUE 193s > # test kinda slow, would be better to have one with smaller objects with print 193s > # methods 193s > 193s > all.equal( 193s + diffObj(mdl1, mdl2, line.limit=15, mode='unified')@capt.mode, "print" 193s + ) 193s [1] TRUE 193s > all.equal(diffObj(1:1000, 1000:1, line.limit=5)@capt.mode, "str") 193s [1] TRUE 193s > 193s > # - misc ----------------------------------------------------------------------- 193s > 193s > try(diffObj(1, 2, extra=list(TRUE))) # "extra" 193s Error in .local(target, current, ...) : 193s Argument `extra` must be empty in `diffObj`. 193s > 193s > # - print error ---------------------------------------------------------------- 193s > 193s > x <- structure("hello", class="diffobj_ogewlhgiadfl") 193s > y <- structure("goodbye", class="diffobj_ogewlhgiadfl") 193s > try(diffObj(x, y)) # "Error in calling .diffPrint." 193s Error in print.diffobj_ogewlhgiadfl(structure("goodbye", class = "diffobj_ogewlhgiadfl")) : 193s failure 193s Error in diffObj(target = x, current = y) : 193s Error in calling `diffPrint`: Failed attempting to get text representation of object: failure 193s > 193s > # Random exmaples to think through `diffObj` output 193s > 193s > diffObj( 193s + pairlist("`logical(2L)` should be length 2 (is 3)"), 193s + pairlist("be length 2 (is 3)") 193s + ) 193s < pairlist("`logical(2L)` should be l.. > pairlist("be length 2 (is 3)") 193s @@ 1,3 @@  @@ 1,3 @@  193s [[1]] [[1]] 193s < [1] "`logical(2L)` should be length 2 > [1] "be length 2 (is 3)" 193s :  (is 3)" ~ 193s 193s > 193s > diffObj( 193s + pairlist("`matrix(integer(), nrow = 3)` should be matrix (is list)", "`list(character(1L), 1L)[[2]]` should be type \"integer-like\" (is \"character\")"), 193s + pairlist("be class \"matrix\" (is \"list\")", "be type \"integer-like\" (is \"character\") at index [[2]]") 193s + ) 193s < pairlist("`matrix(integer(), nrow =.. > pairlist("be class \"matrix\" (is \.. 193s @@ 1,6 @@  @@ 1,6 @@  193s [[1]] [[1]] 193s < [1] "`matrix(integer(), nrow = 3)` sh > [1] "be class \"matrix\" (is \"list\" 193s : ould be matrix (is list)" : )" 193s 193s [[2]] [[2]] 193s < [1] "`list(character(1L), 1L)[[2]]` s > [1] "be type \"integer-like\" (is \"c 193s : hould be type \"integer-like\" (is \" : haracter\") at index [[2]]" 193s : character\")" ~ 193s 193s > 193s PASS 193s Begin testing test-diffStr.R 194s 194s R version 4.4.3 (2025-02-28) -- "Trophy Case" 194s Copyright (C) 2025 The R Foundation for Statistical Computing 194s Platform: x86_64-pc-linux-gnu 194s 194s R is free software and comes with ABSOLUTELY NO WARRANTY. 194s You are welcome to redistribute it under certain conditions. 194s Type 'license()' or 'licence()' for distribution details. 194s 194s R is a collaborative project with many contributors. 194s Type 'contributors()' for more information and 194s 'citation()' on how to cite R or R packages in publications. 194s 194s Type 'demo()' for some demos, 'help()' for on-line help, or 194s 'help.start()' for an HTML browser interface to help. 194s Type 'q()' to quit R. 194s 194s > NAME <- "diffStr" 194s > source(file.path('_helper', 'init.R')) 194s > 194s > # - lm models ------------------------------------------------------------------ 194s > 194s > # formula display changed 194s > if( 194s + R.Version()$major >= 3 && R.Version()$minor >= "3.1" || R.Version()$major > 3 194s + ) 194s + all.equal(as.character(diffStr(mdl1, mdl2)), rdsf(100)) 194s [1] TRUE 194s > 194s > # Too strict a line limit, can't get under 194s > all.equal( 194s + as.character(diffStr(mdl1[7], mdl2[7], line.limit=10)), rdsf(200) 194s + ) 194s [1] TRUE 194s > # Now we can get under 194s > all.equal( 194s + as.character(diffStr(mdl1[7], mdl2[7], line.limit=15)), rdsf(300) 194s + ) 194s [1] TRUE 194s > 194s > # - Simple structure ----------------------------------------------------------- 194s > # 194s > # Character types 194s > 194s > all.equal(as.character(diffStr(iris.c, iris.s)), rdsf(400)) 194s [1] TRUE 194s > 194s > # - Strict width --------------------------------------------------------------- 194s > # formula display changed 194s > if( 194s + R.Version()$major >= 3 && R.Version()$minor >= "3.1" || R.Version()$major > 3 194s + ) { 194s + c( 194s + all.equal( 194s + as.character( 194s + diffStr(mdl1, mdl2, extra=list(strict.width="wrap"), line.limit=30) 194s + ), 194s + rdsf(500) 194s + ), 194s + all.equal( 194s + as.character( 194s + diffStr(mdl1, mdl2, extra=list(strict.width="cut"), line.limit=30) 194s + ), 194s + rdsf(550) 194s + ) ) 194s + } 195s [1] TRUE TRUE 195s > # - max.diffs ------------------------------------------------------------------ 195s > 195s > invisible(diffStr(iris, mtcars, max.diffs=2)) # warn: "Exceeded diff limit" 195s Warning message: 195s Exceeded diff limit during diff computation (18 vs. 2 allowed); overall diff is likely not optimal 195s > 195s > # - max.level ------------------------------------------------------------------ 195s > 195s > all.equal( 195s + as.character(diffStr(mdl1[7], mdl2[7], extra=list(max.level="auto"))), 195s + rdsf(600) 195s + ) 195s [1] TRUE 195s > all.equal( 195s + as.character(diffStr(mdl1[7], mdl2[7], extra=list(max.level=2))), 195s + rdsf(700) 195s + ) 195s [1] TRUE 195s > # Has a difference, but can't get under; the second is just for reference 195s > 195s > lst.1 <- lst.2 <- lst.3 <- list(a=list(b=list(c=list(d=list(e=list(25)))))) 195s > names(lst.2) <- "A" 195s > 195s > all.equal( 195s + as.character(diffStr(lst.1, lst.2, line.limit=2)), rdsf(800) 195s + ) 195s [1] TRUE 195s > all.equal( 195s + as.character(diffStr(lst.1, lst.2, line.limit=2)), rdsf(900) 195s + ) 195s [1] TRUE 195s > # Test that initial run shows difference, but too big, but next one down 195s > # doesn't so have to increase level 195s > 195s > names(lst.3$a$b$c$d) <- "E" 195s > all.equal( 195s + as.character(diffStr(lst.1, lst.3, line.limit=6)), rdsf(1000) 195s + ) 195s [1] TRUE 195s > 195s > # - No visible differences ----------------------------------------------------- 195s > 195s > all.equal( 195s + as.character(diffStr(1:100, c(1:99, 101L))), rdsf(1100) 195s + ) 195s [1] TRUE 195s > 195s > # - Quoted Objects ------------------------------------------------------------- 195s > 195s > all.equal( 195s + as.character(diffStr(quote(zz + 1), quote(zz + 3))), 195s + structure( 195s + c("\033[33m<\033[39m \033[33mstr(quote(zz +..\033[39m \033[34m>\033[39m \033[34mstr(quote(zz +..\033[39m", "\033[36m@@ 1 @@ \033[39m \033[36m@@ 1 @@ \033[39m", "\033[33m<\033[39m \033[90m\033[39m language zz + \033[33m1\033[39m\033[90m\033[39m \033[34m>\033[39m \033[90m\033[39m language zz + \033[34m3\033[39m\033[90m\033[39m" 195s + ), len = 3L 195s + ) ) 195s [1] TRUE 195s > 195s > all.equal( 195s + as.character(diffStr(quote(x), quote(y))), 195s + structure(c("\033[33m<\033[39m \033[33mstr(quo..\033[39m \033[34m>\033[39m \033[34mstr(quo..\033[39m", "\033[36m@@ 1 @@ \033[39m \033[36m@@ 1 @@ \033[39m", "\033[33m<\033[39m \033[90m\033[39m symbol \033[33mx\033[39m\033[90m\033[39m \033[34m>\033[39m \033[90m\033[39m symbol \033[34my\033[39m\033[90m\033[39m"), len = 3L) 195s + ) 195s [1] TRUE 195s > 195s > # - Spaces with punctuation ---------------------------------------------------- 195s > 195s > all.equal( 195s + capture.output(show(diffStr(list(a=1), list(a=1, cabera=3), format='raw'))), 195s + txtf(100) 195s + ) 195s [1] TRUE 195s > 195s > 195s PASS 195s Begin testing test-file.R 195s 195s R version 4.4.3 (2025-02-28) -- "Trophy Case" 195s Copyright (C) 2025 The R Foundation for Statistical Computing 195s Platform: x86_64-pc-linux-gnu 195s 195s R is free software and comes with ABSOLUTELY NO WARRANTY. 195s You are welcome to redistribute it under certain conditions. 195s Type 'license()' or 'licence()' for distribution details. 195s 195s R is a collaborative project with many contributors. 195s Type 'contributors()' for more information and 195s 'citation()' on how to cite R or R packages in publications. 195s 195s Type 'demo()' for some demos, 'help()' for on-line help, or 195s 'help.start()' for an HTML browser interface to help. 195s Type 'q()' to quit R. 195s 195s > NAME <- "diffFile" 195s > source(file.path('_helper', 'init.R')) 195s > 195s > # - Code File ------------------------------------------------------------------ 195s > 195s > # # compare two crayon file versions 195s > # # These should eventually just be downloaded and made into diffFile tests 195s > 195s > f.p.1 <- file.path("_helper", "objs", "diffFile", "s.o.3f1f68.R") 195s > f.p.2 <- file.path("_helper", "objs", "diffFile", "s.o.30dbe0.R") 195s > 195s > # url.1 <- "https://raw.githubusercontent.com/gaborcsardi/crayon/3f1f68ab177b82a27e754a58264af801f7194820/R/string_operations.r" 195s > # url.2 <- "https://raw.githubusercontent.com/gaborcsardi/crayon/30dbe0d4d92157350af3cb3aeebd6d9a9cdf5c0e/R/string_operations.r" 195s > # f.1 <- readLines(url.1) 195s > # f.2 <- readLines(url.2) 195s > # writeLines(f.1, f.p.1) 195s > # writeLines(f.2, f.p.2) 195s > 195s > all.equal(as.character(diffFile(f.p.1, f.p.2)), rdsf(100)) 196s [1] TRUE 196s > 196s > # - RDS ------------------------------------------------------------------------ 196s > 196s > f1 <- tempfile() 196s > f2 <- tempfile() 196s > 196s > mx1 <- mx2 <- matrix(1:9, 3) 196s > mx2[5] <- 99 196s > saveRDS(mx1, f1) 196s > saveRDS(mx2, f2) 196s > 196s > is(diffobj:::get_rds(f1), "matrix") 196s [1] TRUE 196s > is(diffobj:::get_rds(f2), "matrix") 196s [1] TRUE 196s > 196s > ref <- as.character(diffPrint(mx1, mx2)) 196s > identical(as.character(diffPrint(mx1, f2, cur.banner="mx2")), ref) 196s [1] TRUE 196s > identical(as.character(diffPrint(f1, mx2, tar.banner="mx1")), ref) 196s [1] TRUE 196s > identical( 196s + as.character(diffPrint(f1, f2, tar.banner="mx1", cur.banner="mx2")), ref 196s + ) 196s [1] TRUE 196s > isTRUE(!identical(as.character(diffPrint(mx1, f2, rds=FALSE)), ref)) 196s [1] TRUE 196s > unlink(c(f1, f2)) 196s > 196s > # - file ----------------------------------------------------------------------- 196s > 196s > f1 <- tempfile() 196s > f2 <- tempfile() 196s > letters2 <- letters 196s > letters2[15] <- "HELLO" 196s > 196s > writeLines(letters, f1) 196s > writeLines(letters2, f2) 196s > 196s > identical( 196s + as.character(diffChr(letters, letters2, tar.banner="f1", cur.banner="f2")), 196s + as.character(diffFile(f1, f2)) 196s + ) 196s [1] TRUE 196s > unlink(c(f1, f2)) 196s > 196s > # issue 133 h/t Noam Ross, thanks for the test 196s > 196s > x <- tempfile() 196s > y <- tempfile() 196s > cat("Hello\nthere\n", file = x) 196s > file.copy(x, y) 196s [1] TRUE 196s > identical( 196s + as.character(diffFile(x, y, format = "raw")), 196s + structure( 196s + c("No visible differences between objects.", 196s + "< x > y ", 196s + "@@ 1,2 @@ @@ 1,2 @@ ", 196s + " Hello Hello ", 196s + " there there "), len = 5L) 196s + ) 196s [1] TRUE 196s > unlink(c(x, y)) 196s > 196s > # - CSV ------------------------------------------------------------------------ 196s > 196s > f1 <- tempfile() 196s > f2 <- tempfile() 196s > 196s > iris2 <- iris 196s > iris2$Sepal.Length[25] <- 9.9 196s > 196s > write.csv(iris, f1, row.names=FALSE) 196s > write.csv(iris2, f2, row.names=FALSE) 196s > 196s > identical( 196s + as.character(diffPrint(iris, iris2, tar.banner="f1", cur.banner="f2")), 196s + as.character(diffCsv(f1, f2)) 196s + ) 196s [1] TRUE 196s > unlink(c(f1, f2)) 196s > 196s > 196s PASS 196s Begin testing test-guide.R 196s 196s R version 4.4.3 (2025-02-28) -- "Trophy Case" 196s Copyright (C) 2025 The R Foundation for Statistical Computing 196s Platform: x86_64-pc-linux-gnu 196s 196s R is free software and comes with ABSOLUTELY NO WARRANTY. 196s You are welcome to redistribute it under certain conditions. 196s Type 'license()' or 'licence()' for distribution details. 196s 196s R is a collaborative project with many contributors. 196s Type 'contributors()' for more information and 196s 'citation()' on how to cite R or R packages in publications. 196s 196s Type 'demo()' for some demos, 'help()' for on-line help, or 196s 'help.start()' for an HTML browser interface to help. 196s Type 'q()' to quit R. 196s 196s > NAME <- "guides" 196s > source(file.path('_helper', 'init.R')) 196s > 196s > # - detect_2d_guides ----------------------------------------------------------- 196s > 196s > iris.dply <- c("Source: local data frame [150 x 5]", "Groups: Species [3]", "", " Sepal.Length Sepal.Width", " (dbl) (dbl)", "1 5.1 3.5", "2 4.9 3.0", "3 4.7 3.2", "4 4.6 3.1", "5 5.0 3.6", "6 5.4 3.9", "7 4.6 3.4", "8 5.0 3.4", "9 4.4 2.9", "10 4.9 3.1", ".. ... ...", "Variables not shown: Petal.Length", " (dbl), Petal.Width (dbl), Species", " (fctr)") 196s > 196s > all.equal(diffobj:::detect_2d_guides(iris.dply), 4:5) 196s [1] TRUE 196s > # wrapping data table with separator (#96) 196s > 196s > DT.txt <- c( 196s + " V1 V2 V3", 196s + " 1: 0.3201122 0.6907066 0.5004968", 196s + " --- ", 196s + "1000: 0.3547379 0.2836985 0.8121208", 196s + " V4 V5", 196s + " 1: 0.331665 0.6788726", 196s + " --- ", 196s + "1000: 0.553012 0.7789110" 196s + ) 196s > all.equal( 196s + diffobj:::detect_2d_guides(DT.txt), 196s + c(1L, 5L) 196s + ) 196s [1] TRUE 196s > # Narrow width 196s > 196s > old.opt <- options(width=40) 196s > all.equal(diffobj:::detect_2d_guides(capture.output(iris)), c(1, 152)) 196s [1] TRUE 196s > all.equal( 196s + diffobj:::detect_2d_guides(capture.output(USAccDeaths)), c(1, 8, 15) 196s + ) 196s [1] TRUE 196s > # Time series 196s > all.equal(diffobj:::detect_2d_guides(capture.output(UKgas)), 1) 196s [1] TRUE 196s > # no row.names (#111) 196s > 196s > df1 <- capture.output(print(data.frame(a=1:3), row.names=FALSE)) 196s > no.rn.guide <- diffobj:::detect_2d_guides(df1) # no warning 196s > all.equal(no.rn.guide, 1L) 196s [1] TRUE 196s > 196s > df2 <- capture.output(print(data.frame(x="A"), row.names=FALSE)) 196s > no.rn.guide.2 <- diffobj:::detect_2d_guides(df2) # no warning 196s > all.equal(no.rn.guide.2, 1L) 196s [1] TRUE 196s > options(old.opt) 196s > 196s > # - detect_list_guides --------------------------------------------------------- 196s > 196s > l.1 <- list(1, 1:3, matrix(1:3, 1)) 196s > l.2 <- list(a=1, list(1:3, b=4, c=list(1, b=2)), matrix(1:3, 1)) 196s > c.l.1 <- capture.output(l.1) 196s > c.l.2 <- capture.output(l.2) 196s > # cbind(c.l.2, seq_along(c.l.2) %in% diffobj:::detect_list_guides(c.l.2)) 196s > all.equal(diffobj:::detect_list_guides(capture.output(l.1)), c(1, 4, 7)) 196s [1] TRUE 196s > all.equal( 196s + diffobj:::detect_list_guides(capture.output(l.2)), 196s + c(1, 5, 8, 12, 15, 20) 196s + ) 196s [1] TRUE 196s > 196s > # - detect_matrix_guides ------------------------------------------------------- 196s > mx3 <- mx4 <- mx5 <- mx5a <- mx11 <- matrix( 196s + c( 196s + "averylongwordthatcanlahblah", "causeasinglewidecolumnblah", 196s + "matrixtowrapseveraltimes", "inarrowscreen", "onceuponatime", 196s + "agreenduckflew", "overthemountains", "inalongofantelopes", 196s + "ineedthreemore", "entriesactually", "nowonlytwomore", "iwaswrongearlier" 196s + ), 196s + nrow=3, ncol=4 196s + ) 196s > mx3.c <- capture.output(mx3) 196s > all.equal(diffobj:::detect_matrix_guides(mx3.c, NULL), c(1, 5)) 196s [1] TRUE 196s > 196s > dimnames(mx4) <- list(A=NULL, B=NULL) 196s > mx4.c <- capture.output(mx4) 196s > all.equal( 196s + diffobj:::detect_matrix_guides(mx4.c, dimnames(mx4)), c(1, 2, 6, 7) 196s + ) 196s [1] TRUE 196s > attr(mx5, "blah") <- letters[1:10] 196s > mx5.c <- capture.output(mx5) 196s > all.equal( 196s + diffobj:::detect_matrix_guides(mx5.c, dimnames(mx5)), c(1, 5) 196s + ) 196s [1] TRUE 196s > # Simple matrices that don't wrap 196s > 196s > mx6 <- mx7 <- mx7.1 <- matrix(1:4, 2) 196s > 196s > mx6.c <- capture.output(mx6) 196s > all.equal(diffobj:::detect_matrix_guides(mx6.c, dimnames(mx6)), 1) 196s [1] TRUE 196s > 196s > dimnames(mx7) <- list(A=letters[1:2], B=LETTERS[25:26]) 196s > mx7.c <- capture.output(mx7) 196s > all.equal(diffobj:::detect_matrix_guides(mx7.c, dimnames(mx7)), c(1, 2)) 196s [1] TRUE 196s > 196s > dimnames(mx7.1) <- list(letters[1:2], B=LETTERS[25:26]) 196s > mx7.1.c <- capture.output(mx7.1) 196s > all.equal(diffobj:::detect_matrix_guides(mx7.1.c, dimnames(mx7.1)), c(1, 2)) 196s [1] TRUE 196s > 196s > # Single col matrix 196s > 196s > mx8 <- matrix(1:2, 2) 196s > 196s > mx8.c <- capture.output(mx8) 196s > all.equal(diffobj:::detect_matrix_guides(mx8.c, dimnames(mx8)), 1) 196s [1] TRUE 196s > 196s > # Wrapping matrices with colnames 196s > 196s > mx9 <- mx3 196s > dimnames(mx9) <- list(A=letters[1:3], B=LETTERS[20:23]) 196s > mx9.c <- capture.output(mx9) 196s > all.equal( 196s + diffobj:::detect_matrix_guides(mx9.c, dimnames(mx9)), c(1:2, 6:7) 196s + ) 196s [1] TRUE 196s > 196s > mx10 <- mx9 196s > attr(mx10, "blah") <- matrix(1:4, 2) 196s > mx10.c <- capture.output(mx10) 196s > all.equal( 196s + diffobj:::detect_matrix_guides(mx10.c, dimnames(mx10)), c(1:2, 6:7) 196s + ) 196s [1] TRUE 196s > local({ 196s + old.opt <- options(width=30L) 196s + on.exit(options(old.opt)) 196s + attr(mx11, "blah") <- letters[1:15] 196s + mx11.c <- capture.output(mx11) 196s + 196s + all.equal( 196s + diffobj:::detect_matrix_guides(mx11.c, dimnames(mx11)), c(1, 5, 9, 13) 196s + ) 196s + }) 196s [1] TRUE 196s > # - detect_array_guides -------------------------------------------------------- 196s > 196s > a.1 <- array(1:6, dim=c(2, 1, 3)) 196s > a.2 <- array(1:6, dim=c(2, 1, 3), dimnames=list(NULL, "X", LETTERS[1:3])) 196s > a.3 <- array( 196s + 1:6, dim=c(2, 1, 3), 196s + dimnames=list(rows=NULL, cols="X", LETTERS[1:3]) 196s + ) 196s > a.4 <- `attr<-`(a.3, "hello", "random attribute") 196s > a.5 <- array(1:36, dim=c(6, 2, 3)) 196s > a.6 <- array(1:2, c(2, 1, 1)) 196s > c.a.1 <- capture.output(a.1) 196s > c.a.2 <- capture.output(a.2) 196s > c.a.3 <- capture.output(a.3) 196s > c.a.4 <- capture.output(a.4) 196s > c.a.5 <- capture.output(a.5) 196s > c.a.6 <- capture.output(a.6) 196s > # helper funs to vizualize the guide line detection 196s > # viz_dag <- function(capt, obj) 196s > # cbind( 196s > # capt, 196s > # seq_along(capt) %in% diffobj:::detect_array_guides(capt, dimnames(obj)) 196s > # ) 196s > # viz_dag(c.a.1, a.1) 196s > # viz_dag(c.a.2, a.2) 196s > # viz_dag(c.a.3, a.3) 196s > # viz_dag(c.a.4, a.4) 196s > # viz_dag(c.a.5, a.5) 196s > # viz_dag(c.a.6, a.6) 196s > all.equal( 196s + diffobj:::detect_array_guides(c.a.1, dimnames(a.1)), 196s + c(1L, 2L, 7L, 8L, 13L, 14L) 196s + ) 196s [1] TRUE 196s > all.equal( 196s + diffobj:::detect_array_guides(c.a.2, dimnames(a.2)), 196s + c(1L, 2L, 7L, 8L, 13L, 14L) 196s + ) 196s [1] TRUE 196s > all.equal( 196s + diffobj:::detect_array_guides(c.a.3, dimnames(a.3)), 196s + c(1L, 2L, 8L, 9L, 15L, 16L) 196s + ) 196s [1] TRUE 196s > all.equal( 196s + diffobj:::detect_array_guides(c.a.4, dimnames(a.4)), 196s + c(1L, 2L, 8L, 9L, 15L, 16L) 196s + ) 196s [1] TRUE 196s > all.equal( 196s + diffobj:::detect_array_guides(c.a.5, dimnames(a.5)), 196s + c(1L, 2L, 11L, 12L, 21L, 22L) 196s + ) 196s [1] TRUE 196s > all.equal( 196s + diffobj:::detect_array_guides(c.a.6, dimnames(a.6)), 196s + c(1L, 2L) 196s + ) 196s [1] TRUE 196s > # - detect_s4_guides ----------------------------------------------------------- 196s > 196s > setClass("gtest2", slots=c(hello="integer", `good bye`="list")) 196s > setClass("gtest1", 196s + slots=c( 196s + sub.class="gtest2", blah="character", gah="list", sub.class.2="gtest2" 196s + ) ) 196s > obj <- new( 196s + "gtest1", 196s + sub.class=new( 196s + "gtest2", hello=1:3, `good bye`=list("a", list(l1=5, l2="wow")) 196s + ), 196s + blah=letters, gah=list(one=1:10, two=LETTERS), 196s + sub.class.2=new( 196s + "gtest2", hello=3:1, `good bye`=list("B", list(l1=5, l2="wow")) 196s + ) 196s + ) 196s > # note at this point the nested stuff doesn't work, so we're just shooting for 196s > # the simple match 196s > 196s > c.1 <- capture.output(obj) 196s > identical( 196s + diffobj:::detect_s4_guides(c.1, obj), 196s + c(1L, 2L, 21L, 25L, 34L) 196s + ) 196s [1] TRUE 196s > # small diff as that has a non-default show method 196s > 196s > diff <- diffChr("a", "b", format='raw') 197s > diff.out <- capture.output(show(diff)) 197s > all.equal( 197s + diffobj:::detect_s4_guides(diff.out, diff), 197s + integer() 197s + ) 197s [1] TRUE 197s > # - custom guide fun ----------------------------------------------------------- 197s > 197s > a <- b <- matrix(1:100) 197s > b[50] <- -99L 197s > 197s > fun1 <- function(x, y) c(1L, 14L, 53L) 197s > 197s > all.equal(as.character(diffPrint(a, b, guides=fun1)), rdsf(100)) 197s [1] TRUE 197s > if(getRversion() >= "3.2.2") { 197s + capture.output( # warn: "If you did not specify a `guides`" 197s + trim.err <- 197s + as.character(diffPrint(a, b, guides=function(x, y) stop("boom"))), 197s + type="message" 197s + ) 197s + all.equal(trim.err, rdsf(200)) 197s + } 197s [1] TRUE 197s Warning message: 197s In apply_guides(current, cur.capt, guide_fun) : 197s `guides*` method produced an error when attempting to compute guide lines ; If you did not specify a `guides` function or define custom `guides*` methods contact maintainer (see `?guides`). Proceeding without guides. 197s > # "must produce an integer vector" 197s > try(diffobj:::apply_guides(1:26, LETTERS, function(x, y) 35L)) 197s Error in diffobj:::apply_guides(1:26, LETTERS, function(x, y) 35L) : 197s `guides*` method must produce an integer vector containing unique index values for the `obj.as.chr` vector; If you did not specify a `guides` function or define custom `guides*` methods contact maintainer (see `?guides`). Proceeding without guides. 197s > 197s > # - errors --------------------------------------------------------------------- 197s > 197s > try(guidesStr(1:26, rep(NA_character_, 26)))# "Cannot compute guides" 197s Error in guidesStr(1:26, rep(NA_character_, 26)) : 197s Cannot compute guides if `obj.as.chr` contains NAs 197s > try(guidesPrint(1:26, rep(NA_character_, 26)))# "Cannot compute guides" 197s Error in guidesPrint(1:26, rep(NA_character_, 26)) : 197s Cannot compute guides if `obj.as.chr` contains NAs 197s > 197s > # - corner cases --------------------------------------------------------------- 197s > 197s > all.equal( 197s + diffobj:::split_by_guides(letters, integer()), 197s + list(structure(letters, idx=seq_along(letters))) 197s + ) 197s [1] TRUE 197s > try(guidesStr(1:26, rep(NA_character_, 26))) # "Cannot compute guides" 197s Error in guidesStr(1:26, rep(NA_character_, 26)) : 197s Cannot compute guides if `obj.as.chr` contains NAs 197s > try(guidesPrint(1:26, rep(NA_character_, 26))) # "Cannot compute guides" 197s Error in guidesPrint(1:26, rep(NA_character_, 26)) : 197s Cannot compute guides if `obj.as.chr` contains NAs 197s > 197s > # - issue 117 - 2d guide failure ----------------------------------------------- 197s > 197s > # Thanks to Sebastian Meyer (@bastician) for MRE 197s > a <- b <- data.frame(ID = 0, value = 1) 197s > b$value <- 2 197s > a <- a[c(rep(1, 86), 2)] 197s > b <- b[c(rep(1, 86), 2)] 197s > diffPrint(a, b, mode = "unified", format='raw', context=0) 197s < a 197s > b 197s @@ 16 / 16 @@ 197s ~ value 197s < 1 1 197s > 1 2 197s > 197s PASS 197s Begin testing test-html.R 197s 197s R version 4.4.3 (2025-02-28) -- "Trophy Case" 197s Copyright (C) 2025 The R Foundation for Statistical Computing 197s Platform: x86_64-pc-linux-gnu 197s 197s R is free software and comes with ABSOLUTELY NO WARRANTY. 197s You are welcome to redistribute it under certain conditions. 197s Type 'license()' or 'licence()' for distribution details. 197s 197s R is a collaborative project with many contributors. 197s Type 'contributors()' for more information and 197s 'citation()' on how to cite R or R packages in publications. 197s 197s Type 'demo()' for some demos, 'help()' for on-line help, or 197s 'help.start()' for an HTML browser interface to help. 197s Type 'q()' to quit R. 197s 197s > NAME <- "html" 197s > source(file.path('_helper', 'init.R')) 197s > 197s > # Verify that internal css works 197s > 197s > # - HTML Output Modes ---------------------------------------------------------- 197s > 197s > all.equal( 197s + as.character( 197s + diffPrint( 197s + letters[1:3], LETTERS[1:3], 197s + style=StyleHtmlLightYb(html.output="diff.only") 197s + ) ), 197s + rdsf(100) 197s + ) 197s [1] TRUE 197s > all.equal( 197s + as.character( 197s + diffPrint( 197s + letters[1:6], LETTERS[1:6], 197s + style=StyleHtmlLightYb(html.output="diff.w.style") 197s + ) ), 197s + rdsf(200) 197s + ) 197s [1] TRUE 197s > all.equal( 197s + as.character( 197s + diffPrint( 197s + letters[1:6], LETTERS[1:6], 197s + style=StyleHtmlLightYb(html.output="page") 197s + ) ), 197s + rdsf(300) 197s + ) 197s [1] TRUE 197s > all.equal( 197s + as.character( 197s + diffPrint( 197s + letters[1:6], LETTERS[1:6], mode="unified", 197s + style=StyleHtmlLightYb(html.output="page") 197s + ) ), 197s + rdsf(350) 197s + ) 197s [1] TRUE 197s > # - Sub CSS -------------------------------------------------------------------- 197s > 197s > # Mess up the CSS to test that we can change CSS file 197s > 197s > local({ 197s + f <- tempfile() 197s + on.exit(unlink(f)) 197s + cat("div.row {background-color: red;}\n", file=f) 197s + all.equal( 197s + as.character( 197s + diffPrint( 197s + letters, LETTERS, 197s + style=StyleHtmlLightYb(css=f, html.output="diff.w.style") 197s + ) 197s + ), 197s + rdsf(400) 197s + ) 197s + }) 197s [1] TRUE 197s > # - Tag funs ------------------------------------------------------------------- 197s > 197s > div_a <- div_f("A", c(color="red")) 197s > all.equal( 197s + div_a(c("a", "b")), 197s + c( 197s + "
a
", 197s + "
b
" 197s + ) 197s + ) 197s [1] TRUE 197s > span_a <- span_f() 197s > all.equal(span_a(c("a", "b")), c("a", "b")) 197s [1] TRUE 197s > 197s > try(div_a(TRUE)) # "must be character" 197s Error in div_a(TRUE) : Argument `x` must be character. 197s > all.equal(div_a(character()),character()) 197s [1] TRUE 197s > 197s > # - nchar ---------------------------------------------------------------------- 197s > 197s > all.equal(nchar_html("25"), 2) 197s [1] TRUE 197s > all.equal(nchar_html("25 "), 3) 197s [1] TRUE 197s > 197s > # - cont_f --------------------------------------------------------------------- 197s > 197s > try(cont_f("hello")(1:3)) # "must be character" 197s Error in cont_f("hello")(1:3) : Argument `x` must be character. 197s > 197s PASS 197s Begin testing test-limit.R 197s 197s R version 4.4.3 (2025-02-28) -- "Trophy Case" 197s Copyright (C) 2025 The R Foundation for Statistical Computing 197s Platform: x86_64-pc-linux-gnu 197s 197s R is free software and comes with ABSOLUTELY NO WARRANTY. 197s You are welcome to redistribute it under certain conditions. 197s Type 'license()' or 'licence()' for distribution details. 197s 197s R is a collaborative project with many contributors. 197s Type 'contributors()' for more information and 197s 'citation()' on how to cite R or R packages in publications. 197s 197s Type 'demo()' for some demos, 'help()' for on-line help, or 197s 'help.start()' for an HTML browser interface to help. 197s Type 'q()' to quit R. 197s 197s > NAME <- "limit" 197s > source(file.path('_helper', 'init.R')) 198s > 198s > # - Simple limit --------------------------------------------------------------- 198s > 198s > A <- B <- letters[1:5] 198s > B[2] <- "B" 198s > B[6] <- "F" 198s > # diffChr(A, B) 198s > all.equal(as.character(diffChr(A, B, line.limit=2)), rdsf(100)) 198s [1] TRUE 198s > all.equal(as.character(diffChr(A, B, line.limit=3)), rdsf(200)) 198s [1] TRUE 198s > 198s > # - More Extensive Limits ------------------------------------------------------ 198s > 198s > Puromycin2 <- Puromycin 198s > set.seed(1) 198s > Puromycin2$conc[c(8, 15:19, 22)] <- round(runif(7), 2) 198s > Puromycin2$state[17] <- "treated" 198s > 198s > all.equal( 198s + as.character( 198s + diffPrint(Puromycin, Puromycin2, line.limit=15, mode="sidebyside") 198s + ), 198s + rdsf(300) 198s + ) 198s [1] TRUE 198s > 198s > # # Not working right 198s > # diffPrint(Puromycin, Puromycin2, line.limit=15, mode="context") 198s > all.equal( 198s + as.character( 198s + diffPrint(Puromycin, Puromycin2, line.limit=15, mode="unified") 198s + ), 198s + rdsf(500) 198s + ) 198s [1] TRUE 198s > 198s > all.equal( 198s + as.character( 198s + diffPrint(Puromycin, Puromycin2, line.limit=5, mode="sidebyside") 198s + ), 198s + rdsf(600) 198s + ) 198s [1] TRUE 198s > all.equal( 198s + as.character( 198s + diffPrint(Puromycin, Puromycin2, line.limit=5, mode="context") 198s + ), 198s + rdsf(700) 198s + ) 198s [1] TRUE 198s > all.equal( 198s + as.character( 198s + diffPrint(Puromycin, Puromycin2, line.limit=5, mode="unified") 198s + ), 198s + rdsf(800) 198s + ) 198s [1] TRUE 198s > 198s > Puromycin3 <- Puromycin2 198s > names(Puromycin3)[3L] <- "blargh" 198s > all.equal( 198s + as.character( 198s + diffPrint(Puromycin, Puromycin3, line.limit=7, mode="sidebyside") 198s + ), 198s + rdsf(900) 198s + ) 198s [1] TRUE 198s > all.equal( 198s + as.character( 198s + diffPrint(Puromycin, Puromycin3, line.limit=6, mode="context") 198s + ), 198s + rdsf(1000) 198s + ) 198s [1] TRUE 198s > # - Dual limit values ---------------------------------------------------------- 198s > 198s > A <- letters[1:10] 198s > B <- LETTERS[1:10] 198s > all.equal( 198s + as.character(diffChr(A, B, line.limit=c(10, 3))), rdsf(1100) 198s + ) 198s [1] TRUE 198s > all.equal( 198s + as.character(diffChr(A, B, line.limit=c(13, 3))), rdsf(1200) 198s + ) 198s [1] TRUE 198s > try(diffChr(A, B, line.limit=c(3, 13))) # "larger than or" 198s Error in diffChr(target = A, current = B, line.limit = c(3, 13)) : 198s Argument `line.limit` must be an integer vector of length 1 or 2 and if length 2, with the first value larger than or equal to the second, or "auto" or the result of calling `auto_line_limit` 198s > 198s > # - Cause errors --------------------------------------------------------------- 198s > 198s > try(diffChr(letters, LETTERS, line.limit=1:3)) # "vector of length" 198s Error in diffChr(target = letters, current = LETTERS, line.limit = 1:3) : 198s Argument `line.limit` must be an integer vector of length 1 or 2 and if length 2, with the first value larger than or equal to the second, or "auto" or the result of calling `auto_line_limit` 198s > 198s > # - Vanishing header ----------------------------------------------------------- 198s > 198s > # issue 64 198s > all.equal( 198s + as.character( 198s + diffChr( 198s + letters, letters[-13], context=auto_context(0, 10), line.limit=1L, 198s + pager="off" 198s + ) ), 198s + rdsf(1300) 198s + ) 198s [1] TRUE 198s > 198s > 198s PASS 198s Begin testing test-methods.R 198s 198s R version 4.4.3 (2025-02-28) -- "Trophy Case" 198s Copyright (C) 2025 The R Foundation for Statistical Computing 198s Platform: x86_64-pc-linux-gnu 198s 198s R is free software and comes with ABSOLUTELY NO WARRANTY. 198s You are welcome to redistribute it under certain conditions. 198s Type 'license()' or 'licence()' for distribution details. 198s 198s R is a collaborative project with many contributors. 198s Type 'contributors()' for more information and 198s 'citation()' on how to cite R or R packages in publications. 198s 198s Type 'demo()' for some demos, 'help()' for on-line help, or 198s 'help.start()' for an HTML browser interface to help. 198s Type 'q()' to quit R. 198s 199s > NAME <- "methods" 199s > source(file.path('_helper', 'init.R')) 199s > 199s > # try implementing methods that change default behavior outside of package 199s > 199s > # - Force unified -------------------------------------------------------------- 199s > 199s > par.env <- new.env() 199s > local( 199s + envir=par.env, { 199s + suppressWarnings( 199s + setClass( 199s + "testdiffobj", slots=c(a="integer"), where=par.env 199s + ) ) 199s + # First check that we do actually output in side by side mode 199s + 199s + print( 199s + all.equal( 199s + as.character(diffObj(new("testdiffobj", a=1L), new("testdiffobj", a=2L))), 199s + rdsf(100) 199s + ) ) 199s + # Now verify that with our new method, we get unified 199s + 199s + setMethod("diffObj", c("testdiffobj", "testdiffobj"), 199s + function(target, current, ...) { 199s + dots <- match.call(expand.dots=FALSE)[["..."]] 199s + if("mode" %in% names(dots)) 199s + callNextMethod() 199s + else 199s + callNextMethod(target=target, current=current, ..., mode="unified") 199s + }, 199s + where=par.env 199s + ) 199s + on.exit( 199s + removeMethod("diffObj", c("testdiffobj", "testdiffobj"), where=par.env) 199s + ) 199s + print( 199s + all.equal( 199s + as.character(diffObj(new("testdiffobj", a=1L), new("testdiffobj", a=2L))), 199s + rdsf(200) 199s + ) ) 199s + # Make sure we can still get side by side? 199s + print( 199s + all.equal( 199s + as.character( 199s + diffObj( 199s + new("testdiffobj", a=1L), new("testdiffobj", a=2L), mode="sidebyside" 199s + ) ), 199s + rdsf(100) 199s + ) ) 199s + try( #"Argument `mode` must be" 199s + diffObj(new("testdiffobj", a=1L), new("testdiffobj", a=2L), mode="hello") 199s + ) 199s + }) 199s [1] TRUE 199s [1] TRUE 199s [1] TRUE 199s Error in diffObj(target = new("testdiffobj", a = 1L), current = new("testdiffobj", : 199s Error in calling `diffStr`: Argument `mode` must be character(1L) and in `c("auto", "unified", "context", "sidebyside")`. 199s > 199s PASS 199s Begin testing test-misc.R 199s 199s R version 4.4.3 (2025-02-28) -- "Trophy Case" 199s Copyright (C) 2025 The R Foundation for Statistical Computing 199s Platform: x86_64-pc-linux-gnu 199s 199s R is free software and comes with ABSOLUTELY NO WARRANTY. 199s You are welcome to redistribute it under certain conditions. 199s Type 'license()' or 'licence()' for distribution details. 199s 199s R is a collaborative project with many contributors. 199s Type 'contributors()' for more information and 199s 'citation()' on how to cite R or R packages in publications. 199s 199s Type 'demo()' for some demos, 'help()' for on-line help, or 199s 'help.start()' for an HTML browser interface to help. 199s Type 'q()' to quit R. 199s 199s > NAME <- "misc" 199s > source(file.path('_helper', 'init.R')) 199s > 199s > # - trim_str ------------------------------------------------------------------- 199s > 199s > a <- structure("hello", class="A", xx="B") 199s > b <- structure(1:10, yy=a) 199s > long.string <- "I'm a string long enough to force wrapping under most cases so that I may be useful for tests andiamareallylongwordtoseehowwrappingbreakslongwordsthatexceed" 199s > obj <- list( 199s + a=a, b=b, c=1:50, 199s + d=long.string, 199s + e=list(1, structure(2, zz=list(a=1, b=list("a", ls=long.string))), e=letters) 199s + ) 199s > # conditional because of issue113 199s > str.txt <- capture.output(str(obj)) 199s > str.txt.w <- capture.output(str(obj, width=30L, strict.width="wrap")) 200s > 200s > if( 200s + getRversion() >= '3.5.0' && as.numeric(R.Version()[['svn rev']]) >= 73780 200s + ) { 200s + c( 200s + all.equal( 200s + diffobj:::str_levels(str.txt, wrap=FALSE), 200s + c(0L, 1L, 2L, 1L, 2L, 3L, 1L, 1L, 1L, 2L, 2L, 3L, 4L, 4L, 5L, 5L, 2L) 200s + ), 200s + all.equal( 200s + diffobj:::str_levels(str.txt.w, wrap=TRUE), 200s + c(0L, 1L, 2L, 1L, 1L, 2L, 2L, 3L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 200s + 1L, 1L, 2L, 2L, 3L, 3L, 4L, 4L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 200s + 2L, 2L 200s + ) 200s + ) ) 200s + } else { 200s + c( 200s + all.equal( 200s + diffobj:::str_levels(str.txt, wrap=FALSE), 200s + c(0L, 1L, 3L, 1L, 2L, 4L, 1L, 1L, 1L, 2L, 2L, 3L, 4L, 4L, 5L, 5L, 2L) 200s + ), 200s + all.equal( 200s + diffobj:::str_levels(str.txt.w, wrap=TRUE), 200s + c(0L, 1L, 1L, 3L, 1L, 1L, 2L, 2L, 4L, 4L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 3L, 3L, 4L, 4L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 2L, 2L) 200s + ) ) 200s + } 200s [1] TRUE TRUE 200s > # cat( 200s > # paste( 200s > # format(substr(str.txt.w, 1, 20)), diffobj:::str_levels(str.txt.w, TRUE), 200s > # sep=": " 200s > # ), 200s > # sep="\n" 200s > # ) 200s > 200s > # - rle_sub -------------------------------------------------------------------- 200s > 200s > x <- c(1, 1, 1, 2, 2, 1, 1, 3, 3, 4, 4, 4, 5, 2, 2) 200s > r <- rle(x) 200s > all.equal(diffobj:::rle_sub(r, r$values == 1L), list(1:3, 6:7)) 200s [1] TRUE 200s > all.equal(diffobj:::rle_sub(r, r$values == 2L), list(4:5, 14:15)) 200s [1] TRUE 200s > isTRUE(all(x[unlist(diffobj:::rle_sub(r, r$values == 1L))] == 1)) 200s [1] TRUE 200s > isTRUE(all(x[unlist(diffobj:::rle_sub(r, r$values == 2L))] == 2)) 200s [1] TRUE 200s > isTRUE(all(x[unlist(diffobj:::rle_sub(r, r$values == 3L))] == 3)) 200s [1] TRUE 200s > 200s > # - call funs ------------------------------------------------------------------ 200s > 200s > # Failure case; assumes no S4 dispatch in testthat 200s > calls <- list(quote(a()), quote(b()), quote(notafunctionblah())) 200s > all.equal(diffobj:::which_top(calls), length(calls)) 200s [1] TRUE 200s > diffobj:::extract_call(calls, new.env()) # warn: "Unable to find") 200s $call 200s NULL 200s 200s $tar 200s NULL 200s 200s $cur 200s NULL 200s 200s Warning message: 200s In get_fun(found.call[[1L]], env = par.env) : 200s Unable to find function `notafunctionblah` to match call with. 200s > 200s > # missing param works 200s > 200s > calls2 <- pairlist( 200s + quote(diffChr("a")), quote(diffChr("a")), quote(.local(target, current, ...)) 200s + ) 200s > all.equal( 200s + diffobj:::extract_call(calls2, new.env()), 200s + list(call = quote(diffChr(target = "a", NULL)), tar = "a", cur = NULL) 200s + ) 200s [1] TRUE 200s > # fallback parent frame; can't think of a good way to actually cause this to 200s > # happen 200s > 200s > # all.equal(diffobj:::par_frame(), .GlobalEnv) 200s > 200s > # - lines ---------------------------------------------------------------------- 200s > 200s > old.val <- Sys.getenv("LINES", unset=NA) 200s > Sys.setenv(LINES="25") 200s > all.equal(console_lines(), 25L) 200s [1] TRUE 200s > Sys.setenv(LINES="-25") 200s > all.equal(console_lines(), 48L) 200s [1] TRUE 200s > Sys.unsetenv("LINES") 200s > all.equal(console_lines(), 48L) 200s [1] TRUE 200s > 200s > # - get_funs ------------------------------------------------------------------- 200s > 200s > identical( 200s + diffobj:::get_fun(quote(diffobj::diffPrint), .BaseNamespaceEnv), 200s + diffobj::diffPrint 200s + ) 200s [1] TRUE 200s > identical( 200s + diffobj:::get_fun(quote(diffobj:::diffPrint), .BaseNamespaceEnv), 200s + diffobj::diffPrint 200s + ) 200s [1] TRUE 200s > identical( 200s + diffobj:::get_fun(quote(diffPrint), getNamespace("diffobj")), 200s + diffobj::diffPrint 200s + ) 200s [1] TRUE 200s > gf <- diffobj:::get_fun(quote(notAFunction), getNamespace("diffobj")) # warn 200s Warning message: 200s In diffobj:::get_fun(quote(notAFunction), getNamespace("diffobj")) : 200s Unable to find function `notAFunction` to match call with. 200s > 200s > identical(gf, NULL) 200s [1] TRUE 200s > 200s > # - trimws2 -------------------------------------------------------------------- 200s > 200s > all.equal(diffobj:::trimws2("hello world"), "hello world") 200s [1] TRUE 200s > all.equal(diffobj:::trimws2(" hello world"), "hello world") 200s [1] TRUE 200s > all.equal(diffobj:::trimws2(" hello world "), "hello world") 200s [1] TRUE 200s > all.equal(diffobj:::trimws2(" hello world ", 'left'), "hello world ") 200s [1] TRUE 200s > all.equal(diffobj:::trimws2(" hello world ", 'right'), " hello world") 200s [1] TRUE 200s > 200s > try(diffobj:::trimws2(" hello world ", 'banana')) # "is wrong" 200s Error in diffobj:::trimws2(" hello world ", "banana") : 200s Argument which is wrong 200s > 200s > # - string --------------------------------------------------------------------- 200s > 200s > try(diffobj:::substr2("hello world", 1, 1:2)) # "same length" 200s Error in diffobj:::substr2("hello world", 1, 1:2) : 200s `start` and `stop` must be length 1 or the same length as `x`. 200s > 200s > # - Gutters -------------------------------------------------------------------- 200s > 200s > etc <- new("Settings") 200s > etc@style <- StyleRaw() 200s > etc@style@funs@gutter <- function(x) stop("bad gutters") 200s > try(diffobj:::gutter_dat(etc)) # "Failed attempting to apply gutter." 200s Error in funs@gutter(paste0(gutt.dat.format, funs@gutter.pad(text@gutter.pad))) : 200s bad gutters 200s Error in diffobj:::gutter_dat(etc) : 200s Failed attempting to apply gutter formatting functions; if you did not customize them, contact maintainer. See `?StyleFuns`. 200s > 200s > # - Finalizer error handling --------------------------------------------------- 200s > 200s > try(finalizeHtml(letters, NULL)) # "must be character" 200s Error in .local(x, ...) : Argument `x.chr` must be character 200s > try(finalizeHtml(letters, letters, letters)) # "must be character\\(1L" 200s Error in .local(x, ...) : Argument `js` must be character(1L) and not NA. 200s > 200s > # - c.factor ------------------------------------------------------------------- 200s > 200s > all.equal(diffobj:::c.factor(), factor(character())) 200s [1] TRUE 200s > 200s > # - strip_hz ------------------------------------------------------------------- 200s > 200s > # Can't trigger this directly because wrapper doesn't let this case through 200s > diffobj:::strip_hz_c_int(character(), 8L, TRUE) 200s character(0) 200s > 200s > 200s > 200s PASS 200s Begin testing test-pager.R 200s 200s R version 4.4.3 (2025-02-28) -- "Trophy Case" 200s Copyright (C) 2025 The R Foundation for Statistical Computing 200s Platform: x86_64-pc-linux-gnu 200s 200s R is free software and comes with ABSOLUTELY NO WARRANTY. 200s You are welcome to redistribute it under certain conditions. 200s Type 'license()' or 'licence()' for distribution details. 200s 200s R is a collaborative project with many contributors. 200s Type 'contributors()' for more information and 200s 'citation()' on how to cite R or R packages in publications. 200s 200s Type 'demo()' for some demos, 'help()' for on-line help, or 200s 'help.start()' for an HTML browser interface to help. 200s Type 'q()' to quit R. 200s 200s > NAME <- "pager" 200s > source(file.path('_helper', 'init.R')) 200s > source(file.path('_helper', 'tools.R')) 200s > 200s > # void pager, doesn't do anything, just to test side effect of writing to file 200s > 200s > void <- function(x) NULL 200s > 200s > # - Specifying pager ----------------------------------------------------------- 200s > 200s > style <- gdo("diffobj.style") 200s > if(is.null(style)) style <- StyleAnsi8NeutralYb() 200s > style@pager@file.ext <- "xyz" # make pager identifiable 200s > all.equal( 200s + diffChr( 200s + letters, LETTERS, style=style, pager="auto", interactive=TRUE 200s + )@etc@style@pager@file.ext, 200s + "xyz" 200s + ) 200s [1] TRUE 200s > all.equal( 200s + diffChr( 200s + letters, LETTERS, style=style, pager="off", interactive=TRUE 200s + )@etc@style@pager, 200s + PagerOff() 200s + ) 200s [1] TRUE 200s > identical( 200s + diffChr( 200s + letters, LETTERS, style=style, pager="auto", interactive=FALSE 200s + )@etc@style@pager, 200s + PagerOff() 200s + ) 200s [1] TRUE 200s > 200s > # - System Pagers -------------------------------------------------------------- 200s > 200s > less.orig <- Sys.getenv("LESS") 200s > pager_mock <- function(...) { 200s + warning(Sys.getenv("LESS")) 200s + 42 200s + } 200s > is(PagerSystem(), "PagerSystem") 200s [1] TRUE 200s > is( 200s + pg.less <- PagerSystemLess(pager=pager_mock, flags="VWF"), 200s + "PagerSystemLess" 200s + ) 200s [1] TRUE 200s > res <- pg.less@pager() # warning: "VWF$" 200s Warning message: 200s In pager.old(x) : -VWF 200s > all.equal(res, 42) 200s [1] TRUE 200s > all.equal(less.orig, Sys.getenv("LESS")) 200s [1] TRUE 200s > all.equal(PagerSystemLess(pager=pager_mock)@flags, "R") 200s [1] TRUE 200s > 200s > try(PagerSystemLess(pager=pager_mock, flags=letters)) 200s Error in initialize(value, ...) : 200s Argument `flags` must be character(1L) and not NA 200s > 200s > # - use_pager ------------------------------------------------------------------ 200s > 200s > local({ 200s + suppressMessages(mock(diffobj:::console_lines, 10L)) 200s + on.exit(suppressMessages(untrace(diffobj:::console_lines))) 200s + c( 200s + isTRUE(diffobj:::use_pager(PagerSystem(threshold=0L), 1L)), 200s + identical(diffobj:::use_pager(PagerSystem(threshold=50L), 25L), FALSE), 200s + isTRUE(diffobj:::use_pager(PagerSystem(threshold=-1L), 25L)) 200s + ) 200s + }) 200s [1] TRUE TRUE TRUE 200s > 200s > # - Setting LESS var ----------------------------------------------------------- 200s > 200s > local({ 200s + less.orig <- Sys.getenv("LESS", unset=NA) 200s + old.opt <- options(crayon.enabled=FALSE) # problems with crayon and LESS 200s + on.exit({ 200s + diffobj:::reset_less_var(less.orig) # should be tested..., but super simple 200s + options(old.opt) 200s + }) 200s + 200s + # Here we change the LESS variable even though we're mocking getenv 200s + 200s + Sys.unsetenv("LESS") 200s + a0 <- isTRUE(is.na(diffobj:::set_less_var("XF"))) 200s + a <- all.equal(Sys.getenv("LESS"), "-XF") 200s + Sys.setenv(LESS="-X -F") 200s + b <- all.equal(diffobj:::set_less_var("VP"), "-X -F") 200s + c <- all.equal(Sys.getenv("LESS"), "-X -FVP") 200s + diffobj:::reset_less_var("-XF") 200s + d <- all.equal(Sys.getenv("LESS"), "-XF") 200s + diffobj:::reset_less_var(NA_character_) 200s + e <- all.equal(Sys.getenv("LESS"), "") 200s + Sys.setenv(LESS="-XF") 200s + f <- all.equal(diffobj:::set_less_var("V"), "-XF") 200s + g <- all.equal(Sys.getenv("LESS"), "-XFV") 200s + c(a0, a, b, c, d, e, f, g) 200s + }) 200s [1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE 200s > 200s > # - viewer vs browser ---------------------------------------------------------- 200s > 200s > local({ 200s + viewer <- function(x) "viewer" 200s + old.external <- options(viewer=viewer, browser=function(url) "browser") 200s + on.exit(options(old.external)) 200s + suppressMessages(mock(diffobj::make_blocking, quote(fun))) 200s + on.exit(suppressMessages(untrace(diffobj::make_blocking)), add=TRUE) 200s + pager <- PagerBrowser() 200s + a <- all.equal(pager@pager("blah"), "viewer") 200s + options(viewer=NULL) 200s + b <- all.equal(pager@pager("blah"), "browser") 200s + options(viewer=function(x) stop("viewer error")) 200s + res <- pager@pager("blah") # warning: "IDE viewer" 200s + c <- all.equal(res, "browser") 200s + c(a, b, c) 200s + }) 200s [1] TRUE TRUE TRUE 200s Warning message: 200s In pager@pager("blah") : 200s IDE viewer failed with error viewer error; falling back to `browseURL` 200s > 200s > # - blocking ------------------------------------------------------------------- 200s > 200s > # Note that readline just proceeds in non-interactive mode, which is why we 200s > # need the mock here 200s > 200s > local({ 200s + suppressMessages(mock(diffobj:::interactive, FALSE)) 200s + on.exit(suppressMessages(untrace(diffobj:::interactive))) 200s + suppressMessages(mock(diffobj:::readline, quote(warning("readline")))) 200s + on.exit(suppressMessages(untrace(diffobj:::readline)), add=TRUE) 200s + try(make_blocking("hello")) # "must be a function" 200s + try(make_blocking(identity, letters)) # "must be character\\(1L") 200s + try(make_blocking(identity, "a", "a")) # "must be TRUE" 200s + 200s + res <- make_blocking(sum)(1:10) # warn: "readline" 200s + a <- all.equal(sum(1:10), res) 200s + b <- isTRUE( 200s + withVisible( 200s + suppressWarnings(make_blocking(sum, invisible=FALSE)(1:10)) 200s + )[['visible']] 200s + ) 200s + c(a, b) 200s + }) 200s Error in make_blocking("hello") : Argument `fun` must be a function 200s Error in make_blocking(identity, letters) : 200s Argument `msg` must be character(1L) and not NA 200s Error in make_blocking(identity, "a", "a") : 200s Argument `invisible.res` must be TRUE or FALSE 200s [1] TRUE TRUE 200s Warning message: 200s In readline(msg) : readline 200s > local({ 200s + suppressMessages(mock(diffobj:::interactive, TRUE)) 200s + on.exit(suppressMessages(untrace(diffobj:::interactive))) 200s + suppressMessages(mock(diffobj:::readline, quote(warning("readline")))) 200s + on.exit(suppressMessages(untrace(diffobj:::readline)), add=TRUE) 200s + show( # warn "readline" 200s + diffChr( 200s + "a", "b", format='raw', 200s + pager=list(pager=void, make.blocking=TRUE, threshold=0) 200s + ) 200s + ) 200s + show( # warn "readline" 200s + diffChr( 200s + "a", "b", format='html', 200s + pager=list(pager=void, make.blocking=NA, threshold=0) 200s + ) ) 200s + show(diffChr("a", "b", format='html', pager=list(pager=void))) 200s + }) 200s Warning messages: 200s 1: In readline(msg) : readline 200s 2: In readline(msg) : readline 200s 3: In readline(msg) : readline 200s > # There should be no warnings in this lot 200s > 200s > local({ 200s + suppressMessages(mock(diffobj:::interactive, TRUE)) 200s + on.exit(suppressMessages(untrace(diffobj:::interactive))) 200s + suppressMessages(mock(diffobj:::readline, quote(warning("readline")))) 200s + on.exit(suppressMessages(untrace(diffobj:::readline)), add=TRUE) 200s + f <- tempfile() 200s + on.exit(unlink(f), add=TRUE) 200s + show( # no warning 200s + diffChr( 200s + "a", "b", format='html', 200s + pager=list(pager=void, make.blocking=NA, file.path=f) 200s + ) ) 200s + show( # no warning 200s + diffChr( 200s + "a", "b", format='html', 200s + pager=list(pager=void, make.blocking=FALSE, file.path=f) 200s + ) ) 200s + show( # no warning 200s + diffChr("a", "b", format='html', pager=list(pager=void, file.path=f)) 200s + ) 200s + }) 201s > 201s > # - html page output ----------------------------------------------------------- 201s > 201s > pager <- PagerBrowser( 201s + pager=function(x) cat(readLines(x), sep="\n"), make.blocking=FALSE 201s + ) 201s > all.equal( 201s + capture.output(show(diffChr("A", "B", pager=pager, style=StyleRaw()))), 201s + c("< \"A\" > \"B\" ", "@@ 1 @@ @@ 1 @@ ", "< A > B ") 201s + ) 201s [1] TRUE 201s > pager.warn <- PagerBrowser( 201s + pager=function(x) cat(readLines(x), sep="\n"), make.blocking=FALSE 201s + ) 201s > try( # "Unable to instantiate `Style` object: Argument `js` .* is not a file" 201s + diffChr( 201s + "A", "B", pager=pager.warn, format="html", style=list(js="notafile") 201s + ) ) 201s Error in diffChr(target = "A", current = "B", pager = pager.warn, format = "html", : 201s Unable to instantiate `Style` object: Argument `js` ("notafile") is not a file 201s > try( # "Unable to instantiate `Style` object: Argument `css` .* is not a file" 201s + diffChr( 201s + "A", "B", pager=pager.warn, format="html", style=list(css="notafile") 201s + ) 201s + ) 201s Error in diffChr(target = "A", current = "B", pager = pager.warn, format = "html", : 201s Unable to instantiate `Style` object: Argument `css` ("notafile") is not a file 201s > # Create objects that bypass the validation 201s > 201s > style.obj.1 <- style.obj.2 <- StyleHtmlLightYb() 201s > style.obj.1@css <- "notafile" 201s > style.obj.2@js <- "notafile" 201s > 201s > invisible( 201s + capture.output( # warn: "Unable to read provided css file" 201s + show(diffChr("A", "B", pager=pager.warn, style=style.obj.1)) 201s + ) ) 201s Warning messages: 201s 1: In file(con, "r") : 201s cannot open file 'notafile': No such file or directory 201s 2: In .local(x, ...) : 201s Unable to read provided css file "notafile" (error: cannot open the connection). 201s > invisible( 201s + capture.output( # "Unable to read provided js file" 201s + show(diffChr("A", "B", pager=pager.warn, style=style.obj.2)) 201s + ) ) 201s Warning messages: 201s 1: In file(con, "r") : 201s cannot open file 'notafile': No such file or directory 201s 2: In .local(x, ...) : 201s Unable to read provided js file "notafile" (error: cannot open the connection). 201s > # - pager_is_less -------------------------------------------------------------- 201s > 201s > is.less <- pager_is_less() 201s > isTRUE(diffobj:::is.TF(is.less)) 201s [1] TRUE 201s > 201s > less <- tryCatch( 201s + system2("which", "less", stdout=TRUE, stderr=TRUE), 201s + error=function(e) NULL, warning=function(e) NULL 201s + ) 201s > sys.cat <- tryCatch( 201s + system2("which", "cat", stdout=TRUE, stderr=TRUE), 201s + error=function(e) NULL, warning=function(e) NULL 201s + ) 201s > if(diffobj:::is.chr.1L(less) && file_test("-x", less)) { 201s + local({ 201s + old.opt <- options(pager=less) 201s + on.exit(options(old.opt)) 201s + 201s + # has to be stopifnot as we can't return TRUE for systems that don't 201s + # meet these requirements 201s + stopifnot( 201s + identical(diffobj:::pager_opt_default(), FALSE), 201s + isTRUE(pager_is_less()) 201s + ) 201s + }) 201s + } 201s > if(diffobj:::is.chr.1L(sys.cat) && file_test("-x", sys.cat)) { 201s + local({ 201s + old.opt <- options(pager=sys.cat) 201s + on.exit(options(old.opt)) 201s + 201s + # has to be stopifnot as we can't return TRUE for systems that don't 201s + # meet these requirements 201s + stopifnot( 201s + identical(diffobj:::pager_opt_default(), FALSE), 201s + identical(pager_is_less(), FALSE) 201s + ) 201s + }) 201s + } 201s > ## force some checks 201s > 201s > local({ 201s + old.opt <- options(pager=NULL) 201s + on.exit(options(old.opt)) 201s + identical(pager_is_less(), FALSE) 201s + }) 201s [1] TRUE 201s > identical(diffobj:::file_is_less(tempfile()), FALSE) 201s [1] TRUE 201s > 201s > # - file.path ------------------------------------------------------------------ 201s > 201s > f <- tempfile() 201s > show( 201s + diffChr( 201s + "A", "B", format='raw', 201s + pager=list(pager=void, file.path=f, threshold=0L) 201s + ) ) 201s > all.equal( 201s + readLines(f), 201s + c("< \"A\" > \"B\" ", "@@ 1 @@ @@ 1 @@ ", 201s + "< A > B ") 201s + ) 201s [1] TRUE 201s > show( # No error on this one 201s + diffChr( 201s + "A", "B", format='raw', 201s + pager=list(pager=void, file.path=NA, threshold=0L) 201s + ) ) 201s > try(Pager(file.path=letters)) # "must be length 1" 201s Error in initialize(value, ...) : Argument `file.path` must be length 1. 201s > try(Pager(file.path=1)) # "must be character" 201s Error in initialize(value, ...) : Argument `file.path` must be character. 201s > 201s > # - basic pager ---------------------------------------------------------------- 201s > 201s > local({ 201s + f <- tempfile() 201s + on.exit(unlink(f)) 201s + c( 201s + all.equal( 201s + capture.output( 201s + show( 201s + diffChr( 201s + 1, 2, pager=Pager(file.path=f, threshold=0L), 201s + format='raw' 201s + ) 201s + ) ), 201s + txtf(100) 201s + ), 201s + all.equal(txtf(100), readLines(f)) 201s + ) 201s + }) 201s [1] TRUE TRUE 201s > 201s > # - format-pager interaction --------------------------------------------------- 201s > 201s > local({ 201s + old.opt <- options(crayon.colors=7) 201s + crayon::num_colors(TRUE) 201s + on.exit({ 201s + options(old.opt) 201s + crayon::num_colors(TRUE) 201s + }) 201s + c( 201s + is( 201s + diffChr(1, 2, format='auto', pager="on", interactive=TRUE)@etc@style, 201s + "StyleHtml" 201s + ), 201s + is( 201s + diffChr(1, 2, format='auto', pager="on", interactive=FALSE)@etc@style, 201s + "StyleRaw" 201s + ), 201s + is( 201s + diffChr( 201s + 1, 2, format='auto', pager=PagerBrowser(), interactive=FALSE 201s + )@etc@style, 201s + "StyleHtml" 201s + ) 201s + ) 201s + }) 201s [1] TRUE TRUE TRUE 201s > # - format-pager interaction 2 ------------------------------------------------- 201s > 201s > local({ 201s + old.rs <- Sys.getenv('RSTUDIO', unset=NA) 201s + old.rsterm <- Sys.getenv('RSTUDIO_TERM', unset=NA) 201s + on.exit({ 201s + if(is.na(old.rs)) { 201s + Sys.unsetenv('RSTUDIO') 201s + } else Sys.setenv('RSTUDIO'=old.rs) 201s + 201s + if(is.na(old.rsterm)) { 201s + Sys.unsetenv('RSTUDIO_TERM') 201s + } else Sys.setenv('RSTUDIO_TERM'=old.rsterm) 201s + }) 201s + Sys.unsetenv('RSTUDIO') 201s + Sys.unsetenv('RSTUDIO_TERM') 201s + old.opt <- options(crayon.colors=8) 201s + crayon::num_colors(TRUE) 201s + on.exit({options(old.opt); crayon::num_colors(TRUE)}, add=TRUE) 201s + 201s + Sys.setenv(RSTUDIO='1') 201s + 201s + a <- c( 201s + is( 201s + diffChr(1, 2, format='auto', pager='on', interactive=TRUE)@etc@style, 201s + "StyleHtml" 201s + ), 201s + is( 201s + diffChr(1, 2, format='auto', interactive=FALSE)@etc@style, 201s + "StyleAnsi" 201s + ) ) 201s + Sys.setenv(RSTUDIO_TERM='HELLO') 201s + crayon::num_colors(TRUE) 201s + 201s + c( 201s + a, 201s + is( 201s + diffChr(1, 2, format='auto', pager='on', interactive=TRUE)@etc@style, 201s + "StyleAnsi" 201s + ) ) 201s + }) 201s [1] TRUE TRUE TRUE 201s > 201s > # - format-pager interaction 3 ------------------------------------------------- 201s > 201s > is( 201s + diffPrint(1:3, 3:1, format='auto', interactive=FALSE, term.colors=1)@etc@style, 201s + "StyleRaw" 201s + ) 201s [1] TRUE 201s > is( 201s + diffPrint(1:3, 3:1, format='auto', interactive=FALSE, term.colors=8)@etc@style, 201s + "StyleAnsi" 201s + ) 201s [1] TRUE 201s > 201s > # - Default pager writes to screen --------------------------------------------- 201s > 201s > # issue132 thanks Bill Dunlap 201s > 201s > local({ 201s + f <- tempfile() 201s + on.exit(unlink(f)) 201s + writeLines("hello world", f) 201s + 201s + all.equal(capture.output(new("Pager")@pager(f)), "hello world") 201s + }) 201s [1] TRUE 201s > 201s > 201s PASS 201s Begin testing test-rdiff.R 201s 201s R version 4.4.3 (2025-02-28) -- "Trophy Case" 201s Copyright (C) 2025 The R Foundation for Statistical Computing 201s Platform: x86_64-pc-linux-gnu 201s 201s R is free software and comes with ABSOLUTELY NO WARRANTY. 201s You are welcome to redistribute it under certain conditions. 201s Type 'license()' or 'licence()' for distribution details. 201s 201s R is a collaborative project with many contributors. 201s Type 'contributors()' for more information and 201s 'citation()' on how to cite R or R packages in publications. 201s 201s Type 'demo()' for some demos, 'help()' for on-line help, or 201s 'help.start()' for an HTML browser interface to help. 201s Type 'q()' to quit R. 201s 201s > NAME <- "rdiff" 201s > source(file.path('_helper', 'init.R')) 201s > 201s > # - diff util detection -------------------------------------------------------- 201s > 201s > identical(has_Rdiff(function(...) warning("test warning")), FALSE) 201s [1] TRUE 201s > isTRUE(has_Rdiff(function(...) NULL)) 201s [1] TRUE 201s > 201s > # - errors --------------------------------------------------------------------- 201s > 201s > try(Rdiff_chr(stop('hello'), 'goodbye')) # "Unable to coerce" 201s Error in try(as.character(from)) : hello 201s Error in Rdiff_chr(stop("hello"), "goodbye") : 201s Unable to coerce `target` to character. 201s > try(Rdiff_chr('hello', stop('goodbye'))) # "Unable to coerce" 201s Error in try(as.character(to)) : goodbye 201s Error in Rdiff_chr("hello", stop("goodbye")) : 201s Unable to coerce `current` to character. 201s > try(Rdiff_obj(stop('hello'), 'goodbye')) # "Unable to store" 201s Error in vapply(list(from, to), function(x) { : hello 201s Error in Rdiff_obj(stop("hello"), "goodbye") : 201s Unable to store text representation of objects 201s > 201s > # - Rdiff_chr/obj -------------------------------------------------------------- 201s > 201s > # Only run tests on machines that are likely to have diff utility 201s > 201s > if(identical(.Platform$OS.type, "unix") && has_Rdiff()) { 201s + local({ 201s + A2 <- c("A", "B", "C") 201s + B2 <- c("X", "A", "Y", "C") 201s + A3 <- 1:3 201s + B3 <- c(100L, 1L, 200L, 3L) 201s + 201s + # Rdiff_chr 201s + 201s + ref.res <- c("0a1", "2c3") 201s + ref.res.1 <- c("0a1", "> X", "2c3", "< B", "---", "> Y") 201s + 201s + a <- identical(Rdiff_chr(A2, B2, silent=TRUE, minimal=TRUE), ref.res) 201s + capt <- capture.output(res <- Rdiff_chr(A2, B2, silent=FALSE, minimal=TRUE)) 201s + b <- identical(res, ref.res) 201s + c <- identical(capt, res) 201s + capt.1 <- capture.output( 201s + res.1 <- Rdiff_chr(A2, B2, silent=FALSE, minimal=FALSE) 201s + ) 201s + d <- identical(capt.1, ref.res.1) 201s + e <- identical(res.1, ref.res.1) 201s + 201s + # test coersion 201s + f <- identical(Rdiff_chr(A3, B3, minimal=TRUE, silent=TRUE), ref.res) 201s + 201s + # Rdiff_obj 201s + 201s + ref.res2 <- c("1c1", "< [1] \"A\" \"B\" \"C\"", "---", "> [1] \"X\" \"A\" \"Y\" \"C\"" ) 201s + ref.res3 <- c("1c1") 201s + 201s + g <- identical(Rdiff_obj(A2, B2, silent=TRUE), ref.res2) 201s + h <- identical(Rdiff_obj(A2, B2, minimal=TRUE, silent=TRUE), ref.res3) 201s + 201s + # with rds 201s + f1 <- tempfile() 201s + f2 <- tempfile() 201s + saveRDS(A2, f1) 201s + saveRDS(B2, f2) 201s + on.exit(unlink(c(f1, f2))) 201s + 201s + i <- identical(Rdiff_obj(f1, B2, silent=TRUE), ref.res2) 201s + j <- identical(Rdiff_obj(A2, f2, silent=TRUE), ref.res2) 201s + k <- identical(Rdiff_obj(f1, f2, silent=TRUE), ref.res2) 201s + 201s + res <- c(a, b, c, d, e, f, g, h, i, k) 201s + if(!all(res)) stop("Failed: ", deparse(which(!res))) 201s + }) 201s + } 201s > 201s PASS 201s Begin testing test-s4.R 201s 201s R version 4.4.3 (2025-02-28) -- "Trophy Case" 201s Copyright (C) 2025 The R Foundation for Statistical Computing 201s Platform: x86_64-pc-linux-gnu 201s 201s R is free software and comes with ABSOLUTELY NO WARRANTY. 201s You are welcome to redistribute it under certain conditions. 201s Type 'license()' or 'licence()' for distribution details. 201s 201s R is a collaborative project with many contributors. 201s Type 'contributors()' for more information and 201s 'citation()' on how to cite R or R packages in publications. 201s 201s Type 'demo()' for some demos, 'help()' for on-line help, or 201s 'help.start()' for an HTML browser interface to help. 201s Type 'q()' to quit R. 201s 201s > NAME <- "s4" 201s > source(file.path('_helper', 'init.R')) 202s > 202s > # - diff data validation works 202s > # 202s > # These are not currently in use 202s > # expect_match(diffobj:::valid_dat("hello"), "should be a list") 202s > # D0 <- D1 <- D2 <- D3 <- D4 <- D5 <- D6 <- D7 <- 202s > # diffPrint(letters, LETTERS)@tar.dat 202s > 202s > # expect_match(diffobj:::valid_dat(unname(D0)), "should have names") 202s > 202s > # length(D1[[1L]]) <- 1L 202s > # expect_match(diffobj:::valid_dat(D1), "should have equal length") 202s > 202s > # D2$orig <- integer(length(D2$orig)) 202s > # expect_match(diffobj:::valid_dat(D2), "should be character") 202s > 202s > # D3$trim.ind.start <- character(length(D3$trim.ind.start)) 202s > # expect_match(diffobj:::valid_dat(D3), "should be integer") 202s > 202s > # D4$word.ind <- integer(length(D4$word.ind)) 202s > # expect_match(diffobj:::valid_dat(D4), "should be list") 202s > 202s > # D5$word.ind <- vector("list", length(D5$word.ind)) 202s > # expect_match(diffobj:::valid_dat(D5), "not in expected format") 202s > 202s > # D6$tok.rat <- D6$tok.rat + 2 202s > # expect_match(diffobj:::valid_dat(D6), "with all values between") 202s > 202s > # D7$fill <- integer(length(D7$fill)) 202s > # expect_match(diffobj:::valid_dat(D7), "should be logical") 202s > 202s > # - any ------------------------------------------------------------------------ 202s > 202s > isTRUE(any(diffChr('a', 'b'))) 202s [1] TRUE 202s > identical(any(diffChr('a', 'a')), FALSE) 202s [1] TRUE 202s > try(any(diffChr('a', 'a'), 2)) # "supports only one argument" 202s Error : `any` method for `Diff` supports only one argument 202s > 202s PASS 202s Begin testing test-scaling.R 202s 202s R version 4.4.3 (2025-02-28) -- "Trophy Case" 202s Copyright (C) 2025 The R Foundation for Statistical Computing 202s Platform: x86_64-pc-linux-gnu 202s 202s R is free software and comes with ABSOLUTELY NO WARRANTY. 202s You are welcome to redistribute it under certain conditions. 202s Type 'license()' or 'licence()' for distribution details. 202s 202s R is a collaborative project with many contributors. 202s Type 'contributors()' for more information and 202s 'citation()' on how to cite R or R packages in publications. 202s 202s Type 'demo()' for some demos, 'help()' for on-line help, or 202s 'help.start()' for an HTML browser interface to help. 202s Type 'q()' to quit R. 202s 202s > NAME <- "scaling" 202s > source(file.path('_helper', 'init.R')) 202s > 202s > # These tests are not actually run since they require manual intervention to 202s > # check for browser rendering 202s > 202s > # These tests should be run on as many browsers as possible as well as in 202s > # RStudio, and consist of running the code and resizing the windows to see 202s > # what happens 202s > 202s > if(FALSE) { # prevent running 202s + # Text should be allowed to unfurl beyond native width 202s + 202s + diffStr(mdl1, mdl2, format="html") 202s + diffStr(mdl1, mdl2, format="html", style=list(scale=FALSE)) 202s + 202s + diffPrint(c(mdl1), c(mdl2), format="html") 202s + 202s + # Revealed problems with pixel rounding in scaling 202s + 202s + diffPrint(letters[1:6], LETTERS[1:6], format="html") 202s + diffPrint(letters[1:6], LETTERS[1:6], format="html", style=list(scale=FALSE)) 202s + 202s + # Revealed problems with gutter width computations; and scaling 202s + 202s + mx.2 <- matrix(1:100, ncol=4) 202s + mx.4 <- mx.3 <- mx.2 202s + mx.3[15, 2] <- 111L 202s + mx.3a <- mx.3[-5, ] 202s + diffPrint(mx.2, mx.3a, format="html") 202s + 202s + # summary stuff 202s + 202s + summary(diffPrint(letters, LETTERS, format="html")) 202s + summary(diffStr(mdl1, mdl2, format="html")) 202s + summary(diffPrint(c(mdl1), c(mdl2), format="html")) 202s + 202s + # Long banners 202s + 202s + diffPrint( 202s + 1:20 + 100 + 100 + 100 + 100 + 100 + 100 + 100, 202s + 2:20 + 100 + 100 + 100 + 100 + 100 + 100 + 100, 202s + format="html", style=list(scale=FALSE) 202s + ) 202s + diffPrint( 202s + 1:20 + 100 + 100 + 100 + 100 + 100 + 100 + 100, 202s + 2:20 + 100 + 100 + 100 + 100 + 100 + 100 + 100, 202s + format="html" 202s + ) 202s + # context 202s + 202s + diffPrint( 202s + 1:20 + 100 + 100 + 100 + 100 + 100 + 100 + 100, 202s + 2:20 + 100 + 100 + 100 + 100 + 100 + 100 + 100, 202s + format="html", mode="context" 202s + ) 202s + } 202s > 202s PASS 202s Begin testing test-ses.R 202s 202s R version 4.4.3 (2025-02-28) -- "Trophy Case" 202s Copyright (C) 2025 The R Foundation for Statistical Computing 202s Platform: x86_64-pc-linux-gnu 202s 202s R is free software and comes with ABSOLUTELY NO WARRANTY. 202s You are welcome to redistribute it under certain conditions. 202s Type 'license()' or 'licence()' for distribution details. 202s 202s R is a collaborative project with many contributors. 202s Type 'contributors()' for more information and 202s 'citation()' on how to cite R or R packages in publications. 202s 202s Type 'demo()' for some demos, 'help()' for on-line help, or 202s 'help.start()' for an HTML browser interface to help. 202s Type 'q()' to quit R. 202s 202s > NAME <- "ses" 202s > source(file.path('_helper', 'init.R')) 202s > 202s > # Any tests added here should also be added to the valgrind test file 202s > 202s > # - basic ---------------------------------------------------------------------- 202s > 202s > all.equal(ses(letters[1:10], letters[1:10]), character()) 202s [1] TRUE 202s > all.equal(ses(letters[1:10], LETTERS[1:10]), "1,10c1,10") 202s [1] TRUE 202s > all.equal(ses(letters[1:5], LETTERS[1:10]), "1,5c1,10") 202s [1] TRUE 202s > all.equal(ses(letters[1:10], LETTERS[1:5]), "1,10c1,5") 202s [1] TRUE 202s > all.equal(ses(letters[2:10], letters[1:7]), c("0a1", "7,9d7")) 202s [1] TRUE 202s > all.equal( 202s + ses(letters[c(1:5, 1:5, 1:5)], c("e", "d", "a", "b", "c")), 202s + c("1,4d0", "6,8d1", "10d2", "14,15d5") 202s + ) 202s [1] TRUE 202s > all.equal( 202s + ses(c("e", "d", "a", "b", "c"), letters[c(1:5, 1:5, 1:5)]), 202s + c("0a1,4", "1a6,8", "2a10", "5a14,15") 202s + ) 202s [1] TRUE 202s > # edit distance = 1 202s > 202s > # - trigger edit distance 1 branches ------------------------------------------- 202s > 202s > all.equal(ses("a", c("a", "b")), "1a2") 203s [1] TRUE 203s > all.equal(ses(c("a", "b"), "a"), "2d1") 203s [1] TRUE 203s > all.equal(ses("c", c("b", "c")), "0a1") 203s [1] TRUE 203s > all.equal(ses(c("b", "c"), "c"), "1d0") 203s [1] TRUE 203s > 203s > all.equal(ses("a", character()), "1d0") 203s [1] TRUE 203s > all.equal(ses(character(), "a"), "0a1") 203s [1] TRUE 203s > all.equal(ses(character(), character()), character()) 203s [1] TRUE 203s > 203s > ## this is from the atomic tests, haven't dug into why they actually trigger 203s > ## the desired branches, but it is fairly complex 203s > set.seed(2) 203s > w1 <- sample( 203s + c( 203s + "carrot", "cat", "cake", "eat", "rabbit", "holes", "the", "a", "pasta", 203s + "boom", "noon", "sky", "hat", "blah", "paris", "dog", "snake" 203s + ), 25, replace=TRUE 203s + ) 203s > w4 <- w3 <- w2 <- w1 203s > w2[sample(seq_along(w1), 5)] <- LETTERS[1:5] 203s > w3 <- w1[8:15] 203s > w4 <- c(w1[1:5], toupper(w1[1:5]), w1[6:15], toupper(w1[1:5])) 203s > 203s > all.equal(ses(w1, w4), c("5a6,10", "15,21d19", "23,25c21,25")) 203s [1] TRUE 203s > 203s > # - longer strings ------------------------------------------------------------- 203s > 203s > # A bigger string 203s > 203s > string <- do.call(paste0, expand.grid(LETTERS, LETTERS, LETTERS)) 203s > 203s > all.equal( 203s + ses(string, c("hello", string[-c(5, 500, 1000)], "goodbye")), 203s + c("0a1", "5d5", "500d499", "1000d998", "17576a17575") 203s + ) 203s [1] TRUE 203s > all.equal( 203s + ses(c(string[200:500], "hello", string[-(1:400)][-c(5, 500, 1000)]), string), 203s + c("0a1,199", "207,306d405", "800a900", "1299a1400") 203s + ) 203s [1] TRUE 203s > 203s > # - max diffs ------------------------------------------------------------------ 203s > 203s > ses(letters[1:10], LETTERS[1:10], max.diffs=5) # "Exceeded `max.diffs`" 203s [1] "1,10c1,10" 203s Warning message: 203s In diff_myers(args[["a"]], args[["b"]], max.diffs = args[["max.diffs"]], : 203s Exceeded `max.diffs`: 20 vs 5 allowed. Diff is probably suboptimal. 203s > all.equal( 203s + ses(letters[1:10], LETTERS[1:10], max.diffs=5, warn=FALSE), 203s + "1,10c1,10" 203s + ) 203s [1] TRUE 203s > all.equal( 203s + ses( 203s + letters[1:10], 203s + c(letters[1], LETTERS[2:5], letters[6:10]), max.diffs=5, warn=FALSE 203s + ), 203s + "2,5c2,5" 203s + ) 203s [1] TRUE 203s > all.equal( 203s + ses( 203s + letters[1:10], 203s + c(letters[1], LETTERS[2:5], letters[6:8], LETTERS[9], letters[10]), 203s + max.diffs=5, warn=FALSE 203s + ), 203s + c("2,5c2,5", "9c9") 203s + ) 203s [1] TRUE 203s > # - Issue 152 -------------------------------------------------------------- 203s > 203s > # h/t @hadley, used to error, now warns 203s > 203s > all.equal(ses(letters[1:4], letters[1:3]), "4d3") 203s [1] TRUE 203s > all.equal(ses(letters[1:3], letters[1:4]), "3a4") 203s [1] TRUE 203s > ses(1, 2:9, max.diffs = 8) 203s [1] "1c1,8" 203s Warning message: 203s In diff_myers(args[["a"]], args[["b"]], max.diffs = args[["max.diffs"]], : 203s Exceeded `max.diffs`: 9 vs 8 allowed. Diff is probably suboptimal. 203s > 203s > # h/t @gadenbui, data is extracted from palmerpenguins@0.1.0::penguins 203s > # 203s > # comparison <- subset(penguins, year == 2007 | flipper_length_mm > 220) 203s > # test <- subset(penguins, year == 2008) 203s > # a <- test$bill_length_mm 203s > # b <- comparison$bill_length_mm 203s > 203s > a <- c(39.6, 40.1, 35, 42, 34.5, 41.4, 39, 40.6, 36.5, 37.6, 35.7, 203s + 41.3, 37.6, 41.1, 36.4, 41.6, 35.5, 41.1, 35.9, 41.8, 33.5, 39.7, 203s + 39.6, 45.8, 35.5, 42.8, 40.9, 37.2, 36.2, 42.1, 34.6, 42.9, 36.7, 203s + 35.1, 37.3, 41.3, 36.3, 36.9, 38.3, 38.9, 35.7, 41.1, 34, 39.6, 203s + 36.2, 40.8, 38.1, 40.3, 33.1, 43.2, 49.1, 48.4, 42.6, 44.4, 44, 203s + 48.7, 42.7, 49.6, 45.3, 49.6, 50.5, 43.6, 45.5, 50.5, 44.9, 45.2, 203s + 46.6, 48.5, 45.1, 50.1, 46.5, 45, 43.8, 45.5, 43.2, 50.4, 45.3, 203s + 46.2, 45.7, 54.3, 45.8, 49.8, 46.2, 49.5, 43.5, 50.7, 47.7, 46.4, 203s + 48.2, 46.5, 46.4, 48.6, 47.5, 51.1, 45.2, 45.2, 50.5, 49.5, 46.4, 203s + 52.8, 40.9, 54.2, 42.5, 51, 49.7, 47.5, 47.6, 52, 46.9, 53.5, 203s + 49, 46.2, 50.9, 45.5) 203s > b <- c(39.1, 39.5, 40.3, NA, 36.7, 39.3, 38.9, 39.2, 34.1, 42, 37.8, 203s + 37.8, 41.1, 38.6, 34.6, 36.6, 38.7, 42.5, 34.4, 46, 37.8, 37.7, 203s + 35.9, 38.2, 38.8, 35.3, 40.6, 40.5, 37.9, 40.5, 39.5, 37.2, 39.5, 203s + 40.9, 36.4, 39.2, 38.8, 42.2, 37.6, 39.8, 36.5, 40.8, 36, 44.1, 203s + 37, 39.6, 41.1, 37.5, 36, 42.3, 46.1, 50, 48.7, 50, 47.6, 46.5, 203s + 45.4, 46.7, 43.3, 46.8, 40.9, 49, 45.5, 48.4, 45.8, 49.3, 42, 203s + 49.2, 46.2, 48.7, 50.2, 45.1, 46.5, 46.3, 42.9, 46.1, 44.5, 47.8, 203s + 48.2, 50, 47.3, 42.8, 45.1, 59.6, 49.6, 50.5, 50.5, 50.1, 50.4, 203s + 46.2, 54.3, 49.8, 49.5, 50.7, 46.4, 48.2, 48.6, 45.2, 52.5, 50, 203s + 50.8, 52.1, 52.2, 49.5, 50.8, 46.9, 51.1, 55.9, 49.1, 49.8, 51.5, 203s + 55.1, 48.8, 50.4, 46.5, 50, 51.3, 45.4, 52.7, 45.2, 46.1, 51.3, 203s + 46, 51.3, 46.6, 51.7, 47, 52, 45.9, 50.5, 50.3, 58, 46.4, 49.2, 203s + 42.4, 48.5, 43.2, 50.6, 46.7, 52) 203s > 203s > # In <0.3.4: Exceeded buffer for finding fake snake 203s > ses(a[-c(15:38, 50:90)], b[-c(40:85, 100:125)], max.diffs=80) 203s [1] "1,3c1,9" "5,13c11,12" "15,25c14,48" "26a50" "28,29d51" 203s [6] "31c53,57" "33c59,60" "35,42c62,67" "44,49d68" 203s Warning message: 203s In diff_myers(args[["a"]], args[["b"]], max.diffs = args[["max.diffs"]], : 203s Exceeded `max.diffs`: 101 vs 80 allowed. Diff is probably suboptimal. 203s > 203s > # In <0.3.4: Faux Snake Process Failed 203s > ses(a[-(18:38)], b[-(50:80)], max.diffs=115) 203s [1] "1,3c1,9" "5,7c11,26" "9,12c28,38" "13a40,46" 203s [5] "15,54c48,82" "56,68d83" "70,74c85,88" "75a90,98" 203s [9] "77c100,101" "79,86c103,108" "88,93d109" 203s Warning message: 203s In diff_myers(args[["a"]], args[["b"]], max.diffs = args[["max.diffs"]], : 203s Exceeded `max.diffs`: 182 vs 115 allowed. Diff is probably suboptimal. 203s > 203s > # - issue 157 ------------------------------------------------------------------ 203s > 203s > # Arguably could match on 'A' instead of 'X' and be more compact 203s > a <- c('a', 'b', 'c', 'A', 'X', 'Y', 'Z', 'W') 203s > b <- c('X', 'C', 'A', 'U', 1, 2, 3) 203s > ses(a, b, max.diffs=13) 203s [1] "1,4d0" "6,8c2,7" 203s > 203s > # segfault (but may have beend debugging code) 203s > ses(letters[1:2], LETTERS[1:2], max.diffs = 4) 203s [1] "1,2c1,2" 203s > 203s > # snake overrun 203s > ses(c("G", "C", "T", "C", "A", "C", "G", "C"), c("T", "G"), max.diffs=2) 203s [1] "0a1" "2,8d2" 203s Warning message: 203s In diff_myers(args[["a"]], args[["b"]], max.diffs = args[["max.diffs"]], : 203s Exceeded `max.diffs`: 8 vs 2 allowed. Diff is probably suboptimal. 203s > 203s > # effect of max.diffs on compactness (waldo logical comparison) 203s > ses(c('A','A','A','A','A'), c('B','A','B','A','B'), max.diffs=0) 203s [1] "1c1" "3c3" "5c5" 203s Warning message: 203s In diff_myers(args[["a"]], args[["b"]], max.diffs = args[["max.diffs"]], : 203s Exceeded `max.diffs`: 6 vs 0 allowed. Diff is probably suboptimal. 203s > ses(c('A','A','A','A','A'), c('B','A','B','A','B'), max.diffs=1) 203s [1] "0a1" "2c3" "4,5c5" 203s Warning message: 203s In diff_myers(args[["a"]], args[["b"]], max.diffs = args[["max.diffs"]], : 203s Exceeded `max.diffs`: 6 vs 1 allowed. Diff is probably suboptimal. 203s > ses(c('A','A','A','A','A'), c('B','A','B','A','B'), max.diffs=2) 203s [1] "0a1" "2,4c3" "5a5" 203s Warning message: 203s In diff_myers(args[["a"]], args[["b"]], max.diffs = args[["max.diffs"]], : 203s Exceeded `max.diffs`: 6 vs 2 allowed. Diff is probably suboptimal. 203s > 203s > # back snake all matches before faux snake triggered 203s > ses_dat( 203s + a=c("T", "A", "A", "C", "C", "A"), 203s + b=c("A", "G", "A", "A"), max.diffs = 0 203s + ) 203s "ses_dat" object (Match: 3, Delete: 3, Insert: 1): 203s 203s D: T C C 203s M: A A A 203s I: G 203s Warning message: 203s In diff_myers(args[["a"]], args[["b"]], max.diffs = args[["max.diffs"]], : 203s Exceeded `max.diffs`: 4 vs 0 allowed. Diff is probably suboptimal. 203s > 203s > # - errors --------------------------------------------------------------------- 203s > 203s > try(ses('a', 'b', max.diffs='hello')) # "must be scalar integer" 203s Error in ses_prep(a = a, b = b, max.diffs = max.diffs, warn = warn) : 203s Argument `max.diffs` must be scalar integer. 203s > try(ses('a', 'b', warn='hello')) # "must be TRUE or FALSE" 203s Error in ses_prep(a = a, b = b, max.diffs = max.diffs, warn = warn) : 203s Argument `warn` must be TRUE or FALSE. 203s > 203s > a <- structure(1, class='diffobj_ogewlhgiadfl2') 203s > try(ses(a, 1)) # "could not be coerced") 203s Error in as.character.diffobj_ogewlhgiadfl2(a) : failure2 203s Error in ses_prep(a = a, b = b, max.diffs = max.diffs, warn = warn) : 203s Argument `a` is not character and could not be coerced to such 203s > try(ses(1, a)) # "could not be coerced" 203s Error in as.character.diffobj_ogewlhgiadfl2(b) : failure2 203s Error in ses_prep(a = a, b = b, max.diffs = max.diffs, warn = warn) : 203s Argument `b` is not character and could not be coerced to such 203s > 203s > # We want to have a test file that fully covers the C code in order to run 203s > # valgrind with just that one. We were unable to isolate simple diffs that 203s > # triggered all the code, but we were able to do it with the below in addition 203s > # to the above. 203s > 203s > # - Repeat tests for full coverage in SES file --------------------------------- 203s > # From test.diffStr.R 203s > # formula display changed 203s > if( 203s + R.Version()$major >= 3 && R.Version()$minor >= "3.1" || 203s + R.Version()$major >= 4) { 203s + rdsf1 <- function(x) 203s + readRDS(file.path("_helper", "objs", "diffStr", sprintf("%s.rds", x))) 203s + all.equal( 203s + as.character( 203s + diffStr(mdl1, mdl2, extra=list(strict.width="wrap"), line.limit=30) 203s + ), 203s + rdsf1(500) 203s + ) 203s + } 203s [1] TRUE 203s > # from testthat.warnings.R 203s > 203s > A3 <- c("a b c", "d e f A B C D", "g h i", "f") 203s > B3 <- c("a b c", "xd e f E Q L S", "g h i", "q") 203s > 203s > diffChr(A3, B3, max.diffs=2) # warn: "Exceeded diff" 203s < A3 > B3 203s @@ 1,4 @@  @@ 1,4 @@  203s a b c a b c 203s < d e f A B C D > xd e f E Q L S 203s < g h i > g h i 203s < f > q 203s Warning message: 203s Exceeded diff limit during diff computation (6 vs. 2 allowed); overall diff is likely not optimal 203s > 203s > # - ses_dat -------------------------------------------------------------------- 203s > 203s > a <- b <- do.call(paste0, expand.grid(LETTERS, LETTERS)) 203s > set.seed(2) 203s > b <- b[-sample(length(b), 100)] 203s > a <- a[-sample(length(b), 100)] 203s > 203s > dat <- ses_dat(a, b) 203s > all.equal(dat[['val']][dat[['op']] != 'Delete'], b) 203s [1] TRUE 203s > all.equal(dat[['val']][dat[['op']] != 'Insert'], a) 203s [1] TRUE 203s > all.equal(a[dat[['id.a']][!is.na(dat[['id.a']])]], a) 203s [1] TRUE 203s > 203s > dat2 <- ses_dat(a, b, extra=FALSE) 203s > all.equal(dat[1:2], dat2) 203s [1] TRUE 203s > all.equal(length(dat2), 2L) 203s [1] TRUE 203s > 203s > try(ses_dat(a, b, extra=NA)) # 'TRUE or FALSE' 203s Error in ses_dat(a, b, extra = NA) : 203s Argument `extra` must be TRUE or FALSE. 203s > 203s > # - encoding agnostic #144 ----------------------------------------------------- 203s > 203s > # h/t @hadley, these are different in string cache, but should compare equal 203s > # as per ?identical 203s > x <- c("fa\xE7ile", "fa\ue7ile") 203s > Encoding(x) <- c("latin1", "UTF-8") 203s > y <- rev(x) 203s > all.equal(diffobj::ses(x, y), character()) 203s [1] TRUE 203s > 203s PASS 203s Begin testing test-style.R 203s 203s R version 4.4.3 (2025-02-28) -- "Trophy Case" 203s Copyright (C) 2025 The R Foundation for Statistical Computing 203s Platform: x86_64-pc-linux-gnu 203s 203s R is free software and comes with ABSOLUTELY NO WARRANTY. 203s You are welcome to redistribute it under certain conditions. 203s Type 'license()' or 'licence()' for distribution details. 203s 203s R is a collaborative project with many contributors. 203s Type 'contributors()' for more information and 203s 'citation()' on how to cite R or R packages in publications. 203s 203s Type 'demo()' for some demos, 'help()' for on-line help, or 203s 'help.start()' for an HTML browser interface to help. 203s Type 'q()' to quit R. 203s 203s > NAME <- "style" 203s > source(file.path('_helper', 'init.R')) 203s > 203s > ## - Style Palette ------------------------------------------------------------ 203s > 203s > all.equal( 203s + capture.output(diffobj:::display_ansi_256_styles()), 203s + rdsf(100) 203s + ) 204s [1] TRUE 204s > ## - crayon settings ----------------------------------------------------------- 204s > 204s > # make sure crayon options are appropriately overriden 204s > local({ 204s + old.opt <- options(crayon.enabled=FALSE) 204s + on.exit(options(old.opt)) 204s + print(identical(crayon::green("green"), "green")) 204s + # should have ANSI coloring despite crayon disabled 204s + print( 204s + all.equal( 204s + as.character(diffChr(letters[1:3], LETTERS[1:3])), rdsf(200) 204s + ) 204s + ) 204s + identical(crayon::green("green"), "green") 204s + }) 204s [1] TRUE 204s [1] TRUE 204s [1] TRUE 204s > ## - Palette of Styles --------------------------------------------------------- 204s > 204s > pos <- PaletteOfStyles() 204s > identical( 204s + pos[["ansi256", "light", "rgb"]], 204s + getClassDef("StyleAnsi256LightRgb", package="diffobj", inherits=FALSE) 204s + ) 204s [1] TRUE 204s > all.equal( 204s + capture.output(show(pos)), rdsf(300) 204s + ) 204s [1] TRUE 204s > all.equal( 204s + capture.output(summary(pos)), rdsf(400) 204s + ) 204s [1] TRUE 204s > 204s > pos["ansi256", "light", "yb"] <- list(StyleRaw()) 204s > all.equal( 204s + c(pos["ansi256", "light", "yb"]@data), list(StyleRaw()), 204s + check.environment=FALSE 204s + ) 204s [1] TRUE 204s > all.equal( 204s + pos[["ansi256", "light", "yb"]], StyleRaw(), 204s + check.environment=FALSE 204s + ) 204s [1] TRUE 204s > 204s > ## - Auto Styles --------------------------------------------------------------- 204s > 204s > try(diffChr(letters, LETTERS, style="auto", format="xml")) 204s Error in diffChr(target = letters, current = LETTERS, style = "auto", : 204s Argument `format` must be one of `c("auto", "raw", "ansi8", "ansi256", "html")`. 204s > is( 204s + diffChr( 204s + letters, LETTERS, style="auto", format="auto", brightness="light", 204s + term.colors=256 204s + )@etc@style, 204s + "StyleAnsi256LightYb" 204s + ) 204s [1] TRUE 204s > is( 204s + diffChr( 204s + letters, LETTERS, style="auto", format="auto", brightness="light", 204s + term.colors=8 204s + )@etc@style, 204s + "StyleAnsi8NeutralYb" 204s + ) 205s [1] TRUE 205s > is( 205s + diffChr( 205s + letters, LETTERS, style="auto", format="auto", interactive=FALSE, 205s + term.colors=1 205s + )@etc@style, 205s + "StyleRaw" 205s + ) 205s [1] TRUE 205s > is( 205s + diffChr( 205s + letters, LETTERS, style="auto", format="auto", interactive=TRUE, 205s + term.colors=1 # note pager off by default in tests 205s + )@etc@style, 205s + "StyleRaw" 205s + ) 205s [1] TRUE 205s > is( 205s + diffChr( 205s + letters, LETTERS, style="auto", format="auto", interactive=TRUE, 205s + pager="auto", term.colors=1 205s + )@etc@style, 205s + "StyleHtml" 205s + ) 205s [1] TRUE 205s > is( 205s + diffChr( 205s + letters, LETTERS, style="auto", format="auto", interactive=TRUE, 205s + pager="auto", term.colors=9 205s + )@etc@style, 205s + "StyleAnsi8NeutralYb" 205s + ) 205s [1] TRUE 205s > is( 205s + diffChr( 205s + letters, LETTERS, style="auto", format="auto", interactive=TRUE, 205s + pager="auto", brightness='light', term.colors=500 205s + )@etc@style, 205s + "StyleAnsi256LightYb" 205s + ) 205s [1] TRUE 205s > is( 205s + diffChr( 205s + letters, LETTERS, style="auto", format="html", interactive=TRUE, 205s + pager="auto", color.mode=c("rgb", ansi8="yb") 205s + )@etc@style, 205s + "StyleHtmlLightRgb" 205s + ) 205s [1] TRUE 205s > is( 205s + diffChr( 205s + letters, LETTERS, style="auto", format="html", interactive=TRUE, 205s + pager="auto", color.mode=c("rgb", html="yb") 205s + )@etc@style, 205s + "StyleHtmlLightYb" 205s + ) 205s [1] TRUE 205s > ## - Palette Params ------------------------------------------------------------ 205s > 205s > all.equal( 205s + as.character( 205s + diffChr( 205s + letters, LETTERS, style="auto", format="ansi256", 205s + brightness=c("light", ansi256="dark") 205s + ) ), 205s + rdsf(500) 205s + ) 205s [1] TRUE 205s > all.equal( 205s + as.character( 205s + diffChr( 205s + letters, LETTERS, style="auto", format="ansi256", brightness=c("dark") 205s + ) ), 205s + rdsf(500) 205s + ) 205s [1] TRUE 205s > ## - Style Validation ---------------------------------------------------------- 205s > 205s > s.f <- StyleFuns() 205s > isTRUE(validObject(s.f)) 205s [1] TRUE 205s > s.f@word.insert <- function(x, y) NULL 205s > try(validObject(s.f)) # word.insert 205s Error in validObject(s.f) : 205s invalid class "StyleFuns" object: Argument `word.insert` may not have non-default formals argument after the first. 205s > 205s > try(diffChr(1,2, format='html', style=list(scale=1:3))) 205s Error in diffChr(target = 1, current = 2, format = "html", style = list(scale = 1:3)) : 205s Unable to instantiate `Style` object: Argument `scale` must be TRUE or FALSE 205s > try(diffChr(1,2, format='html', style=list(html.output="a"))) 205s Error in diffChr(target = 1, current = 2, format = "html", style = list(html.output = "a")) : 205s Unable to instantiate `Style` object: Argument `html.output` must be in `c("auto", "page", "diff.only", "diff.w.style")`. 205s > 205s > ## - Pallette w/ Objs ---------------------------------------------------------- 205s > 205s > pal <- PaletteOfStyles() 205s > pal["raw", "neutral", "rgb"] <- list(new(pal[["raw", "neutral", "rgb"]])) 205s > 205s > suppressWarnings( 205s + withCallingHandlers( 205s + invisible(diffChr( 205s + letters, LETTERS, format="raw", brightness="neutral", color.mode="rgb", 205s + palette.of.styles=pal, style=list(na.sub="NA") 205s + )), 205s + warning=function(e) writeLines(conditionMessage(e)) 205s + ) 205s + ) 205s Extra `style` arguments cannot be applied because selected object `palette.of.styles` is a `Style` instance rather than a `Style` "classRepresentation". See documentation for the `style` parameter for details. 205s > ## - External Files ------------------------------------------------------------ 205s > 205s > isTRUE(file_test("-f", diffobj_css())) 205s [1] TRUE 205s > isTRUE(file_test("-f", diffobj_js())) 205s [1] TRUE 205s > 205s PASS 205s Begin testing test-subset.R 205s 205s R version 4.4.3 (2025-02-28) -- "Trophy Case" 205s Copyright (C) 2025 The R Foundation for Statistical Computing 205s Platform: x86_64-pc-linux-gnu 205s 205s R is free software and comes with ABSOLUTELY NO WARRANTY. 205s You are welcome to redistribute it under certain conditions. 205s Type 'license()' or 'licence()' for distribution details. 205s 205s R is a collaborative project with many contributors. 205s Type 'contributors()' for more information and 205s 'citation()' on how to cite R or R packages in publications. 205s 205s Type 'demo()' for some demos, 'help()' for on-line help, or 205s 'help.start()' for an HTML browser interface to help. 205s Type 'q()' to quit R. 205s 205s > NAME <- "subset" 205s > source(file.path('_helper', 'init.R')) 205s > 205s > A <- B <- letters[1:5] 205s > B[2] <- "B" 205s > B[6] <- "F" 205s > 205s > # - subset --------------------------------------------------------------------- 205s > 205s > local({ 205s + old.opt <- options(diffobj.style=StyleRaw()) 205s + on.exit(options(old.opt)) 205s + a0 <- all.equal( 205s + c(as.character(diffChr(A, B)[1:3])), 205s + c("< A > B ", "@@ 1,5 @@ @@ 1,6 @@ ", " a a ") 205s + 205s + ) 205s + a <- all.equal( 205s + c(as.character(diffChr(A, B)[1])), c(as.character(head(diffChr(A, B), 1))) 205s + ) 205s + b <- all.equal( 205s + c(as.character(diffChr(A, B)[7:8])), c(as.character(tail(diffChr(A, B), 2))) 205s + ) 205s + c(a0, a, b) 205s + }) 205s [1] TRUE TRUE TRUE 205s > # - subset errors -------------------------------------------------------------- 205s > 205s > diff <- diffChr(A, B) 205s > try(diff[NA_real_]) # "contain NAs or both positive" 205s Error in .local(x, i, ...) : 205s `i` may not contain NAs or both positive and negative indices 205s > try(diff[c(-1, 1)]) # "contain NAs or both positive" 205s Error in .local(x, i, ...) : 205s `i` may not contain NAs or both positive and negative indices 205s > try(head(diff, 1, 2)) # "does not support arguments" 205s Error in .local(x, ...) : 205s This method does not support arguments other than `x` or `n` 205s > try(head(diff, NA)) # "must be integer" 205s Error in .local(x, ...) : `n` must be integer(1L) and not NA 205s > try(head(diff, 1:3)) # "must be integer" 205s Error in .local(x, ...) : `n` must be integer(1L) and not NA 205s > try(tail(diff, 1:3)) # "must be integer" 205s Error in .local(x, ...) : `n` must be integer(1L) and not NA 205s > try(tail(diff, 1, 2)) # "does not support arguments" 205s Error in .local(x, ...) : 205s This method does not support arguments other than `x` or `n` 205s > 205s > 205s > 205s PASS 205s Begin testing test-summary.R 205s 205s R version 4.4.3 (2025-02-28) -- "Trophy Case" 205s Copyright (C) 2025 The R Foundation for Statistical Computing 205s Platform: x86_64-pc-linux-gnu 205s 205s R is free software and comes with ABSOLUTELY NO WARRANTY. 205s You are welcome to redistribute it under certain conditions. 205s Type 'license()' or 'licence()' for distribution details. 205s 205s R is a collaborative project with many contributors. 205s Type 'contributors()' for more information and 205s 'citation()' on how to cite R or R packages in publications. 205s 205s Type 'demo()' for some demos, 'help()' for on-line help, or 205s 'help.start()' for an HTML browser interface to help. 205s Type 'q()' to quit R. 205s 206s > NAME <- "summary" 206s > source(file.path('_helper', 'init.R')) 206s > 206s > # Note, atomic prints happen in different test file 206s > 206s > # - Any ------------------------------------------------------------------------ 206s > 206s > identical(any(diffPrint(iris.s, iris.s)), FALSE) 206s [1] TRUE 206s > res <- any(diffPrint(iris.s, iris.c)) # warn: "objects are NOT" 206s Warning message: 206s No visible differences, but objects are NOT `all.equal`. 206s > identical(res, FALSE) 206s [1] TRUE 206s > isTRUE(any(diffPrint(iris.s, iris.4))) 206s [1] TRUE 206s > 206s > 206s > # - Small Summary -------------------------------------------------------------- 206s > 206s > all.equal( 206s + as.character(summary(diffPrint(iris.s, iris.4))), rdsf(100) 206s + ) 206s [1] TRUE 206s > all.equal( 206s + as.character(summary(diffPrint(iris.s, iris.2))), rdsf(200) 206s + ) 206s [1] TRUE 206s > all.equal( 206s + as.character(summary(diffPrint(iris.s, iris.3))), rdsf(300) 206s + ) 206s [1] TRUE 206s > all.equal( 206s + as.character(summary(diffPrint(iris.s, iris.c))), rdsf(400) 206s + ) 206s [1] TRUE 206s > # All equal 206s > 206s > all.equal( 206s + as.character(summary(diffChr(letters, letters))), rdsf(450) 206s + ) 206s [1] TRUE 206s > 206s > # - Big Summary ---------------------------------------------------------------- 206s > 206s > # Make sure we test summary reduction, wrapping 206s > 206s > all.equal( 206s + as.character(summary(diffChr(chr.7, chr.8))), rdsf(500) 206s + ) 206s [1] TRUE 206s > all.equal( 206s + as.character(summary(diffChr(chr.7, chr.8), scale.threshold=1)), rdsf(600) 206s + ) 206s [1] TRUE 206s > all.equal( 206s + as.character(summary(diffChr(chr.7, chr.8), scale.threshold=0)), rdsf(700) 206s + ) 206s [1] TRUE 206s > # Force truncation of summary 206s > all.equal( 206s + as.character( 206s + summary(diffChr(chr.7, chr.8), scale.threshold=0, max.lines=2) 206s + ), 206s + rdsf(800) 206s + ) 207s [1] TRUE 207s > 207s > # - Show ----------------------------------------------------------------------- 207s > 207s > isTRUE( 207s + paste0(capture.output(summary(diffChr(chr.7, chr.8))), collapse="\n") == 207s + as.character(summary(diffChr(chr.7, chr.8))) 207s + ) 207s [1] TRUE 207s > 207s > # - HTML summary --------------------------------------------------------------- 207s > 207s > all.equal( 207s + as.character( 207s + summary( 207s + diffPrint( 207s + iris.s, iris.4, format="html", style=list(html.output="page") 207s + ) ) ), 207s + rdsf(900) 207s + ) 207s [1] TRUE 207s > 207s > # - errors --------------------------------------------------------------------- 207s > 207s > diff <- diffChr("hello green world", "hello red world") 207s > try(summary(diff, max.lines=0)) # "strictly positive" 207s Error in .local(object, ...) : 207s Argument `max.lines` must be integer(1L) and strictly positive 207s > try(summary(diff, width=1:3)) # "integer\\(1L\\)" 207s Error in .local(object, ...) : 207s Argument `width` must be integer(1L) and positive 207s > try(summary(diff, scale.threshold=5)) # "between 0 and 1" 207s Error in .local(object, ...) : 207s Argument `scale.threshold` must be numeric(1L) between 0 and 1 207s > 207s > # - width wrap ----------------------------------------------------------------- 207s > 207s > diff <- diffChr("hello green world", "hello red world", format='raw') 207s > all.equal(capture.output(show(summary(diff, width=5))), txtf(100)) 207s [1] TRUE 207s > 207s > 207s PASS 207s Begin testing test-text.R 207s 207s R version 4.4.3 (2025-02-28) -- "Trophy Case" 207s Copyright (C) 2025 The R Foundation for Statistical Computing 207s Platform: x86_64-pc-linux-gnu 207s 207s R is free software and comes with ABSOLUTELY NO WARRANTY. 207s You are welcome to redistribute it under certain conditions. 207s Type 'license()' or 'licence()' for distribution details. 207s 207s R is a collaborative project with many contributors. 207s Type 'contributors()' for more information and 207s 'citation()' on how to cite R or R packages in publications. 207s 207s Type 'demo()' for some demos, 'help()' for on-line help, or 207s 'help.start()' for an HTML browser interface to help. 207s Type 'q()' to quit R. 207s 207s > NAME <- "text" 207s > source(file.path('_helper', 'init.R')) 207s > 207s > # - simple wrap 207s > 207s > txt1 <- c( 207s + "humpty dumpty sat on a wall and had a big fall", 207s + "humpty sat on a wall and dumped a big fall" 207s + ) 207s > res1 <- diffobj:::wrap(txt1, 10, TRUE, sgr.supported=TRUE) 207s > 207s > identical( 207s + gsub(" *$", "", vapply(res1, paste0, character(1L), collapse="")), txt1 207s + ) 207s [1] TRUE 207s > all.equal(lapply(res1, nchar), list(rep(10L, 5L), rep(10L, 5L))) 207s [1] TRUE 207s > 207s > txt2 <- "hello world!" 207s > identical( 207s + unlist(diffobj:::wrap(txt2, nchar(txt2), TRUE, sgr.supported=TRUE)), 207s + txt2 207s + ) 207s [1] TRUE 207s > identical( 207s + paste0( 207s + unlist(diffobj:::wrap(txt2, nchar(txt2) / 2, TRUE, sgr.supported=TRUE)), 207s + collapse="" 207s + ), 207s + txt2 207s + ) 207s [1] TRUE 207s > 207s > # - wrap with escape sequences 207s > 207s > txt3 <- c( 207s + paste0( 207s + "humpty dumpty ", crayon::style("sat on a wall", "red"), 207s + " and had a big fall", 207s + crayon::style( 207s + crayon::style( 207s + "humpty sat on a wall and dumped a big fall", 207s + "green" 207s + ), 207s + "bgRed" 207s + ), "woohoo" 207s + ), 207s + paste0( 207s + crayon::style("hello ", "inverse"), "beautiful ", 207s + crayon::style("world", "blue") 207s + ) 207s + ) 207s > res3 <- diffobj:::wrap(txt3, 10, TRUE, sgr.supported=TRUE) 207s > 207s > identical( 207s + crayon::strip_style( 207s + gsub(" *$", "", vapply(res3, paste0, character(1L), collapse="")) 207s + ), 207s + crayon::strip_style(txt3) 207s + ) 207s [1] TRUE 207s > all.equal( 207s + lapply(res3, crayon::col_nchar), 207s + list(rep(10L, 10L), rep(10L, 3L)) 207s + ) 207s [1] TRUE 207s > 207s > # - strip hz whitespace 207s > 207s > options(crayon.enabled=FALSE) 207s > all.equal( 207s + diffobj:::strip_hz_control("a\tb", stops=4L, sgr.supported=TRUE), "a b") 207s [1] TRUE 207s > all.equal( 207s + diffobj:::strip_hz_control("ab\t", stops=4L, sgr.supported=TRUE), "ab ") 207s [1] TRUE 207s > all.equal( 207s + diffobj:::strip_hz_control("a\tb\t", stops=4L, sgr.supported=TRUE), "a b ") 207s [1] TRUE 207s > all.equal( 207s + diffobj:::strip_hz_control("\ta\tb\t", stops=4L, sgr.supported=TRUE), 207s + " a b " 207s + ) 207s [1] TRUE 207s > all.equal( 207s + diffobj:::strip_hz_control("\ta\tb\t", stops=c(2L, 4L), sgr.supported=TRUE), 207s + " a b " 207s + ) 207s [1] TRUE 207s > all.equal( 207s + diffobj:::strip_hz_control( 207s + c("ab\t", "\ta\tb\t"), sgr.supported=TRUE, stops=4L 207s + ), 207s + c("ab ", " a b ") 207s + ) 207s [1] TRUE 207s > # recall that nchar("\033") == 1 207s > all.equal( 207s + diffobj:::strip_hz_control( 207s + "\033[31ma\t\033[39mhello\tb", stops=10L, sgr.supported=FALSE 207s + ), 207s + "\033[31ma \033[39mhello b" 207s + ) 207s [1] TRUE 207s > all.equal( 207s + diffobj:::strip_hz_control( 207s + "\033[31ma\t\033[39mhello\tb", stops=10L, sgr.supported=TRUE 207s + ), 207s + "\033[31ma\033[39m \033[31m\033[39mhello \033[31m\033[39mb" 207s + ) 207s [1] TRUE 207s > # carriage returns 207s > 207s > all.equal( 207s + diffobj:::strip_hz_control("hellothere\rHELLO", sgr.supported=TRUE), 207s + "HELLOthere" 207s + ) 207s [1] TRUE 207s > all.equal( 207s + diffobj:::strip_hz_control( 207s + c("hellothere\rHELLO", "000\r12345678\rabcdef\rABC"), sgr.supported=TRUE 207s + ), 207s + c("HELLOthere", "ABCdef78") 207s + ) 207s [1] TRUE 207s > all.equal( 207s + diffobj:::strip_hz_control("hellothere\r", sgr.supported=TRUE), 207s + "hellothere" 207s + ) 207s [1] TRUE 207s > all.equal( 207s + diffobj:::strip_hz_control(character(), sgr.supported=TRUE), character() 207s + ) 207s [1] TRUE 207s > # newlines 207s > 207s > all.equal( 207s + diffobj:::strip_hz_control(c("a", "", "\n", "a\nb"), sgr.supported=TRUE), 207s + c("a", "", "", "a", "b") 207s + ) 207s [1] TRUE 207s > # with colors 207s > 207s > options(crayon.enabled=TRUE) 207s > 207s > all.equal( 207s + crayon::strip_style( 207s + diffobj:::strip_hz_control( 207s + "\033[31ma\t\033[39mhello\tb", stops=10L, sgr.supported=TRUE) 207s + ), 207s + "a hello b" 207s + ) 207s [1] TRUE 207s > test.chr <- paste0( 207s + crayon::red(crayon::`%+%`("000", crayon::bgBlue("\r12345678"))), 207s + "\rabcdef", crayon::green("\rABC") 207s + ) 207s > # visually inspect these 207s > 207s > # cat("\n") 207s > # cat(test.chr, sep="\n") 207s > res <- diffobj:::strip_hz_control(test.chr, sgr.supported=TRUE) 207s > # cat(res, sep="\n") 207s > all.equal(crayon::strip_style(res), "ABCdef78") 207s [1] TRUE 207s > 207s > # Mix tabs and carriage returns, visual inspection assumes terminal tab 207s > # stops at 8L; note output not exactly the same since it seems tabs don't 207s > # ovewrite prior screen state whereas spaces do 207s > 207s > test.chr.2 <- paste0( 207s + crayon::red(crayon::`%+%`("000", crayon::bgBlue("\r123\t456\t78"))), 207s + "\rab\tcd f", crayon::green("\rABC") 207s + ) 207s > # cat("\n") 207s > # cat(test.chr.2, sep="\n") 207s > res.2 <- diffobj:::strip_hz_control(test.chr.2, stops=8L, sgr.supported=TRUE) 207s > # cat(res.2, sep="\n") 207s > 207s > all.equal(crayon::strip_style(res.2), "ABC cd f 78") 207s [1] TRUE 207s > 207s > # multi line 207s > 207s > test.chr.3 <- c(test.chr, test.chr.2) 207s > # cat("\n") 207s > res.3 <- diffobj:::strip_hz_control(test.chr.3, sgr.supported=TRUE) 207s > # cat(res.3, sep="\n") 207s > # cat(test.chr.3, sep="\n") 207s > 207s > all.equal(crayon::strip_style(res.3), c("ABCdef78", "ABC cd f 78")) 207s [1] TRUE 207s > 207s > 207s PASS 207s Begin testing test-trim.R 207s 207s R version 4.4.3 (2025-02-28) -- "Trophy Case" 207s Copyright (C) 2025 The R Foundation for Statistical Computing 207s Platform: x86_64-pc-linux-gnu 207s 207s R is free software and comes with ABSOLUTELY NO WARRANTY. 207s You are welcome to redistribute it under certain conditions. 207s Type 'license()' or 'licence()' for distribution details. 207s 207s R is a collaborative project with many contributors. 207s Type 'contributors()' for more information and 207s 'citation()' on how to cite R or R packages in publications. 207s 207s Type 'demo()' for some demos, 'help()' for on-line help, or 207s 'help.start()' for an HTML browser interface to help. 207s Type 'q()' to quit R. 207s 207s > NAME <- "trim" 207s > source(file.path('_helper', 'init.R')) 208s > 208s > .mx.base <- matrix( 208s + c( 208s + "averylongwordthatcanlahblah", "causeasinglewidecolumnblah", 208s + "matrixtowrapseveraltimes", "inarrowscreen", "onceuponatime", 208s + "agreenduckflew", "overthemountains", "inalongofantelopes", 208s + "ineedthreemore", "entriesactually", "nowonlytwomore", "iwaswrongearlier" 208s + ), 208s + nrow=3, ncol=4 208s + ) 208s > 208s > # - Atomic --------------------------------------------------------------------- 208s > 208s > set.seed(1) 208s > x <- capture.output(1:50) 208s > y <- capture.output(factor(sample(letters, 50, replace=TRUE))) 208s > 208s > all.equal( 208s + diffobj:::strip_atomic_rh(x), 208s + c(" 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25", "26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50") 208s + ) 208s [1] TRUE 208s > all.equal( 208s + diffobj:::strip_atomic_rh(y), 208s + c("g j o x f x y r q b f e r j u m s z j u y f q d g k a j w i m p m e v r u c", "s k v q u o n u a m t s", "Levels: a b c d e f g i j k m n o p q r s t u v w x y z") 208s + ) 208s [1] TRUE 208s > all.equal(diffobj:::which_atomic_rh(capture.output(1:5)), 1) 208s [1] TRUE 208s > 208s > all.equal(as.character(diffPrint(1:3, 2:6, trim=FALSE)), rdsf(50)) 208s [1] TRUE 208s > 208s > # bad headers 208s > 208s > bh <- c("[1] a b c", "[4] d e f", "[5] h") 208s > all.equal(diffobj:::which_atomic_rh(bh), integer()) 208s [1] TRUE 208s > 208s > # - Matrix 208s > mx1 <- mx2 <- matrix(1:3, 3) 208s > all.equal( 208s + diffobj:::strip_matrix_rh(capture.output(mx1), dimnames(mx1)), 208s + c(" [,1]", " 1", " 2", " 3") 208s + ) 208s [1] TRUE 208s > # shouldn't strip headers from attributes 208s > attr(mx2, "blah") <- matrix(1:2, 2) 208s > all.equal( 208s + diffobj:::strip_matrix_rh(capture.output(mx2), dimnames(mx2)), 208s + c(" [,1]", " 1", " 2", " 3", "attr(,\"blah\")", " [,1]", "[1,] 1", "[2,] 2") 208s + ) 208s [1] TRUE 208s > # Matrices that wrap 208s > 208s > mx3 <- mx4 <- mx5 <- mx6 <- .mx.base 208s > old.opt <- options(width=30) 208s > 208s > all.equal( 208s + diffobj:::strip_matrix_rh(capture.output(mx3), dimnames(mx3)), 208s + c(" [,1] ", "\"averylongwordthatcanlahblah\"", "\"causeasinglewidecolumnblah\" ", "\"matrixtowrapseveraltimes\" ", " [,2] ", "\"inarrowscreen\" ", "\"onceuponatime\" ", "\"agreenduckflew\"", " [,3] ", "\"overthemountains\" ", "\"inalongofantelopes\"", "\"ineedthreemore\" ", " [,4] ", "\"entriesactually\" ", "\"nowonlytwomore\" ", "\"iwaswrongearlier\"") 208s + ) 208s [1] TRUE 208s > # Add rownames; should no longer strip 208s > 208s > rownames(mx4) <- 2:4 208s > all.equal( 208s + diffobj:::strip_matrix_rh(capture.output(mx4), dimnames(mx4)), 208s + capture.output(mx4) 208s + ) 208s [1] TRUE 208s > # Attributes don't have stuff stripped 208s > 208s > attr(mx6, "blah") <- letters[1:15] 208s > 208s > all.equal( 208s + diffobj:::strip_matrix_rh(capture.output(mx6), dimnames(mx6)), 208s + c(" [,1] ", "\"averylongwordthatcanlahblah\"", "\"causeasinglewidecolumnblah\" ", "\"matrixtowrapseveraltimes\" ", " [,2] ", "\"inarrowscreen\" ", "\"onceuponatime\" ", "\"agreenduckflew\"", " [,3] ", "\"overthemountains\" ", "\"inalongofantelopes\"", "\"ineedthreemore\" ", " [,4] ", "\"entriesactually\" ", "\"nowonlytwomore\" ", "\"iwaswrongearlier\"", "attr(,\"blah\")", " [1] \"a\" \"b\" \"c\" \"d\" \"e\" \"f\"", " [7] \"g\" \"h\" \"i\" \"j\" \"k\" \"l\"", "[13] \"m\" \"n\" \"o\"") 208s + ) 208s [1] TRUE 208s > # Single row matrix 208s > 208s > all.equal( 208s + diffobj:::which_matrix_rh(capture.output(matrix(1:2, nrow=1)), NULL), 2 208s + ) 208s [1] TRUE 208s > options(width=80) 208s > 208s > # - Table ---------------------------------------------------------------------- 208s > 208s > old.opt <- options(width=30) 208s > 208s > # Data frames 208s > 208s > df1 <- as.data.frame(.mx.base) 208s > all.equal( 208s + diffobj:::strip_table_rh(capture.output(df1)), 208s + c(" V1", "averylongwordthatcanlahblah", " causeasinglewidecolumnblah", " matrixtowrapseveraltimes", " V2", " inarrowscreen", " onceuponatime", "agreenduckflew", " V3", " overthemountains", "inalongofantelopes", " ineedthreemore", " V4", " entriesactually", " nowonlytwomore", "iwaswrongearlier") 208s + ) 208s [1] TRUE 208s > df2 <- df1[c(2, 1, 3), ] 208s > 208s > all.equal( 208s + diffobj:::strip_table_rh(capture.output(df2)), 208s + capture.output(df2) 208s + ) 208s [1] TRUE 208s > # Rownames that start from one and sequential, should get stripped; also, 208s > # colon allowed 208s > 208s > df3 <- df1 208s > rownames(df3) <- paste0(1:3, ":") 208s > all.equal( 208s + diffobj:::strip_table_rh(capture.output(df3)), 208s + c(" V1", "averylongwordthatcanlahblah", " causeasinglewidecolumnblah", " matrixtowrapseveraltimes", " V2", " inarrowscreen", " onceuponatime", "agreenduckflew", " V3", " overthemountains", "inalongofantelopes", " ineedthreemore", " V4", " entriesactually", " nowonlytwomore", "iwaswrongearlier") 208s + ) 208s [1] TRUE 208s > # Try ts 208s > 208s > all.equal( 208s + diffobj:::strip_table_rh(capture.output(USAccDeaths)), 208s + capture.output(USAccDeaths) 208s + ) 208s [1] TRUE 208s > # Set it so first year is 1 208s > 208s > USAD2 <- USAccDeaths 208s > tsp(USAD2)[1:2] <- tsp(USAD2)[1:2] - 1972 208s > 208s > all.equal( 208s + diffobj:::strip_table_rh(capture.output(USAD2)), 208s + c(" Jan Feb Mar Apr", " 9007 8106 8928 9137", " 7750 6981 8038 8422", " 8162 7306 8124 7870", " 7717 7461 7767 7925", " 7792 6957 7726 8106", " 7836 6892 7791 8192", " May Jun Jul Aug", "10017 10826 11317 10744", " 8714 9512 10120 9823", " 9387 9556 10093 9620", " 8623 8945 10078 9179", " 8890 9299 10625 9302", " 9115 9434 10484 9827", " Sep Oct Nov Dec", " 9713 9938 9161 8927", " 8743 9129 8710 8680", " 8285 8466 8160 8034", " 8037 8488 7874 8647", " 8314 8850 8265 8796", " 9110 9070 8633 9240") 208s + ) 208s [1] TRUE 208s > # single row data frame 208s > 208s > all.equal(c(diffobj:::which_table_rh(capture.output(data.frame(1, 2)))), 2) 208s [1] TRUE 208s > 208s > # More than 10 rows data.frame 208s > 208s > all.equal( 208s + c(diffobj:::which_table_rh(capture.output(head(Puromycin, 10L)))), 208s + 2:11 208s + ) 208s [1] TRUE 208s > # Bad wrap 208s > 208s > bw <- c( 208s + " bad", "1 123", "2 456", 208s + " dab", "1 123", "2 456", 208s + " abd", "1 123") 208s > 208s > all.equal( 208s + diffobj:::wtr_help(bw, diffobj:::.pat.tbl), 208s + c(2L, 3L, 5L, 6L) 208s + ) 208s [1] TRUE 208s > 208s > # - Array 208s > a <- array(1:6, c(3, 1, 2)) 208s > a.c <- capture.output(a) 208s > all.equal( 208s + diffobj:::strip_array_rh(a.c, dimnames(a)), 208s + c(", , 1", "", " [,1]", " 1", " 2", " 3", "", ", , 2", "", " [,1]", " 4", " 5", " 6", "") 208s + ) 208s [1] TRUE 208s > viz_sarh <- function(capt, obj) 208s + cbind( 208s + capt, 208s + as.integer( 208s + seq_along(capt) %in% diffobj:::which_array_rh(capt, dimnames(obj)) 208s + ) 208s + ) 208s > a1 <- a2 <- a3 <- a4 <- array( 208s + "averylongphrasethatwillforcemytwocolumnarraytowrapblahblah", c(2, 2, 2) 208s + ) 208s > ca1 <- capture.output(a1) 208s > viz_sarh(ca1, a1) 208s capt 208s [1,] ", , 1" 208s [2,] "" 208s [3,] " [,1] " 208s [4,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [5,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [6,] " [,2] " 208s [7,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [8,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [9,] "" 208s [10,] ", , 2" 208s [11,] "" 208s [12,] " [,1] " 208s [13,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [14,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [15,] " [,2] " 208s [16,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [17,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [18,] "" 208s 208s [1,] "0" 208s [2,] "0" 208s [3,] "0" 208s [4,] "1" 208s [5,] "1" 208s [6,] "0" 208s [7,] "1" 208s [8,] "1" 208s [9,] "0" 208s [10,] "0" 208s [11,] "0" 208s [12,] "0" 208s [13,] "1" 208s [14,] "1" 208s [15,] "0" 208s [16,] "1" 208s [17,] "1" 208s [18,] "0" 208s > all.equal( 208s + diffobj:::which_array_rh(ca1, dimnames(a1)), 208s + c(4L, 5L, 7L, 8L, 13L, 14L, 16L, 17L) 208s + ) 208s [1] TRUE 208s > colnames(a2) <- c("ABC", "DEF") 208s > ca2 <- capture.output(a2) 208s > viz_sarh(ca2, a2) 208s capt 208s [1,] ", , 1" 208s [2,] "" 208s [3,] " ABC " 208s [4,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [5,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [6,] " DEF " 208s [7,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [8,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [9,] "" 208s [10,] ", , 2" 208s [11,] "" 208s [12,] " ABC " 208s [13,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [14,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [15,] " DEF " 208s [16,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [17,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [18,] "" 208s 208s [1,] "0" 208s [2,] "0" 208s [3,] "0" 208s [4,] "1" 208s [5,] "1" 208s [6,] "0" 208s [7,] "1" 208s [8,] "1" 208s [9,] "0" 208s [10,] "0" 208s [11,] "0" 208s [12,] "0" 208s [13,] "1" 208s [14,] "1" 208s [15,] "0" 208s [16,] "1" 208s [17,] "1" 208s [18,] "0" 208s > all.equal( 208s + diffobj:::which_array_rh(ca2, dimnames(a2)), 208s + c(4L, 5L, 7L, 8L, 13L, 14L, 16L, 17L) 208s + ) 208s [1] TRUE 208s > rownames(a3) <- 1:2 208s > ca3 <- capture.output(a3) 208s > viz_sarh(ca3, a3) 208s capt 208s [1,] ", , 1" 208s [2,] "" 208s [3,] " [,1] " 208s [4,] "1 \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [5,] "2 \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [6,] " [,2] " 208s [7,] "1 \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [8,] "2 \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [9,] "" 208s [10,] ", , 2" 208s [11,] "" 208s [12,] " [,1] " 208s [13,] "1 \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [14,] "2 \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [15,] " [,2] " 208s [16,] "1 \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [17,] "2 \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [18,] "" 208s 208s [1,] "0" 208s [2,] "0" 208s [3,] "0" 208s [4,] "0" 208s [5,] "0" 208s [6,] "0" 208s [7,] "0" 208s [8,] "0" 208s [9,] "0" 208s [10,] "0" 208s [11,] "0" 208s [12,] "0" 208s [13,] "0" 208s [14,] "0" 208s [15,] "0" 208s [16,] "0" 208s [17,] "0" 208s [18,] "0" 208s > all.equal(diffobj:::which_array_rh(ca3, dimnames(a3)), integer(0L)) 208s [1] TRUE 208s > 208s > attr(a4, "blahblah") <- matrix(1:4, 2) 208s > ca4 <- capture.output(a4) 208s > viz_sarh(ca4, a4) 208s capt 208s [1,] ", , 1" 208s [2,] "" 208s [3,] " [,1] " 208s [4,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [5,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [6,] " [,2] " 208s [7,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [8,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [9,] "" 208s [10,] ", , 2" 208s [11,] "" 208s [12,] " [,1] " 208s [13,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [14,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [15,] " [,2] " 208s [16,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [17,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\"" 208s [18,] "" 208s [19,] "attr(,\"blahblah\")" 208s [20,] " [,1] [,2]" 208s [21,] "[1,] 1 3" 208s [22,] "[2,] 2 4" 208s 208s [1,] "0" 208s [2,] "0" 208s [3,] "0" 208s [4,] "1" 208s [5,] "1" 208s [6,] "0" 208s [7,] "1" 208s [8,] "1" 208s [9,] "0" 208s [10,] "0" 208s [11,] "0" 208s [12,] "0" 208s [13,] "1" 208s [14,] "1" 208s [15,] "0" 208s [16,] "1" 208s [17,] "1" 208s [18,] "0" 208s [19,] "0" 208s [20,] "0" 208s [21,] "0" 208s [22,] "0" 208s > all.equal( 208s + diffobj:::which_array_rh(ca4, dimnames(a4)), 208s + c(4L, 5L, 7L, 8L, 13L, 14L, 16L, 17L) 208s + ) 208s [1] TRUE 208s > options(width=80) 208s > 208s > # - List ----------------------------------------------------------------------- 208s > 208s > l1 <- list( 208s + matrix(1:4, 2), b=list(abc=c(letters, LETTERS), list(matrix(4:1, 2))) 208s + ) 208s > l1.c <- capture.output(l1) 208s > all.equal( 208s + diffobj:::strip_list_rh(l1.c, l1), 208s + c("[[1]]", " [,1] [,2]", " 1 3", " 2 4", "", "$b", "$b$abc", "\"a\" \"b\" \"c\" \"d\" \"e\" \"f\" \"g\" \"h\" \"i\" \"j\" \"k\" \"l\" \"m\" \"n\" \"o\" \"p\" \"q\" \"r\" \"s\"", "\"t\" \"u\" \"v\" \"w\" \"x\" \"y\" \"z\" \"A\" \"B\" \"C\" \"D\" \"E\" \"F\" \"G\" \"H\" \"I\" \"J\" \"K\" \"L\"", "\"M\" \"N\" \"O\" \"P\" \"Q\" \"R\" \"S\" \"T\" \"U\" \"V\" \"W\" \"X\" \"Y\" \"Z\"", "", "$b[[2]]", "$b[[2]][[1]]", " [,1] [,2]", " 4 2", " 3 1", "", "", "") 208s + ) 208s [1] TRUE 208s > 208s > a <- list(list()) 208s > aa <- list(list(), "a") 208s > b <- list("a", list()) 208s > c <- list(list("a"), "b") 208s > d <- list("a", "b", "c") 208s > 208s > identical( 208s + diffobj:::strip_list_rh(capture.output(d), d), 208s + c("[[1]]", "\"a\"", "", "[[2]]", "\"b\"", "", "[[3]]", "\"c\"", "") 208s + ) 208s [1] TRUE 208s > identical( 208s + diffobj:::strip_list_rh(capture.output(a), a), 208s + c("[[1]]", "list()", "") 208s + ) 208s [1] TRUE 208s > identical( 208s + diffobj:::strip_list_rh(capture.output(aa), aa), 208s + c("[[1]]", "list()", "", "[[2]]", "\"a\"", "") 208s + ) 208s [1] TRUE 208s > identical( 208s + diffobj:::strip_list_rh(capture.output(b), b), 208s + c("[[1]]", "\"a\"", "", "[[2]]", "list()", "") 208s + ) 208s [1] TRUE 208s > identical( 208s + diffobj:::strip_list_rh(capture.output(c), c), 208s + c("[[1]]", "[[1]][[1]]", "\"a\"", "", "", "[[2]]", "\"b\"", "") 208s + ) 208s [1] TRUE 208s > 208s > # - custom trim fun ------------------------------------------------------------ 208s > 208s > a <- matrix(100:102) 208s > b <- matrix(101:103) 208s > fun1 <- function(x, y) cbind(rep(1L, 4), rep(5L, 4)) 208s > 208s > all.equal(as.character(diffPrint(a, b, trim=fun1)), rdsf(100)) 208s [1] TRUE 208s > if(getRversion() >= "3.2.2") { 208s + capture.output( 208s + trim.err <- as.character(diffPrint(a, b, trim=function(x, y) stop("boom"))), 208s + type="message" 208s + ) # warn: "If you did not specify a `trim`" 208s + all.equal(trim.err, rdsf(200)) 208s + } 208s [1] TRUE 208s Warning message: 208s In apply_trim(current, cur.capt.p, etc@trim) : 208s `trim*` method produced an error when attempting to trim ; If you did not specify a `trim` function or define custom `trim*` methods contact maintainer (see `?trim`). Proceeding without trimming. 208s > # purposefully bad trim fun 208s > 208s > try( # "method return value must be a two " 208s + diffPrint(1:100, 2:100, trim=function(x, y) TRUE) 208s + ) 208s Error in apply_trim(target, tar.capt.p, etc@trim) : 208s `trim*` method return value must be a two column integer matrix with no NAs; If you did not specify a `trim` function or define custom `trim*` methods contact maintainer (see `?trim`). Proceeding without trimming. 208s > try( # "Invalid trim function" 208s + diffobj:::apply_trim(letters, letters, function(x) TRUE), 208s + ) 208s Error in diffobj:::apply_trim(letters, letters, function(x) TRUE) : 208s Invalid trim function (does not have at least two arguments). If you did not customize the trim function contact maintainer; see `?trim` 208s > try(# "must have as many rows" 208s + diffobj:::apply_trim( 208s + letters, letters, function(x, y) cbind(1:25, 1:25) 208s + ) 208s + ) 208s Error in diffobj:::apply_trim(letters, letters, function(x, y) cbind(1:25, : 208s `trim*` method output matrix must have as many rows as object character representation has elements; If you did not specify a `trim` function or define custom `trim*` methods contact maintainer (see `?trim`). Proceeding without trimming. 208s > 208s > # - s4 ------------------------------------------------------------------------- 208s > 208s > setClass("DOTrimTest", slots=c(a="numeric", b="list", c="matrix")) 208s > obj <- new( 208s + "DOTrimTest", a=1:40, b=list(a=1, letters, NULL), c=matrix(1:9, 3) 208s + ) 208s > all.equal( 208s + diffobj:::strip_s4_rh(capture.output(obj), obj), rdsf(300) 208s + ) 208s [1] TRUE 208s > 208s > 208s PASS 208s Begin testing test-warnings.R 208s 208s R version 4.4.3 (2025-02-28) -- "Trophy Case" 208s Copyright (C) 2025 The R Foundation for Statistical Computing 208s Platform: x86_64-pc-linux-gnu 208s 208s R is free software and comes with ABSOLUTELY NO WARRANTY. 208s You are welcome to redistribute it under certain conditions. 208s Type 'license()' or 'licence()' for distribution details. 208s 208s R is a collaborative project with many contributors. 208s Type 'contributors()' for more information and 208s 'citation()' on how to cite R or R packages in publications. 208s 208s Type 'demo()' for some demos, 'help()' for on-line help, or 208s 'help.start()' for an HTML browser interface to help. 208s Type 'q()' to quit R. 208s 208s > NAME <- "warnings" 208s > source(file.path('_helper', 'init.R')) 208s > 208s > # tests designed to produce warnings 208s > 208s > # - Extra args for `str` ------------------------------------------------------- 208s > 208s > a <- "hello" 208s > b <- "goodbye" 208s > 208s > invisible(diffStr(a, b, extra=list(comp.str="^"))) # "Specifying" 208s Warning message: 208s In capt_fun(target, current, etc = etc.proc, err = err, extra) : 208s Specifying `comp.str` may cause `str` output level folding to be incorrect 208s > invisible(diffStr(a, b, extra=list(comp="^"))) # "Specifying") 209s Warning messages: 209s 1: In match.call(definition, call, expand.dots, envir) : 209s partial argument match of 'comp' to 'comp.str' 209s 2: In capt_fun(target, current, etc = etc.proc, err = err, extra) : 209s Specifying `comp.str` may cause `str` output level folding to be incorrect 209s > invisible(diffStr(a, b, extra=list(indent.str="..."))) # "Specifying" 209s Warning message: 209s In capt_fun(target, current, etc = etc.proc, err = err, extra) : 209s Specifying `indent.str` may cause `str` output level folding to be incorrect 209s > invisible(diffStr(a, b, extra=list(indent="..."))) # "Specifying" 209s Warning messages: 209s 1: In match.call(definition, call, expand.dots, envir) : 209s partial argument match of 'indent' to 'indent.str' 209s 2: In capt_fun(target, current, etc = etc.proc, err = err, extra) : 209s Specifying `indent.str` may cause `str` output level folding to be incorrect 209s > 209s > # - Max diffs ------------------------------------------------------------------ 209s > 209s > # Max limit warnings work properly; these are not fully fleshed out 209s > 209s > A3 <- c("a b c", "d e f A B C D", "g h i", "f") 209s > B3 <- c("a b c", "xd e f E Q L S", "g h i", "q") 209s > 209s > invisible(diffChr(A3, B3, max.diffs=2)) # warn: "Exceeded diff" 209s Warning message: 209s Exceeded diff limit during diff computation (6 vs. 2 allowed); overall diff is likely not optimal 209s > 209s > # - Overriden formals ---------------------------------------------------------- 209s > 209s > # warn "Provided `style` argument will override the provided `format` argument" 209s > invisible(diffChr(letters, LETTERS, style=StyleRaw(), format="ansi8")) 209s Warning message: 209s In diffChr(target = letters, current = LETTERS, style = StyleRaw(), : 209s Provided `style` argument will override the provided `format` argument 209s > 209s > # warn: "Provided `style` .* `format` and `color.mode` arguments" 209s > invisible( 209s + diffChr(letters, LETTERS, style=StyleRaw(), format="ansi8", color.mode="rgb") 209s + ) 209s Warning message: 209s In diffChr(target = letters, current = LETTERS, style = StyleRaw(), : 209s Provided `style` argument will override the provided `format` and `color.mode` arguments. 209s > 209s > 209s PASS 209s autopkgtest [22:09:30]: test run-unit-test: -----------------------] 209s autopkgtest [22:09:30]: test run-unit-test: - - - - - - - - - - results - - - - - - - - - - 209s run-unit-test PASS 209s autopkgtest [22:09:30]: test pkg-r-autopkgtest: preparing testbed 284s autopkgtest [22:10:45]: testbed dpkg architecture: amd64 285s autopkgtest [22:10:46]: testbed apt version: 2.9.31ubuntu1 285s autopkgtest [22:10:46]: @@@@@@@@@@@@@@@@@@@@ test bed setup 285s autopkgtest [22:10:46]: testbed release detected to be: plucky 285s autopkgtest [22:10:46]: updating testbed package index (apt update) 285s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [126 kB] 285s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 285s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 285s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 285s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [14.5 kB] 285s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [369 kB] 285s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [44.1 kB] 285s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/main i386 Packages [67.4 kB] 285s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 Packages [85.7 kB] 285s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 c-n-f Metadata [1852 B] 285s Get:11 http://ftpmaster.internal/ubuntu plucky-proposed/restricted amd64 c-n-f Metadata [116 B] 285s Get:12 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 Packages [342 kB] 285s Get:13 http://ftpmaster.internal/ubuntu plucky-proposed/universe i386 Packages [174 kB] 285s Get:14 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 c-n-f Metadata [15.3 kB] 285s Get:15 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse amd64 Packages [16.1 kB] 285s Get:16 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse i386 Packages [8544 B] 285s Get:17 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse amd64 c-n-f Metadata [628 B] 286s Fetched 1265 kB in 0s (5307 kB/s) 286s Reading package lists... 287s Reading package lists... 287s Building dependency tree... 287s Reading state information... 287s Calculating upgrade... 288s Calculating upgrade... 288s The following package was automatically installed and is no longer required: 288s libnl-genl-3-200 288s Use 'sudo apt autoremove' to remove it. 288s The following NEW packages will be installed: 288s bpftool libdebuginfod-common libdebuginfod1t64 linux-headers-6.14.0-10 288s linux-headers-6.14.0-10-generic linux-image-6.14.0-10-generic 288s linux-modules-6.14.0-10-generic linux-modules-extra-6.14.0-10-generic 288s linux-perf linux-tools-6.14.0-10 linux-tools-6.14.0-10-generic pnp.ids 288s The following packages will be upgraded: 288s apparmor apt apt-utils binutils binutils-common binutils-x86-64-linux-gnu 288s cloud-init cloud-init-base curl dosfstools fwupd gir1.2-girepository-2.0 288s gir1.2-glib-2.0 htop hwdata libapparmor1 libapt-pkg7.0 libaudit-common 288s libaudit1 libbinutils libbrotli1 libcap-ng0 libctf-nobfd0 libctf0 288s libcurl3t64-gnutls libcurl4t64 libestr0 libfwupd3 libgirepository-1.0-1 288s libglib2.0-0t64 libglib2.0-data libgprofng0 libjemalloc2 liblz4-1 liblzma5 288s libmm-glib0 libncurses6 libncursesw6 libnl-3-200 libnl-genl-3-200 288s libnl-route-3-200 libpci3 libpython3-stdlib libpython3.13 288s libpython3.13-minimal libpython3.13-stdlib libselinux1 libsframe1 288s libsqlite3-0 libtinfo6 libxml2 linux-firmware linux-generic 288s linux-headers-generic linux-headers-virtual linux-image-generic 288s linux-image-virtual linux-libc-dev linux-tools-common linux-virtual 288s media-types ncurses-base ncurses-bin ncurses-term pci.ids pciutils 288s pinentry-curses python-apt-common python3 python3-apt python3-cffi-backend 288s python3-dbus python3-gi python3-jinja2 python3-lazr.uri python3-markupsafe 288s python3-minimal python3-systemd python3-yaml python3.13 python3.13-gdbm 288s python3.13-minimal rsync rsyslog strace xz-utils 288s 86 upgraded, 12 newly installed, 0 to remove and 0 not upgraded. 288s Need to get 807 MB of archives. 288s After this operation, 326 MB of additional disk space will be used. 288s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 ncurses-bin amd64 6.5+20250216-2 [194 kB] 288s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 ncurses-base all 6.5+20250216-2 [25.9 kB] 288s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 ncurses-term all 6.5+20250216-2 [276 kB] 288s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 liblz4-1 amd64 1.10.0-4 [66.4 kB] 288s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 liblzma5 amd64 5.6.4-1 [157 kB] 288s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 libapt-pkg7.0 amd64 2.9.33 [1138 kB] 288s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 apt amd64 2.9.33 [1439 kB] 288s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 apt-utils amd64 2.9.33 [222 kB] 288s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-minimal amd64 3.13.2-2 [27.7 kB] 288s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 python3 amd64 3.13.2-2 [24.0 kB] 288s Get:11 http://ftpmaster.internal/ubuntu plucky/main amd64 libpython3.13 amd64 3.13.2-2 [2341 kB] 288s Get:12 http://ftpmaster.internal/ubuntu plucky/main amd64 media-types all 13.0.0 [29.9 kB] 288s Get:13 http://ftpmaster.internal/ubuntu plucky/main amd64 libncurses6 amd64 6.5+20250216-2 [126 kB] 288s Get:14 http://ftpmaster.internal/ubuntu plucky/main amd64 libncursesw6 amd64 6.5+20250216-2 [165 kB] 288s Get:15 http://ftpmaster.internal/ubuntu plucky/main amd64 libtinfo6 amd64 6.5+20250216-2 [119 kB] 288s Get:16 http://ftpmaster.internal/ubuntu plucky/main amd64 libsqlite3-0 amd64 3.46.1-2 [715 kB] 288s Get:17 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.13 amd64 3.13.2-2 [735 kB] 288s Get:18 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.13-minimal amd64 3.13.2-2 [2365 kB] 288s Get:19 http://ftpmaster.internal/ubuntu plucky/main amd64 libpython3.13-minimal amd64 3.13.2-2 [883 kB] 288s Get:20 http://ftpmaster.internal/ubuntu plucky/main amd64 libpython3.13-stdlib amd64 3.13.2-2 [2066 kB] 288s Get:21 http://ftpmaster.internal/ubuntu plucky/main amd64 libpython3-stdlib amd64 3.13.2-2 [10.4 kB] 288s Get:22 http://ftpmaster.internal/ubuntu plucky/main amd64 rsync amd64 3.4.1+ds1-3 [482 kB] 288s Get:23 http://ftpmaster.internal/ubuntu plucky/main amd64 libdebuginfod-common all 0.192-4 [15.4 kB] 288s Get:24 http://ftpmaster.internal/ubuntu plucky/main amd64 libaudit-common all 1:4.0.2-2ubuntu2 [6628 B] 288s Get:25 http://ftpmaster.internal/ubuntu plucky/main amd64 libcap-ng0 amd64 0.8.5-4build1 [15.6 kB] 288s Get:26 http://ftpmaster.internal/ubuntu plucky/main amd64 libaudit1 amd64 1:4.0.2-2ubuntu2 [54.0 kB] 288s Get:27 http://ftpmaster.internal/ubuntu plucky/main amd64 libselinux1 amd64 3.7-3ubuntu3 [87.3 kB] 288s Get:28 http://ftpmaster.internal/ubuntu plucky/main amd64 gir1.2-girepository-2.0 amd64 1.83.4-1 [25.3 kB] 288s Get:29 http://ftpmaster.internal/ubuntu plucky/main amd64 gir1.2-glib-2.0 amd64 2.84.0-1 [184 kB] 288s Get:30 http://ftpmaster.internal/ubuntu plucky/main amd64 libglib2.0-0t64 amd64 2.84.0-1 [1669 kB] 288s Get:31 http://ftpmaster.internal/ubuntu plucky/main amd64 libgirepository-1.0-1 amd64 1.83.4-1 [89.5 kB] 288s Get:32 http://ftpmaster.internal/ubuntu plucky/main amd64 libapparmor1 amd64 4.1.0~beta5-0ubuntu8 [55.0 kB] 288s Get:33 http://ftpmaster.internal/ubuntu plucky/main amd64 libestr0 amd64 0.1.11-2 [8340 B] 288s Get:34 http://ftpmaster.internal/ubuntu plucky/main amd64 libglib2.0-data all 2.84.0-1 [53.0 kB] 288s Get:35 http://ftpmaster.internal/ubuntu plucky/main amd64 libxml2 amd64 2.12.7+dfsg+really2.9.14-0.2ubuntu5 [772 kB] 289s Get:36 http://ftpmaster.internal/ubuntu plucky/main amd64 python-apt-common all 2.9.9build1 [21.3 kB] 289s Get:37 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-apt amd64 2.9.9build1 [172 kB] 289s Get:38 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-cffi-backend amd64 1.17.1-2build2 [96.6 kB] 289s Get:39 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-dbus amd64 1.3.2-5build5 [102 kB] 289s Get:40 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-gi amd64 3.50.0-4build1 [252 kB] 289s Get:41 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-yaml amd64 6.0.2-1build2 [144 kB] 289s Get:42 http://ftpmaster.internal/ubuntu plucky/main amd64 rsyslog amd64 8.2412.0-2ubuntu2 [555 kB] 289s Get:43 http://ftpmaster.internal/ubuntu plucky/main amd64 apparmor amd64 4.1.0~beta5-0ubuntu8 [701 kB] 289s Get:44 http://ftpmaster.internal/ubuntu plucky/main amd64 dosfstools amd64 4.2-1.2 [95.0 kB] 289s Get:45 http://ftpmaster.internal/ubuntu plucky/main amd64 libnl-genl-3-200 amd64 3.7.0-1 [12.2 kB] 289s Get:46 http://ftpmaster.internal/ubuntu plucky/main amd64 libnl-route-3-200 amd64 3.7.0-1 [191 kB] 289s Get:47 http://ftpmaster.internal/ubuntu plucky/main amd64 libnl-3-200 amd64 3.7.0-1 [64.9 kB] 289s Get:48 http://ftpmaster.internal/ubuntu plucky/main amd64 pci.ids all 0.0~2025.03.09-1 [285 kB] 289s Get:49 http://ftpmaster.internal/ubuntu plucky/main amd64 pciutils amd64 1:3.13.0-2 [110 kB] 289s Get:50 http://ftpmaster.internal/ubuntu plucky/main amd64 libpci3 amd64 1:3.13.0-2 [39.8 kB] 289s Get:51 http://ftpmaster.internal/ubuntu plucky/main amd64 strace amd64 6.13+ds-1ubuntu1 [622 kB] 289s Get:52 http://ftpmaster.internal/ubuntu plucky/main amd64 xz-utils amd64 5.6.4-1 [278 kB] 289s Get:53 http://ftpmaster.internal/ubuntu plucky/main amd64 libgprofng0 amd64 2.44-3ubuntu1 [886 kB] 289s Get:54 http://ftpmaster.internal/ubuntu plucky/main amd64 libctf0 amd64 2.44-3ubuntu1 [96.5 kB] 289s Get:55 http://ftpmaster.internal/ubuntu plucky/main amd64 libctf-nobfd0 amd64 2.44-3ubuntu1 [98.9 kB] 289s Get:56 http://ftpmaster.internal/ubuntu plucky/main amd64 binutils-x86-64-linux-gnu amd64 2.44-3ubuntu1 [1108 kB] 289s Get:57 http://ftpmaster.internal/ubuntu plucky/main amd64 libbinutils amd64 2.44-3ubuntu1 [585 kB] 289s Get:58 http://ftpmaster.internal/ubuntu plucky/main amd64 binutils amd64 2.44-3ubuntu1 [208 kB] 289s Get:59 http://ftpmaster.internal/ubuntu plucky/main amd64 binutils-common amd64 2.44-3ubuntu1 [215 kB] 289s Get:60 http://ftpmaster.internal/ubuntu plucky/main amd64 libsframe1 amd64 2.44-3ubuntu1 [14.8 kB] 289s Get:61 http://ftpmaster.internal/ubuntu plucky/main amd64 hwdata all 0.393-3 [1562 B] 289s Get:62 http://ftpmaster.internal/ubuntu plucky/main amd64 pnp.ids all 0.393-3 [29.5 kB] 289s Get:63 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-tools-common all 6.14.0-10.10 [295 kB] 289s Get:64 http://ftpmaster.internal/ubuntu plucky/main amd64 bpftool amd64 7.6.0+6.14.0-10.10 [1147 kB] 289s Get:65 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-markupsafe amd64 2.1.5-1build4 [13.4 kB] 289s Get:66 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-jinja2 all 3.1.5-2ubuntu1 [109 kB] 289s Get:67 http://ftpmaster.internal/ubuntu plucky/main amd64 cloud-init-base all 25.1-0ubuntu3 [616 kB] 289s Get:68 http://ftpmaster.internal/ubuntu plucky/main amd64 libbrotli1 amd64 1.1.0-2build4 [365 kB] 289s Get:69 http://ftpmaster.internal/ubuntu plucky/main amd64 curl amd64 8.12.1-3ubuntu1 [258 kB] 289s Get:70 http://ftpmaster.internal/ubuntu plucky/main amd64 libcurl4t64 amd64 8.12.1-3ubuntu1 [437 kB] 289s Get:71 http://ftpmaster.internal/ubuntu plucky/main amd64 libcurl3t64-gnutls amd64 8.12.1-3ubuntu1 [432 kB] 289s Get:72 http://ftpmaster.internal/ubuntu plucky/main amd64 fwupd amd64 2.0.6-4 [5408 kB] 289s Get:73 http://ftpmaster.internal/ubuntu plucky/main amd64 libfwupd3 amd64 2.0.6-4 [136 kB] 289s Get:74 http://ftpmaster.internal/ubuntu plucky/main amd64 libmm-glib0 amd64 1.23.4-0ubuntu3 [251 kB] 289s Get:75 http://ftpmaster.internal/ubuntu plucky/main amd64 htop amd64 3.4.0-2 [195 kB] 289s Get:76 http://ftpmaster.internal/ubuntu plucky/main amd64 libdebuginfod1t64 amd64 0.192-4 [21.0 kB] 289s Get:77 http://ftpmaster.internal/ubuntu plucky/main amd64 libjemalloc2 amd64 5.3.0-3 [277 kB] 289s Get:78 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-firmware amd64 20250310.git9e1370d3-0ubuntu1 [571 MB] 298s Get:79 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-modules-6.14.0-10-generic amd64 6.14.0-10.10 [41.2 MB] 298s Get:80 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-image-6.14.0-10-generic amd64 6.14.0-10.10 [15.3 MB] 298s Get:81 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-modules-extra-6.14.0-10-generic amd64 6.14.0-10.10 [120 MB] 300s Get:82 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-generic amd64 6.14.0-10.10 [1730 B] 300s Get:83 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-image-generic amd64 6.14.0-10.10 [11.1 kB] 300s Get:84 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-virtual amd64 6.14.0-10.10 [1722 B] 300s Get:85 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-image-virtual amd64 6.14.0-10.10 [11.1 kB] 300s Get:86 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-headers-virtual amd64 6.14.0-10.10 [1642 B] 300s Get:87 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-headers-6.14.0-10 all 6.14.0-10.10 [14.2 MB] 300s Get:88 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-headers-6.14.0-10-generic amd64 6.14.0-10.10 [3915 kB] 300s Get:89 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-headers-generic amd64 6.14.0-10.10 [11.0 kB] 300s Get:90 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-libc-dev amd64 6.14.0-10.10 [1723 kB] 300s Get:91 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-perf amd64 6.14.0-10.10 [4122 kB] 300s Get:92 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-tools-6.14.0-10 amd64 6.14.0-10.10 [1394 kB] 300s Get:93 http://ftpmaster.internal/ubuntu plucky/main amd64 linux-tools-6.14.0-10-generic amd64 6.14.0-10.10 [830 B] 300s Get:94 http://ftpmaster.internal/ubuntu plucky/main amd64 pinentry-curses amd64 1.3.1-2ubuntu3 [42.3 kB] 300s Get:95 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-lazr.uri all 1.0.6-6 [13.7 kB] 300s Get:96 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-systemd amd64 235-1build6 [43.9 kB] 300s Get:97 http://ftpmaster.internal/ubuntu plucky/main amd64 python3.13-gdbm amd64 3.13.2-2 [31.9 kB] 300s Get:98 http://ftpmaster.internal/ubuntu plucky/main amd64 cloud-init all 25.1-0ubuntu3 [2100 B] 300s Preconfiguring packages ... 300s Fetched 807 MB in 12s (67.0 MB/s) 301s (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 ... 109138 files and directories currently installed.) 301s Preparing to unpack .../ncurses-bin_6.5+20250216-2_amd64.deb ... 301s Unpacking ncurses-bin (6.5+20250216-2) over (6.5+20250216-1) ... 301s Setting up ncurses-bin (6.5+20250216-2) ... 301s (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 ... 109138 files and directories currently installed.) 301s Preparing to unpack .../ncurses-base_6.5+20250216-2_all.deb ... 301s Unpacking ncurses-base (6.5+20250216-2) over (6.5+20250216-1) ... 301s Setting up ncurses-base (6.5+20250216-2) ... 301s (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 ... 109138 files and directories currently installed.) 301s Preparing to unpack .../ncurses-term_6.5+20250216-2_all.deb ... 301s Unpacking ncurses-term (6.5+20250216-2) over (6.5+20250216-1) ... 302s Preparing to unpack .../liblz4-1_1.10.0-4_amd64.deb ... 302s Unpacking liblz4-1:amd64 (1.10.0-4) over (1.10.0-3) ... 302s Setting up liblz4-1:amd64 (1.10.0-4) ... 302s (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 ... 109138 files and directories currently installed.) 302s Preparing to unpack .../liblzma5_5.6.4-1_amd64.deb ... 302s Unpacking liblzma5:amd64 (5.6.4-1) over (5.6.3-1) ... 302s Setting up liblzma5:amd64 (5.6.4-1) ... 302s (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 ... 109138 files and directories currently installed.) 302s Preparing to unpack .../libapt-pkg7.0_2.9.33_amd64.deb ... 302s Unpacking libapt-pkg7.0:amd64 (2.9.33) over (2.9.31ubuntu1) ... 302s Setting up libapt-pkg7.0:amd64 (2.9.33) ... 302s (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 ... 109138 files and directories currently installed.) 302s Preparing to unpack .../archives/apt_2.9.33_amd64.deb ... 302s Unpacking apt (2.9.33) over (2.9.31ubuntu1) ... 302s Setting up apt (2.9.33) ... 303s (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 ... 109138 files and directories currently installed.) 303s Preparing to unpack .../apt-utils_2.9.33_amd64.deb ... 303s Unpacking apt-utils (2.9.33) over (2.9.31ubuntu1) ... 303s Preparing to unpack .../python3-minimal_3.13.2-2_amd64.deb ... 303s Unpacking python3-minimal (3.13.2-2) over (3.13.2-1) ... 303s Setting up python3-minimal (3.13.2-2) ... 303s (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 ... 109138 files and directories currently installed.) 303s Preparing to unpack .../0-python3_3.13.2-2_amd64.deb ... 303s Unpacking python3 (3.13.2-2) over (3.13.2-1) ... 303s Preparing to unpack .../1-libpython3.13_3.13.2-2_amd64.deb ... 303s Unpacking libpython3.13:amd64 (3.13.2-2) over (3.13.2-1) ... 303s Preparing to unpack .../2-media-types_13.0.0_all.deb ... 303s Unpacking media-types (13.0.0) over (12.0.0) ... 303s Preparing to unpack .../3-libncurses6_6.5+20250216-2_amd64.deb ... 303s Unpacking libncurses6:amd64 (6.5+20250216-2) over (6.5+20250216-1) ... 303s Preparing to unpack .../4-libncursesw6_6.5+20250216-2_amd64.deb ... 303s Unpacking libncursesw6:amd64 (6.5+20250216-2) over (6.5+20250216-1) ... 303s Preparing to unpack .../5-libtinfo6_6.5+20250216-2_amd64.deb ... 303s Unpacking libtinfo6:amd64 (6.5+20250216-2) over (6.5+20250216-1) ... 303s Setting up libtinfo6:amd64 (6.5+20250216-2) ... 303s (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 ... 109138 files and directories currently installed.) 304s Preparing to unpack .../0-libsqlite3-0_3.46.1-2_amd64.deb ... 304s Unpacking libsqlite3-0:amd64 (3.46.1-2) over (3.46.1-1) ... 304s Preparing to unpack .../1-python3.13_3.13.2-2_amd64.deb ... 304s Unpacking python3.13 (3.13.2-2) over (3.13.2-1) ... 304s Preparing to unpack .../2-python3.13-minimal_3.13.2-2_amd64.deb ... 304s Unpacking python3.13-minimal (3.13.2-2) over (3.13.2-1) ... 304s Preparing to unpack .../3-libpython3.13-minimal_3.13.2-2_amd64.deb ... 304s Unpacking libpython3.13-minimal:amd64 (3.13.2-2) over (3.13.2-1) ... 304s Preparing to unpack .../4-libpython3.13-stdlib_3.13.2-2_amd64.deb ... 304s Unpacking libpython3.13-stdlib:amd64 (3.13.2-2) over (3.13.2-1) ... 304s Preparing to unpack .../5-libpython3-stdlib_3.13.2-2_amd64.deb ... 304s Unpacking libpython3-stdlib:amd64 (3.13.2-2) over (3.13.2-1) ... 304s Preparing to unpack .../6-rsync_3.4.1+ds1-3_amd64.deb ... 304s Unpacking rsync (3.4.1+ds1-3) over (3.4.1-0syncable1) ... 304s Selecting previously unselected package libdebuginfod-common. 304s Preparing to unpack .../7-libdebuginfod-common_0.192-4_all.deb ... 304s Unpacking libdebuginfod-common (0.192-4) ... 304s Preparing to unpack .../8-libaudit-common_1%3a4.0.2-2ubuntu2_all.deb ... 304s Unpacking libaudit-common (1:4.0.2-2ubuntu2) over (1:4.0.2-2ubuntu1) ... 304s Setting up libaudit-common (1:4.0.2-2ubuntu2) ... 304s (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 ... 109147 files and directories currently installed.) 304s Preparing to unpack .../libcap-ng0_0.8.5-4build1_amd64.deb ... 304s Unpacking libcap-ng0:amd64 (0.8.5-4build1) over (0.8.5-4) ... 304s Setting up libcap-ng0:amd64 (0.8.5-4build1) ... 304s (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 ... 109147 files and directories currently installed.) 304s Preparing to unpack .../libaudit1_1%3a4.0.2-2ubuntu2_amd64.deb ... 304s Unpacking libaudit1:amd64 (1:4.0.2-2ubuntu2) over (1:4.0.2-2ubuntu1) ... 304s Setting up libaudit1:amd64 (1:4.0.2-2ubuntu2) ... 305s (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 ... 109147 files and directories currently installed.) 305s Preparing to unpack .../libselinux1_3.7-3ubuntu3_amd64.deb ... 305s Unpacking libselinux1:amd64 (3.7-3ubuntu3) over (3.7-3ubuntu2) ... 305s Setting up libselinux1:amd64 (3.7-3ubuntu3) ... 305s (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 ... 109147 files and directories currently installed.) 305s Preparing to unpack .../00-gir1.2-girepository-2.0_1.83.4-1_amd64.deb ... 305s Unpacking gir1.2-girepository-2.0:amd64 (1.83.4-1) over (1.82.0-4) ... 305s Preparing to unpack .../01-gir1.2-glib-2.0_2.84.0-1_amd64.deb ... 305s Unpacking gir1.2-glib-2.0:amd64 (2.84.0-1) over (2.83.5-1) ... 305s Preparing to unpack .../02-libglib2.0-0t64_2.84.0-1_amd64.deb ... 305s Unpacking libglib2.0-0t64:amd64 (2.84.0-1) over (2.83.5-1) ... 305s Preparing to unpack .../03-libgirepository-1.0-1_1.83.4-1_amd64.deb ... 305s Unpacking libgirepository-1.0-1:amd64 (1.83.4-1) over (1.82.0-4) ... 305s Preparing to unpack .../04-libapparmor1_4.1.0~beta5-0ubuntu8_amd64.deb ... 305s Unpacking libapparmor1:amd64 (4.1.0~beta5-0ubuntu8) over (4.1.0~beta5-0ubuntu6) ... 305s Preparing to unpack .../05-libestr0_0.1.11-2_amd64.deb ... 305s Unpacking libestr0:amd64 (0.1.11-2) over (0.1.11-1build1) ... 305s Preparing to unpack .../06-libglib2.0-data_2.84.0-1_all.deb ... 305s Unpacking libglib2.0-data (2.84.0-1) over (2.83.5-1) ... 305s Preparing to unpack .../07-libxml2_2.12.7+dfsg+really2.9.14-0.2ubuntu5_amd64.deb ... 305s Unpacking libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.2ubuntu5) over (2.12.7+dfsg+really2.9.14-0.2ubuntu4) ... 305s Preparing to unpack .../08-python-apt-common_2.9.9build1_all.deb ... 305s Unpacking python-apt-common (2.9.9build1) over (2.9.9) ... 305s Preparing to unpack .../09-python3-apt_2.9.9build1_amd64.deb ... 305s Unpacking python3-apt (2.9.9build1) over (2.9.9) ... 305s Preparing to unpack .../10-python3-cffi-backend_1.17.1-2build2_amd64.deb ... 305s Unpacking python3-cffi-backend:amd64 (1.17.1-2build2) over (1.17.1-2build1) ... 305s Preparing to unpack .../11-python3-dbus_1.3.2-5build5_amd64.deb ... 305s Unpacking python3-dbus (1.3.2-5build5) over (1.3.2-5build4) ... 305s Preparing to unpack .../12-python3-gi_3.50.0-4build1_amd64.deb ... 305s Unpacking python3-gi (3.50.0-4build1) over (3.50.0-4) ... 305s Preparing to unpack .../13-python3-yaml_6.0.2-1build2_amd64.deb ... 306s Unpacking python3-yaml (6.0.2-1build2) over (6.0.2-1build1) ... 306s Preparing to unpack .../14-rsyslog_8.2412.0-2ubuntu2_amd64.deb ... 306s Unpacking rsyslog (8.2412.0-2ubuntu2) over (8.2412.0-2ubuntu1) ... 306s Preparing to unpack .../15-apparmor_4.1.0~beta5-0ubuntu8_amd64.deb ... 306s Unpacking apparmor (4.1.0~beta5-0ubuntu8) over (4.1.0~beta5-0ubuntu6) ... 307s Preparing to unpack .../16-dosfstools_4.2-1.2_amd64.deb ... 307s Unpacking dosfstools (4.2-1.2) over (4.2-1.1build1) ... 307s Preparing to unpack .../17-libnl-genl-3-200_3.7.0-1_amd64.deb ... 307s Unpacking libnl-genl-3-200:amd64 (3.7.0-1) over (3.7.0-0.3build2) ... 307s Preparing to unpack .../18-libnl-route-3-200_3.7.0-1_amd64.deb ... 307s Unpacking libnl-route-3-200:amd64 (3.7.0-1) over (3.7.0-0.3build2) ... 307s Preparing to unpack .../19-libnl-3-200_3.7.0-1_amd64.deb ... 307s Unpacking libnl-3-200:amd64 (3.7.0-1) over (3.7.0-0.3build2) ... 307s Preparing to unpack .../20-pci.ids_0.0~2025.03.09-1_all.deb ... 307s Unpacking pci.ids (0.0~2025.03.09-1) over (0.0~2025.02.12-1) ... 307s Preparing to unpack .../21-pciutils_1%3a3.13.0-2_amd64.deb ... 307s Unpacking pciutils (1:3.13.0-2) over (1:3.13.0-1) ... 307s Preparing to unpack .../22-libpci3_1%3a3.13.0-2_amd64.deb ... 307s Unpacking libpci3:amd64 (1:3.13.0-2) over (1:3.13.0-1) ... 307s Preparing to unpack .../23-strace_6.13+ds-1ubuntu1_amd64.deb ... 307s Unpacking strace (6.13+ds-1ubuntu1) over (6.11-0ubuntu1) ... 307s Preparing to unpack .../24-xz-utils_5.6.4-1_amd64.deb ... 307s Unpacking xz-utils (5.6.4-1) over (5.6.3-1) ... 307s Preparing to unpack .../25-libgprofng0_2.44-3ubuntu1_amd64.deb ... 307s Unpacking libgprofng0:amd64 (2.44-3ubuntu1) over (2.44-2ubuntu1) ... 307s Preparing to unpack .../26-libctf0_2.44-3ubuntu1_amd64.deb ... 307s Unpacking libctf0:amd64 (2.44-3ubuntu1) over (2.44-2ubuntu1) ... 307s Preparing to unpack .../27-libctf-nobfd0_2.44-3ubuntu1_amd64.deb ... 307s Unpacking libctf-nobfd0:amd64 (2.44-3ubuntu1) over (2.44-2ubuntu1) ... 307s Preparing to unpack .../28-binutils-x86-64-linux-gnu_2.44-3ubuntu1_amd64.deb ... 307s Unpacking binutils-x86-64-linux-gnu (2.44-3ubuntu1) over (2.44-2ubuntu1) ... 307s Preparing to unpack .../29-libbinutils_2.44-3ubuntu1_amd64.deb ... 307s Unpacking libbinutils:amd64 (2.44-3ubuntu1) over (2.44-2ubuntu1) ... 307s Preparing to unpack .../30-binutils_2.44-3ubuntu1_amd64.deb ... 307s Unpacking binutils (2.44-3ubuntu1) over (2.44-2ubuntu1) ... 307s Preparing to unpack .../31-binutils-common_2.44-3ubuntu1_amd64.deb ... 307s Unpacking binutils-common:amd64 (2.44-3ubuntu1) over (2.44-2ubuntu1) ... 308s Preparing to unpack .../32-libsframe1_2.44-3ubuntu1_amd64.deb ... 308s Unpacking libsframe1:amd64 (2.44-3ubuntu1) over (2.44-2ubuntu1) ... 308s Preparing to unpack .../33-hwdata_0.393-3_all.deb ... 308s Unpacking hwdata (0.393-3) over (0.393-1) ... 308s Selecting previously unselected package pnp.ids. 308s Preparing to unpack .../34-pnp.ids_0.393-3_all.deb ... 308s Unpacking pnp.ids (0.393-3) ... 308s Preparing to unpack .../35-linux-tools-common_6.14.0-10.10_all.deb ... 308s Unpacking linux-tools-common (6.14.0-10.10) over (6.12.0-16.16) ... 308s Selecting previously unselected package bpftool. 308s Preparing to unpack .../36-bpftool_7.6.0+6.14.0-10.10_amd64.deb ... 308s Unpacking bpftool (7.6.0+6.14.0-10.10) ... 308s Preparing to unpack .../37-python3-markupsafe_2.1.5-1build4_amd64.deb ... 308s Unpacking python3-markupsafe (2.1.5-1build4) over (2.1.5-1build3) ... 308s Preparing to unpack .../38-python3-jinja2_3.1.5-2ubuntu1_all.deb ... 308s Unpacking python3-jinja2 (3.1.5-2ubuntu1) over (3.1.5-2) ... 308s Preparing to unpack .../39-cloud-init-base_25.1-0ubuntu3_all.deb ... 308s Unpacking cloud-init-base (25.1-0ubuntu3) over (25.1-0ubuntu2) ... 308s Preparing to unpack .../40-libbrotli1_1.1.0-2build4_amd64.deb ... 308s Unpacking libbrotli1:amd64 (1.1.0-2build4) over (1.1.0-2build3) ... 308s Preparing to unpack .../41-curl_8.12.1-3ubuntu1_amd64.deb ... 308s Unpacking curl (8.12.1-3ubuntu1) over (8.12.1-2ubuntu1) ... 308s Preparing to unpack .../42-libcurl4t64_8.12.1-3ubuntu1_amd64.deb ... 308s Unpacking libcurl4t64:amd64 (8.12.1-3ubuntu1) over (8.12.1-2ubuntu1) ... 309s Preparing to unpack .../43-libcurl3t64-gnutls_8.12.1-3ubuntu1_amd64.deb ... 309s Unpacking libcurl3t64-gnutls:amd64 (8.12.1-3ubuntu1) over (8.12.1-2ubuntu1) ... 309s Preparing to unpack .../44-fwupd_2.0.6-4_amd64.deb ... 309s Unpacking fwupd (2.0.6-4) over (2.0.6-3) ... 309s Preparing to unpack .../45-libfwupd3_2.0.6-4_amd64.deb ... 309s Unpacking libfwupd3:amd64 (2.0.6-4) over (2.0.6-3) ... 309s Preparing to unpack .../46-libmm-glib0_1.23.4-0ubuntu3_amd64.deb ... 309s Unpacking libmm-glib0:amd64 (1.23.4-0ubuntu3) over (1.23.4-0ubuntu2) ... 309s Preparing to unpack .../47-htop_3.4.0-2_amd64.deb ... 309s Unpacking htop (3.4.0-2) over (3.3.0-5) ... 309s Selecting previously unselected package libdebuginfod1t64:amd64. 309s Preparing to unpack .../48-libdebuginfod1t64_0.192-4_amd64.deb ... 309s Unpacking libdebuginfod1t64:amd64 (0.192-4) ... 309s Preparing to unpack .../49-libjemalloc2_5.3.0-3_amd64.deb ... 309s Unpacking libjemalloc2:amd64 (5.3.0-3) over (5.3.0-2build1) ... 309s Preparing to unpack .../50-linux-firmware_20250310.git9e1370d3-0ubuntu1_amd64.deb ... 309s Unpacking linux-firmware (20250310.git9e1370d3-0ubuntu1) over (20250204.git0fd450ee-0ubuntu1) ... 313s Selecting previously unselected package linux-modules-6.14.0-10-generic. 313s Preparing to unpack .../51-linux-modules-6.14.0-10-generic_6.14.0-10.10_amd64.deb ... 313s Unpacking linux-modules-6.14.0-10-generic (6.14.0-10.10) ... 313s Selecting previously unselected package linux-image-6.14.0-10-generic. 313s Preparing to unpack .../52-linux-image-6.14.0-10-generic_6.14.0-10.10_amd64.deb ... 313s Unpacking linux-image-6.14.0-10-generic (6.14.0-10.10) ... 313s Selecting previously unselected package linux-modules-extra-6.14.0-10-generic. 313s Preparing to unpack .../53-linux-modules-extra-6.14.0-10-generic_6.14.0-10.10_amd64.deb ... 313s Unpacking linux-modules-extra-6.14.0-10-generic (6.14.0-10.10) ... 314s Preparing to unpack .../54-linux-generic_6.14.0-10.10_amd64.deb ... 314s Unpacking linux-generic (6.14.0-10.10) over (6.12.0-16.16+2) ... 314s Preparing to unpack .../55-linux-image-generic_6.14.0-10.10_amd64.deb ... 314s Unpacking linux-image-generic (6.14.0-10.10) over (6.12.0-16.16+2) ... 314s Preparing to unpack .../56-linux-virtual_6.14.0-10.10_amd64.deb ... 314s Unpacking linux-virtual (6.14.0-10.10) over (6.12.0-16.16+2) ... 314s Preparing to unpack .../57-linux-image-virtual_6.14.0-10.10_amd64.deb ... 314s Unpacking linux-image-virtual (6.14.0-10.10) over (6.12.0-16.16+2) ... 314s Preparing to unpack .../58-linux-headers-virtual_6.14.0-10.10_amd64.deb ... 314s Unpacking linux-headers-virtual (6.14.0-10.10) over (6.12.0-16.16+2) ... 314s Selecting previously unselected package linux-headers-6.14.0-10. 315s Preparing to unpack .../59-linux-headers-6.14.0-10_6.14.0-10.10_all.deb ... 315s Unpacking linux-headers-6.14.0-10 (6.14.0-10.10) ... 317s Selecting previously unselected package linux-headers-6.14.0-10-generic. 317s Preparing to unpack .../60-linux-headers-6.14.0-10-generic_6.14.0-10.10_amd64.deb ... 317s Unpacking linux-headers-6.14.0-10-generic (6.14.0-10.10) ... 319s Preparing to unpack .../61-linux-headers-generic_6.14.0-10.10_amd64.deb ... 319s Unpacking linux-headers-generic (6.14.0-10.10) over (6.12.0-16.16+2) ... 319s Preparing to unpack .../62-linux-libc-dev_6.14.0-10.10_amd64.deb ... 319s Unpacking linux-libc-dev:amd64 (6.14.0-10.10) over (6.12.0-16.16) ... 319s Selecting previously unselected package linux-perf. 319s Preparing to unpack .../63-linux-perf_6.14.0-10.10_amd64.deb ... 319s Unpacking linux-perf (6.14.0-10.10) ... 319s Selecting previously unselected package linux-tools-6.14.0-10. 319s Preparing to unpack .../64-linux-tools-6.14.0-10_6.14.0-10.10_amd64.deb ... 319s Unpacking linux-tools-6.14.0-10 (6.14.0-10.10) ... 319s Selecting previously unselected package linux-tools-6.14.0-10-generic. 319s Preparing to unpack .../65-linux-tools-6.14.0-10-generic_6.14.0-10.10_amd64.deb ... 319s Unpacking linux-tools-6.14.0-10-generic (6.14.0-10.10) ... 319s Preparing to unpack .../66-pinentry-curses_1.3.1-2ubuntu3_amd64.deb ... 319s Unpacking pinentry-curses (1.3.1-2ubuntu3) over (1.3.1-2ubuntu2) ... 319s Preparing to unpack .../67-python3-lazr.uri_1.0.6-6_all.deb ... 319s Unpacking python3-lazr.uri (1.0.6-6) over (1.0.6-5) ... 319s Preparing to unpack .../68-python3-systemd_235-1build6_amd64.deb ... 319s Unpacking python3-systemd (235-1build6) over (235-1build5) ... 319s Preparing to unpack .../69-python3.13-gdbm_3.13.2-2_amd64.deb ... 319s Unpacking python3.13-gdbm (3.13.2-2) over (3.13.2-1) ... 319s Preparing to unpack .../70-cloud-init_25.1-0ubuntu3_all.deb ... 319s Unpacking cloud-init (25.1-0ubuntu3) over (25.1-0ubuntu2) ... 320s Setting up linux-headers-6.14.0-10 (6.14.0-10.10) ... 320s Setting up media-types (13.0.0) ... 320s Installing new version of config file /etc/mime.types ... 320s Setting up linux-headers-6.14.0-10-generic (6.14.0-10.10) ... 320s Setting up libapparmor1:amd64 (4.1.0~beta5-0ubuntu8) ... 320s Setting up pci.ids (0.0~2025.03.09-1) ... 320s Setting up apt-utils (2.9.33) ... 320s Setting up libdebuginfod-common (0.192-4) ... 320s Setting up linux-firmware (20250310.git9e1370d3-0ubuntu1) ... 320s Setting up bpftool (7.6.0+6.14.0-10.10) ... 320s Setting up libestr0:amd64 (0.1.11-2) ... 320s Setting up libbrotli1:amd64 (1.1.0-2build4) ... 320s Setting up libsqlite3-0:amd64 (3.46.1-2) ... 320s Setting up dosfstools (4.2-1.2) ... 320s Setting up rsyslog (8.2412.0-2ubuntu2) ... 320s info: The user `syslog' is already a member of `adm'. 321s Setting up binutils-common:amd64 (2.44-3ubuntu1) ... 321s Setting up libcurl3t64-gnutls:amd64 (8.12.1-3ubuntu1) ... 321s Setting up linux-libc-dev:amd64 (6.14.0-10.10) ... 321s Setting up libctf-nobfd0:amd64 (2.44-3ubuntu1) ... 321s Setting up linux-headers-generic (6.14.0-10.10) ... 321s Setting up libjemalloc2:amd64 (5.3.0-3) ... 321s Setting up libsframe1:amd64 (2.44-3ubuntu1) ... 321s Setting up libpython3.13-minimal:amd64 (3.13.2-2) ... 321s Setting up apparmor (4.1.0~beta5-0ubuntu8) ... 321s Installing new version of config file /etc/apparmor.d/openvpn ... 322s Reloading AppArmor profiles 323s Setting up libglib2.0-0t64:amd64 (2.84.0-1) ... 323s No schema files found: doing nothing. 323s Setting up libglib2.0-data (2.84.0-1) ... 323s Setting up libncurses6:amd64 (6.5+20250216-2) ... 323s Setting up strace (6.13+ds-1ubuntu1) ... 323s Setting up xz-utils (5.6.4-1) ... 323s Setting up gir1.2-glib-2.0:amd64 (2.84.0-1) ... 323s Setting up linux-modules-6.14.0-10-generic (6.14.0-10.10) ... 325s Setting up libncursesw6:amd64 (6.5+20250216-2) ... 325s Setting up libpci3:amd64 (1:3.13.0-2) ... 325s Setting up python-apt-common (2.9.9build1) ... 325s Setting up libmm-glib0:amd64 (1.23.4-0ubuntu3) ... 325s Setting up pnp.ids (0.393-3) ... 325s Setting up libnl-3-200:amd64 (3.7.0-1) ... 325s Setting up python3.13-minimal (3.13.2-2) ... 326s Setting up libgirepository-1.0-1:amd64 (1.83.4-1) ... 326s Setting up libbinutils:amd64 (2.44-3ubuntu1) ... 326s Setting up libpython3.13-stdlib:amd64 (3.13.2-2) ... 326s Setting up libxml2:amd64 (2.12.7+dfsg+really2.9.14-0.2ubuntu5) ... 326s Setting up rsync (3.4.1+ds1-3) ... 327s rsync.service is a disabled or a static unit not running, not starting it. 327s Setting up python3.13-gdbm (3.13.2-2) ... 327s Setting up libpython3-stdlib:amd64 (3.13.2-2) ... 327s Setting up ncurses-term (6.5+20250216-2) ... 327s Setting up libctf0:amd64 (2.44-3ubuntu1) ... 327s Setting up libpython3.13:amd64 (3.13.2-2) ... 327s Setting up pinentry-curses (1.3.1-2ubuntu3) ... 327s Setting up libdebuginfod1t64:amd64 (0.192-4) ... 327s Setting up linux-headers-virtual (6.14.0-10.10) ... 327s Setting up libcurl4t64:amd64 (8.12.1-3ubuntu1) ... 327s Setting up python3.13 (3.13.2-2) ... 328s Setting up htop (3.4.0-2) ... 328s Setting up linux-image-6.14.0-10-generic (6.14.0-10.10) ... 330s I: /boot/vmlinuz.old is now a symlink to vmlinuz-6.12.0-16-generic 330s I: /boot/initrd.img.old is now a symlink to initrd.img-6.12.0-16-generic 330s I: /boot/vmlinuz is now a symlink to vmlinuz-6.14.0-10-generic 330s I: /boot/initrd.img is now a symlink to initrd.img-6.14.0-10-generic 330s Setting up libfwupd3:amd64 (2.0.6-4) ... 330s Setting up python3 (3.13.2-2) ... 330s Setting up python3-markupsafe (2.1.5-1build4) ... 330s Setting up linux-modules-extra-6.14.0-10-generic (6.14.0-10.10) ... 333s Setting up libnl-route-3-200:amd64 (3.7.0-1) ... 333s Setting up hwdata (0.393-3) ... 333s Setting up python3-jinja2 (3.1.5-2ubuntu1) ... 333s Setting up libgprofng0:amd64 (2.44-3ubuntu1) ... 333s Setting up linux-perf (6.14.0-10.10) ... 333s Setting up gir1.2-girepository-2.0:amd64 (1.83.4-1) ... 333s Setting up python3-gi (3.50.0-4build1) ... 333s Setting up pciutils (1:3.13.0-2) ... 333s Setting up libnl-genl-3-200:amd64 (3.7.0-1) ... 333s Setting up curl (8.12.1-3ubuntu1) ... 333s Setting up linux-image-virtual (6.14.0-10.10) ... 333s Setting up linux-tools-common (6.14.0-10.10) ... 333s Setting up fwupd (2.0.6-4) ... 334s fwupd-refresh.service is a disabled or a static unit not running, not starting it. 334s fwupd.service is a disabled or a static unit not running, not starting it. 334s Setting up python3-systemd (235-1build6) ... 334s Setting up python3-cffi-backend:amd64 (1.17.1-2build2) ... 334s Setting up binutils-x86-64-linux-gnu (2.44-3ubuntu1) ... 334s Setting up linux-image-generic (6.14.0-10.10) ... 334s Setting up python3-dbus (1.3.2-5build5) ... 334s Setting up linux-tools-6.14.0-10 (6.14.0-10.10) ... 334s Setting up linux-generic (6.14.0-10.10) ... 334s Setting up python3-apt (2.9.9build1) ... 334s Setting up python3-yaml (6.0.2-1build2) ... 334s Setting up python3-lazr.uri (1.0.6-6) ... 334s Setting up binutils (2.44-3ubuntu1) ... 334s Setting up cloud-init-base (25.1-0ubuntu3) ... 336s Setting up linux-virtual (6.14.0-10.10) ... 336s Setting up linux-tools-6.14.0-10-generic (6.14.0-10.10) ... 336s Setting up cloud-init (25.1-0ubuntu3) ... 336s Processing triggers for systemd (257.3-1ubuntu3) ... 336s Processing triggers for man-db (2.13.0-1) ... 338s Processing triggers for dbus (1.16.2-1ubuntu1) ... 338s Processing triggers for libc-bin (2.41-1ubuntu1) ... 338s Processing triggers for initramfs-tools (0.146ubuntu1) ... 338s update-initramfs: Generating /boot/initrd.img-6.12.0-16-generic 338s W: No lz4 in /usr/bin:/sbin:/bin, using gzip 349s Processing triggers for linux-image-6.14.0-10-generic (6.14.0-10.10) ... 349s /etc/kernel/postinst.d/initramfs-tools: 349s update-initramfs: Generating /boot/initrd.img-6.14.0-10-generic 349s W: No lz4 in /usr/bin:/sbin:/bin, using gzip 359s /etc/kernel/postinst.d/zz-update-grub: 359s Sourcing file `/etc/default/grub' 359s Sourcing file `/etc/default/grub.d/50-cloudimg-settings.cfg' 359s Sourcing file `/etc/default/grub.d/90-autopkgtest.cfg' 359s Generating grub configuration file ... 359s Found linux image: /boot/vmlinuz-6.14.0-10-generic 359s Found initrd image: /boot/initrd.img-6.14.0-10-generic 359s Found linux image: /boot/vmlinuz-6.12.0-16-generic 359s Found initrd image: /boot/initrd.img-6.12.0-16-generic 359s Found linux image: /boot/vmlinuz-6.11.0-8-generic 359s Found initrd image: /boot/initrd.img-6.11.0-8-generic 359s Warning: os-prober will not be executed to detect other bootable partitions. 359s Systems on them will not be added to the GRUB boot configuration. 359s Check GRUB_DISABLE_OS_PROBER documentation entry. 359s Adding boot menu entry for UEFI Firmware Settings ... 359s done 361s Reading package lists... 361s Building dependency tree... 361s Reading state information... 361s Solving dependencies... 362s The following packages will be REMOVED: 362s libnl-genl-3-200* libnsl2* libpython3.12-minimal* libpython3.12-stdlib* 362s libpython3.12t64* linux-headers-6.11.0-8* linux-headers-6.11.0-8-generic* 362s linux-headers-6.12.0-16* linux-headers-6.12.0-16-generic* 362s linux-image-6.11.0-8-generic* linux-image-6.12.0-16-generic* 362s linux-modules-6.11.0-8-generic* linux-modules-6.12.0-16-generic* 362s linux-modules-extra-6.12.0-16-generic* linux-tools-6.11.0-8* 362s linux-tools-6.11.0-8-generic* linux-tools-6.12.0-16* 362s linux-tools-6.12.0-16-generic* 362s 0 upgraded, 0 newly installed, 18 to remove and 5 not upgraded. 362s After this operation, 545 MB disk space will be freed. 362s (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 ... 148643 files and directories currently installed.) 362s Removing libnl-genl-3-200:amd64 (3.7.0-1) ... 362s Removing linux-tools-6.11.0-8-generic (6.11.0-8.8) ... 362s Removing linux-tools-6.11.0-8 (6.11.0-8.8) ... 362s Removing libpython3.12t64:amd64 (3.12.9-1) ... 362s Removing libpython3.12-stdlib:amd64 (3.12.9-1) ... 362s Removing libnsl2:amd64 (1.3.0-3build3) ... 362s Removing libpython3.12-minimal:amd64 (3.12.9-1) ... 362s Removing linux-headers-6.11.0-8-generic (6.11.0-8.8) ... 363s Removing linux-headers-6.11.0-8 (6.11.0-8.8) ... 365s Removing linux-headers-6.12.0-16-generic (6.12.0-16.16) ... 366s Removing linux-headers-6.12.0-16 (6.12.0-16.16) ... 368s Removing linux-image-6.11.0-8-generic (6.11.0-8.8) ... 368s /etc/kernel/postrm.d/initramfs-tools: 368s update-initramfs: Deleting /boot/initrd.img-6.11.0-8-generic 368s /etc/kernel/postrm.d/zz-update-grub: 368s Sourcing file `/etc/default/grub' 368s Sourcing file `/etc/default/grub.d/50-cloudimg-settings.cfg' 368s Sourcing file `/etc/default/grub.d/90-autopkgtest.cfg' 368s Generating grub configuration file ... 368s Found linux image: /boot/vmlinuz-6.14.0-10-generic 368s Found initrd image: /boot/initrd.img-6.14.0-10-generic 368s Found linux image: /boot/vmlinuz-6.12.0-16-generic 368s Found initrd image: /boot/initrd.img-6.12.0-16-generic 368s Warning: os-prober will not be executed to detect other bootable partitions. 368s Systems on them will not be added to the GRUB boot configuration. 368s Check GRUB_DISABLE_OS_PROBER documentation entry. 368s Adding boot menu entry for UEFI Firmware Settings ... 369s done 369s Removing linux-image-6.12.0-16-generic (6.12.0-16.16) ... 369s W: Removing the running kernel 369s I: /boot/vmlinuz.old is now a symlink to vmlinuz-6.14.0-10-generic 369s I: /boot/initrd.img.old is now a symlink to initrd.img-6.14.0-10-generic 369s /etc/kernel/postrm.d/initramfs-tools: 369s update-initramfs: Deleting /boot/initrd.img-6.12.0-16-generic 369s /etc/kernel/postrm.d/zz-update-grub: 369s Sourcing file `/etc/default/grub' 369s Sourcing file `/etc/default/grub.d/50-cloudimg-settings.cfg' 369s Sourcing file `/etc/default/grub.d/90-autopkgtest.cfg' 369s Generating grub configuration file ... 369s Found linux image: /boot/vmlinuz-6.14.0-10-generic 369s Found initrd image: /boot/initrd.img-6.14.0-10-generic 369s Warning: os-prober will not be executed to detect other bootable partitions. 369s Systems on them will not be added to the GRUB boot configuration. 369s Check GRUB_DISABLE_OS_PROBER documentation entry. 369s Adding boot menu entry for UEFI Firmware Settings ... 369s done 369s Removing linux-modules-6.11.0-8-generic (6.11.0-8.8) ... 370s Removing linux-modules-extra-6.12.0-16-generic (6.12.0-16.16) ... 371s Removing linux-modules-6.12.0-16-generic (6.12.0-16.16) ... 371s Removing linux-tools-6.12.0-16-generic (6.12.0-16.16) ... 371s Removing linux-tools-6.12.0-16 (6.12.0-16.16) ... 371s Processing triggers for libc-bin (2.41-1ubuntu1) ... 371s (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 ... 76972 files and directories currently installed.) 371s Purging configuration files for linux-image-6.11.0-8-generic (6.11.0-8.8) ... 371s Purging configuration files for libpython3.12-minimal:amd64 (3.12.9-1) ... 371s Purging configuration files for linux-modules-extra-6.12.0-16-generic (6.12.0-16.16) ... 371s Purging configuration files for linux-modules-6.12.0-16-generic (6.12.0-16.16) ... 371s dpkg: warning: while removing linux-modules-6.12.0-16-generic, directory '/lib/modules/6.12.0-16-generic' not empty so not removed 371s Purging configuration files for linux-modules-6.11.0-8-generic (6.11.0-8.8) ... 371s Purging configuration files for linux-image-6.12.0-16-generic (6.12.0-16.16) ... 371s rmdir: failed to remove '/lib/modules/6.12.0-16-generic': Directory not empty 372s autopkgtest [22:12:13]: upgrading testbed (apt dist-upgrade and autopurge) 372s Reading package lists... 372s Building dependency tree... 372s Reading state information... 372s Calculating upgrade...Starting pkgProblemResolver with broken count: 0 372s Starting 2 pkgProblemResolver with broken count: 0 372s Done 373s Entering ResolveByKeep 373s 373s Calculating upgrade... 374s The following packages will be upgraded: 374s libc-bin libc-dev-bin libc6 libc6-dev locales 374s 5 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 374s Need to get 10.5 MB of archives. 374s After this operation, 1024 B of additional disk space will be used. 374s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libc6-dev amd64 2.41-1ubuntu2 [2183 kB] 374s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libc-dev-bin amd64 2.41-1ubuntu2 [24.7 kB] 374s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libc6 amd64 2.41-1ubuntu2 [3327 kB] 374s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 libc-bin amd64 2.41-1ubuntu2 [700 kB] 374s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 locales all 2.41-1ubuntu2 [4246 kB] 374s Preconfiguring packages ... 374s Fetched 10.5 MB in 0s (50.1 MB/s) 374s (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 ... 76968 files and directories currently installed.) 374s Preparing to unpack .../libc6-dev_2.41-1ubuntu2_amd64.deb ... 374s Unpacking libc6-dev:amd64 (2.41-1ubuntu2) over (2.41-1ubuntu1) ... 374s Preparing to unpack .../libc-dev-bin_2.41-1ubuntu2_amd64.deb ... 374s Unpacking libc-dev-bin (2.41-1ubuntu2) over (2.41-1ubuntu1) ... 374s Preparing to unpack .../libc6_2.41-1ubuntu2_amd64.deb ... 375s Unpacking libc6:amd64 (2.41-1ubuntu2) over (2.41-1ubuntu1) ... 375s Setting up libc6:amd64 (2.41-1ubuntu2) ... 375s (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 ... 76968 files and directories currently installed.) 375s Preparing to unpack .../libc-bin_2.41-1ubuntu2_amd64.deb ... 375s Unpacking libc-bin (2.41-1ubuntu2) over (2.41-1ubuntu1) ... 375s Setting up libc-bin (2.41-1ubuntu2) ... 375s (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 ... 76968 files and directories currently installed.) 375s Preparing to unpack .../locales_2.41-1ubuntu2_all.deb ... 375s Unpacking locales (2.41-1ubuntu2) over (2.41-1ubuntu1) ... 375s Setting up locales (2.41-1ubuntu2) ... 376s Generating locales (this might take a while)... 377s en_US.UTF-8... done 377s Generation complete. 378s Setting up libc-dev-bin (2.41-1ubuntu2) ... 378s Setting up libc6-dev:amd64 (2.41-1ubuntu2) ... 378s Processing triggers for man-db (2.13.0-1) ... 378s Processing triggers for systemd (257.3-1ubuntu3) ... 379s Reading package lists... 379s Building dependency tree... 379s Reading state information... 379s Starting pkgProblemResolver with broken count: 0 380s Starting 2 pkgProblemResolver with broken count: 0 380s Done 380s Solving dependencies... 380s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 380s autopkgtest [22:12:21]: rebooting testbed after setup commands that affected boot 384s autopkgtest-virt-ssh: WARNING: ssh connection failed. Retrying in 3 seconds... 397s Reading package lists... 397s Building dependency tree... 397s Reading state information... 397s Starting pkgProblemResolver with broken count: 0 397s Starting 2 pkgProblemResolver with broken count: 0 397s Done 398s The following NEW packages will be installed: 398s build-essential cpp cpp-14 cpp-14-x86-64-linux-gnu cpp-x86-64-linux-gnu 398s dctrl-tools fontconfig fontconfig-config fonts-dejavu-core fonts-dejavu-mono 398s fonts-font-awesome fonts-glyphicons-halflings fonts-mathjax g++ g++-14 398s g++-14-x86-64-linux-gnu g++-x86-64-linux-gnu gcc gcc-14 398s gcc-14-x86-64-linux-gnu gcc-x86-64-linux-gnu gfortran gfortran-14 398s gfortran-14-x86-64-linux-gnu gfortran-x86-64-linux-gnu icu-devtools 398s javascript-common libasan8 libblas-dev libblas3 libbz2-dev libcairo2 398s libcc1-0 libdatrie1 libdeflate-dev libdeflate0 libfontconfig1 libgcc-14-dev 398s libgfortran-14-dev libgfortran5 libgomp1 libgraphite2-3 libharfbuzz0b 398s libhwasan0 libice6 libicu-dev libisl23 libitm1 libjbig0 libjpeg-dev 398s libjpeg-turbo8 libjpeg-turbo8-dev libjpeg8 libjpeg8-dev libjs-bootstrap 398s libjs-bootstrap4 libjs-d3 libjs-es5-shim libjs-highlight.js libjs-jquery 398s libjs-jquery-datatables libjs-jquery-selectize.js libjs-jquery-ui libjs-json 398s libjs-mathjax libjs-microplugin.js libjs-modernizr libjs-popper.js 398s libjs-prettify libjs-sifter.js libjs-twitter-bootstrap-datepicker 398s liblapack-dev liblapack3 liblerc4 liblsan0 liblua5.4-0 liblzma-dev libmpc3 398s libncurses-dev libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0 398s libpaper-utils libpaper2 libpcre2-16-0 libpcre2-32-0 libpcre2-dev 398s libpcre2-posix3 libpixman-1-0 libpkgconf3 libpng-dev libquadmath0 398s libreadline-dev libsharpyuv0 libsm6 libstdc++-14-dev libtcl8.6 libthai-data 398s libthai0 libtiff6 libtirpc-dev libtk8.6 libtsan2 libubsan1 libwebp7 398s libxcb-render0 libxcb-shm0 libxft2 libxrender1 libxss1 libxt6t64 littler 398s node-bootstrap-sass node-html5shiv node-normalize.css pandoc pandoc-data 398s pkg-r-autopkgtest pkgconf pkgconf-bin r-base-core r-base-dev 398s r-cran-base64enc r-cran-bslib r-cran-cachem r-cran-cli r-cran-commonmark 398s r-cran-crayon r-cran-diffobj r-cran-digest r-cran-evaluate r-cran-fastmap 398s r-cran-fontawesome r-cran-fs r-cran-glue r-cran-highr r-cran-htmltools 398s r-cran-httpuv r-cran-jquerylib r-cran-jsonlite r-cran-knitr r-cran-later 398s r-cran-lifecycle r-cran-littler r-cran-magrittr r-cran-memoise r-cran-mime 398s r-cran-pkgkitten r-cran-promises r-cran-r6 r-cran-rappdirs r-cran-rcpp 398s r-cran-rlang r-cran-rmarkdown r-cran-sass r-cran-shiny r-cran-sourcetools 398s r-cran-tinytex r-cran-withr r-cran-xfun r-cran-xtable r-cran-yaml unzip 398s x11-common xdg-utils zip zlib1g-dev 398s 0 upgraded, 167 newly installed, 0 to remove and 0 not upgraded. 398s Need to get 206 MB of archives. 398s After this operation, 768 MB of additional disk space will be used. 398s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 libisl23 amd64 0.27-1 [685 kB] 398s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 libmpc3 amd64 1.3.1-1build2 [55.3 kB] 398s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp-14-x86-64-linux-gnu amd64 14.2.0-17ubuntu3 [11.9 MB] 398s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp-14 amd64 14.2.0-17ubuntu3 [1030 B] 398s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp-x86-64-linux-gnu amd64 4:14.2.0-1ubuntu1 [5586 B] 398s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 cpp amd64 4:14.2.0-1ubuntu1 [22.4 kB] 398s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 libcc1-0 amd64 15-20250222-0ubuntu1 [47.0 kB] 398s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 libgomp1 amd64 15-20250222-0ubuntu1 [148 kB] 398s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 libitm1 amd64 15-20250222-0ubuntu1 [28.6 kB] 398s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 libasan8 amd64 15-20250222-0ubuntu1 [3055 kB] 398s Get:11 http://ftpmaster.internal/ubuntu plucky/main amd64 liblsan0 amd64 15-20250222-0ubuntu1 [1355 kB] 398s Get:12 http://ftpmaster.internal/ubuntu plucky/main amd64 libtsan2 amd64 15-20250222-0ubuntu1 [2756 kB] 398s Get:13 http://ftpmaster.internal/ubuntu plucky/main amd64 libubsan1 amd64 15-20250222-0ubuntu1 [1205 kB] 398s Get:14 http://ftpmaster.internal/ubuntu plucky/main amd64 libhwasan0 amd64 15-20250222-0ubuntu1 [1677 kB] 398s Get:15 http://ftpmaster.internal/ubuntu plucky/main amd64 libquadmath0 amd64 15-20250222-0ubuntu1 [152 kB] 398s Get:16 http://ftpmaster.internal/ubuntu plucky/main amd64 libgcc-14-dev amd64 14.2.0-17ubuntu3 [2816 kB] 398s Get:17 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc-14-x86-64-linux-gnu amd64 14.2.0-17ubuntu3 [23.3 MB] 398s Get:18 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc-14 amd64 14.2.0-17ubuntu3 [536 kB] 398s Get:19 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc-x86-64-linux-gnu amd64 4:14.2.0-1ubuntu1 [1208 B] 398s Get:20 http://ftpmaster.internal/ubuntu plucky/main amd64 gcc amd64 4:14.2.0-1ubuntu1 [5004 B] 398s Get:21 http://ftpmaster.internal/ubuntu plucky/main amd64 libstdc++-14-dev amd64 14.2.0-17ubuntu3 [2486 kB] 398s Get:22 http://ftpmaster.internal/ubuntu plucky/main amd64 g++-14-x86-64-linux-gnu amd64 14.2.0-17ubuntu3 [13.4 MB] 398s Get:23 http://ftpmaster.internal/ubuntu plucky/main amd64 g++-14 amd64 14.2.0-17ubuntu3 [21.8 kB] 398s Get:24 http://ftpmaster.internal/ubuntu plucky/main amd64 g++-x86-64-linux-gnu amd64 4:14.2.0-1ubuntu1 [968 B] 398s Get:25 http://ftpmaster.internal/ubuntu plucky/main amd64 g++ amd64 4:14.2.0-1ubuntu1 [1100 B] 398s Get:26 http://ftpmaster.internal/ubuntu plucky/main amd64 build-essential amd64 12.10ubuntu1 [4928 B] 398s Get:27 http://ftpmaster.internal/ubuntu plucky/main amd64 dctrl-tools amd64 2.24-3build3 [106 kB] 398s Get:28 http://ftpmaster.internal/ubuntu plucky/main amd64 fonts-dejavu-mono all 2.37-8 [502 kB] 398s Get:29 http://ftpmaster.internal/ubuntu plucky/main amd64 fonts-dejavu-core all 2.37-8 [835 kB] 398s Get:30 http://ftpmaster.internal/ubuntu plucky/main amd64 fontconfig-config amd64 2.15.0-2ubuntu1 [37.4 kB] 398s Get:31 http://ftpmaster.internal/ubuntu plucky/main amd64 libfontconfig1 amd64 2.15.0-2ubuntu1 [164 kB] 398s Get:32 http://ftpmaster.internal/ubuntu plucky/main amd64 fontconfig amd64 2.15.0-2ubuntu1 [180 kB] 398s Get:33 http://ftpmaster.internal/ubuntu plucky/main amd64 fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [516 kB] 398s Get:34 http://ftpmaster.internal/ubuntu plucky/universe amd64 fonts-glyphicons-halflings all 1.009~3.4.1+dfsg-3 [118 kB] 398s Get:35 http://ftpmaster.internal/ubuntu plucky/main amd64 fonts-mathjax all 2.7.9+dfsg-1 [2208 kB] 398s Get:36 http://ftpmaster.internal/ubuntu plucky/main amd64 libgfortran5 amd64 15-20250222-0ubuntu1 [919 kB] 398s Get:37 http://ftpmaster.internal/ubuntu plucky/main amd64 libgfortran-14-dev amd64 14.2.0-17ubuntu3 [966 kB] 398s Get:38 http://ftpmaster.internal/ubuntu plucky/main amd64 gfortran-14-x86-64-linux-gnu amd64 14.2.0-17ubuntu3 [12.6 MB] 399s Get:39 http://ftpmaster.internal/ubuntu plucky/main amd64 gfortran-14 amd64 14.2.0-17ubuntu3 [13.6 kB] 399s Get:40 http://ftpmaster.internal/ubuntu plucky/main amd64 gfortran-x86-64-linux-gnu amd64 4:14.2.0-1ubuntu1 [1022 B] 399s Get:41 http://ftpmaster.internal/ubuntu plucky/main amd64 gfortran amd64 4:14.2.0-1ubuntu1 [1174 B] 399s Get:42 http://ftpmaster.internal/ubuntu plucky/main amd64 icu-devtools amd64 76.1-1ubuntu2 [237 kB] 399s Get:43 http://ftpmaster.internal/ubuntu plucky/main amd64 javascript-common all 12 [5216 B] 399s Get:44 http://ftpmaster.internal/ubuntu plucky/main amd64 libblas3 amd64 3.12.1-2 [359 kB] 399s Get:45 http://ftpmaster.internal/ubuntu plucky/main amd64 libblas-dev amd64 3.12.1-2 [338 kB] 399s Get:46 http://ftpmaster.internal/ubuntu plucky/main amd64 libbz2-dev amd64 1.0.8-6 [33.8 kB] 399s Get:47 http://ftpmaster.internal/ubuntu plucky/main amd64 libpixman-1-0 amd64 0.44.0-3 [427 kB] 399s Get:48 http://ftpmaster.internal/ubuntu plucky/main amd64 libxcb-render0 amd64 1.17.0-2 [16.2 kB] 399s Get:49 http://ftpmaster.internal/ubuntu plucky/main amd64 libxcb-shm0 amd64 1.17.0-2 [5758 B] 399s Get:50 http://ftpmaster.internal/ubuntu plucky/main amd64 libxrender1 amd64 1:0.9.10-1.1build1 [19.0 kB] 399s Get:51 http://ftpmaster.internal/ubuntu plucky/main amd64 libcairo2 amd64 1.18.2-2 [569 kB] 399s Get:52 http://ftpmaster.internal/ubuntu plucky/main amd64 libdatrie1 amd64 0.2.13-3build1 [19.0 kB] 399s Get:53 http://ftpmaster.internal/ubuntu plucky/main amd64 libdeflate0 amd64 1.23-1 [64.1 kB] 399s Get:54 http://ftpmaster.internal/ubuntu plucky/main amd64 libdeflate-dev amd64 1.23-1 [71.7 kB] 399s Get:55 http://ftpmaster.internal/ubuntu plucky/main amd64 libgraphite2-3 amd64 1.3.14-2ubuntu1 [73.1 kB] 399s Get:56 http://ftpmaster.internal/ubuntu plucky/main amd64 libharfbuzz0b amd64 10.2.0-1 [543 kB] 399s Get:57 http://ftpmaster.internal/ubuntu plucky/main amd64 x11-common all 1:7.7+23ubuntu3 [21.7 kB] 399s Get:58 http://ftpmaster.internal/ubuntu plucky/main amd64 libice6 amd64 2:1.1.1-1 [44.1 kB] 399s Get:59 http://ftpmaster.internal/ubuntu plucky/main amd64 libicu-dev amd64 76.1-1ubuntu2 [12.6 MB] 399s Get:60 http://ftpmaster.internal/ubuntu plucky/main amd64 libjpeg-turbo8 amd64 2.1.5-3ubuntu2 [179 kB] 399s Get:61 http://ftpmaster.internal/ubuntu plucky/main amd64 libjpeg-turbo8-dev amd64 2.1.5-3ubuntu2 [324 kB] 399s Get:62 http://ftpmaster.internal/ubuntu plucky/main amd64 libjpeg8 amd64 8c-2ubuntu11 [2148 B] 399s Get:63 http://ftpmaster.internal/ubuntu plucky/main amd64 libjpeg8-dev amd64 8c-2ubuntu11 [1484 B] 399s Get:64 http://ftpmaster.internal/ubuntu plucky/main amd64 libjpeg-dev amd64 8c-2ubuntu11 [1482 B] 399s Get:65 http://ftpmaster.internal/ubuntu plucky/universe amd64 libjs-bootstrap all 3.4.1+dfsg-3 [129 kB] 399s Get:66 http://ftpmaster.internal/ubuntu plucky/universe amd64 libjs-popper.js all 1.16.1+ds-6 [54.1 kB] 399s Get:67 http://ftpmaster.internal/ubuntu plucky/universe amd64 libjs-bootstrap4 all 4.6.1+dfsg1-4 [537 kB] 399s Get:68 http://ftpmaster.internal/ubuntu plucky/universe amd64 libjs-d3 all 3.5.17-4 [132 kB] 399s Get:69 http://ftpmaster.internal/ubuntu plucky/universe amd64 libjs-es5-shim all 4.6.7-2 [39.8 kB] 399s Get:70 http://ftpmaster.internal/ubuntu plucky/universe amd64 libjs-highlight.js all 9.18.5+dfsg1-2 [385 kB] 399s Get:71 http://ftpmaster.internal/ubuntu plucky/main amd64 libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB] 399s Get:72 http://ftpmaster.internal/ubuntu plucky/universe amd64 libjs-jquery-datatables all 1.11.5+dfsg-2 [146 kB] 399s Get:73 http://ftpmaster.internal/ubuntu plucky/universe amd64 libjs-sifter.js all 0.6.0+dfsg-3 [12.6 kB] 399s Get:74 http://ftpmaster.internal/ubuntu plucky/universe amd64 libjs-microplugin.js all 0.0.3+dfsg-1.1 [3712 B] 399s Get:75 http://ftpmaster.internal/ubuntu plucky/universe amd64 libjs-jquery-selectize.js all 0.12.6+dfsg-1.1 [51.0 kB] 399s Get:76 http://ftpmaster.internal/ubuntu plucky/universe amd64 libjs-jquery-ui all 1.13.2+dfsg-1 [252 kB] 399s Get:77 http://ftpmaster.internal/ubuntu plucky/universe amd64 libjs-json all 0~20221030+~1.0.8-1 [20.6 kB] 399s Get:78 http://ftpmaster.internal/ubuntu plucky/universe amd64 libjs-prettify all 2015.12.04+dfsg-1.1 [39.3 kB] 399s Get:79 http://ftpmaster.internal/ubuntu plucky/main amd64 liblapack3 amd64 3.12.1-2 [3179 kB] 399s Get:80 http://ftpmaster.internal/ubuntu plucky/main amd64 liblapack-dev amd64 3.12.1-2 [6489 kB] 399s Get:81 http://ftpmaster.internal/ubuntu plucky/main amd64 liblerc4 amd64 4.0.0+ds-5ubuntu1 [271 kB] 399s Get:82 http://ftpmaster.internal/ubuntu plucky/main amd64 liblua5.4-0 amd64 5.4.7-1 [196 kB] 399s Get:83 http://ftpmaster.internal/ubuntu plucky/main amd64 libncurses-dev amd64 6.5+20250216-2 [424 kB] 399s Get:84 http://ftpmaster.internal/ubuntu plucky/main amd64 libthai-data all 0.1.29-2build1 [158 kB] 399s Get:85 http://ftpmaster.internal/ubuntu plucky/main amd64 libthai0 amd64 0.1.29-2build1 [18.9 kB] 399s Get:86 http://ftpmaster.internal/ubuntu plucky/main amd64 libpango-1.0-0 amd64 1.56.2-1 [255 kB] 399s Get:87 http://ftpmaster.internal/ubuntu plucky/main amd64 libpangoft2-1.0-0 amd64 1.56.2-1 [52.6 kB] 399s Get:88 http://ftpmaster.internal/ubuntu plucky/main amd64 libpangocairo-1.0-0 amd64 1.56.2-1 [29.1 kB] 399s Get:89 http://ftpmaster.internal/ubuntu plucky/main amd64 libpaper2 amd64 2.2.5-0.3 [17.4 kB] 399s Get:90 http://ftpmaster.internal/ubuntu plucky/main amd64 libpaper-utils amd64 2.2.5-0.3 [15.5 kB] 399s Get:91 http://ftpmaster.internal/ubuntu plucky/main amd64 libpcre2-16-0 amd64 10.45-1 [268 kB] 399s Get:92 http://ftpmaster.internal/ubuntu plucky/main amd64 libpcre2-32-0 amd64 10.45-1 [251 kB] 399s Get:93 http://ftpmaster.internal/ubuntu plucky/main amd64 libpcre2-posix3 amd64 10.45-1 [7204 B] 399s Get:94 http://ftpmaster.internal/ubuntu plucky/main amd64 libpcre2-dev amd64 10.45-1 [908 kB] 399s Get:95 http://ftpmaster.internal/ubuntu plucky/main amd64 libpkgconf3 amd64 1.8.1-4 [32.3 kB] 399s Get:96 http://ftpmaster.internal/ubuntu plucky/main amd64 zlib1g-dev amd64 1:1.3.dfsg+really1.3.1-1ubuntu1 [895 kB] 399s Get:97 http://ftpmaster.internal/ubuntu plucky/main amd64 libpng-dev amd64 1.6.47-1 [298 kB] 399s Get:98 http://ftpmaster.internal/ubuntu plucky/main amd64 libreadline-dev amd64 8.2-6 [184 kB] 399s Get:99 http://ftpmaster.internal/ubuntu plucky/main amd64 libsharpyuv0 amd64 1.5.0-0.1 [25.9 kB] 399s Get:100 http://ftpmaster.internal/ubuntu plucky/main amd64 libsm6 amd64 2:1.2.4-1 [17.4 kB] 399s Get:101 http://ftpmaster.internal/ubuntu plucky/main amd64 libtcl8.6 amd64 8.6.16+dfsg-1 [1086 kB] 399s Get:102 http://ftpmaster.internal/ubuntu plucky/main amd64 libjbig0 amd64 2.1-6.1ubuntu2 [29.7 kB] 399s Get:103 http://ftpmaster.internal/ubuntu plucky/main amd64 libwebp7 amd64 1.5.0-0.1 [378 kB] 399s Get:104 http://ftpmaster.internal/ubuntu plucky/main amd64 libtiff6 amd64 4.5.1+git230720-4ubuntu4 [200 kB] 399s Get:105 http://ftpmaster.internal/ubuntu plucky/main amd64 libxft2 amd64 2.3.6-1build1 [45.3 kB] 399s Get:106 http://ftpmaster.internal/ubuntu plucky/main amd64 libxss1 amd64 1:1.2.3-1build3 [7204 B] 399s Get:107 http://ftpmaster.internal/ubuntu plucky/main amd64 libtk8.6 amd64 8.6.16-1 [868 kB] 399s Get:108 http://ftpmaster.internal/ubuntu plucky/main amd64 libxt6t64 amd64 1:1.2.1-1.2build1 [171 kB] 399s Get:109 http://ftpmaster.internal/ubuntu plucky/main amd64 zip amd64 3.0-14ubuntu2 [185 kB] 399s Get:110 http://ftpmaster.internal/ubuntu plucky/main amd64 unzip amd64 6.0-28ubuntu6 [181 kB] 399s Get:111 http://ftpmaster.internal/ubuntu plucky/main amd64 xdg-utils all 1.2.1-2ubuntu1 [66.0 kB] 399s Get:112 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-base-core amd64 4.4.3-1 [28.9 MB] 400s Get:113 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-littler amd64 0.3.20-2 [96.6 kB] 400s Get:114 http://ftpmaster.internal/ubuntu plucky/universe amd64 littler all 0.3.20-2 [2554 B] 400s Get:115 http://ftpmaster.internal/ubuntu plucky/universe amd64 node-bootstrap-sass all 3.4.3-2 [187 kB] 400s Get:116 http://ftpmaster.internal/ubuntu plucky/universe amd64 node-html5shiv all 3.7.3+dfsg-5 [13.5 kB] 400s Get:117 http://ftpmaster.internal/ubuntu plucky/universe amd64 node-normalize.css all 8.0.1-5 [10.8 kB] 400s Get:118 http://ftpmaster.internal/ubuntu plucky/universe amd64 pandoc-data all 3.1.11.1-3build1 [78.8 kB] 400s Get:119 http://ftpmaster.internal/ubuntu plucky/universe amd64 pandoc amd64 3.1.11.1+ds-2 [27.2 MB] 401s Get:120 http://ftpmaster.internal/ubuntu plucky/main amd64 liblzma-dev amd64 5.6.4-1 [189 kB] 401s Get:121 http://ftpmaster.internal/ubuntu plucky/main amd64 pkgconf-bin amd64 1.8.1-4 [21.6 kB] 401s Get:122 http://ftpmaster.internal/ubuntu plucky/main amd64 pkgconf amd64 1.8.1-4 [16.8 kB] 401s Get:123 http://ftpmaster.internal/ubuntu plucky/main amd64 libtirpc-dev amd64 1.3.4+ds-1.3 [193 kB] 401s Get:124 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-base-dev all 4.4.3-1 [4176 B] 401s Get:125 http://ftpmaster.internal/ubuntu plucky/universe amd64 pkg-r-autopkgtest all 20231212ubuntu1 [6448 B] 401s Get:126 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-base64enc amd64 0.1-3-3 [27.6 kB] 401s Get:127 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-rlang amd64 1.1.5-1 [1719 kB] 401s Get:128 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-fastmap amd64 1.2.0-1 [73.8 kB] 401s Get:129 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-cachem amd64 1.1.0-1 [74.1 kB] 401s Get:130 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-digest amd64 0.6.37-1 [200 kB] 401s Get:131 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-htmltools amd64 0.5.8.1-1 [373 kB] 401s Get:132 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-jquerylib all 0.1.4+dfsg-4 [13.5 kB] 401s Get:133 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-jsonlite amd64 1.9.1+dfsg-1 [447 kB] 401s Get:134 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-cli amd64 3.6.4-1 [1394 kB] 401s Get:135 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-glue amd64 1.8.0-1 [164 kB] 401s Get:136 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-lifecycle all 1.0.4+dfsg-1 [110 kB] 401s Get:137 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-memoise all 2.0.1-1 [53.9 kB] 401s Get:138 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-mime amd64 0.12-2 [35.8 kB] 401s Get:139 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-fs amd64 1.6.5+dfsg-1 [246 kB] 401s Get:140 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-r6 all 2.6.1-1 [101 kB] 401s Get:141 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-rappdirs amd64 0.3.3-1 [47.5 kB] 401s Get:142 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-sass amd64 0.4.9+dfsg-1 [1001 kB] 401s Get:143 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-bslib all 0.8.0+dfsg-1 [4294 kB] 401s Get:144 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-commonmark amd64 1.9.2-2 [137 kB] 401s Get:145 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-crayon all 1.5.3-1 [165 kB] 401s Get:146 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-diffobj amd64 0.3.5-1 [1117 kB] 401s Get:147 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-evaluate all 1.0.3-1 [114 kB] 401s Get:148 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-fontawesome all 0.5.3-1 [1331 kB] 401s Get:149 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-xfun amd64 0.51+dfsg-1 [574 kB] 401s Get:150 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-highr all 0.11+dfsg-1 [38.5 kB] 401s Get:151 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-pkgkitten all 0.2.4-1 [27.2 kB] 401s Get:152 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-rcpp amd64 1.0.14-1 [1998 kB] 401s Get:153 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-later amd64 1.4.1+dfsg-1 [154 kB] 401s Get:154 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-magrittr amd64 2.0.3-1 [154 kB] 401s Get:155 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-promises amd64 1.3.2+dfsg-1 [291 kB] 401s Get:156 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-httpuv amd64 1.6.15+dfsg-1 [510 kB] 401s Get:157 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-yaml amd64 2.3.10-1 [109 kB] 401s Get:158 http://ftpmaster.internal/ubuntu plucky/main amd64 libjs-mathjax all 2.7.9+dfsg-1 [5665 kB] 401s Get:159 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-knitr all 1.49+dfsg-1 [859 kB] 401s Get:160 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-tinytex all 0.56-1 [148 kB] 401s Get:161 http://ftpmaster.internal/ubuntu plucky/universe amd64 libjs-modernizr all 3.13.0-0.1 [101 kB] 401s Get:162 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-xtable all 1:1.8-4-2 [689 kB] 401s Get:163 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-sourcetools amd64 0.1.7-1-1 [48.1 kB] 401s Get:164 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-withr all 3.0.2+dfsg-1 [214 kB] 401s Get:165 http://ftpmaster.internal/ubuntu plucky/universe amd64 libjs-twitter-bootstrap-datepicker all 1.3.1+dfsg1-4.1 [28.5 kB] 401s Get:166 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-shiny all 1.10.0+dfsg-2 [3124 kB] 402s Get:167 http://ftpmaster.internal/ubuntu plucky/universe amd64 r-cran-rmarkdown all 2.29+dfsg-1 [1501 kB] 402s Preconfiguring packages ... 402s Fetched 206 MB in 4s (54.8 MB/s) 402s Selecting previously unselected package libisl23:amd64. 403s (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 ... 76968 files and directories currently installed.) 403s Preparing to unpack .../000-libisl23_0.27-1_amd64.deb ... 403s Unpacking libisl23:amd64 (0.27-1) ... 403s Selecting previously unselected package libmpc3:amd64. 403s Preparing to unpack .../001-libmpc3_1.3.1-1build2_amd64.deb ... 403s Unpacking libmpc3:amd64 (1.3.1-1build2) ... 403s Selecting previously unselected package cpp-14-x86-64-linux-gnu. 403s Preparing to unpack .../002-cpp-14-x86-64-linux-gnu_14.2.0-17ubuntu3_amd64.deb ... 403s Unpacking cpp-14-x86-64-linux-gnu (14.2.0-17ubuntu3) ... 403s Selecting previously unselected package cpp-14. 403s Preparing to unpack .../003-cpp-14_14.2.0-17ubuntu3_amd64.deb ... 403s Unpacking cpp-14 (14.2.0-17ubuntu3) ... 403s Selecting previously unselected package cpp-x86-64-linux-gnu. 403s Preparing to unpack .../004-cpp-x86-64-linux-gnu_4%3a14.2.0-1ubuntu1_amd64.deb ... 403s Unpacking cpp-x86-64-linux-gnu (4:14.2.0-1ubuntu1) ... 403s Selecting previously unselected package cpp. 403s Preparing to unpack .../005-cpp_4%3a14.2.0-1ubuntu1_amd64.deb ... 403s Unpacking cpp (4:14.2.0-1ubuntu1) ... 403s Selecting previously unselected package libcc1-0:amd64. 403s Preparing to unpack .../006-libcc1-0_15-20250222-0ubuntu1_amd64.deb ... 403s Unpacking libcc1-0:amd64 (15-20250222-0ubuntu1) ... 403s Selecting previously unselected package libgomp1:amd64. 403s Preparing to unpack .../007-libgomp1_15-20250222-0ubuntu1_amd64.deb ... 403s Unpacking libgomp1:amd64 (15-20250222-0ubuntu1) ... 403s Selecting previously unselected package libitm1:amd64. 403s Preparing to unpack .../008-libitm1_15-20250222-0ubuntu1_amd64.deb ... 403s Unpacking libitm1:amd64 (15-20250222-0ubuntu1) ... 403s Selecting previously unselected package libasan8:amd64. 403s Preparing to unpack .../009-libasan8_15-20250222-0ubuntu1_amd64.deb ... 403s Unpacking libasan8:amd64 (15-20250222-0ubuntu1) ... 403s Selecting previously unselected package liblsan0:amd64. 403s Preparing to unpack .../010-liblsan0_15-20250222-0ubuntu1_amd64.deb ... 403s Unpacking liblsan0:amd64 (15-20250222-0ubuntu1) ... 403s Selecting previously unselected package libtsan2:amd64. 403s Preparing to unpack .../011-libtsan2_15-20250222-0ubuntu1_amd64.deb ... 403s Unpacking libtsan2:amd64 (15-20250222-0ubuntu1) ... 403s Selecting previously unselected package libubsan1:amd64. 403s Preparing to unpack .../012-libubsan1_15-20250222-0ubuntu1_amd64.deb ... 403s Unpacking libubsan1:amd64 (15-20250222-0ubuntu1) ... 403s Selecting previously unselected package libhwasan0:amd64. 403s Preparing to unpack .../013-libhwasan0_15-20250222-0ubuntu1_amd64.deb ... 403s Unpacking libhwasan0:amd64 (15-20250222-0ubuntu1) ... 403s Selecting previously unselected package libquadmath0:amd64. 403s Preparing to unpack .../014-libquadmath0_15-20250222-0ubuntu1_amd64.deb ... 403s Unpacking libquadmath0:amd64 (15-20250222-0ubuntu1) ... 403s Selecting previously unselected package libgcc-14-dev:amd64. 403s Preparing to unpack .../015-libgcc-14-dev_14.2.0-17ubuntu3_amd64.deb ... 403s Unpacking libgcc-14-dev:amd64 (14.2.0-17ubuntu3) ... 403s Selecting previously unselected package gcc-14-x86-64-linux-gnu. 403s Preparing to unpack .../016-gcc-14-x86-64-linux-gnu_14.2.0-17ubuntu3_amd64.deb ... 403s Unpacking gcc-14-x86-64-linux-gnu (14.2.0-17ubuntu3) ... 404s Selecting previously unselected package gcc-14. 404s Preparing to unpack .../017-gcc-14_14.2.0-17ubuntu3_amd64.deb ... 404s Unpacking gcc-14 (14.2.0-17ubuntu3) ... 404s Selecting previously unselected package gcc-x86-64-linux-gnu. 404s Preparing to unpack .../018-gcc-x86-64-linux-gnu_4%3a14.2.0-1ubuntu1_amd64.deb ... 404s Unpacking gcc-x86-64-linux-gnu (4:14.2.0-1ubuntu1) ... 404s Selecting previously unselected package gcc. 404s Preparing to unpack .../019-gcc_4%3a14.2.0-1ubuntu1_amd64.deb ... 404s Unpacking gcc (4:14.2.0-1ubuntu1) ... 404s Selecting previously unselected package libstdc++-14-dev:amd64. 404s Preparing to unpack .../020-libstdc++-14-dev_14.2.0-17ubuntu3_amd64.deb ... 404s Unpacking libstdc++-14-dev:amd64 (14.2.0-17ubuntu3) ... 404s Selecting previously unselected package g++-14-x86-64-linux-gnu. 404s Preparing to unpack .../021-g++-14-x86-64-linux-gnu_14.2.0-17ubuntu3_amd64.deb ... 404s Unpacking g++-14-x86-64-linux-gnu (14.2.0-17ubuntu3) ... 404s Selecting previously unselected package g++-14. 404s Preparing to unpack .../022-g++-14_14.2.0-17ubuntu3_amd64.deb ... 404s Unpacking g++-14 (14.2.0-17ubuntu3) ... 404s Selecting previously unselected package g++-x86-64-linux-gnu. 404s Preparing to unpack .../023-g++-x86-64-linux-gnu_4%3a14.2.0-1ubuntu1_amd64.deb ... 404s Unpacking g++-x86-64-linux-gnu (4:14.2.0-1ubuntu1) ... 404s Selecting previously unselected package g++. 404s Preparing to unpack .../024-g++_4%3a14.2.0-1ubuntu1_amd64.deb ... 404s Unpacking g++ (4:14.2.0-1ubuntu1) ... 404s Selecting previously unselected package build-essential. 404s Preparing to unpack .../025-build-essential_12.10ubuntu1_amd64.deb ... 404s Unpacking build-essential (12.10ubuntu1) ... 404s Selecting previously unselected package dctrl-tools. 404s Preparing to unpack .../026-dctrl-tools_2.24-3build3_amd64.deb ... 404s Unpacking dctrl-tools (2.24-3build3) ... 404s Selecting previously unselected package fonts-dejavu-mono. 404s Preparing to unpack .../027-fonts-dejavu-mono_2.37-8_all.deb ... 404s Unpacking fonts-dejavu-mono (2.37-8) ... 404s Selecting previously unselected package fonts-dejavu-core. 404s Preparing to unpack .../028-fonts-dejavu-core_2.37-8_all.deb ... 405s Unpacking fonts-dejavu-core (2.37-8) ... 405s Selecting previously unselected package fontconfig-config. 405s Preparing to unpack .../029-fontconfig-config_2.15.0-2ubuntu1_amd64.deb ... 405s Unpacking fontconfig-config (2.15.0-2ubuntu1) ... 405s Selecting previously unselected package libfontconfig1:amd64. 405s Preparing to unpack .../030-libfontconfig1_2.15.0-2ubuntu1_amd64.deb ... 405s Unpacking libfontconfig1:amd64 (2.15.0-2ubuntu1) ... 405s Selecting previously unselected package fontconfig. 405s Preparing to unpack .../031-fontconfig_2.15.0-2ubuntu1_amd64.deb ... 405s Unpacking fontconfig (2.15.0-2ubuntu1) ... 405s Selecting previously unselected package fonts-font-awesome. 405s Preparing to unpack .../032-fonts-font-awesome_5.0.10+really4.7.0~dfsg-4.1_all.deb ... 405s Unpacking fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 405s Selecting previously unselected package fonts-glyphicons-halflings. 405s Preparing to unpack .../033-fonts-glyphicons-halflings_1.009~3.4.1+dfsg-3_all.deb ... 405s Unpacking fonts-glyphicons-halflings (1.009~3.4.1+dfsg-3) ... 405s Selecting previously unselected package fonts-mathjax. 405s Preparing to unpack .../034-fonts-mathjax_2.7.9+dfsg-1_all.deb ... 405s Unpacking fonts-mathjax (2.7.9+dfsg-1) ... 405s Selecting previously unselected package libgfortran5:amd64. 405s Preparing to unpack .../035-libgfortran5_15-20250222-0ubuntu1_amd64.deb ... 405s Unpacking libgfortran5:amd64 (15-20250222-0ubuntu1) ... 405s Selecting previously unselected package libgfortran-14-dev:amd64. 405s Preparing to unpack .../036-libgfortran-14-dev_14.2.0-17ubuntu3_amd64.deb ... 405s Unpacking libgfortran-14-dev:amd64 (14.2.0-17ubuntu3) ... 405s Selecting previously unselected package gfortran-14-x86-64-linux-gnu. 405s Preparing to unpack .../037-gfortran-14-x86-64-linux-gnu_14.2.0-17ubuntu3_amd64.deb ... 405s Unpacking gfortran-14-x86-64-linux-gnu (14.2.0-17ubuntu3) ... 405s Selecting previously unselected package gfortran-14. 405s Preparing to unpack .../038-gfortran-14_14.2.0-17ubuntu3_amd64.deb ... 405s Unpacking gfortran-14 (14.2.0-17ubuntu3) ... 405s Selecting previously unselected package gfortran-x86-64-linux-gnu. 405s Preparing to unpack .../039-gfortran-x86-64-linux-gnu_4%3a14.2.0-1ubuntu1_amd64.deb ... 405s Unpacking gfortran-x86-64-linux-gnu (4:14.2.0-1ubuntu1) ... 405s Selecting previously unselected package gfortran. 405s Preparing to unpack .../040-gfortran_4%3a14.2.0-1ubuntu1_amd64.deb ... 405s Unpacking gfortran (4:14.2.0-1ubuntu1) ... 405s Selecting previously unselected package icu-devtools. 405s Preparing to unpack .../041-icu-devtools_76.1-1ubuntu2_amd64.deb ... 405s Unpacking icu-devtools (76.1-1ubuntu2) ... 406s Selecting previously unselected package javascript-common. 406s Preparing to unpack .../042-javascript-common_12_all.deb ... 406s Unpacking javascript-common (12) ... 406s Selecting previously unselected package libblas3:amd64. 406s Preparing to unpack .../043-libblas3_3.12.1-2_amd64.deb ... 406s Unpacking libblas3:amd64 (3.12.1-2) ... 406s Selecting previously unselected package libblas-dev:amd64. 406s Preparing to unpack .../044-libblas-dev_3.12.1-2_amd64.deb ... 406s Unpacking libblas-dev:amd64 (3.12.1-2) ... 406s Selecting previously unselected package libbz2-dev:amd64. 406s Preparing to unpack .../045-libbz2-dev_1.0.8-6_amd64.deb ... 406s Unpacking libbz2-dev:amd64 (1.0.8-6) ... 406s Selecting previously unselected package libpixman-1-0:amd64. 406s Preparing to unpack .../046-libpixman-1-0_0.44.0-3_amd64.deb ... 406s Unpacking libpixman-1-0:amd64 (0.44.0-3) ... 406s Selecting previously unselected package libxcb-render0:amd64. 406s Preparing to unpack .../047-libxcb-render0_1.17.0-2_amd64.deb ... 406s Unpacking libxcb-render0:amd64 (1.17.0-2) ... 406s Selecting previously unselected package libxcb-shm0:amd64. 406s Preparing to unpack .../048-libxcb-shm0_1.17.0-2_amd64.deb ... 406s Unpacking libxcb-shm0:amd64 (1.17.0-2) ... 406s Selecting previously unselected package libxrender1:amd64. 406s Preparing to unpack .../049-libxrender1_1%3a0.9.10-1.1build1_amd64.deb ... 406s Unpacking libxrender1:amd64 (1:0.9.10-1.1build1) ... 406s Selecting previously unselected package libcairo2:amd64. 406s Preparing to unpack .../050-libcairo2_1.18.2-2_amd64.deb ... 406s Unpacking libcairo2:amd64 (1.18.2-2) ... 406s Selecting previously unselected package libdatrie1:amd64. 406s Preparing to unpack .../051-libdatrie1_0.2.13-3build1_amd64.deb ... 406s Unpacking libdatrie1:amd64 (0.2.13-3build1) ... 406s Selecting previously unselected package libdeflate0:amd64. 406s Preparing to unpack .../052-libdeflate0_1.23-1_amd64.deb ... 406s Unpacking libdeflate0:amd64 (1.23-1) ... 406s Selecting previously unselected package libdeflate-dev:amd64. 406s Preparing to unpack .../053-libdeflate-dev_1.23-1_amd64.deb ... 406s Unpacking libdeflate-dev:amd64 (1.23-1) ... 406s Selecting previously unselected package libgraphite2-3:amd64. 406s Preparing to unpack .../054-libgraphite2-3_1.3.14-2ubuntu1_amd64.deb ... 406s Unpacking libgraphite2-3:amd64 (1.3.14-2ubuntu1) ... 406s Selecting previously unselected package libharfbuzz0b:amd64. 406s Preparing to unpack .../055-libharfbuzz0b_10.2.0-1_amd64.deb ... 406s Unpacking libharfbuzz0b:amd64 (10.2.0-1) ... 406s Selecting previously unselected package x11-common. 406s Preparing to unpack .../056-x11-common_1%3a7.7+23ubuntu3_all.deb ... 406s Unpacking x11-common (1:7.7+23ubuntu3) ... 406s Selecting previously unselected package libice6:amd64. 406s Preparing to unpack .../057-libice6_2%3a1.1.1-1_amd64.deb ... 406s Unpacking libice6:amd64 (2:1.1.1-1) ... 406s Selecting previously unselected package libicu-dev:amd64. 406s Preparing to unpack .../058-libicu-dev_76.1-1ubuntu2_amd64.deb ... 406s Unpacking libicu-dev:amd64 (76.1-1ubuntu2) ... 406s Selecting previously unselected package libjpeg-turbo8:amd64. 406s Preparing to unpack .../059-libjpeg-turbo8_2.1.5-3ubuntu2_amd64.deb ... 406s Unpacking libjpeg-turbo8:amd64 (2.1.5-3ubuntu2) ... 406s Selecting previously unselected package libjpeg-turbo8-dev:amd64. 406s Preparing to unpack .../060-libjpeg-turbo8-dev_2.1.5-3ubuntu2_amd64.deb ... 406s Unpacking libjpeg-turbo8-dev:amd64 (2.1.5-3ubuntu2) ... 406s Selecting previously unselected package libjpeg8:amd64. 406s Preparing to unpack .../061-libjpeg8_8c-2ubuntu11_amd64.deb ... 406s Unpacking libjpeg8:amd64 (8c-2ubuntu11) ... 406s Selecting previously unselected package libjpeg8-dev:amd64. 406s Preparing to unpack .../062-libjpeg8-dev_8c-2ubuntu11_amd64.deb ... 406s Unpacking libjpeg8-dev:amd64 (8c-2ubuntu11) ... 406s Selecting previously unselected package libjpeg-dev:amd64. 406s Preparing to unpack .../063-libjpeg-dev_8c-2ubuntu11_amd64.deb ... 406s Unpacking libjpeg-dev:amd64 (8c-2ubuntu11) ... 406s Selecting previously unselected package libjs-bootstrap. 406s Preparing to unpack .../064-libjs-bootstrap_3.4.1+dfsg-3_all.deb ... 406s Unpacking libjs-bootstrap (3.4.1+dfsg-3) ... 406s Selecting previously unselected package libjs-popper.js. 406s Preparing to unpack .../065-libjs-popper.js_1.16.1+ds-6_all.deb ... 406s Unpacking libjs-popper.js (1.16.1+ds-6) ... 407s Selecting previously unselected package libjs-bootstrap4. 407s Preparing to unpack .../066-libjs-bootstrap4_4.6.1+dfsg1-4_all.deb ... 407s Unpacking libjs-bootstrap4 (4.6.1+dfsg1-4) ... 407s Selecting previously unselected package libjs-d3. 407s Preparing to unpack .../067-libjs-d3_3.5.17-4_all.deb ... 407s Unpacking libjs-d3 (3.5.17-4) ... 407s Selecting previously unselected package libjs-es5-shim. 407s Preparing to unpack .../068-libjs-es5-shim_4.6.7-2_all.deb ... 407s Unpacking libjs-es5-shim (4.6.7-2) ... 407s Selecting previously unselected package libjs-highlight.js. 407s Preparing to unpack .../069-libjs-highlight.js_9.18.5+dfsg1-2_all.deb ... 407s Unpacking libjs-highlight.js (9.18.5+dfsg1-2) ... 407s Selecting previously unselected package libjs-jquery. 407s Preparing to unpack .../070-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ... 407s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 407s Selecting previously unselected package libjs-jquery-datatables. 407s Preparing to unpack .../071-libjs-jquery-datatables_1.11.5+dfsg-2_all.deb ... 407s Unpacking libjs-jquery-datatables (1.11.5+dfsg-2) ... 407s Selecting previously unselected package libjs-sifter.js. 407s Preparing to unpack .../072-libjs-sifter.js_0.6.0+dfsg-3_all.deb ... 407s Unpacking libjs-sifter.js (0.6.0+dfsg-3) ... 407s Selecting previously unselected package libjs-microplugin.js. 407s Preparing to unpack .../073-libjs-microplugin.js_0.0.3+dfsg-1.1_all.deb ... 407s Unpacking libjs-microplugin.js (0.0.3+dfsg-1.1) ... 407s Selecting previously unselected package libjs-jquery-selectize.js. 407s Preparing to unpack .../074-libjs-jquery-selectize.js_0.12.6+dfsg-1.1_all.deb ... 407s Unpacking libjs-jquery-selectize.js (0.12.6+dfsg-1.1) ... 407s Selecting previously unselected package libjs-jquery-ui. 407s Preparing to unpack .../075-libjs-jquery-ui_1.13.2+dfsg-1_all.deb ... 407s Unpacking libjs-jquery-ui (1.13.2+dfsg-1) ... 407s Selecting previously unselected package libjs-json. 407s Preparing to unpack .../076-libjs-json_0~20221030+~1.0.8-1_all.deb ... 407s Unpacking libjs-json (0~20221030+~1.0.8-1) ... 407s Selecting previously unselected package libjs-prettify. 407s Preparing to unpack .../077-libjs-prettify_2015.12.04+dfsg-1.1_all.deb ... 407s Unpacking libjs-prettify (2015.12.04+dfsg-1.1) ... 407s Selecting previously unselected package liblapack3:amd64. 407s Preparing to unpack .../078-liblapack3_3.12.1-2_amd64.deb ... 407s Unpacking liblapack3:amd64 (3.12.1-2) ... 407s Selecting previously unselected package liblapack-dev:amd64. 407s Preparing to unpack .../079-liblapack-dev_3.12.1-2_amd64.deb ... 407s Unpacking liblapack-dev:amd64 (3.12.1-2) ... 407s Selecting previously unselected package liblerc4:amd64. 407s Preparing to unpack .../080-liblerc4_4.0.0+ds-5ubuntu1_amd64.deb ... 407s Unpacking liblerc4:amd64 (4.0.0+ds-5ubuntu1) ... 407s Selecting previously unselected package liblua5.4-0:amd64. 407s Preparing to unpack .../081-liblua5.4-0_5.4.7-1_amd64.deb ... 407s Unpacking liblua5.4-0:amd64 (5.4.7-1) ... 407s Selecting previously unselected package libncurses-dev:amd64. 407s Preparing to unpack .../082-libncurses-dev_6.5+20250216-2_amd64.deb ... 407s Unpacking libncurses-dev:amd64 (6.5+20250216-2) ... 407s Selecting previously unselected package libthai-data. 407s Preparing to unpack .../083-libthai-data_0.1.29-2build1_all.deb ... 407s Unpacking libthai-data (0.1.29-2build1) ... 408s Selecting previously unselected package libthai0:amd64. 408s Preparing to unpack .../084-libthai0_0.1.29-2build1_amd64.deb ... 408s Unpacking libthai0:amd64 (0.1.29-2build1) ... 408s Selecting previously unselected package libpango-1.0-0:amd64. 408s Preparing to unpack .../085-libpango-1.0-0_1.56.2-1_amd64.deb ... 408s Unpacking libpango-1.0-0:amd64 (1.56.2-1) ... 408s Selecting previously unselected package libpangoft2-1.0-0:amd64. 408s Preparing to unpack .../086-libpangoft2-1.0-0_1.56.2-1_amd64.deb ... 408s Unpacking libpangoft2-1.0-0:amd64 (1.56.2-1) ... 408s Selecting previously unselected package libpangocairo-1.0-0:amd64. 408s Preparing to unpack .../087-libpangocairo-1.0-0_1.56.2-1_amd64.deb ... 408s Unpacking libpangocairo-1.0-0:amd64 (1.56.2-1) ... 408s Selecting previously unselected package libpaper2:amd64. 408s Preparing to unpack .../088-libpaper2_2.2.5-0.3_amd64.deb ... 408s Unpacking libpaper2:amd64 (2.2.5-0.3) ... 408s Selecting previously unselected package libpaper-utils. 408s Preparing to unpack .../089-libpaper-utils_2.2.5-0.3_amd64.deb ... 408s Unpacking libpaper-utils (2.2.5-0.3) ... 408s Selecting previously unselected package libpcre2-16-0:amd64. 408s Preparing to unpack .../090-libpcre2-16-0_10.45-1_amd64.deb ... 408s Unpacking libpcre2-16-0:amd64 (10.45-1) ... 408s Selecting previously unselected package libpcre2-32-0:amd64. 408s Preparing to unpack .../091-libpcre2-32-0_10.45-1_amd64.deb ... 408s Unpacking libpcre2-32-0:amd64 (10.45-1) ... 408s Selecting previously unselected package libpcre2-posix3:amd64. 408s Preparing to unpack .../092-libpcre2-posix3_10.45-1_amd64.deb ... 408s Unpacking libpcre2-posix3:amd64 (10.45-1) ... 408s Selecting previously unselected package libpcre2-dev:amd64. 408s Preparing to unpack .../093-libpcre2-dev_10.45-1_amd64.deb ... 408s Unpacking libpcre2-dev:amd64 (10.45-1) ... 408s Selecting previously unselected package libpkgconf3:amd64. 408s Preparing to unpack .../094-libpkgconf3_1.8.1-4_amd64.deb ... 408s Unpacking libpkgconf3:amd64 (1.8.1-4) ... 408s Selecting previously unselected package zlib1g-dev:amd64. 408s Preparing to unpack .../095-zlib1g-dev_1%3a1.3.dfsg+really1.3.1-1ubuntu1_amd64.deb ... 408s Unpacking zlib1g-dev:amd64 (1:1.3.dfsg+really1.3.1-1ubuntu1) ... 408s Selecting previously unselected package libpng-dev:amd64. 408s Preparing to unpack .../096-libpng-dev_1.6.47-1_amd64.deb ... 408s Unpacking libpng-dev:amd64 (1.6.47-1) ... 408s Selecting previously unselected package libreadline-dev:amd64. 408s Preparing to unpack .../097-libreadline-dev_8.2-6_amd64.deb ... 408s Unpacking libreadline-dev:amd64 (8.2-6) ... 408s Selecting previously unselected package libsharpyuv0:amd64. 408s Preparing to unpack .../098-libsharpyuv0_1.5.0-0.1_amd64.deb ... 408s Unpacking libsharpyuv0:amd64 (1.5.0-0.1) ... 408s Selecting previously unselected package libsm6:amd64. 408s Preparing to unpack .../099-libsm6_2%3a1.2.4-1_amd64.deb ... 408s Unpacking libsm6:amd64 (2:1.2.4-1) ... 408s Selecting previously unselected package libtcl8.6:amd64. 408s Preparing to unpack .../100-libtcl8.6_8.6.16+dfsg-1_amd64.deb ... 408s Unpacking libtcl8.6:amd64 (8.6.16+dfsg-1) ... 408s Selecting previously unselected package libjbig0:amd64. 408s Preparing to unpack .../101-libjbig0_2.1-6.1ubuntu2_amd64.deb ... 408s Unpacking libjbig0:amd64 (2.1-6.1ubuntu2) ... 408s Selecting previously unselected package libwebp7:amd64. 408s Preparing to unpack .../102-libwebp7_1.5.0-0.1_amd64.deb ... 408s Unpacking libwebp7:amd64 (1.5.0-0.1) ... 408s Selecting previously unselected package libtiff6:amd64. 408s Preparing to unpack .../103-libtiff6_4.5.1+git230720-4ubuntu4_amd64.deb ... 408s Unpacking libtiff6:amd64 (4.5.1+git230720-4ubuntu4) ... 408s Selecting previously unselected package libxft2:amd64. 408s Preparing to unpack .../104-libxft2_2.3.6-1build1_amd64.deb ... 408s Unpacking libxft2:amd64 (2.3.6-1build1) ... 408s Selecting previously unselected package libxss1:amd64. 408s Preparing to unpack .../105-libxss1_1%3a1.2.3-1build3_amd64.deb ... 408s Unpacking libxss1:amd64 (1:1.2.3-1build3) ... 408s Selecting previously unselected package libtk8.6:amd64. 408s Preparing to unpack .../106-libtk8.6_8.6.16-1_amd64.deb ... 408s Unpacking libtk8.6:amd64 (8.6.16-1) ... 408s Selecting previously unselected package libxt6t64:amd64. 408s Preparing to unpack .../107-libxt6t64_1%3a1.2.1-1.2build1_amd64.deb ... 408s Unpacking libxt6t64:amd64 (1:1.2.1-1.2build1) ... 408s Selecting previously unselected package zip. 408s Preparing to unpack .../108-zip_3.0-14ubuntu2_amd64.deb ... 408s Unpacking zip (3.0-14ubuntu2) ... 408s Selecting previously unselected package unzip. 408s Preparing to unpack .../109-unzip_6.0-28ubuntu6_amd64.deb ... 408s Unpacking unzip (6.0-28ubuntu6) ... 408s Selecting previously unselected package xdg-utils. 408s Preparing to unpack .../110-xdg-utils_1.2.1-2ubuntu1_all.deb ... 408s Unpacking xdg-utils (1.2.1-2ubuntu1) ... 408s Selecting previously unselected package r-base-core. 409s Preparing to unpack .../111-r-base-core_4.4.3-1_amd64.deb ... 409s Unpacking r-base-core (4.4.3-1) ... 409s Selecting previously unselected package r-cran-littler. 409s Preparing to unpack .../112-r-cran-littler_0.3.20-2_amd64.deb ... 409s Unpacking r-cran-littler (0.3.20-2) ... 409s Selecting previously unselected package littler. 409s Preparing to unpack .../113-littler_0.3.20-2_all.deb ... 409s Unpacking littler (0.3.20-2) ... 409s Selecting previously unselected package node-bootstrap-sass. 409s Preparing to unpack .../114-node-bootstrap-sass_3.4.3-2_all.deb ... 409s Unpacking node-bootstrap-sass (3.4.3-2) ... 409s Selecting previously unselected package node-html5shiv. 409s Preparing to unpack .../115-node-html5shiv_3.7.3+dfsg-5_all.deb ... 409s Unpacking node-html5shiv (3.7.3+dfsg-5) ... 409s Selecting previously unselected package node-normalize.css. 409s Preparing to unpack .../116-node-normalize.css_8.0.1-5_all.deb ... 409s Unpacking node-normalize.css (8.0.1-5) ... 409s Selecting previously unselected package pandoc-data. 409s Preparing to unpack .../117-pandoc-data_3.1.11.1-3build1_all.deb ... 409s Unpacking pandoc-data (3.1.11.1-3build1) ... 409s Selecting previously unselected package pandoc. 409s Preparing to unpack .../118-pandoc_3.1.11.1+ds-2_amd64.deb ... 409s Unpacking pandoc (3.1.11.1+ds-2) ... 410s Selecting previously unselected package liblzma-dev:amd64. 410s Preparing to unpack .../119-liblzma-dev_5.6.4-1_amd64.deb ... 410s Unpacking liblzma-dev:amd64 (5.6.4-1) ... 410s Selecting previously unselected package pkgconf-bin. 410s Preparing to unpack .../120-pkgconf-bin_1.8.1-4_amd64.deb ... 410s Unpacking pkgconf-bin (1.8.1-4) ... 410s Selecting previously unselected package pkgconf:amd64. 410s Preparing to unpack .../121-pkgconf_1.8.1-4_amd64.deb ... 410s Unpacking pkgconf:amd64 (1.8.1-4) ... 410s Selecting previously unselected package libtirpc-dev:amd64. 410s Preparing to unpack .../122-libtirpc-dev_1.3.4+ds-1.3_amd64.deb ... 410s Unpacking libtirpc-dev:amd64 (1.3.4+ds-1.3) ... 410s Selecting previously unselected package r-base-dev. 410s Preparing to unpack .../123-r-base-dev_4.4.3-1_all.deb ... 410s Unpacking r-base-dev (4.4.3-1) ... 410s Selecting previously unselected package pkg-r-autopkgtest. 410s Preparing to unpack .../124-pkg-r-autopkgtest_20231212ubuntu1_all.deb ... 410s Unpacking pkg-r-autopkgtest (20231212ubuntu1) ... 410s Selecting previously unselected package r-cran-base64enc. 410s Preparing to unpack .../125-r-cran-base64enc_0.1-3-3_amd64.deb ... 410s Unpacking r-cran-base64enc (0.1-3-3) ... 410s Selecting previously unselected package r-cran-rlang. 410s Preparing to unpack .../126-r-cran-rlang_1.1.5-1_amd64.deb ... 410s Unpacking r-cran-rlang (1.1.5-1) ... 410s Selecting previously unselected package r-cran-fastmap. 410s Preparing to unpack .../127-r-cran-fastmap_1.2.0-1_amd64.deb ... 410s Unpacking r-cran-fastmap (1.2.0-1) ... 410s Selecting previously unselected package r-cran-cachem. 410s Preparing to unpack .../128-r-cran-cachem_1.1.0-1_amd64.deb ... 410s Unpacking r-cran-cachem (1.1.0-1) ... 410s Selecting previously unselected package r-cran-digest. 410s Preparing to unpack .../129-r-cran-digest_0.6.37-1_amd64.deb ... 410s Unpacking r-cran-digest (0.6.37-1) ... 410s Selecting previously unselected package r-cran-htmltools. 410s Preparing to unpack .../130-r-cran-htmltools_0.5.8.1-1_amd64.deb ... 410s Unpacking r-cran-htmltools (0.5.8.1-1) ... 410s Selecting previously unselected package r-cran-jquerylib. 410s Preparing to unpack .../131-r-cran-jquerylib_0.1.4+dfsg-4_all.deb ... 410s Unpacking r-cran-jquerylib (0.1.4+dfsg-4) ... 411s Selecting previously unselected package r-cran-jsonlite. 411s Preparing to unpack .../132-r-cran-jsonlite_1.9.1+dfsg-1_amd64.deb ... 411s Unpacking r-cran-jsonlite (1.9.1+dfsg-1) ... 411s Selecting previously unselected package r-cran-cli. 411s Preparing to unpack .../133-r-cran-cli_3.6.4-1_amd64.deb ... 411s Unpacking r-cran-cli (3.6.4-1) ... 411s Selecting previously unselected package r-cran-glue. 411s Preparing to unpack .../134-r-cran-glue_1.8.0-1_amd64.deb ... 411s Unpacking r-cran-glue (1.8.0-1) ... 411s Selecting previously unselected package r-cran-lifecycle. 411s Preparing to unpack .../135-r-cran-lifecycle_1.0.4+dfsg-1_all.deb ... 411s Unpacking r-cran-lifecycle (1.0.4+dfsg-1) ... 411s Selecting previously unselected package r-cran-memoise. 411s Preparing to unpack .../136-r-cran-memoise_2.0.1-1_all.deb ... 411s Unpacking r-cran-memoise (2.0.1-1) ... 411s Selecting previously unselected package r-cran-mime. 411s Preparing to unpack .../137-r-cran-mime_0.12-2_amd64.deb ... 411s Unpacking r-cran-mime (0.12-2) ... 411s Selecting previously unselected package r-cran-fs. 411s Preparing to unpack .../138-r-cran-fs_1.6.5+dfsg-1_amd64.deb ... 411s Unpacking r-cran-fs (1.6.5+dfsg-1) ... 411s Selecting previously unselected package r-cran-r6. 411s Preparing to unpack .../139-r-cran-r6_2.6.1-1_all.deb ... 411s Unpacking r-cran-r6 (2.6.1-1) ... 411s Selecting previously unselected package r-cran-rappdirs. 411s Preparing to unpack .../140-r-cran-rappdirs_0.3.3-1_amd64.deb ... 411s Unpacking r-cran-rappdirs (0.3.3-1) ... 411s Selecting previously unselected package r-cran-sass. 411s Preparing to unpack .../141-r-cran-sass_0.4.9+dfsg-1_amd64.deb ... 411s Unpacking r-cran-sass (0.4.9+dfsg-1) ... 411s Selecting previously unselected package r-cran-bslib. 411s Preparing to unpack .../142-r-cran-bslib_0.8.0+dfsg-1_all.deb ... 411s Unpacking r-cran-bslib (0.8.0+dfsg-1) ... 411s Selecting previously unselected package r-cran-commonmark. 411s Preparing to unpack .../143-r-cran-commonmark_1.9.2-2_amd64.deb ... 411s Unpacking r-cran-commonmark (1.9.2-2) ... 411s Selecting previously unselected package r-cran-crayon. 411s Preparing to unpack .../144-r-cran-crayon_1.5.3-1_all.deb ... 411s Unpacking r-cran-crayon (1.5.3-1) ... 411s Selecting previously unselected package r-cran-diffobj. 411s Preparing to unpack .../145-r-cran-diffobj_0.3.5-1_amd64.deb ... 411s Unpacking r-cran-diffobj (0.3.5-1) ... 411s Selecting previously unselected package r-cran-evaluate. 411s Preparing to unpack .../146-r-cran-evaluate_1.0.3-1_all.deb ... 411s Unpacking r-cran-evaluate (1.0.3-1) ... 411s Selecting previously unselected package r-cran-fontawesome. 411s Preparing to unpack .../147-r-cran-fontawesome_0.5.3-1_all.deb ... 411s Unpacking r-cran-fontawesome (0.5.3-1) ... 411s Selecting previously unselected package r-cran-xfun. 411s Preparing to unpack .../148-r-cran-xfun_0.51+dfsg-1_amd64.deb ... 411s Unpacking r-cran-xfun (0.51+dfsg-1) ... 411s Selecting previously unselected package r-cran-highr. 411s Preparing to unpack .../149-r-cran-highr_0.11+dfsg-1_all.deb ... 411s Unpacking r-cran-highr (0.11+dfsg-1) ... 411s Selecting previously unselected package r-cran-pkgkitten. 411s Preparing to unpack .../150-r-cran-pkgkitten_0.2.4-1_all.deb ... 411s Unpacking r-cran-pkgkitten (0.2.4-1) ... 411s Selecting previously unselected package r-cran-rcpp. 411s Preparing to unpack .../151-r-cran-rcpp_1.0.14-1_amd64.deb ... 411s Unpacking r-cran-rcpp (1.0.14-1) ... 412s Selecting previously unselected package r-cran-later. 412s Preparing to unpack .../152-r-cran-later_1.4.1+dfsg-1_amd64.deb ... 412s Unpacking r-cran-later (1.4.1+dfsg-1) ... 412s Selecting previously unselected package r-cran-magrittr. 412s Preparing to unpack .../153-r-cran-magrittr_2.0.3-1_amd64.deb ... 412s Unpacking r-cran-magrittr (2.0.3-1) ... 412s Selecting previously unselected package r-cran-promises. 412s Preparing to unpack .../154-r-cran-promises_1.3.2+dfsg-1_amd64.deb ... 412s Unpacking r-cran-promises (1.3.2+dfsg-1) ... 412s Selecting previously unselected package r-cran-httpuv. 412s Preparing to unpack .../155-r-cran-httpuv_1.6.15+dfsg-1_amd64.deb ... 412s Unpacking r-cran-httpuv (1.6.15+dfsg-1) ... 412s Selecting previously unselected package r-cran-yaml. 412s Preparing to unpack .../156-r-cran-yaml_2.3.10-1_amd64.deb ... 412s Unpacking r-cran-yaml (2.3.10-1) ... 412s Selecting previously unselected package libjs-mathjax. 412s Preparing to unpack .../157-libjs-mathjax_2.7.9+dfsg-1_all.deb ... 412s Unpacking libjs-mathjax (2.7.9+dfsg-1) ... 412s Selecting previously unselected package r-cran-knitr. 412s Preparing to unpack .../158-r-cran-knitr_1.49+dfsg-1_all.deb ... 412s Unpacking r-cran-knitr (1.49+dfsg-1) ... 412s Selecting previously unselected package r-cran-tinytex. 412s Preparing to unpack .../159-r-cran-tinytex_0.56-1_all.deb ... 412s Unpacking r-cran-tinytex (0.56-1) ... 413s Selecting previously unselected package libjs-modernizr. 413s Preparing to unpack .../160-libjs-modernizr_3.13.0-0.1_all.deb ... 413s Unpacking libjs-modernizr (3.13.0-0.1) ... 413s Selecting previously unselected package r-cran-xtable. 413s Preparing to unpack .../161-r-cran-xtable_1%3a1.8-4-2_all.deb ... 413s Unpacking r-cran-xtable (1:1.8-4-2) ... 413s Selecting previously unselected package r-cran-sourcetools. 413s Preparing to unpack .../162-r-cran-sourcetools_0.1.7-1-1_amd64.deb ... 413s Unpacking r-cran-sourcetools (0.1.7-1-1) ... 413s Selecting previously unselected package r-cran-withr. 413s Preparing to unpack .../163-r-cran-withr_3.0.2+dfsg-1_all.deb ... 413s Unpacking r-cran-withr (3.0.2+dfsg-1) ... 413s Selecting previously unselected package libjs-twitter-bootstrap-datepicker. 413s Preparing to unpack .../164-libjs-twitter-bootstrap-datepicker_1.3.1+dfsg1-4.1_all.deb ... 413s Unpacking libjs-twitter-bootstrap-datepicker (1.3.1+dfsg1-4.1) ... 413s Selecting previously unselected package r-cran-shiny. 413s Preparing to unpack .../165-r-cran-shiny_1.10.0+dfsg-2_all.deb ... 413s Unpacking r-cran-shiny (1.10.0+dfsg-2) ... 413s Selecting previously unselected package r-cran-rmarkdown. 413s Preparing to unpack .../166-r-cran-rmarkdown_2.29+dfsg-1_all.deb ... 413s Unpacking r-cran-rmarkdown (2.29+dfsg-1) ... 413s Setting up libjs-json (0~20221030+~1.0.8-1) ... 413s Setting up javascript-common (12) ... 413s Setting up libgraphite2-3:amd64 (1.3.14-2ubuntu1) ... 413s Setting up libpixman-1-0:amd64 (0.44.0-3) ... 413s Setting up libsharpyuv0:amd64 (1.5.0-0.1) ... 413s Setting up libncurses-dev:amd64 (6.5+20250216-2) ... 413s Setting up fonts-mathjax (2.7.9+dfsg-1) ... 413s Setting up liblerc4:amd64 (4.0.0+ds-5ubuntu1) ... 413s Setting up libjs-mathjax (2.7.9+dfsg-1) ... 413s Setting up libxrender1:amd64 (1:0.9.10-1.1build1) ... 413s Setting up libdatrie1:amd64 (0.2.13-3build1) ... 413s Setting up libjs-popper.js (1.16.1+ds-6) ... 413s Setting up libxcb-render0:amd64 (1.17.0-2) ... 413s Setting up libjs-sifter.js (0.6.0+dfsg-3) ... 413s Setting up fonts-glyphicons-halflings (1.009~3.4.1+dfsg-3) ... 413s Setting up unzip (6.0-28ubuntu6) ... 413s Setting up x11-common (1:7.7+23ubuntu3) ... 413s Setting up node-html5shiv (3.7.3+dfsg-5) ... 413s Setting up libdeflate0:amd64 (1.23-1) ... 413s Setting up libjs-microplugin.js (0.0.3+dfsg-1.1) ... 413s Setting up libxcb-shm0:amd64 (1.17.0-2) ... 413s Setting up libreadline-dev:amd64 (8.2-6) ... 413s Setting up libgomp1:amd64 (15-20250222-0ubuntu1) ... 413s Setting up libjs-modernizr (3.13.0-0.1) ... 413s Setting up libjbig0:amd64 (2.1-6.1ubuntu2) ... 413s Setting up libpcre2-16-0:amd64 (10.45-1) ... 413s Setting up libjs-es5-shim (4.6.7-2) ... 413s Setting up zip (3.0-14ubuntu2) ... 413s Setting up libpcre2-32-0:amd64 (10.45-1) ... 413s Setting up libblas3:amd64 (3.12.1-2) ... 413s update-alternatives: using /usr/lib/x86_64-linux-gnu/blas/libblas.so.3 to provide /usr/lib/x86_64-linux-gnu/libblas.so.3 (libblas.so.3-x86_64-linux-gnu) in auto mode 413s Setting up libtirpc-dev:amd64 (1.3.4+ds-1.3) ... 413s Setting up libpkgconf3:amd64 (1.8.1-4) ... 413s Setting up libquadmath0:amd64 (15-20250222-0ubuntu1) ... 413s Setting up libjs-d3 (3.5.17-4) ... 413s Setting up fonts-dejavu-mono (2.37-8) ... 413s Setting up libmpc3:amd64 (1.3.1-1build2) ... 413s Setting up libtcl8.6:amd64 (8.6.16+dfsg-1) ... 413s Setting up icu-devtools (76.1-1ubuntu2) ... 413s Setting up fonts-dejavu-core (2.37-8) ... 414s Setting up pkgconf-bin (1.8.1-4) ... 414s Setting up libjpeg-turbo8:amd64 (2.1.5-3ubuntu2) ... 414s Setting up libgfortran5:amd64 (15-20250222-0ubuntu1) ... 414s Setting up libwebp7:amd64 (1.5.0-0.1) ... 414s Setting up liblzma-dev:amd64 (5.6.4-1) ... 414s Setting up libubsan1:amd64 (15-20250222-0ubuntu1) ... 414s Setting up zlib1g-dev:amd64 (1:1.3.dfsg+really1.3.1-1ubuntu1) ... 414s Setting up libpcre2-posix3:amd64 (10.45-1) ... 414s Setting up libjs-highlight.js (9.18.5+dfsg1-2) ... 414s Setting up libhwasan0:amd64 (15-20250222-0ubuntu1) ... 414s Setting up libasan8:amd64 (15-20250222-0ubuntu1) ... 414s Setting up liblua5.4-0:amd64 (5.4.7-1) ... 414s Setting up libharfbuzz0b:amd64 (10.2.0-1) ... 414s Setting up libthai-data (0.1.29-2build1) ... 414s Setting up node-bootstrap-sass (3.4.3-2) ... 414s Setting up libjs-prettify (2015.12.04+dfsg-1.1) ... 414s Setting up libxss1:amd64 (1:1.2.3-1build3) ... 414s Setting up libjs-bootstrap4 (4.6.1+dfsg1-4) ... 414s Setting up libpaper2:amd64 (2.2.5-0.3) ... 414s Setting up pandoc-data (3.1.11.1-3build1) ... 414s Setting up libtsan2:amd64 (15-20250222-0ubuntu1) ... 414s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ... 414s Setting up libisl23:amd64 (0.27-1) ... 414s Setting up libdeflate-dev:amd64 (1.23-1) ... 414s Setting up node-normalize.css (8.0.1-5) ... 414s Setting up libicu-dev:amd64 (76.1-1ubuntu2) ... 414s Setting up fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ... 414s Setting up xdg-utils (1.2.1-2ubuntu1) ... 414s update-alternatives: using /usr/bin/xdg-open to provide /usr/bin/open (open) in auto mode 414s Setting up libcc1-0:amd64 (15-20250222-0ubuntu1) ... 414s Setting up liblsan0:amd64 (15-20250222-0ubuntu1) ... 414s Setting up libblas-dev:amd64 (3.12.1-2) ... 414s update-alternatives: using /usr/lib/x86_64-linux-gnu/blas/libblas.so to provide /usr/lib/x86_64-linux-gnu/libblas.so (libblas.so-x86_64-linux-gnu) in auto mode 414s Setting up dctrl-tools (2.24-3build3) ... 414s Setting up libjs-bootstrap (3.4.1+dfsg-3) ... 414s Setting up libitm1:amd64 (15-20250222-0ubuntu1) ... 414s Setting up libbz2-dev:amd64 (1.0.8-6) ... 414s Setting up libjs-jquery-selectize.js (0.12.6+dfsg-1.1) ... 414s Setting up libjpeg8:amd64 (8c-2ubuntu11) ... 414s Setting up libice6:amd64 (2:1.1.1-1) ... 414s Setting up libjpeg-turbo8-dev:amd64 (2.1.5-3ubuntu2) ... 414s Setting up liblapack3:amd64 (3.12.1-2) ... 414s update-alternatives: using /usr/lib/x86_64-linux-gnu/lapack/liblapack.so.3 to provide /usr/lib/x86_64-linux-gnu/liblapack.so.3 (liblapack.so.3-x86_64-linux-gnu) in auto mode 414s Setting up libpcre2-dev:amd64 (10.45-1) ... 414s Setting up fontconfig-config (2.15.0-2ubuntu1) ... 414s Setting up libjs-twitter-bootstrap-datepicker (1.3.1+dfsg1-4.1) ... 414s Setting up libpng-dev:amd64 (1.6.47-1) ... 414s Setting up libpaper-utils (2.2.5-0.3) ... 414s Setting up libjs-jquery-datatables (1.11.5+dfsg-2) ... 414s Setting up pkgconf:amd64 (1.8.1-4) ... 414s Setting up libthai0:amd64 (0.1.29-2build1) ... 414s Setting up libjs-jquery-ui (1.13.2+dfsg-1) ... 414s Setting up pandoc (3.1.11.1+ds-2) ... 414s Setting up liblapack-dev:amd64 (3.12.1-2) ... 414s update-alternatives: using /usr/lib/x86_64-linux-gnu/lapack/liblapack.so to provide /usr/lib/x86_64-linux-gnu/liblapack.so (liblapack.so-x86_64-linux-gnu) in auto mode 414s Setting up cpp-14-x86-64-linux-gnu (14.2.0-17ubuntu3) ... 414s Setting up cpp-14 (14.2.0-17ubuntu3) ... 414s Setting up libtiff6:amd64 (4.5.1+git230720-4ubuntu4) ... 414s Setting up libfontconfig1:amd64 (2.15.0-2ubuntu1) ... 414s Setting up libgcc-14-dev:amd64 (14.2.0-17ubuntu3) ... 414s Setting up libjpeg8-dev:amd64 (8c-2ubuntu11) ... 414s Setting up libstdc++-14-dev:amd64 (14.2.0-17ubuntu3) ... 414s Setting up libsm6:amd64 (2:1.2.4-1) ... 414s Setting up cpp-x86-64-linux-gnu (4:14.2.0-1ubuntu1) ... 414s Setting up libgfortran-14-dev:amd64 (14.2.0-17ubuntu3) ... 414s Setting up fontconfig (2.15.0-2ubuntu1) ... 416s Regenerating fonts cache... done. 416s Setting up libxft2:amd64 (2.3.6-1build1) ... 416s Setting up libtk8.6:amd64 (8.6.16-1) ... 416s Setting up libpango-1.0-0:amd64 (1.56.2-1) ... 416s Setting up libjpeg-dev:amd64 (8c-2ubuntu11) ... 416s Setting up libcairo2:amd64 (1.18.2-2) ... 416s Setting up libxt6t64:amd64 (1:1.2.1-1.2build1) ... 416s Setting up cpp (4:14.2.0-1ubuntu1) ... 416s Setting up gcc-14-x86-64-linux-gnu (14.2.0-17ubuntu3) ... 416s Setting up libpangoft2-1.0-0:amd64 (1.56.2-1) ... 416s Setting up libpangocairo-1.0-0:amd64 (1.56.2-1) ... 416s Setting up gcc-x86-64-linux-gnu (4:14.2.0-1ubuntu1) ... 416s Setting up gcc-14 (14.2.0-17ubuntu3) ... 416s Setting up gfortran-14-x86-64-linux-gnu (14.2.0-17ubuntu3) ... 416s Setting up r-base-core (4.4.3-1) ... 416s Creating config file /etc/R/Renviron with new version 416s Setting up r-cran-crayon (1.5.3-1) ... 416s Setting up r-cran-sourcetools (0.1.7-1-1) ... 416s Setting up g++-14-x86-64-linux-gnu (14.2.0-17ubuntu3) ... 416s Setting up g++-x86-64-linux-gnu (4:14.2.0-1ubuntu1) ... 416s Setting up r-cran-commonmark (1.9.2-2) ... 416s Setting up g++-14 (14.2.0-17ubuntu3) ... 416s Setting up r-cran-r6 (2.6.1-1) ... 416s Setting up r-cran-pkgkitten (0.2.4-1) ... 416s Setting up gfortran-14 (14.2.0-17ubuntu3) ... 416s Setting up r-cran-magrittr (2.0.3-1) ... 416s Setting up r-cran-rappdirs (0.3.3-1) ... 416s Setting up r-cran-littler (0.3.20-2) ... 416s Setting up r-cran-fs (1.6.5+dfsg-1) ... 416s Setting up r-cran-rcpp (1.0.14-1) ... 416s Setting up r-cran-diffobj (0.3.5-1) ... 416s Setting up r-cran-rlang (1.1.5-1) ... 416s Setting up littler (0.3.20-2) ... 416s Setting up r-cran-xfun (0.51+dfsg-1) ... 416s Setting up r-cran-withr (3.0.2+dfsg-1) ... 416s Setting up r-cran-mime (0.12-2) ... 416s Setting up r-cran-base64enc (0.1-3-3) ... 416s Setting up r-cran-digest (0.6.37-1) ... 416s Setting up r-cran-yaml (2.3.10-1) ... 416s Setting up r-cran-evaluate (1.0.3-1) ... 416s Setting up r-cran-highr (0.11+dfsg-1) ... 416s Setting up r-cran-glue (1.8.0-1) ... 416s Setting up gfortran-x86-64-linux-gnu (4:14.2.0-1ubuntu1) ... 416s Setting up r-cran-xtable (1:1.8-4-2) ... 416s Setting up r-cran-cli (3.6.4-1) ... 416s Setting up r-cran-lifecycle (1.0.4+dfsg-1) ... 416s Setting up gcc (4:14.2.0-1ubuntu1) ... 416s Setting up r-cran-fastmap (1.2.0-1) ... 416s Setting up r-cran-jsonlite (1.9.1+dfsg-1) ... 416s Setting up r-cran-later (1.4.1+dfsg-1) ... 416s Setting up r-cran-htmltools (0.5.8.1-1) ... 416s Setting up r-cran-tinytex (0.56-1) ... 416s Setting up r-cran-knitr (1.49+dfsg-1) ... 416s Setting up g++ (4:14.2.0-1ubuntu1) ... 416s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 416s Setting up r-cran-cachem (1.1.0-1) ... 416s Setting up r-cran-sass (0.4.9+dfsg-1) ... 416s Setting up build-essential (12.10ubuntu1) ... 416s Setting up r-cran-fontawesome (0.5.3-1) ... 416s Setting up gfortran (4:14.2.0-1ubuntu1) ... 416s update-alternatives: using /usr/bin/gfortran to provide /usr/bin/f95 (f95) in auto mode 416s update-alternatives: warning: skip creation of /usr/share/man/man1/f95.1.gz because associated file /usr/share/man/man1/gfortran.1.gz (of link group f95) doesn't exist 416s update-alternatives: using /usr/bin/gfortran to provide /usr/bin/f77 (f77) in auto mode 416s update-alternatives: warning: skip creation of /usr/share/man/man1/f77.1.gz because associated file /usr/share/man/man1/gfortran.1.gz (of link group f77) doesn't exist 416s Setting up r-cran-jquerylib (0.1.4+dfsg-4) ... 416s Setting up r-cran-memoise (2.0.1-1) ... 416s Setting up r-cran-promises (1.3.2+dfsg-1) ... 416s Setting up r-base-dev (4.4.3-1) ... 416s Setting up r-cran-httpuv (1.6.15+dfsg-1) ... 416s Setting up r-cran-bslib (0.8.0+dfsg-1) ... 416s Setting up pkg-r-autopkgtest (20231212ubuntu1) ... 416s Setting up r-cran-shiny (1.10.0+dfsg-2) ... 416s Setting up r-cran-rmarkdown (2.29+dfsg-1) ... 416s Processing triggers for libc-bin (2.41-1ubuntu2) ... 416s Processing triggers for man-db (2.13.0-1) ... 418s Processing triggers for install-info (7.1.1-1) ... 419s autopkgtest [22:13:00]: test pkg-r-autopkgtest: /usr/share/dh-r/pkg-r-autopkgtest 419s autopkgtest [22:13:00]: test pkg-r-autopkgtest: [----------------------- 419s Test: Try to load the R library diffobj 419s 419s R version 4.4.3 (2025-02-28) -- "Trophy Case" 419s Copyright (C) 2025 The R Foundation for Statistical Computing 419s Platform: x86_64-pc-linux-gnu 419s 419s R is free software and comes with ABSOLUTELY NO WARRANTY. 419s You are welcome to redistribute it under certain conditions. 419s Type 'license()' or 'licence()' for distribution details. 419s 419s R is a collaborative project with many contributors. 419s Type 'contributors()' for more information and 419s 'citation()' on how to cite R or R packages in publications. 419s 419s Type 'demo()' for some demos, 'help()' for on-line help, or 419s 'help.start()' for an HTML browser interface to help. 419s Type 'q()' to quit R. 419s 419s > library('diffobj') 419s > 419s > 419s Other tests are currently unsupported! 419s They will be progressively added. 420s autopkgtest [22:13:01]: test pkg-r-autopkgtest: -----------------------] 420s pkg-r-autopkgtest PASS 420s autopkgtest [22:13:01]: test pkg-r-autopkgtest: - - - - - - - - - - results - - - - - - - - - - 420s autopkgtest [22:13:01]: @@@@@@@@@@@@@@@@@@@@ summary 420s run-unit-test PASS 420s pkg-r-autopkgtest PASS 436s nova [W] Skipping flock for amd64 436s Creating nova instance adt-plucky-amd64-r-cran-diffobj-20250315-220601-juju-7f2275-prod-proposed-migration-environment-2-befaefa7-e26a-4522-aac6-a7c6fe55f033 from image adt/ubuntu-plucky-amd64-server-20250306.img (UUID 60d877d7-b74c-4f24-920d-f4570db0a338)... 436s nova [W] Timed out waiting for 1fe06aac-9473-4bf3-8367-be8d9e81c247 to get deleted. 436s nova [W] Skipping flock for amd64 436s Creating nova instance adt-plucky-amd64-r-cran-diffobj-20250315-220601-juju-7f2275-prod-proposed-migration-environment-2-befaefa7-e26a-4522-aac6-a7c6fe55f033 from image adt/ubuntu-plucky-amd64-server-20250306.img (UUID 60d877d7-b74c-4f24-920d-f4570db0a338)... 436s nova [W] Timed out waiting for e3b0ef25-fcb7-4b62-a776-ee4bf6cc7180 to get deleted.