0s autopkgtest [18:14:13]: starting date and time: 2024-03-16 18:14:13+0000
0s autopkgtest [18:14:13]: git checkout: b506e79c ssh-setup/nova: fix ARCH having two lines of data
0s autopkgtest [18:14:13]: host juju-7f2275-prod-proposed-migration-environment-2; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.yfxw_667/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:r-base,src:curl,src:glib2.0,src:libpng1.6,src:libpsl,src:libtirpc,src:libxt,src:openssl,src:orthanc-python,src:readline,src:wp2latex --apt-upgrade r-cran-diffobj --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 '--env=ADT_TEST_TRIGGERS=r-base/4.3.3-2build1 curl/8.5.0-2ubuntu7 glib2.0/2.79.3-3ubuntu5 libpng1.6/1.6.43-3 libpsl/0.21.2-1.1 libtirpc/1.3.4+ds-1.1 libxt/1:1.2.1-1.2 openssl/3.0.13-0ubuntu1 orthanc-python/4.1+ds-2build3 readline/8.2-3.1 wp2latex/4.4~ds-1build1' -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-2@bos03-arm64-23.secgroup --name adt-noble-arm64-r-cran-diffobj-20240316-181413-juju-7f2275-prod-proposed-migration-environment-2 --image adt/ubuntu-noble-arm64-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,launchpadlibrarian.net,launchpadcontent.net,launchpad.net,10.24.0.0/24,keystone.ps5.canonical.com,objectstorage.prodstack5.canonical.com'"'"'' --mirror=http://ftpmaster.internal/ubuntu/
246s autopkgtest [18:18:19]: testbed dpkg architecture: arm64
246s autopkgtest [18:18:19]: testbed apt version: 2.7.12
246s autopkgtest [18:18:19]: @@@@@@@@@@@@@@@@@@@@ test bed setup
247s Get:1 http://ftpmaster.internal/ubuntu noble-proposed InRelease [117 kB]
247s Get:2 http://ftpmaster.internal/ubuntu noble-proposed/restricted Sources [6540 B]
247s Get:3 http://ftpmaster.internal/ubuntu noble-proposed/universe Sources [3682 kB]
249s Get:4 http://ftpmaster.internal/ubuntu noble-proposed/main Sources [474 kB]
249s Get:5 http://ftpmaster.internal/ubuntu noble-proposed/multiverse Sources [51.4 kB]
249s Get:6 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 Packages [646 kB]
249s Get:7 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 c-n-f Metadata [3144 B]
249s Get:8 http://ftpmaster.internal/ubuntu noble-proposed/restricted arm64 Packages [33.6 kB]
249s Get:9 http://ftpmaster.internal/ubuntu noble-proposed/restricted arm64 c-n-f Metadata [116 B]
249s Get:10 http://ftpmaster.internal/ubuntu noble-proposed/universe arm64 Packages [4006 kB]
250s Get:11 http://ftpmaster.internal/ubuntu noble-proposed/universe arm64 c-n-f Metadata [8528 B]
250s Get:12 http://ftpmaster.internal/ubuntu noble-proposed/multiverse arm64 Packages [55.5 kB]
250s Get:13 http://ftpmaster.internal/ubuntu noble-proposed/multiverse arm64 c-n-f Metadata [116 B]
252s Fetched 9084 kB in 4s (2421 kB/s)
252s Reading package lists...
256s Reading package lists...
256s Building dependency tree...
256s Reading state information...
257s Calculating upgrade...
258s The following packages will be REMOVED:
258s libglib2.0-0 libssl3
258s The following NEW packages will be installed:
258s libglib2.0-0t64 libssl3t64 xdg-user-dirs
258s The following packages have been kept back:
258s curl
258s The following packages will be upgraded:
258s gir1.2-glib-2.0 libglib2.0-data libtirpc-common openssl readline-common
258s ubuntu-minimal ubuntu-standard
258s 7 upgraded, 3 newly installed, 2 to remove and 1 not upgraded.
258s Need to get 4613 kB of archives.
258s After this operation, 211 kB of additional disk space will be used.
258s Get:1 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 gir1.2-glib-2.0 arm64 2.79.3-3ubuntu5 [182 kB]
258s Get:2 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libglib2.0-0t64 arm64 2.79.3-3ubuntu5 [1527 kB]
258s Get:3 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 openssl arm64 3.0.13-0ubuntu1 [983 kB]
258s Get:4 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libssl3t64 arm64 3.0.13-0ubuntu1 [1770 kB]
259s Get:5 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libglib2.0-data all 2.79.3-3ubuntu5 [46.6 kB]
259s Get:6 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libtirpc-common all 1.3.4+ds-1.1 [8018 B]
259s Get:7 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 readline-common all 8.2-3.1 [56.4 kB]
259s Get:8 http://ftpmaster.internal/ubuntu noble/main arm64 ubuntu-minimal arm64 1.536 [10.7 kB]
259s Get:9 http://ftpmaster.internal/ubuntu noble/main arm64 xdg-user-dirs arm64 0.18-1 [18.1 kB]
259s Get:10 http://ftpmaster.internal/ubuntu noble/main arm64 ubuntu-standard arm64 1.536 [10.7 kB]
259s Fetched 4613 kB in 1s (6719 kB/s)
260s (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 ... 74758 files and directories currently installed.)
260s Preparing to unpack .../gir1.2-glib-2.0_2.79.3-3ubuntu5_arm64.deb ...
260s Unpacking gir1.2-glib-2.0:arm64 (2.79.3-3ubuntu5) over (2.79.2-1~ubuntu1) ...
260s dpkg: libglib2.0-0:arm64: dependency problems, but removing anyway as you requested:
260s udisks2 depends on libglib2.0-0 (>= 2.77.0).
260s shared-mime-info depends on libglib2.0-0 (>= 2.75.3).
260s python3-gi depends on libglib2.0-0 (>= 2.77.0).
260s python3-dbus depends on libglib2.0-0 (>= 2.16.0).
260s netplan.io depends on libglib2.0-0 (>= 2.70.0).
260s netplan-generator depends on libglib2.0-0 (>= 2.70.0).
260s libxmlb2:arm64 depends on libglib2.0-0 (>= 2.54.0).
260s libvolume-key1:arm64 depends on libglib2.0-0 (>= 2.18.0).
260s libudisks2-0:arm64 depends on libglib2.0-0 (>= 2.75.3).
260s libqrtr-glib0:arm64 depends on libglib2.0-0 (>= 2.56).
260s libqmi-proxy depends on libglib2.0-0 (>= 2.30.0).
260s libqmi-glib5:arm64 depends on libglib2.0-0 (>= 2.54.0).
260s libpolkit-gobject-1-0:arm64 depends on libglib2.0-0 (>= 2.38.0).
260s libpolkit-agent-1-0:arm64 depends on libglib2.0-0 (>= 2.38.0).
260s libnetplan0:arm64 depends on libglib2.0-0 (>= 2.75.3).
260s libmm-glib0:arm64 depends on libglib2.0-0 (>= 2.62.0).
260s libmbim-proxy depends on libglib2.0-0 (>= 2.56).
260s libmbim-glib4:arm64 depends on libglib2.0-0 (>= 2.56).
260s libjson-glib-1.0-0:arm64 depends on libglib2.0-0 (>= 2.75.3).
260s libjcat1:arm64 depends on libglib2.0-0 (>= 2.75.3).
260s libgusb2:arm64 depends on libglib2.0-0 (>= 2.75.3).
260s libgudev-1.0-0:arm64 depends on libglib2.0-0 (>= 2.38.0).
260s libgirepository-1.0-1:arm64 depends on libglib2.0-0 (>= 2.79.0).
260s libfwupd2:arm64 depends on libglib2.0-0 (>= 2.79.0).
260s libblockdev3:arm64 depends on libglib2.0-0 (>= 2.42.2).
260s libblockdev-utils3:arm64 depends on libglib2.0-0 (>= 2.75.3).
260s libblockdev-swap3:arm64 depends on libglib2.0-0 (>= 2.42.2).
260s libblockdev-part3:arm64 depends on libglib2.0-0 (>= 2.42.2).
260s libblockdev-nvme3:arm64 depends on libglib2.0-0 (>= 2.42.2).
260s libblockdev-mdraid3:arm64 depends on libglib2.0-0 (>= 2.42.2).
260s libblockdev-loop3:arm64 depends on libglib2.0-0 (>= 2.42.2).
260s libblockdev-fs3:arm64 depends on libglib2.0-0 (>= 2.42.2).
260s libblockdev-crypto3:arm64 depends on libglib2.0-0 (>= 2.42.2).
260s fwupd depends on libglib2.0-0 (>= 2.79.0).
260s bolt depends on libglib2.0-0 (>= 2.56.0).
260s
260s (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 ... 74758 files and directories currently installed.)
260s Removing libglib2.0-0:arm64 (2.79.2-1~ubuntu1) ...
260s Selecting previously unselected package libglib2.0-0t64:arm64.
260s (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 ... 74733 files and directories currently installed.)
260s Preparing to unpack .../libglib2.0-0t64_2.79.3-3ubuntu5_arm64.deb ...
260s libglib2.0-0t64.preinst: Removing /var/lib/dpkg/info/libglib2.0-0:arm64.postrm to avoid loss of /usr/share/glib-2.0/schemas/gschemas.compiled...
260s removed '/var/lib/dpkg/info/libglib2.0-0:arm64.postrm'
260s Unpacking libglib2.0-0t64:arm64 (2.79.3-3ubuntu5) ...
260s Preparing to unpack .../openssl_3.0.13-0ubuntu1_arm64.deb ...
260s Unpacking openssl (3.0.13-0ubuntu1) over (3.0.10-1ubuntu4) ...
260s dpkg: libssl3:arm64: dependency problems, but removing anyway as you requested:
260s wget depends on libssl3 (>= 3.0.0).
260s u-boot-tools depends on libssl3 (>= 3.0.0).
260s tnftp depends on libssl3 (>= 3.0.0).
260s tcpdump depends on libssl3 (>= 3.0.0).
260s systemd-resolved depends on libssl3 (>= 3.0.0).
260s systemd depends on libssl3 (>= 3.0.0).
260s sudo depends on libssl3 (>= 3.0.0).
260s sbsigntool depends on libssl3 (>= 3.0.0).
260s rsync depends on libssl3 (>= 3.0.0).
260s python3-cryptography depends on libssl3 (>= 3.0.0).
260s openssh-server depends on libssl3 (>= 3.0.10).
260s openssh-client depends on libssl3 (>= 3.0.10).
260s mtd-utils depends on libssl3 (>= 3.0.0).
260s mokutil depends on libssl3 (>= 3.0.0).
260s linux-headers-6.8.0-11-generic depends on libssl3 (>= 3.0.0).
260s libsystemd-shared:arm64 depends on libssl3 (>= 3.0.0).
260s libssh-4:arm64 depends on libssl3 (>= 3.0.0).
260s libsasl2-modules:arm64 depends on libssl3 (>= 3.0.0).
260s libsasl2-2:arm64 depends on libssl3 (>= 3.0.0).
260s libpython3.12-minimal:arm64 depends on libssl3 (>= 3.0.0).
260s libnvme1 depends on libssl3 (>= 3.0.0).
260s libkrb5-3:arm64 depends on libssl3 (>= 3.0.0).
260s libkmod2:arm64 depends on libssl3 (>= 3.0.0).
260s libfido2-1:arm64 depends on libssl3 (>= 3.0.0).
260s libcurl4:arm64 depends on libssl3 (>= 3.0.0).
260s libcryptsetup12:arm64 depends on libssl3 (>= 3.0.0).
260s kmod depends on libssl3 (>= 3.0.0).
260s dhcpcd-base depends on libssl3 (>= 3.0.0).
260s bind9-libs:arm64 depends on libssl3 (>= 3.0.0).
260s
260s (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 ... 74758 files and directories currently installed.)
260s Removing libssl3:arm64 (3.0.10-1ubuntu4) ...
260s Selecting previously unselected package libssl3t64:arm64.
260s (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 ... 74747 files and directories currently installed.)
260s Preparing to unpack .../0-libssl3t64_3.0.13-0ubuntu1_arm64.deb ...
260s Unpacking libssl3t64:arm64 (3.0.13-0ubuntu1) ...
261s Preparing to unpack .../1-libglib2.0-data_2.79.3-3ubuntu5_all.deb ...
261s Unpacking libglib2.0-data (2.79.3-3ubuntu5) over (2.79.2-1~ubuntu1) ...
261s Preparing to unpack .../2-libtirpc-common_1.3.4+ds-1.1_all.deb ...
261s Unpacking libtirpc-common (1.3.4+ds-1.1) over (1.3.4+ds-1build1) ...
261s Preparing to unpack .../3-readline-common_8.2-3.1_all.deb ...
261s Unpacking readline-common (8.2-3.1) over (8.2-3) ...
261s Preparing to unpack .../4-ubuntu-minimal_1.536_arm64.deb ...
261s Unpacking ubuntu-minimal (1.536) over (1.535) ...
261s Selecting previously unselected package xdg-user-dirs.
261s Preparing to unpack .../5-xdg-user-dirs_0.18-1_arm64.deb ...
261s Unpacking xdg-user-dirs (0.18-1) ...
261s Preparing to unpack .../6-ubuntu-standard_1.536_arm64.deb ...
261s Unpacking ubuntu-standard (1.536) over (1.535) ...
261s Setting up ubuntu-minimal (1.536) ...
261s Setting up xdg-user-dirs (0.18-1) ...
261s Setting up libssl3t64:arm64 (3.0.13-0ubuntu1) ...
261s Setting up libtirpc-common (1.3.4+ds-1.1) ...
261s Setting up ubuntu-standard (1.536) ...
261s Setting up libglib2.0-0t64:arm64 (2.79.3-3ubuntu5) ...
261s No schema files found: doing nothing.
261s Setting up libglib2.0-data (2.79.3-3ubuntu5) ...
261s Setting up gir1.2-glib-2.0:arm64 (2.79.3-3ubuntu5) ...
261s Setting up openssl (3.0.13-0ubuntu1) ...
261s Setting up readline-common (8.2-3.1) ...
261s Processing triggers for man-db (2.12.0-3) ...
262s Processing triggers for install-info (7.1-3) ...
262s Processing triggers for libc-bin (2.39-0ubuntu2) ...
263s Reading package lists...
263s Building dependency tree...
263s Reading state information...
264s 0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
264s Hit:1 http://ftpmaster.internal/ubuntu noble InRelease
264s Hit:2 http://ftpmaster.internal/ubuntu noble-updates InRelease
264s Hit:3 http://ftpmaster.internal/ubuntu noble-security InRelease
264s Hit:4 http://ftpmaster.internal/ubuntu noble-proposed InRelease
266s Reading package lists...
266s Reading package lists...
266s Building dependency tree...
266s Reading state information...
267s Calculating upgrade...
268s The following packages have been kept back:
268s curl
268s 0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
268s Reading package lists...
268s Building dependency tree...
268s Reading state information...
269s 0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
273s autopkgtest [18:18:46]: testbed running kernel: Linux 6.8.0-11-generic #11-Ubuntu SMP PREEMPT_DYNAMIC Wed Feb 14 02:53:31 UTC 2024
273s autopkgtest [18:18:46]: @@@@@@@@@@@@@@@@@@@@ apt-source r-cran-diffobj
276s Get:1 http://ftpmaster.internal/ubuntu noble/universe r-cran-diffobj 0.3.5-1 (dsc) [2117 B]
276s Get:2 http://ftpmaster.internal/ubuntu noble/universe r-cran-diffobj 0.3.5-1 (tar) [479 kB]
276s Get:3 http://ftpmaster.internal/ubuntu noble/universe r-cran-diffobj 0.3.5-1 (diff) [3480 B]
276s gpgv: Signature made Tue Oct 12 17:58:35 2021 UTC
276s gpgv: using RSA key F1F007320A035541F0A663CA578A0494D1C646D1
276s gpgv: issuer "tille@debian.org"
276s gpgv: Can't check signature: No public key
276s dpkg-source: warning: cannot verify inline signature for ./r-cran-diffobj_0.3.5-1.dsc: no acceptable signature found
277s autopkgtest [18:18:50]: testing package r-cran-diffobj version 0.3.5-1
277s autopkgtest [18:18:50]: build not needed
279s autopkgtest [18:18:52]: test run-unit-test: preparing testbed
280s Reading package lists...
281s Building dependency tree...
281s Reading state information...
281s Starting pkgProblemResolver with broken count: 0
281s Starting 2 pkgProblemResolver with broken count: 0
281s Done
282s The following additional packages will be installed:
282s curl fontconfig fontconfig-config fonts-dejavu-core fonts-dejavu-mono
282s libblas3 libcairo2 libcurl4t64 libdatrie1 libdeflate0 libfontconfig1
282s libgfortran5 libgomp1 libgraphite2-3 libharfbuzz0b libice6 libjbig0
282s libjpeg-turbo8 libjpeg8 liblapack3 liblerc4 libpango-1.0-0
282s libpangocairo-1.0-0 libpangoft2-1.0-0 libpaper-utils libpaper1 libpixman-1-0
282s libpng16-16t64 libpsl5t64 libreadline8t64 libsharpyuv0 libsm6 libtcl8.6
282s libthai-data libthai0 libtiff6 libtirpc3t64 libtk8.6 libwebp7 libxcb-render0
282s libxcb-shm0 libxft2 libxrender1 libxss1 libxt6t64 r-base-core r-cran-brio
282s r-cran-callr r-cran-cli r-cran-crayon r-cran-desc r-cran-diffobj
282s r-cran-digest r-cran-evaluate r-cran-fansi r-cran-fs r-cran-glue
282s r-cran-jsonlite r-cran-lifecycle r-cran-magrittr r-cran-pillar
282s r-cran-pkgbuild r-cran-pkgconfig r-cran-pkgload r-cran-praise
282s r-cran-processx r-cran-ps r-cran-r6 r-cran-rematch2 r-cran-rlang
282s r-cran-rprojroot r-cran-testthat r-cran-tibble r-cran-utf8 r-cran-vctrs
282s r-cran-waldo r-cran-withr unzip x11-common xdg-utils zip
282s Suggested packages:
282s tcl8.6 tk8.6 elpa-ess r-doc-info | r-doc-pdf r-mathlib r-base-html
282s r-cran-covr r-cran-spelling r-cran-rstudioapi r-cran-knitr r-cran-rmarkdown
282s r-cran-bit64 r-cran-dbi r-cran-dplyr r-cran-formattable r-cran-ggplot2
282s r-cran-nanotime r-cran-palmerpenguins r-cran-scales r-cran-stringi
282s r-cran-survival r-cran-units r-cran-vdiffr r-cran-bench r-cran-blob
282s r-cran-here r-cran-hms r-cran-htmltools r-cran-purrr r-cran-tidyr
282s Recommended packages:
282s r-recommended r-base-dev r-doc-html r-cran-covr r-cran-cliapp r-cran-mockery
282s r-cran-htmltools r-cran-htmlwidgets r-cran-knitr r-cran-rmarkdown
282s r-cran-rstudioapi r-cran-whoami r-cran-gh r-cran-spelling r-cran-ggplot2
282s r-cran-lattice r-cran-unitizer r-cran-dbi r-cran-dplyr r-cran-rsqlite
282s r-cran-httr r-cran-r.rsp r-cran-sf r-cran-lintr r-cran-tidyverse
282s r-cran-lubridate r-cran-cpp11 r-cran-rcpp r-cran-bitops r-cran-mathjaxr
282s r-cran-mockr r-cran-remotes r-cran-codetools r-cran-curl r-cran-webfakes
282s r-cran-pingr r-cran-usethis r-cran-shiny r-cran-xml2 r-cran-data.table
282s r-cran-formattable r-cran-bit64 r-cran-generics r-cran-pkgdown
282s r-cran-zeallot libfile-mimeinfo-perl libnet-dbus-perl libx11-protocol-perl
282s x11-utils x11-xserver-utils
282s The following packages will be REMOVED:
282s libcurl4 libpng16-16 libpsl5 libreadline8 libtirpc3
282s The following NEW packages will be installed:
282s autopkgtest-satdep fontconfig fontconfig-config fonts-dejavu-core
282s fonts-dejavu-mono libblas3 libcairo2 libcurl4t64 libdatrie1 libdeflate0
282s libfontconfig1 libgfortran5 libgomp1 libgraphite2-3 libharfbuzz0b libice6
282s libjbig0 libjpeg-turbo8 libjpeg8 liblapack3 liblerc4 libpango-1.0-0
282s libpangocairo-1.0-0 libpangoft2-1.0-0 libpaper-utils libpaper1 libpixman-1-0
282s libpng16-16t64 libpsl5t64 libreadline8t64 libsharpyuv0 libsm6 libtcl8.6
282s libthai-data libthai0 libtiff6 libtirpc3t64 libtk8.6 libwebp7 libxcb-render0
282s libxcb-shm0 libxft2 libxrender1 libxss1 libxt6t64 r-base-core r-cran-brio
282s r-cran-callr r-cran-cli r-cran-crayon r-cran-desc r-cran-diffobj
282s r-cran-digest r-cran-evaluate r-cran-fansi r-cran-fs r-cran-glue
282s r-cran-jsonlite r-cran-lifecycle r-cran-magrittr r-cran-pillar
282s r-cran-pkgbuild r-cran-pkgconfig r-cran-pkgload r-cran-praise
282s r-cran-processx r-cran-ps r-cran-r6 r-cran-rematch2 r-cran-rlang
282s r-cran-rprojroot r-cran-testthat r-cran-tibble r-cran-utf8 r-cran-vctrs
282s r-cran-waldo r-cran-withr unzip x11-common xdg-utils zip
282s The following packages will be upgraded:
282s curl
282s 1 upgraded, 81 newly installed, 5 to remove and 0 not upgraded.
282s Need to get 50.5 MB/50.5 MB of archives.
282s After this operation, 97.8 MB of additional disk space will be used.
282s Get:1 /tmp/autopkgtest.5QiPmk/1-autopkgtest-satdep.deb autopkgtest-satdep arm64 0 [720 B]
282s Get:2 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libpsl5t64 arm64 0.21.2-1.1 [57.4 kB]
282s Get:3 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 curl arm64 8.5.0-2ubuntu7 [222 kB]
283s Get:4 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libcurl4t64 arm64 8.5.0-2ubuntu7 [332 kB]
283s Get:5 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libpng16-16t64 arm64 1.6.43-3 [185 kB]
283s Get:6 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libreadline8t64 arm64 8.2-3.1 [153 kB]
283s Get:7 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libtirpc3t64 arm64 1.3.4+ds-1.1 [83.5 kB]
283s Get:8 http://ftpmaster.internal/ubuntu noble/main arm64 fonts-dejavu-mono all 2.37-8 [502 kB]
283s Get:9 http://ftpmaster.internal/ubuntu noble/main arm64 fonts-dejavu-core all 2.37-8 [835 kB]
283s Get:10 http://ftpmaster.internal/ubuntu noble/main arm64 fontconfig-config arm64 2.15.0-1ubuntu1 [37.0 kB]
283s Get:11 http://ftpmaster.internal/ubuntu noble/main arm64 libfontconfig1 arm64 2.15.0-1ubuntu1 [142 kB]
283s Get:12 http://ftpmaster.internal/ubuntu noble/main arm64 fontconfig arm64 2.15.0-1ubuntu1 [190 kB]
283s Get:13 http://ftpmaster.internal/ubuntu noble/main arm64 libblas3 arm64 3.12.0-3 [143 kB]
283s Get:14 http://ftpmaster.internal/ubuntu noble/main arm64 libpixman-1-0 arm64 0.42.2-1 [193 kB]
283s Get:15 http://ftpmaster.internal/ubuntu noble/main arm64 libxcb-render0 arm64 1.15-1 [16.1 kB]
283s Get:16 http://ftpmaster.internal/ubuntu noble/main arm64 libxcb-shm0 arm64 1.15-1 [5780 B]
283s Get:17 http://ftpmaster.internal/ubuntu noble/main arm64 libxrender1 arm64 1:0.9.10-1.1 [19.1 kB]
283s Get:18 http://ftpmaster.internal/ubuntu noble/main arm64 libcairo2 arm64 1.18.0-1 [550 kB]
283s Get:19 http://ftpmaster.internal/ubuntu noble/main arm64 libdatrie1 arm64 0.2.13-3 [21.7 kB]
283s Get:20 http://ftpmaster.internal/ubuntu noble/main arm64 libdeflate0 arm64 1.19-1 [43.4 kB]
283s Get:21 http://ftpmaster.internal/ubuntu noble/main arm64 libgfortran5 arm64 14-20240303-1ubuntu1 [444 kB]
283s Get:22 http://ftpmaster.internal/ubuntu noble/main arm64 libgomp1 arm64 14-20240303-1ubuntu1 [144 kB]
283s Get:23 http://ftpmaster.internal/ubuntu noble/main arm64 libgraphite2-3 arm64 1.3.14-2 [81.5 kB]
283s Get:24 http://ftpmaster.internal/ubuntu noble/main arm64 libharfbuzz0b arm64 8.3.0-2 [463 kB]
283s Get:25 http://ftpmaster.internal/ubuntu noble/main arm64 x11-common all 1:7.7+23ubuntu2 [23.4 kB]
283s Get:26 http://ftpmaster.internal/ubuntu noble/main arm64 libice6 arm64 2:1.0.10-1build2 [41.7 kB]
283s Get:27 http://ftpmaster.internal/ubuntu noble/main arm64 libjpeg-turbo8 arm64 2.1.5-2ubuntu1 [160 kB]
283s Get:28 http://ftpmaster.internal/ubuntu noble/main arm64 libjpeg8 arm64 8c-2ubuntu11 [2148 B]
283s Get:29 http://ftpmaster.internal/ubuntu noble/main arm64 liblapack3 arm64 3.12.0-3 [2241 kB]
283s Get:30 http://ftpmaster.internal/ubuntu noble/main arm64 liblerc4 arm64 4.0.0+ds-4ubuntu1 [153 kB]
283s Get:31 http://ftpmaster.internal/ubuntu noble/main arm64 libthai-data all 0.1.29-2 [158 kB]
283s Get:32 http://ftpmaster.internal/ubuntu noble/main arm64 libthai0 arm64 0.1.29-2 [18.1 kB]
283s Get:33 http://ftpmaster.internal/ubuntu noble/main arm64 libpango-1.0-0 arm64 1.51.0+ds-4 [226 kB]
283s Get:34 http://ftpmaster.internal/ubuntu noble/main arm64 libpangoft2-1.0-0 arm64 1.51.0+ds-4 [41.2 kB]
283s Get:35 http://ftpmaster.internal/ubuntu noble/main arm64 libpangocairo-1.0-0 arm64 1.51.0+ds-4 [27.6 kB]
283s Get:36 http://ftpmaster.internal/ubuntu noble/main arm64 libpaper1 arm64 1.1.29 [13.1 kB]
283s Get:37 http://ftpmaster.internal/ubuntu noble/main arm64 libpaper-utils arm64 1.1.29 [8480 B]
283s Get:38 http://ftpmaster.internal/ubuntu noble/main arm64 libsharpyuv0 arm64 1.3.2-0.4 [14.4 kB]
283s Get:39 http://ftpmaster.internal/ubuntu noble/main arm64 libsm6 arm64 2:1.2.3-1build2 [16.1 kB]
283s Get:40 http://ftpmaster.internal/ubuntu noble/main arm64 libtcl8.6 arm64 8.6.13+dfsg-2 [980 kB]
283s Get:41 http://ftpmaster.internal/ubuntu noble/main arm64 libjbig0 arm64 2.1-6.1ubuntu1 [28.9 kB]
283s Get:42 http://ftpmaster.internal/ubuntu noble/main arm64 libwebp7 arm64 1.3.2-0.4 [191 kB]
283s Get:43 http://ftpmaster.internal/ubuntu noble/main arm64 libtiff6 arm64 4.5.1+git230720-3ubuntu1 [226 kB]
283s Get:44 http://ftpmaster.internal/ubuntu noble/main arm64 libxft2 arm64 2.3.6-1 [43.3 kB]
283s Get:45 http://ftpmaster.internal/ubuntu noble/main arm64 libxss1 arm64 1:1.2.3-1build2 [8252 B]
283s Get:46 http://ftpmaster.internal/ubuntu noble/main arm64 libtk8.6 arm64 8.6.13-2 [760 kB]
283s Get:47 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libxt6t64 arm64 1:1.2.1-1.2 [168 kB]
283s Get:48 http://ftpmaster.internal/ubuntu noble/main arm64 zip arm64 3.0-13 [172 kB]
283s Get:49 http://ftpmaster.internal/ubuntu noble/main arm64 unzip arm64 6.0-28ubuntu3 [171 kB]
283s Get:50 http://ftpmaster.internal/ubuntu noble/main arm64 xdg-utils all 1.1.3-4.1ubuntu3 [62.0 kB]
283s Get:51 http://ftpmaster.internal/ubuntu noble-proposed/universe arm64 r-base-core arm64 4.3.3-2build1 [26.8 MB]
284s Get:52 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-brio arm64 1.1.4-1 [37.7 kB]
284s Get:53 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-ps arm64 1.7.6-1 [313 kB]
284s Get:54 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-r6 all 2.5.1-1 [99.0 kB]
284s Get:55 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-processx arm64 3.8.3-1 [345 kB]
284s Get:56 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-callr all 3.7.3-2 [425 kB]
284s Get:57 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-cli arm64 3.6.2-1 [1377 kB]
284s Get:58 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-crayon all 1.5.2-1 [164 kB]
284s Get:59 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-desc all 1.4.3-1 [359 kB]
284s Get:60 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-diffobj arm64 0.3.5-1 [1116 kB]
284s Get:61 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-digest arm64 0.6.34-1 [182 kB]
284s Get:62 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-evaluate all 0.23-1 [90.2 kB]
284s Get:63 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-fansi arm64 1.0.5-1 [616 kB]
284s Get:64 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-fs arm64 1.6.3+dfsg-1 [227 kB]
284s Get:65 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-glue arm64 1.7.0-1 [154 kB]
284s Get:66 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-jsonlite arm64 1.8.8+dfsg-1 [441 kB]
284s Get:67 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-rlang arm64 1.1.3-1 [1663 kB]
284s Get:68 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-lifecycle all 1.0.4+dfsg-1 [110 kB]
284s Get:69 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-magrittr arm64 2.0.3-1 [154 kB]
284s Get:70 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-utf8 arm64 1.2.4-1 [140 kB]
284s Get:71 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-vctrs arm64 0.6.5-1 [1327 kB]
284s Get:72 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-pillar all 1.9.0+dfsg-1 [464 kB]
284s Get:73 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-pkgbuild all 1.4.3-1 [209 kB]
284s Get:74 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-pkgconfig all 2.0.3-2build1 [19.7 kB]
284s Get:75 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-rprojroot all 2.0.4-1 [124 kB]
284s Get:76 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-withr all 2.5.0-1 [225 kB]
284s Get:77 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-pkgload all 1.3.4-1 [207 kB]
284s Get:78 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-praise all 1.0.0-4build1 [20.3 kB]
284s Get:79 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-tibble arm64 3.2.1+dfsg-2 [415 kB]
284s Get:80 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-rematch2 all 2.1.2-2build1 [46.5 kB]
284s Get:81 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-waldo all 0.5.2-1build1 [120 kB]
284s Get:82 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-testthat arm64 3.2.1-1 [1678 kB]
286s Preconfiguring packages ...
286s Fetched 50.5 MB in 2s (23.0 MB/s)
286s dpkg: libpsl5:arm64: dependency problems, but removing anyway as you requested:
286s wget depends on libpsl5 (>= 0.16.0).
286s libcurl4:arm64 depends on libpsl5 (>= 0.16.0).
286s libcurl3-gnutls:arm64 depends on libpsl5 (>= 0.16.0).
286s
286s (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 ... 74774 files and directories currently installed.)
286s Removing libpsl5:arm64 (0.21.2-1build1) ...
286s Selecting previously unselected package libpsl5t64:arm64.
286s (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 ... 74769 files and directories currently installed.)
286s Preparing to unpack .../libpsl5t64_0.21.2-1.1_arm64.deb ...
286s Unpacking libpsl5t64:arm64 (0.21.2-1.1) ...
287s Preparing to unpack .../curl_8.5.0-2ubuntu7_arm64.deb ...
287s Unpacking curl (8.5.0-2ubuntu7) over (8.5.0-2ubuntu2) ...
287s (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 ... 74775 files and directories currently installed.)
287s Removing libcurl4:arm64 (8.5.0-2ubuntu2) ...
287s Selecting previously unselected package libcurl4t64:arm64.
287s (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 ... 74770 files and directories currently installed.)
287s Preparing to unpack .../libcurl4t64_8.5.0-2ubuntu7_arm64.deb ...
287s Unpacking libcurl4t64:arm64 (8.5.0-2ubuntu7) ...
287s dpkg: libpng16-16:arm64: dependency problems, but removing anyway as you requested:
287s libplymouth5:arm64 depends on libpng16-16 (>= 1.6.2).
287s libfreetype6:arm64 depends on libpng16-16 (>= 1.6.2-1).
287s
287s (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 ... 74776 files and directories currently installed.)
287s Removing libpng16-16:arm64 (1.6.43-1) ...
288s Selecting previously unselected package libpng16-16t64:arm64.
288s (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 ... 74766 files and directories currently installed.)
288s Preparing to unpack .../libpng16-16t64_1.6.43-3_arm64.deb ...
288s Unpacking libpng16-16t64:arm64 (1.6.43-3) ...
288s dpkg: libreadline8:arm64: dependency problems, but removing anyway as you requested:
288s parted depends on libreadline8 (>= 6.0).
288s libpython3.12-stdlib:arm64 depends on libreadline8 (>= 7.0~beta).
288s gpgsm depends on libreadline8 (>= 6.0).
288s gpgconf depends on libreadline8 (>= 6.0).
288s gpg depends on libreadline8 (>= 6.0).
288s gawk depends on libreadline8 (>= 6.0).
288s fdisk depends on libreadline8 (>= 6.0).
288s
288s (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 ... 74777 files and directories currently installed.)
288s Removing libreadline8:arm64 (8.2-3) ...
288s Selecting previously unselected package libreadline8t64:arm64.
288s (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 ... 74765 files and directories currently installed.)
288s Preparing to unpack .../libreadline8t64_8.2-3.1_arm64.deb ...
288s Adding 'diversion of /lib/aarch64-linux-gnu/libhistory.so.8 to /lib/aarch64-linux-gnu/libhistory.so.8.usr-is-merged by libreadline8t64'
288s Adding 'diversion of /lib/aarch64-linux-gnu/libhistory.so.8.2 to /lib/aarch64-linux-gnu/libhistory.so.8.2.usr-is-merged by libreadline8t64'
288s Adding 'diversion of /lib/aarch64-linux-gnu/libreadline.so.8 to /lib/aarch64-linux-gnu/libreadline.so.8.usr-is-merged by libreadline8t64'
288s Adding 'diversion of /lib/aarch64-linux-gnu/libreadline.so.8.2 to /lib/aarch64-linux-gnu/libreadline.so.8.2.usr-is-merged by libreadline8t64'
288s Unpacking libreadline8t64:arm64 (8.2-3.1) ...
288s dpkg: libtirpc3:arm64: dependency problems, but removing anyway as you requested:
288s lsof depends on libtirpc3 (>= 1.0.2).
288s libpython3.12-stdlib:arm64 depends on libtirpc3 (>= 1.0.2).
288s libnss-nisplus:arm64 depends on libtirpc3 (>= 1.0.2).
288s libnsl2:arm64 depends on libtirpc3 (>= 1.0.2).
288s iproute2 depends on libtirpc3 (>= 1.0.2).
288s
288s (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 ... 74785 files and directories currently installed.)
288s Removing libtirpc3:arm64 (1.3.4+ds-1build1) ...
288s Selecting previously unselected package libtirpc3t64:arm64.
288s (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 ... 74779 files and directories currently installed.)
288s Preparing to unpack .../00-libtirpc3t64_1.3.4+ds-1.1_arm64.deb ...
288s Adding 'diversion of /lib/aarch64-linux-gnu/libtirpc.so.3 to /lib/aarch64-linux-gnu/libtirpc.so.3.usr-is-merged by libtirpc3t64'
288s Adding 'diversion of /lib/aarch64-linux-gnu/libtirpc.so.3.0.0 to /lib/aarch64-linux-gnu/libtirpc.so.3.0.0.usr-is-merged by libtirpc3t64'
288s Unpacking libtirpc3t64:arm64 (1.3.4+ds-1.1) ...
288s Selecting previously unselected package fonts-dejavu-mono.
288s Preparing to unpack .../01-fonts-dejavu-mono_2.37-8_all.deb ...
288s Unpacking fonts-dejavu-mono (2.37-8) ...
288s Selecting previously unselected package fonts-dejavu-core.
288s Preparing to unpack .../02-fonts-dejavu-core_2.37-8_all.deb ...
288s Unpacking fonts-dejavu-core (2.37-8) ...
288s Selecting previously unselected package fontconfig-config.
288s Preparing to unpack .../03-fontconfig-config_2.15.0-1ubuntu1_arm64.deb ...
288s Unpacking fontconfig-config (2.15.0-1ubuntu1) ...
289s Selecting previously unselected package libfontconfig1:arm64.
289s Preparing to unpack .../04-libfontconfig1_2.15.0-1ubuntu1_arm64.deb ...
289s Unpacking libfontconfig1:arm64 (2.15.0-1ubuntu1) ...
289s Selecting previously unselected package fontconfig.
289s Preparing to unpack .../05-fontconfig_2.15.0-1ubuntu1_arm64.deb ...
289s Unpacking fontconfig (2.15.0-1ubuntu1) ...
289s Selecting previously unselected package libblas3:arm64.
289s Preparing to unpack .../06-libblas3_3.12.0-3_arm64.deb ...
289s Unpacking libblas3:arm64 (3.12.0-3) ...
289s Selecting previously unselected package libpixman-1-0:arm64.
289s Preparing to unpack .../07-libpixman-1-0_0.42.2-1_arm64.deb ...
289s Unpacking libpixman-1-0:arm64 (0.42.2-1) ...
289s Selecting previously unselected package libxcb-render0:arm64.
289s Preparing to unpack .../08-libxcb-render0_1.15-1_arm64.deb ...
289s Unpacking libxcb-render0:arm64 (1.15-1) ...
289s Selecting previously unselected package libxcb-shm0:arm64.
289s Preparing to unpack .../09-libxcb-shm0_1.15-1_arm64.deb ...
289s Unpacking libxcb-shm0:arm64 (1.15-1) ...
289s Selecting previously unselected package libxrender1:arm64.
289s Preparing to unpack .../10-libxrender1_1%3a0.9.10-1.1_arm64.deb ...
289s Unpacking libxrender1:arm64 (1:0.9.10-1.1) ...
289s Selecting previously unselected package libcairo2:arm64.
289s Preparing to unpack .../11-libcairo2_1.18.0-1_arm64.deb ...
289s Unpacking libcairo2:arm64 (1.18.0-1) ...
289s Selecting previously unselected package libdatrie1:arm64.
289s Preparing to unpack .../12-libdatrie1_0.2.13-3_arm64.deb ...
289s Unpacking libdatrie1:arm64 (0.2.13-3) ...
289s Selecting previously unselected package libdeflate0:arm64.
289s Preparing to unpack .../13-libdeflate0_1.19-1_arm64.deb ...
289s Unpacking libdeflate0:arm64 (1.19-1) ...
289s Selecting previously unselected package libgfortran5:arm64.
289s Preparing to unpack .../14-libgfortran5_14-20240303-1ubuntu1_arm64.deb ...
289s Unpacking libgfortran5:arm64 (14-20240303-1ubuntu1) ...
289s Selecting previously unselected package libgomp1:arm64.
289s Preparing to unpack .../15-libgomp1_14-20240303-1ubuntu1_arm64.deb ...
289s Unpacking libgomp1:arm64 (14-20240303-1ubuntu1) ...
289s Selecting previously unselected package libgraphite2-3:arm64.
289s Preparing to unpack .../16-libgraphite2-3_1.3.14-2_arm64.deb ...
289s Unpacking libgraphite2-3:arm64 (1.3.14-2) ...
289s Selecting previously unselected package libharfbuzz0b:arm64.
289s Preparing to unpack .../17-libharfbuzz0b_8.3.0-2_arm64.deb ...
289s Unpacking libharfbuzz0b:arm64 (8.3.0-2) ...
289s Selecting previously unselected package x11-common.
289s Preparing to unpack .../18-x11-common_1%3a7.7+23ubuntu2_all.deb ...
289s Unpacking x11-common (1:7.7+23ubuntu2) ...
289s Selecting previously unselected package libice6:arm64.
289s Preparing to unpack .../19-libice6_2%3a1.0.10-1build2_arm64.deb ...
289s Unpacking libice6:arm64 (2:1.0.10-1build2) ...
289s Selecting previously unselected package libjpeg-turbo8:arm64.
289s Preparing to unpack .../20-libjpeg-turbo8_2.1.5-2ubuntu1_arm64.deb ...
289s Unpacking libjpeg-turbo8:arm64 (2.1.5-2ubuntu1) ...
289s Selecting previously unselected package libjpeg8:arm64.
289s Preparing to unpack .../21-libjpeg8_8c-2ubuntu11_arm64.deb ...
289s Unpacking libjpeg8:arm64 (8c-2ubuntu11) ...
289s Selecting previously unselected package liblapack3:arm64.
289s Preparing to unpack .../22-liblapack3_3.12.0-3_arm64.deb ...
289s Unpacking liblapack3:arm64 (3.12.0-3) ...
289s Selecting previously unselected package liblerc4:arm64.
290s Preparing to unpack .../23-liblerc4_4.0.0+ds-4ubuntu1_arm64.deb ...
290s Unpacking liblerc4:arm64 (4.0.0+ds-4ubuntu1) ...
290s Selecting previously unselected package libthai-data.
290s Preparing to unpack .../24-libthai-data_0.1.29-2_all.deb ...
290s Unpacking libthai-data (0.1.29-2) ...
290s Selecting previously unselected package libthai0:arm64.
290s Preparing to unpack .../25-libthai0_0.1.29-2_arm64.deb ...
290s Unpacking libthai0:arm64 (0.1.29-2) ...
290s Selecting previously unselected package libpango-1.0-0:arm64.
290s Preparing to unpack .../26-libpango-1.0-0_1.51.0+ds-4_arm64.deb ...
290s Unpacking libpango-1.0-0:arm64 (1.51.0+ds-4) ...
290s Selecting previously unselected package libpangoft2-1.0-0:arm64.
290s Preparing to unpack .../27-libpangoft2-1.0-0_1.51.0+ds-4_arm64.deb ...
290s Unpacking libpangoft2-1.0-0:arm64 (1.51.0+ds-4) ...
290s Selecting previously unselected package libpangocairo-1.0-0:arm64.
290s Preparing to unpack .../28-libpangocairo-1.0-0_1.51.0+ds-4_arm64.deb ...
290s Unpacking libpangocairo-1.0-0:arm64 (1.51.0+ds-4) ...
290s Selecting previously unselected package libpaper1:arm64.
290s Preparing to unpack .../29-libpaper1_1.1.29_arm64.deb ...
290s Unpacking libpaper1:arm64 (1.1.29) ...
290s Selecting previously unselected package libpaper-utils.
290s Preparing to unpack .../30-libpaper-utils_1.1.29_arm64.deb ...
290s Unpacking libpaper-utils (1.1.29) ...
290s Selecting previously unselected package libsharpyuv0:arm64.
290s Preparing to unpack .../31-libsharpyuv0_1.3.2-0.4_arm64.deb ...
290s Unpacking libsharpyuv0:arm64 (1.3.2-0.4) ...
290s Selecting previously unselected package libsm6:arm64.
290s Preparing to unpack .../32-libsm6_2%3a1.2.3-1build2_arm64.deb ...
290s Unpacking libsm6:arm64 (2:1.2.3-1build2) ...
291s Selecting previously unselected package libtcl8.6:arm64.
291s Preparing to unpack .../33-libtcl8.6_8.6.13+dfsg-2_arm64.deb ...
291s Unpacking libtcl8.6:arm64 (8.6.13+dfsg-2) ...
291s Selecting previously unselected package libjbig0:arm64.
291s Preparing to unpack .../34-libjbig0_2.1-6.1ubuntu1_arm64.deb ...
291s Unpacking libjbig0:arm64 (2.1-6.1ubuntu1) ...
291s Selecting previously unselected package libwebp7:arm64.
291s Preparing to unpack .../35-libwebp7_1.3.2-0.4_arm64.deb ...
291s Unpacking libwebp7:arm64 (1.3.2-0.4) ...
291s Selecting previously unselected package libtiff6:arm64.
291s Preparing to unpack .../36-libtiff6_4.5.1+git230720-3ubuntu1_arm64.deb ...
291s Unpacking libtiff6:arm64 (4.5.1+git230720-3ubuntu1) ...
291s Selecting previously unselected package libxft2:arm64.
291s Preparing to unpack .../37-libxft2_2.3.6-1_arm64.deb ...
291s Unpacking libxft2:arm64 (2.3.6-1) ...
291s Selecting previously unselected package libxss1:arm64.
291s Preparing to unpack .../38-libxss1_1%3a1.2.3-1build2_arm64.deb ...
291s Unpacking libxss1:arm64 (1:1.2.3-1build2) ...
291s Selecting previously unselected package libtk8.6:arm64.
292s Preparing to unpack .../39-libtk8.6_8.6.13-2_arm64.deb ...
292s Unpacking libtk8.6:arm64 (8.6.13-2) ...
292s Selecting previously unselected package libxt6t64:arm64.
292s Preparing to unpack .../40-libxt6t64_1%3a1.2.1-1.2_arm64.deb ...
292s Unpacking libxt6t64:arm64 (1:1.2.1-1.2) ...
292s Selecting previously unselected package zip.
292s Preparing to unpack .../41-zip_3.0-13_arm64.deb ...
292s Unpacking zip (3.0-13) ...
292s Selecting previously unselected package unzip.
292s Preparing to unpack .../42-unzip_6.0-28ubuntu3_arm64.deb ...
292s Unpacking unzip (6.0-28ubuntu3) ...
292s Selecting previously unselected package xdg-utils.
292s Preparing to unpack .../43-xdg-utils_1.1.3-4.1ubuntu3_all.deb ...
292s Unpacking xdg-utils (1.1.3-4.1ubuntu3) ...
292s Selecting previously unselected package r-base-core.
292s Preparing to unpack .../44-r-base-core_4.3.3-2build1_arm64.deb ...
292s Unpacking r-base-core (4.3.3-2build1) ...
292s Selecting previously unselected package r-cran-brio.
292s Preparing to unpack .../45-r-cran-brio_1.1.4-1_arm64.deb ...
292s Unpacking r-cran-brio (1.1.4-1) ...
292s Selecting previously unselected package r-cran-ps.
292s Preparing to unpack .../46-r-cran-ps_1.7.6-1_arm64.deb ...
292s Unpacking r-cran-ps (1.7.6-1) ...
292s Selecting previously unselected package r-cran-r6.
292s Preparing to unpack .../47-r-cran-r6_2.5.1-1_all.deb ...
292s Unpacking r-cran-r6 (2.5.1-1) ...
292s Selecting previously unselected package r-cran-processx.
292s Preparing to unpack .../48-r-cran-processx_3.8.3-1_arm64.deb ...
292s Unpacking r-cran-processx (3.8.3-1) ...
293s Selecting previously unselected package r-cran-callr.
293s Preparing to unpack .../49-r-cran-callr_3.7.3-2_all.deb ...
293s Unpacking r-cran-callr (3.7.3-2) ...
293s Selecting previously unselected package r-cran-cli.
293s Preparing to unpack .../50-r-cran-cli_3.6.2-1_arm64.deb ...
293s Unpacking r-cran-cli (3.6.2-1) ...
293s Selecting previously unselected package r-cran-crayon.
293s Preparing to unpack .../51-r-cran-crayon_1.5.2-1_all.deb ...
293s Unpacking r-cran-crayon (1.5.2-1) ...
293s Selecting previously unselected package r-cran-desc.
293s Preparing to unpack .../52-r-cran-desc_1.4.3-1_all.deb ...
293s Unpacking r-cran-desc (1.4.3-1) ...
293s Selecting previously unselected package r-cran-diffobj.
293s Preparing to unpack .../53-r-cran-diffobj_0.3.5-1_arm64.deb ...
293s Unpacking r-cran-diffobj (0.3.5-1) ...
293s Selecting previously unselected package r-cran-digest.
293s Preparing to unpack .../54-r-cran-digest_0.6.34-1_arm64.deb ...
293s Unpacking r-cran-digest (0.6.34-1) ...
293s Selecting previously unselected package r-cran-evaluate.
293s Preparing to unpack .../55-r-cran-evaluate_0.23-1_all.deb ...
293s Unpacking r-cran-evaluate (0.23-1) ...
293s Selecting previously unselected package r-cran-fansi.
293s Preparing to unpack .../56-r-cran-fansi_1.0.5-1_arm64.deb ...
293s Unpacking r-cran-fansi (1.0.5-1) ...
293s Selecting previously unselected package r-cran-fs.
293s Preparing to unpack .../57-r-cran-fs_1.6.3+dfsg-1_arm64.deb ...
293s Unpacking r-cran-fs (1.6.3+dfsg-1) ...
293s Selecting previously unselected package r-cran-glue.
293s Preparing to unpack .../58-r-cran-glue_1.7.0-1_arm64.deb ...
293s Unpacking r-cran-glue (1.7.0-1) ...
293s Selecting previously unselected package r-cran-jsonlite.
293s Preparing to unpack .../59-r-cran-jsonlite_1.8.8+dfsg-1_arm64.deb ...
293s Unpacking r-cran-jsonlite (1.8.8+dfsg-1) ...
293s Selecting previously unselected package r-cran-rlang.
293s Preparing to unpack .../60-r-cran-rlang_1.1.3-1_arm64.deb ...
293s Unpacking r-cran-rlang (1.1.3-1) ...
293s Selecting previously unselected package r-cran-lifecycle.
293s Preparing to unpack .../61-r-cran-lifecycle_1.0.4+dfsg-1_all.deb ...
293s Unpacking r-cran-lifecycle (1.0.4+dfsg-1) ...
293s Selecting previously unselected package r-cran-magrittr.
293s Preparing to unpack .../62-r-cran-magrittr_2.0.3-1_arm64.deb ...
293s Unpacking r-cran-magrittr (2.0.3-1) ...
293s Selecting previously unselected package r-cran-utf8.
293s Preparing to unpack .../63-r-cran-utf8_1.2.4-1_arm64.deb ...
293s Unpacking r-cran-utf8 (1.2.4-1) ...
293s Selecting previously unselected package r-cran-vctrs.
293s Preparing to unpack .../64-r-cran-vctrs_0.6.5-1_arm64.deb ...
293s Unpacking r-cran-vctrs (0.6.5-1) ...
293s Selecting previously unselected package r-cran-pillar.
293s Preparing to unpack .../65-r-cran-pillar_1.9.0+dfsg-1_all.deb ...
293s Unpacking r-cran-pillar (1.9.0+dfsg-1) ...
294s Selecting previously unselected package r-cran-pkgbuild.
294s Preparing to unpack .../66-r-cran-pkgbuild_1.4.3-1_all.deb ...
294s Unpacking r-cran-pkgbuild (1.4.3-1) ...
294s Selecting previously unselected package r-cran-pkgconfig.
294s Preparing to unpack .../67-r-cran-pkgconfig_2.0.3-2build1_all.deb ...
294s Unpacking r-cran-pkgconfig (2.0.3-2build1) ...
294s Selecting previously unselected package r-cran-rprojroot.
294s Preparing to unpack .../68-r-cran-rprojroot_2.0.4-1_all.deb ...
294s Unpacking r-cran-rprojroot (2.0.4-1) ...
294s Selecting previously unselected package r-cran-withr.
294s Preparing to unpack .../69-r-cran-withr_2.5.0-1_all.deb ...
294s Unpacking r-cran-withr (2.5.0-1) ...
294s Selecting previously unselected package r-cran-pkgload.
294s Preparing to unpack .../70-r-cran-pkgload_1.3.4-1_all.deb ...
294s Unpacking r-cran-pkgload (1.3.4-1) ...
294s Selecting previously unselected package r-cran-praise.
294s Preparing to unpack .../71-r-cran-praise_1.0.0-4build1_all.deb ...
294s Unpacking r-cran-praise (1.0.0-4build1) ...
294s Selecting previously unselected package r-cran-tibble.
294s Preparing to unpack .../72-r-cran-tibble_3.2.1+dfsg-2_arm64.deb ...
294s Unpacking r-cran-tibble (3.2.1+dfsg-2) ...
294s Selecting previously unselected package r-cran-rematch2.
294s Preparing to unpack .../73-r-cran-rematch2_2.1.2-2build1_all.deb ...
294s Unpacking r-cran-rematch2 (2.1.2-2build1) ...
295s Selecting previously unselected package r-cran-waldo.
295s Preparing to unpack .../74-r-cran-waldo_0.5.2-1build1_all.deb ...
295s Unpacking r-cran-waldo (0.5.2-1build1) ...
295s Selecting previously unselected package r-cran-testthat.
295s Preparing to unpack .../75-r-cran-testthat_3.2.1-1_arm64.deb ...
295s Unpacking r-cran-testthat (3.2.1-1) ...
295s Selecting previously unselected package autopkgtest-satdep.
295s Preparing to unpack .../76-1-autopkgtest-satdep.deb ...
295s Unpacking autopkgtest-satdep (0) ...
295s Setting up libgraphite2-3:arm64 (1.3.14-2) ...
295s Setting up libpixman-1-0:arm64 (0.42.2-1) ...
295s Setting up libsharpyuv0:arm64 (1.3.2-0.4) ...
295s Setting up libpaper1:arm64 (1.1.29) ...
295s
295s Creating config file /etc/papersize with new version
295s Setting up liblerc4:arm64 (4.0.0+ds-4ubuntu1) ...
295s Setting up libxrender1:arm64 (1:0.9.10-1.1) ...
295s Setting up libdatrie1:arm64 (0.2.13-3) ...
295s Setting up libtirpc3t64:arm64 (1.3.4+ds-1.1) ...
295s Setting up libxcb-render0:arm64 (1.15-1) ...
295s Setting up unzip (6.0-28ubuntu3) ...
295s Setting up x11-common (1:7.7+23ubuntu2) ...
296s Setting up libpsl5t64:arm64 (0.21.2-1.1) ...
296s Setting up libdeflate0:arm64 (1.19-1) ...
296s Setting up libxcb-shm0:arm64 (1.15-1) ...
296s Setting up libpaper-utils (1.1.29) ...
296s Setting up libgomp1:arm64 (14-20240303-1ubuntu1) ...
296s Setting up libjbig0:arm64 (2.1-6.1ubuntu1) ...
296s Setting up zip (3.0-13) ...
296s Setting up libblas3:arm64 (3.12.0-3) ...
296s update-alternatives: using /usr/lib/aarch64-linux-gnu/blas/libblas.so.3 to provide /usr/lib/aarch64-linux-gnu/libblas.so.3 (libblas.so.3-aarch64-linux-gnu) in auto mode
296s Setting up fonts-dejavu-mono (2.37-8) ...
296s Setting up libpng16-16t64:arm64 (1.6.43-3) ...
296s Setting up libtcl8.6:arm64 (8.6.13+dfsg-2) ...
296s Setting up fonts-dejavu-core (2.37-8) ...
296s Setting up libjpeg-turbo8:arm64 (2.1.5-2ubuntu1) ...
296s Setting up libgfortran5:arm64 (14-20240303-1ubuntu1) ...
296s Setting up libwebp7:arm64 (1.3.2-0.4) ...
296s Setting up libreadline8t64:arm64 (8.2-3.1) ...
296s Setting up libharfbuzz0b:arm64 (8.3.0-2) ...
296s Setting up libthai-data (0.1.29-2) ...
296s Setting up libxss1:arm64 (1:1.2.3-1build2) ...
296s Setting up xdg-utils (1.1.3-4.1ubuntu3) ...
296s update-alternatives: using /usr/bin/xdg-open to provide /usr/bin/open (open) in auto mode
296s Setting up libjpeg8:arm64 (8c-2ubuntu11) ...
296s Setting up libice6:arm64 (2:1.0.10-1build2) ...
296s Setting up liblapack3:arm64 (3.12.0-3) ...
296s update-alternatives: using /usr/lib/aarch64-linux-gnu/lapack/liblapack.so.3 to provide /usr/lib/aarch64-linux-gnu/liblapack.so.3 (liblapack.so.3-aarch64-linux-gnu) in auto mode
296s Setting up libcurl4t64:arm64 (8.5.0-2ubuntu7) ...
296s Setting up fontconfig-config (2.15.0-1ubuntu1) ...
296s Setting up libthai0:arm64 (0.1.29-2) ...
296s Setting up libtiff6:arm64 (4.5.1+git230720-3ubuntu1) ...
296s Setting up curl (8.5.0-2ubuntu7) ...
296s Setting up libfontconfig1:arm64 (2.15.0-1ubuntu1) ...
296s Setting up libsm6:arm64 (2:1.2.3-1build2) ...
296s Setting up fontconfig (2.15.0-1ubuntu1) ...
299s Regenerating fonts cache... done.
299s Setting up libxft2:arm64 (2.3.6-1) ...
299s Setting up libtk8.6:arm64 (8.6.13-2) ...
299s Setting up libpango-1.0-0:arm64 (1.51.0+ds-4) ...
299s Setting up libcairo2:arm64 (1.18.0-1) ...
299s Setting up libxt6t64:arm64 (1:1.2.1-1.2) ...
299s Setting up libpangoft2-1.0-0:arm64 (1.51.0+ds-4) ...
299s Setting up libpangocairo-1.0-0:arm64 (1.51.0+ds-4) ...
299s Setting up r-base-core (4.3.3-2build1) ...
299s
299s Creating config file /etc/R/Renviron with new version
299s Setting up r-cran-crayon (1.5.2-1) ...
299s Setting up r-cran-ps (1.7.6-1) ...
299s Setting up r-cran-r6 (2.5.1-1) ...
299s Setting up r-cran-magrittr (2.0.3-1) ...
299s Setting up r-cran-fs (1.6.3+dfsg-1) ...
299s Setting up r-cran-brio (1.1.4-1) ...
299s Setting up r-cran-diffobj (0.3.5-1) ...
299s Setting up r-cran-rlang (1.1.3-1) ...
299s Setting up r-cran-withr (2.5.0-1) ...
299s Setting up r-cran-processx (3.8.3-1) ...
299s Setting up r-cran-praise (1.0.0-4build1) ...
299s Setting up r-cran-digest (0.6.34-1) ...
299s Setting up r-cran-evaluate (0.23-1) ...
299s Setting up r-cran-fansi (1.0.5-1) ...
299s Setting up r-cran-glue (1.7.0-1) ...
299s Setting up r-cran-cli (3.6.2-1) ...
299s Setting up r-cran-lifecycle (1.0.4+dfsg-1) ...
299s Setting up r-cran-rprojroot (2.0.4-1) ...
299s Setting up r-cran-jsonlite (1.8.8+dfsg-1) ...
299s Setting up r-cran-pkgconfig (2.0.3-2build1) ...
299s Setting up r-cran-utf8 (1.2.4-1) ...
299s Setting up r-cran-vctrs (0.6.5-1) ...
299s Setting up r-cran-pillar (1.9.0+dfsg-1) ...
299s Setting up r-cran-callr (3.7.3-2) ...
299s Setting up r-cran-desc (1.4.3-1) ...
299s Setting up r-cran-tibble (3.2.1+dfsg-2) ...
299s Setting up r-cran-pkgbuild (1.4.3-1) ...
299s Setting up r-cran-pkgload (1.3.4-1) ...
299s Setting up r-cran-rematch2 (2.1.2-2build1) ...
299s Setting up r-cran-waldo (0.5.2-1build1) ...
299s Setting up r-cran-testthat (3.2.1-1) ...
299s Setting up autopkgtest-satdep (0) ...
299s Processing triggers for man-db (2.12.0-3) ...
300s Processing triggers for install-info (7.1-3) ...
300s Processing triggers for libc-bin (2.39-0ubuntu2) ...
308s (Reading database ... 80173 files and directories currently installed.)
308s Removing autopkgtest-satdep (0) ...
309s autopkgtest [18:19:22]: test run-unit-test: [-----------------------
309s Begin testing test-atomic.R
309s
309s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
309s Copyright (C) 2024 The R Foundation for Statistical Computing
309s Platform: aarch64-unknown-linux-gnu (64-bit)
309s
309s R is free software and comes with ABSOLUTELY NO WARRANTY.
309s You are welcome to redistribute it under certain conditions.
309s Type 'license()' or 'licence()' for distribution details.
309s
309s R is a collaborative project with many contributors.
309s Type 'contributors()' for more information and
309s 'citation()' on how to cite R or R packages in publications.
309s
309s Type 'demo()' for some demos, 'help()' for on-line help, or
309s 'help.start()' for an HTML browser interface to help.
309s Type 'q()' to quit R.
309s
310s > NAME <- "atomic"
310s > source(file.path('_helper', 'init.R'))
310s >
310s > # - Basic Tests
310s >
310s > all.equal(as.character(diffPrint(chr.1, chr.2)), rdsf(100))
310s [1] TRUE
310s > all.equal(
310s + as.character(diffPrint(chr.1, chr.2, mode="unified")), rdsf(200)
310s + )
310s [1] TRUE
310s > all.equal(
310s + as.character(diffPrint(chr.1, chr.2, mode="context")), rdsf(400)
310s + )
310s [1] TRUE
310s > all.equal(
310s + as.character(diffPrint(chr.1[2:3], chr.2[2], mode="sidebyside")), rdsf(500)
310s + )
310s [1] TRUE
310s > # Check that `extra` works
310s >
310s > all.equal(
310s + as.character(
310s + diffPrint(chr.1, chr.2, mode="unified", extra=list(quote=FALSE))
310s + ),
310s + rdsf(600)
310s + )
310s [1] TRUE
310s > # make sure blanks line up correctly
310s >
310s > all.equal(
310s + as.character(diffPrint(chr.3, chr.4)), rdsf(700)
310s + )
311s [1] TRUE
311s > all.equal(
311s + as.character(diffPrint(chr.3, chr.4, mode="unified")), rdsf(800)
311s + )
311s [1] TRUE
311s >
311s > # - Word wrap in atomic
311s >
311s > A <- A.1 <- B <- c(letters, LETTERS)
311s > B[15] <- "Alabama"
311s > A.1[5] <- "Ee"
311s > C <- A[-15]
311s > D <- C
311s > E <- B[-45]
311s >
311s > # Test simple changes to vectors; at 80 columns removing 1:8 corresponds to
311s > # row deletion
311s >
311s > all.equal(as.character(diffPrint(A[-(1:8)], A)), rdsf(900))
311s [1] TRUE
311s > all.equal(as.character(diffPrint(A, A[-(1:8)])), rdsf(1000))
311s [1] TRUE
311s >
311s > all.equal(as.character(diffPrint(A[-1], A[-2])), rdsf(1100))
311s [1] TRUE
311s >
311s > # Replace single word
311s >
311s > all.equal(as.character(diffPrint(A, B)), rdsf(1200))
311s [1] TRUE
311s > all.equal(as.character(diffPrint(B, A)), rdsf(1250))
311s [1] TRUE
311s >
311s > # Make sure turning off word.diff also turns of unwrapping, but that we can
311s > # turn off unwrapping without turning off word diff
311s >
311s > all.equal(
311s + as.character(diffPrint(A, B, word.diff=FALSE)), rdsf(1300)
311s + )
311s [1] TRUE
311s > all.equal(
311s + as.character(diffPrint(A, B, unwrap.atomic=FALSE)), rdsf(1400)
311s + )
311s [1] TRUE
311s > # Different wrap frequency and removed words that span lines
311s >
311s > all.equal(
311s + as.character(diffPrint(A, A.1[-(13:18)])), rdsf(1425)
311s + )
311s [1] TRUE
311s > # Removing words
311s >
311s > all.equal(as.character(diffPrint(C, B)), rdsf(1450))
311s [1] TRUE
311s >
311s > # Two hunks
311s >
311s > all.equal(as.character(diffPrint(D, E)), rdsf(1500))
311s [1] TRUE
311s > all.equal(as.character(diffPrint(E, D)), rdsf(1600))
311s [1] TRUE
311s >
311s > # Vignette example
311s >
311s > state.abb.2 <- state.abb
311s > state.abb.2[38] <- "Pennsylvania"
311s >
311s > all.equal(
311s + as.character(diffPrint(state.abb, state.abb.2)), rdsf(1700)
311s + )
311s [1] TRUE
311s > # Number corner cases
311s >
311s > all.equal(as.character(diffPrint(1:100, 2:101)), rdsf(1800))
312s [1] TRUE
312s > all.equal(as.character(diffPrint(2:101, 1:100)), rdsf(1900))
312s [1] TRUE
312s > all.equal(
312s + as.character(diffPrint(2:101, (1:100)[-9])), rdsf(2000)
312s + )
312s [1] TRUE
312s > all.equal(
312s + as.character(diffPrint((2:101)[-98], (1:100)[-9])), rdsf(2100)
312s + )
312s [1] TRUE
312s > # This is one of those that a better in-hunk align algorithm would benefit
312s >
312s > int.1 <- int.2 <- 1:100
312s > int.2[c(8, 20, 60)] <- 99
312s > int.2 <- c(50:1, int.2)
312s > all.equal(as.character(diffPrint(int.1, int.2)), rdsf(2200))
312s [1] TRUE
312s >
312s > # - with names
312s > rand.chrs <- do.call(paste0, expand.grid(LETTERS, LETTERS))
312s > F <- F1 <- F2 <- (2:105)[-98]
312s > G <- G2 <- G3 <- G4 <- G5 <- (1:100)[-9]
312s > nm.1 <- rand.chrs[seq_along(F)]
312s > nm.2 <- rand.chrs[seq_along(G)]
312s > names(F1) <- names(F2) <- nm.1
312s > names(G3) <- names(G2) <- names(G3) <- names(G4) <- names(G5) <- nm.2
312s > names(G3)[c(5, 25, 60)] <- c("XXXXX", rand.chrs[c(300, 350)])
312s > names(G4)[c(5, 25, 60)] <- names(G5)[c(5, 25, 60)] <-
312s + c("XX", rand.chrs[c(300, 350)])
312s > attr(F2, "blah") <- 1:5
312s > attr(G5, "blah") <- 3:8
312s >
312s > all.equal(as.character(diffPrint(F, G)), rdsf(2300))
312s [1] TRUE
312s > all.equal(as.character(diffPrint(F1, G2)), rdsf(2400))
312s [1] TRUE
312s >
312s > # Challenging case b/c the names wrap with values, and you have to pick one or
312s > # the other to match when the wrap frequencies are different
312s >
312s > all.equal(as.character(diffPrint(F1, G3)), rdsf(2500))
312s [1] TRUE
312s > all.equal(as.character(diffPrint(F1, G4)), rdsf(2520))
312s [1] TRUE
312s >
312s > # Attributes
312s >
312s > all.equal(as.character(diffPrint(F2, G5)), rdsf(2530))
312s [1] TRUE
312s > all.equal(as.character(diffPrint(F1, G5)), rdsf(2540))
312s [1] TRUE
312s >
312s > # - Original tests
312s > set.seed(2)
312s > w1 <- sample(
312s + c(
312s + "carrot", "cat", "cake", "eat", "rabbit", "holes", "the", "a", "pasta",
312s + "boom", "noon", "sky", "hat", "blah", "paris", "dog", "snake"
312s + ), 25, replace=TRUE
312s + )
312s > w4 <- w3 <- w2 <- w1
312s > w2[sample(seq_along(w1), 5)] <- LETTERS[1:5]
312s > w3 <- w1[8:15]
312s > w4 <- c(w1[1:5], toupper(w1[1:5]), w1[6:15], toupper(w1[1:5]))
312s >
312s > all.equal(as.character(diffPrint(w1, w2)), rdsf(2600))
312s [1] TRUE
312s > all.equal(as.character(diffPrint(w1, w3)), rdsf(2700))
312s [1] TRUE
312s > all.equal(as.character(diffPrint(w1, w4)), rdsf(2800))
313s [1] TRUE
313s >
313s > # - Simple word diffs
313s > a <- c("a", "b", "c", "d")
313s > b <- c("b", "c", "d", "e")
313s > all.equal(as.character(diffPrint(a, b)), rdsf(2900))
313s [1] TRUE
313s >
313s > a <- c("x", "a", "b", "c", "d", "z")
313s > b <- c("x", "b", "c", "d", "e", "z")
313s > all.equal(as.character(diffPrint(a, b)), rdsf(3000))
313s [1] TRUE
313s >
313s > a <- c("x", "a", "b", "c", "d", "z")
313s > b <- c("z", "b", "c", "d", "e", "x")
313s > all.equal(as.character(diffPrint(a, b)), rdsf(3100))
313s [1] TRUE
313s >
313s > # - Alignment edge cases
313s > all.equal(
313s + as.character(diffPrint(20:50, 30:62)), rdsf(3200)
313s + )
313s [1] TRUE
313s > # below is off; should be aligning matching context line, part of the problem
313s > # might be that we're doing the realignment without thinking about what the
313s > # other hunk has.
313s > #
313s > # Possible encode each line as hunk#:diff/mix/cont
313s >
313s > # all.equal(
313s > # as.character(diffPrint(20:50, 35:62)), rdsf(3300)
313s > # )
313s >
313s > # another interesting example where the existing algo seems to lead to a
313s > # reasonable outcome
313s >
313s > all.equal(
313s + as.character(diffPrint(c(1:24,35:45), c(1:8, 17:45))), rdsf(3400)
313s + )
313s [1] TRUE
313s >
313s PASS
313s Begin testing test-banner.R
314s
314s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
314s Copyright (C) 2024 The R Foundation for Statistical Computing
314s Platform: aarch64-unknown-linux-gnu (64-bit)
314s
314s R is free software and comes with ABSOLUTELY NO WARRANTY.
314s You are welcome to redistribute it under certain conditions.
314s Type 'license()' or 'licence()' for distribution details.
314s
314s R is a collaborative project with many contributors.
314s Type 'contributors()' for more information and
314s 'citation()' on how to cite R or R packages in publications.
314s
314s Type 'demo()' for some demos, 'help()' for on-line help, or
314s 'help.start()' for an HTML browser interface to help.
314s Type 'q()' to quit R.
314s
314s > NAME <- "banner"
314s > source(file.path('_helper', 'init.R'))
314s >
314s > # - Banner Capture ------------------------------------------------------------
314s >
314s > ref <- as.character(
314s + diffPrint(1 + 2, letters, tar.banner="1 + 2", cur.banner="letters")
314s + )
314s > identical(as.character(diffPrint(1 + 2, letters)), ref)
315s [1] TRUE
315s > invisible(
315s + setMethod(
315s + "diffPrint", c("numeric", "character"),
315s + function(target, current, ...) callNextMethod()
315s + ) )
315s > identical(as.character(diffPrint(1 + 2, letters)), ref)
315s [1] TRUE
315s > isTRUE(
315s + !identical(as.character(diffPrint(1 + 2, LETTERS)), ref)
315s + )
315s [1] TRUE
315s >
315s PASS
315s Begin testing test-capture.R
315s
315s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
315s Copyright (C) 2024 The R Foundation for Statistical Computing
315s Platform: aarch64-unknown-linux-gnu (64-bit)
315s
315s R is free software and comes with ABSOLUTELY NO WARRANTY.
315s You are welcome to redistribute it under certain conditions.
315s Type 'license()' or 'licence()' for distribution details.
315s
315s R is a collaborative project with many contributors.
315s Type 'contributors()' for more information and
315s 'citation()' on how to cite R or R packages in publications.
315s
315s Type 'demo()' for some demos, 'help()' for on-line help, or
315s 'help.start()' for an HTML browser interface to help.
315s Type 'q()' to quit R.
315s
316s > NAME <- "capture"
316s > source(file.path('_helper', 'init.R'))
316s >
316s > # - capture width issues -------------------------------------------------------
316s >
316s > local({
316s + old.opt <- options(width=40L)
316s + on.exit(options(old.opt))
316s + etc <- new("Settings", style=StyleRaw(), text.width=5L) # impossible width
316s + # warn: "Unable to set desired "
316s + res <- diffobj:::capture(letters, etc, function(...) do.call(cat, list(...)))
316s + all.equal(nchar(res), c(40L, 40L, 36L))
316s + })
316s [1] TRUE
316s Warning message:
316s In diffobj:::capture(letters, etc, function(...) do.call(cat, list(...))) :
316s Unable to set desired width 5, (invalid 'width' parameter, allowed 10...10000);proceeding with existing setting.
316s >
316s > # - errors in capture ----------------------------------------------------------
316s >
316s > etc <- new("Settings", style=StyleRaw())
316s > try(diffobj:::capture(stop('boom'), etc, function(...) stop(...))) # boom
316s Error in eval(x, etc@frame) : boom
316s Error in err("Failed attempting to get text representation of object: ", :
316s Failed attempting to get text representation of object: boom
316s > print <- function() NULL
316s > str <- function() NULL
316s > etc@mode <- "auto"
316s > etc@frame <- environment()
316s > try(diffobj:::capt_print(1, 2, etc, function(...) stop(...), list())) # compose
316s Error in match.call(definition, call, expand.dots, envir) :
316s unused argument (x = NULL)
316s Error in err("Unable to compose `print` call") :
316s Unable to compose `print` call
316s > # spec object
316s > try(diffobj:::capt_str(1, 2, etc, function(...) stop(...), list(object=1)))
316s Error in err("You may not specify `object` as part of `extra`") :
316s You may not specify `object` as part of `extra`
316s > try( # attempting to deparse
316s + diffobj:::capt_deparse(
316s + stop('a'), stop('b'), etc, function(...) stop(...), list()
316s + )
316s + )
316s Error in do.call(deparse, c(list(target), extra), quote = TRUE) : a
316s Error in err("Error attempting to deparse object(s)") :
316s Error attempting to deparse object(s)
316s > try( # target
316s + suppressWarnings(
316s + diffobj:::capt_file(
316s + tempfile(), tempfile(), etc, function(...) stop(...), list()
316s + ) )
316s + )
316s Error in file(con, "r") : cannot open the connection
316s Error in err("Unable to read `target` file.") :
316s Unable to read `target` file.
316s > local({
316s + f <- tempfile()
316s + on.exit(unlink(f), add=TRUE)
316s + writeLines(letters, f)
316s + try( # "`current`"
316s + suppressWarnings(
316s + diffobj:::capt_file(f, tempfile(), etc, function(...) stop(...), list())
316s + )
316s + )
316s + try( # "`target`"
316s + suppressWarnings(
316s + diffobj:::capt_csv(
316s + tempfile(), tempfile(), etc, function(...) stop(...), list()
316s + ) )
316s + )
316s + try( # "`current`"
316s + suppressWarnings(
316s + diffobj:::capt_csv(
316s + f, tempfile(), etc, function(...) stop(...), list()
316s + ) )
316s + )
316s + })
316s Error in file(con, "r") : cannot open the connection
316s Error in err("Unable to read `current` file.") :
316s Unable to read `current` file.
316s Error in file(file, "rt") : cannot open the connection
316s Error in err("Unable to read `target` file.") :
316s Unable to read `target` file.
316s Error in file(file, "rt") : cannot open the connection
316s Error in err("Unable to read `current` file.") :
316s Unable to read `current` file.
316s > bad_obj <- structure(list(NULL), class='diffobj_ogewlhgiadfl3')
316s > try( # "Coercion of `target`"
316s + diffobj:::capt_chr(bad_obj, letters, etc, function(...) stop(...), list())
316s + )
316s Error in diffobj:::capt_chr(bad_obj, letters, etc, function(...) stop(...), :
316s Coercion of `target` did not produce character object (list).
316s > try( # "Coercion of `current`"
316s + diffobj:::capt_chr(letters, bad_obj, etc, function(...) stop(...), list())
316s + )
316s Error in diffobj:::capt_chr(letters, bad_obj, etc, function(...) stop(...), :
316s Coercion of `current` did not produce character object (list).
316s >
316s PASS
316s Begin testing test-check.R
316s
316s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
316s Copyright (C) 2024 The R Foundation for Statistical Computing
316s Platform: aarch64-unknown-linux-gnu (64-bit)
316s
316s R is free software and comes with ABSOLUTELY NO WARRANTY.
316s You are welcome to redistribute it under certain conditions.
316s Type 'license()' or 'licence()' for distribution details.
316s
316s R is a collaborative project with many contributors.
317s Type 'contributors()' for more information and
317s 'citation()' on how to cite R or R packages in publications.
317s
317s Type 'demo()' for some demos, 'help()' for on-line help, or
317s 'help.start()' for an HTML browser interface to help.
317s Type 'q()' to quit R.
317s
317s > NAME <- "check"
317s > source(file.path('_helper', 'init.R'))
317s >
317s > # - is.less_flags --------------------------------------------------------------
317s >
317s > isTRUE(diffobj:::is.less_flags("RVXF"))
317s [1] TRUE
317s > isTRUE(diffobj:::is.less_flags("rvxF"))
317s [1] TRUE
317s > identical(diffobj:::is.less_flags(c("rvxF", "RVXF")), FALSE)
317s [1] TRUE
317s > identical(diffobj:::is.less_flags(23), FALSE)
317s [1] TRUE
317s > identical(diffobj:::is.less_flags("rv xF"), FALSE)
317s [1] TRUE
317s >
317s > # - is.int.2L ------------------------------------------------------------------
317s >
317s > isTRUE(diffobj:::is.int.2L(1:2))
317s [1] TRUE
317s > isTRUE(diffobj:::is.int.2L(as.numeric(1:2)))
317s [1] TRUE
317s > identical(diffobj:::is.int.2L(c(1.3, 2.2)), FALSE)
317s [1] TRUE
317s > identical(diffobj:::is.int.2L(1:3), FALSE)
317s [1] TRUE
317s > identical(diffobj:::is.int.2L(c(1, NA)), FALSE)
317s [1] TRUE
317s >
317s > # - arg.funs -------------------------------------------------------------------
317s >
317s > isTRUE(diffobj:::is.one.arg.fun(function(x) NULL))
317s [1] TRUE
317s > isTRUE(diffobj:::is.one.arg.fun(function(x, y=5) NULL))
317s [1] TRUE
317s >
317s > diffobj:::is.one.arg.fun(function(..., x) NULL) # "cannot have `...` as "
317s [1] "cannot have `...` as the first argument"
317s > diffobj:::is.one.arg.fun(NULL) # "is not a fun"
317s [1] "is not a function"
317s > diffobj:::is.one.arg.fun(function() NULL) # "have at least"
317s [1] "does not have at least one arguments"
317s > diffobj:::is.one.arg.fun(function(x, y) NULL) # "cannot have any"
317s [1] "cannot have any non-optional arguments other than first one"
317s >
317s > isTRUE(diffobj:::is.two.arg.fun(function(x, y) NULL))
317s [1] TRUE
317s > isTRUE(diffobj:::is.two.arg.fun(function(x, y=5) NULL))
317s [1] TRUE
317s >
317s > diffobj:::is.two.arg.fun(function(x, ..., y) NULL) # "cannot have `...` as "
317s [1] "cannot have `...` as one of the first two arguments"
317s > diffobj:::is.two.arg.fun(NULL) # "is not a fun"
317s [1] "is not a function"
317s > diffobj:::is.two.arg.fun(function(x) NULL) # "have at least")
317s [1] "does not have at least two arguments"
317s > diffobj:::is.two.arg.fun(function(x, y, z) NULL) # "cannot have any"
317s [1] "cannot have any non-optional arguments other than first two"
317s >
317s > # - valid_object ---------------------------------------------------------------
317s >
317s > s.h <- StyleHtml()
317s > s.h@wrap <- TRUE
317s > try(diffobj:::valid_object(s.h, "style", stop)) #an invalid `StyleHtml` object
317s Error in diffobj:::valid_object(s.h, "style", stop) :
317s Argument `style` is an invalid `StyleHtml` object because: - slot `wrap` must be FALSE for `styleHtml` objects.
317s >
317s > pal <- PaletteOfStyles()
317s > pal["html", "light", "yb"] <- list(s.h)
317s > try(# "`palette.of.styles` is an invalid"
317s + diffChr(
317s + "A", "B", palette.of.styles=pal, style="auto", format="html",
317s + brightness="light", color.mode="yb"
317s + )
317s + )
317s Error in diffChr(target = "A", current = "B", palette.of.styles = pal, :
317s Argument `palette.of.styles` is an invalid `StyleHtml` because it contains and invalid `Style` object: - slot `wrap` must be FALSE for `styleHtml` objects.
317s > # - brightness -----------------------------------------------------------------
317s >
317s > try(diffPrint(1:3, 3:6, brightness=NA)) # "must be character"
317s Error in diffPrint(target = 1:3, current = 3:6, brightness = NA) :
317s Argument `brightness` must be character and not contain NAs
317s > try(diffPrint(1:3, 3:6, brightness="red")) # "may only contain values"
317s Error in diffPrint(target = 1:3, current = 3:6, brightness = "red") :
317s Argument `brightness` may only contain values in `c("neutral", "light", "dark")`
317s > try(diffPrint(1:3, 3:6, brightness=c(raw='light'))) # "one empty name"
317s Error in diffPrint(target = 1:3, current = 3:6, brightness = c(raw = "light")) :
317s Argument `brightness` must include at least one empty name `""` if it has names.
317s > try(diffPrint(1:3, 3:6, brightness=c('light', 'dark'))) # have names
317s Error in diffPrint(target = 1:3, current = 3:6, brightness = c("light", :
317s 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")`.
317s >
317s > # - misc -----------------------------------------------------------------------
317s >
317s > diffobj:::is.one.file.name(1) # "must be character"
317s [1] "must be character(1L) and not NA"
317s > try(diffPrint(1:3, 2:6, extra="hello")) # "must be a list"
317s Error in diffPrint(target = 1:3, current = 2:6, extra = "hello") :
317s Argument `extra` must be a list.
317s > try(diffPrint(1:3, 2:6, context=TRUE)) # "Argument `context` must"
317s Error in diffPrint(target = 1:3, current = 2:6, context = TRUE) :
317s Argument `context` must be integer(1L) and not NA, an object produced by `auto_context`, or "auto".
317s > try(diffPrint(1:3, 2:6, mode=1)) # "must be character"
317s Error in diffPrint(target = 1:3, current = 2:6, mode = 1) :
317s Argument `mode` must be character(1L) and in `c("auto", "unified", "context", "sidebyside")`.
317s > try(diffPrint(1:3, 2:6, tab.stops=-1)) # "strictly positive"
317s Error in diffPrint(target = 1:3, current = 2:6, tab.stops = -1) :
317s Argument `tab.stops` must be integer containing at least one value and with all values strictly positive
317s > try(diffPrint(1:3, 2:6, hunk.limit='hello')) # "integer vector"
317s Error in diffPrint(target = 1:3, current = 2:6, hunk.limit = "hello") :
317s 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.
317s > try(diffPrint(1:3, 2:6, guides='hello')) # "or a function"
317s Error in diffPrint(target = 1:3, current = 2:6, guides = "hello") :
317s Argument `guides` must be TRUE, FALSE, or a function
317s > try(diffPrint(1:3, 2:6, guides=function(x, y, z) NULL))# "cannot have any non"
317s Error in diffPrint(target = 1:3, current = 2:6, guides = function(x, y, :
317s Argument `guides` cannot have any non-optional arguments other than first two
317s > try(diffPrint(1:3, 2:6, trim='hello')) # "TRUE, FALSE, or a function"
317s Error in diffPrint(target = 1:3, current = 2:6, trim = "hello") :
317s Argument `trim` must be TRUE, FALSE, or a function
317s > try(diffPrint(1:3, 2:6, trim=function(x, y, z) NULL)) # "cannot have any non"
317s Error in diffPrint(target = 1:3, current = 2:6, trim = function(x, y, :
317s Argument `trim` cannot have any non-optional arguments other than first two
317s > try(diffPrint(1:3, 2:6, interactive='hello')) # "must be TRUE or"
317s Error in diffPrint(target = 1:3, current = 2:6, interactive = "hello") :
317s Argument `interactive` must be TRUE or FALSE.
317s > try(diffPrint(1:3, 2:6, max.diffs=1:10)) # "must be integer"
317s Error in diffPrint(target = 1:3, current = 2:6, max.diffs = 1:10) :
317s Argument `max.diffs` must be integer(1L) and not NA.
317s > try(diffPrint(1:3, 2:6, tar.banner=1:10)) # "must be atomic"
317s Error in diffPrint(target = 1:3, current = 2:6, tar.banner = 1:10) :
317s Argument `tar.banner` must be atomic and length(1L), NULL, a symbol, or a call
317s > try(diffPrint(1:3, 2:6, style=1:10)) # "must be \"auto\", a"
317s Error in diffPrint(target = 1:3, current = 2:6, style = 1:10) :
317s Argument `style` must be "auto", a `Style` object, or a list.
317s > try(diffPrint(1:3, 2:6, pager=1:10)) # "must be one of"
317s Error in diffPrint(target = 1:3, current = 2:6, pager = 1:10) :
317s Argument `pager` must be one of `c("auto", "off", "on")`, a `Pager` object, or a list.
317s > try(diffPrint(1:3, 2:6, format=1:10)) # "must be character"
317s Error in diffPrint(target = 1:3, current = 2:6, format = 1:10) :
317s Argument `format` must be character(1L) and not NA
317s > try(diffPrint(1:3, 2:6, palette.of.styles=1:10)) # "must be a `PaletteOfStyles`"
317s Error in diffPrint(target = 1:3, current = 2:6, palette.of.styles = 1:10) :
317s Argument `palette.of.styles` must be a `PaletteOfStyles` object.
317s > try(diffChr(letters, LETTERS, context=NA)) # "must be integer"
317s Error in diffChr(target = letters, current = LETTERS, context = NA) :
317s Argument `context` must be integer(1L) and not NA, an object produced by `auto_context`, or "auto".
317s >
317s >
317s >
317s PASS
317s Begin testing test-context.R
318s
318s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
318s Copyright (C) 2024 The R Foundation for Statistical Computing
318s Platform: aarch64-unknown-linux-gnu (64-bit)
318s
318s R is free software and comes with ABSOLUTELY NO WARRANTY.
318s You are welcome to redistribute it under certain conditions.
318s Type 'license()' or 'licence()' for distribution details.
318s
318s R is a collaborative project with many contributors.
318s Type 'contributors()' for more information and
318s 'citation()' on how to cite R or R packages in publications.
318s
318s Type 'demo()' for some demos, 'help()' for on-line help, or
318s 'help.start()' for an HTML browser interface to help.
318s Type 'q()' to quit R.
318s
318s > NAME <- "context"
318s > source(file.path('_helper', 'init.R'))
318s >
318s > # - interesting context values -------------------------------------------------
318s >
318s > all.equal(
318s + as.character(diffChr(chr.9, chr.10, context=0)),
318s + rdsf(100)
318s + )
318s [1] TRUE
318s > all.equal(
318s + as.character(diffChr(chr.9, chr.10, context=-1L)),
318s + rdsf(150)
318s + )
318s [1] TRUE
318s > all.equal(
318s + as.character(diffChr(chr.9, chr.10, context="auto")),
318s + rdsf(200)
318s + )
318s [1] TRUE
318s > all.equal(
318s + as.character(diffChr(chr.9, chr.10, context=0, mode="context")), rdsf(300)
318s + )
319s [1] TRUE
319s > # - with line limit ------------------------------------------------------------
319s >
319s > all.equal(
319s + as.character(diffChr(chr.9, chr.10, context="auto", line.limit=18)),
319s + rdsf(400)
319s + )
319s [1] TRUE
319s > all.equal(
319s + as.character(diffChr(chr.9, chr.10, context="auto", line.limit=25)),
319s + rdsf(500)
319s + )
319s [1] TRUE
319s > # default to min context
319s >
319s > a <- b <- letters
319s > b[c(3, 20)] <- LETTERS[c(3,20)]
319s > all.equal(
319s + capture.output(
319s + show(diffChr(a, b, line.limit=c(20, 10), context='auto', format='raw'))
319s + ),
319s + txtf(100)
319s + )
319s [1] TRUE
319s > # trim hunks in auto-context mode
319s >
319s > a <- b <- letters
319s > b[c(3, 10, 20)] <- LETTERS[c(3,10,20)]
319s > all.equal(
319s + capture.output(show(
319s + diffChr(
319s + a, b, hunk.limit=c(2, 1), context=auto_context(1, 5), line.limit=20,
319s + format='raw'
319s + )
319s + )),
319s + txtf(200)
319s + )
319s [1] TRUE
319s > # - error handling -------------------------------------------------------------
319s >
319s > try(auto_context(min=-1, max=1:3)) # "`min` must be"
319s Error in auto_context(min = -1, max = 1:3) :
319s Argument `min` must be integer(1L) and greater than zero
319s > try(auto_context(min=1, max=1:3)) # "`max` must be"
319s Error in auto_context(min = 1, max = 1:3) :
319s Argument `max` must be integer(1L) and not NA
319s >
319s >
319s PASS
319s Begin testing test-core.R
319s
319s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
319s Copyright (C) 2024 The R Foundation for Statistical Computing
319s Platform: aarch64-unknown-linux-gnu (64-bit)
319s
319s R is free software and comes with ABSOLUTELY NO WARRANTY.
319s You are welcome to redistribute it under certain conditions.
319s Type 'license()' or 'licence()' for distribution details.
319s
319s R is a collaborative project with many contributors.
319s Type 'contributors()' for more information and
319s 'citation()' on how to cite R or R packages in publications.
319s
319s Type 'demo()' for some demos, 'help()' for on-line help, or
319s 'help.start()' for an HTML browser interface to help.
319s Type 'q()' to quit R.
319s
319s > NAME <- "core"
319s > source(file.path('_helper', 'init.R'))
320s >
320s > # The Myers paper strings
320s >
320s > A <- c("a", "b", "c", "a", "b", "b", "a")
320s > B <- c("c", "b", "a", "b", "a", "c")
320s >
320s > # - diff myers simple ----------------------------------------------------------
320s >
320s > identical(
320s + diffobj:::myers_simple(character(), character()),
320s + list(target = integer(0), current = integer(0))
320s + )
320s [1] TRUE
320s > identical(
320s + diffobj:::myers_simple("a", character()),
320s + list(target = NA_integer_, current = integer(0))
320s + )
320s [1] TRUE
320s > identical(
320s + diffobj:::myers_simple(character(), "a"),
320s + list(target = integer(0), current = NA_integer_)
320s + )
320s [1] TRUE
320s > identical(
320s + diffobj:::myers_simple("a", "a"), list(target = 0L, current = 0L)
320s + )
320s [1] TRUE
320s > identical(
320s + diffobj:::myers_simple("a", "b"),
320s + list(target = 1L, current = 1L)
320s + )
320s [1] TRUE
320s > identical(
320s + diffobj:::myers_simple(c("a", "b"), "b"),
320s + list(target = c(NA, 0L), current = 0L)
320s + )
320s [1] TRUE
320s > identical(
320s + diffobj:::myers_simple(c("a", "b"), "a"),
320s + list(target = c(0L, NA), current = 0L)
320s + )
320s [1] TRUE
320s > identical(
320s + diffobj:::myers_simple("a", c("a", "b")),
320s + list(target = 0L, current = c(0L, NA))
320s + )
320s [1] TRUE
320s > identical(
320s + diffobj:::myers_simple("b", c("a", "b")),
320s + list(target = 0L, current = c(NA, 0L))
320s + )
320s [1] TRUE
320s > identical(
320s + diffobj:::myers_simple(c("a", "b"), c("b", "c")),
320s + list(target = c(NA, 0L), current = c(0L, NA))
320s + )
320s [1] TRUE
320s > identical(
320s + diffobj:::myers_simple(c("a", "b", "c", "d"), c("a", "c", "d", "b")),
320s + list(target = c(0L, NA, 0L, 0L), current = c(0L, 0L, 0L, NA))
320s + )
320s [1] TRUE
320s > # Actual Myers sample string
320s > identical(
320s + diffobj:::myers_simple(A, B),
320s + list(target = c(NA, NA, 0L, 0L, 0L, NA, 0L), current = c(0L, NA, 0L, 0L, 0L, NA))
320s + )
320s [1] TRUE
320s > # - diff myers mba -------------------------------------------------------------
320s >
320s > identical(ses(character(), character()), character())
320s [1] TRUE
320s > identical(ses("a", character()), "1d0")
320s [1] TRUE
320s > identical(ses(character(), "a"), "0a1")
320s [1] TRUE
320s > identical(ses("a", "a"), character())
320s [1] TRUE
320s > identical(ses("a", "b"), "1c1")
320s [1] TRUE
320s > identical(ses(c("a", "b"), "b"), "1d0")
320s [1] TRUE
320s > identical(ses(c("a", "b"), "a"), "2d1")
320s [1] TRUE
320s > identical(ses("a", c("a", "b")), "1a2")
320s [1] TRUE
320s > identical(ses("b", c("a", "b")), "0a1")
320s [1] TRUE
320s > identical(ses(c("a", "b"), c("b", "c")), c("1d0", "2a2"))
320s [1] TRUE
320s > identical(
320s + ses(c("a", "b", "c", "d"), c("a", "c", "d", "b")), c("2d1", "4a4")
320s + )
320s [1] TRUE
320s > # Actual Myers sample string
320s > identical(ses(A, B), c("1,2d0", "4d1", "5a3", "7a6"))
320s [1] TRUE
320s > # This used to cause errors due to under-allocated buffer vector
320s > identical(ses(letters[1:10], LETTERS[1:2]), "1,10c1,2")
320s [1] TRUE
320s >
320s > # A little more complex with changes, this was a problem at some point
320s >
320s > A2 <- c("A", "B", "C")
320s > B2 <- c("X", "A", "Y", "C")
320s > identical(ses(A2, B2), c("0a1", "2c3"))
320s [1] TRUE
320s >
320s > # More complicated strings; intended for use with contexts for hunks,
320s > # but making sure the diffs are correct
320s >
320s > A1 <- c("A", "AA", "B", "C", "D", "E", "F", "G", "H")
320s > B1 <- c("A", "B", "X", "W", "D", "DD", "E", "Y", "Z")
320s > C1 <- c("X", "D", "E", "Y", "Z", "H")
320s >
320s > identical(ses(A1, B1), c("2d1", "4c3,4", "5a6", "7,9c8,9"))
320s [1] TRUE
320s > identical(ses(A1, C1), c("1,4c1", "7,8c4,5"))
320s [1] TRUE
320s >
320s > A5 <- c("A", "AA", "B", "C", "D", "E", "F", "G", "H")
320s > B5 <- c("A", "B", "X", "W", "D", "E", "F", "W", "G")
320s > identical(ses(A5, B5), c("2d1", "4c3,4", "7a8", "9d9"))
320s [1] TRUE
320s >
320s > # NAs treated as strings
320s >
320s > identical(ses(c(NA, "a", "b"), c("a", "b", NA)), c("1d0", "3a3"))
320s [1] TRUE
320s >
320s > # Coersion to character
320s >
320s > identical(ses(1:5, 4:6), c("1,3d0", "5a3"))
320s [1] TRUE
320s >
320s > # - print/summary --------------------------------------------------------------
320s > capture.output(
320s + res.1 <- summary(diffobj:::diff_myers(A, B), with.match=TRUE)
320s + )
320s [1] " type string len offset" "1 Delete ab 2 1"
320s [3] "2 Match c 1 3" "3 Delete a 1 4"
320s [5] "4 Match b 1 5" "5 Insert a 1 3"
320s [7] "6 Match ba 2 6" "7 Insert c 1 6"
320s > identical(
320s + res.1,
320s + structure(list(type = structure(c(3L, 1L, 3L, 1L, 2L, 1L, 2L), .Label = c("Match",
320s + "Insert", "Delete"), class = "factor"), string = c("ab", "c",
320s + "a", "b", "a", "ba", "c"), len = c(2L, 1L, 1L, 1L, 1L, 2L, 1L
320s + ), offset = c(1L, 3L, 4L, 5L, 3L, 6L, 6L)), class = "data.frame", row.names = c(NA,
320s + -7L))
320s + )
320s [1] TRUE
320s > capture.output(
320s + res.2 <- summary(diffobj:::diff_myers(A, B), with.match=FALSE)
320s + )
320s [1] " type len offset" "1 Delete 2 1" "2 Match 1 3"
320s [4] "3 Delete 1 4" "4 Match 1 5" "5 Insert 1 3"
320s [7] "6 Match 2 6" "7 Insert 1 6"
320s > identical(
320s + res.2,
320s + 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")
320s + )
320s [1] TRUE
320s > identical(
320s + capture.output(print(diffobj:::diff_myers(A, B))), ses(A, B)
320s + )
320s [1] TRUE
320s > # # - translate
320s > # aa <- c("a", "b", "b", "c", "e")
320s > # bb <- c("x", "y", "c", "f", "e")
320s > # identical(
320s > # diffobj:::diffObjCompact(diffobj:::diff_myers(A, B)),
320s > # list(target = c(NA, NA, 0L, NA, 0L, 0L, 0L), current = c(0L, 0L, NA, 0L, 0L, NA))
320s > # )
320s > # identical(
320s > # diffobj:::diffObjCompact(diffobj:::diff_myers(aa, bb)),
320s > # list(target = c(1L, 2L, NA, 0L, 0L), current = c(1L, 2L, 0L, NA, 0L))
320s > # )
320s > #
320s > # } )
320s >
320s PASS
320s Begin testing test-diffChr.R
320s
320s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
320s Copyright (C) 2024 The R Foundation for Statistical Computing
320s Platform: aarch64-unknown-linux-gnu (64-bit)
320s
320s R is free software and comes with ABSOLUTELY NO WARRANTY.
320s You are welcome to redistribute it under certain conditions.
320s Type 'license()' or 'licence()' for distribution details.
320s
320s R is a collaborative project with many contributors.
320s Type 'contributors()' for more information and
320s 'citation()' on how to cite R or R packages in publications.
320s
320s Type 'demo()' for some demos, 'help()' for on-line help, or
320s 'help.start()' for an HTML browser interface to help.
320s Type 'q()' to quit R.
320s
320s > NAME <- "diffChr"
320s > source(file.path('_helper', 'init.R'))
320s >
320s > # - Corner Cases ---------------------------------------------------------------
320s >
320s > # Corner cases from https://neil.fraser.name/writing/diff/
320s > # Both of these appear handled correctly by the algorithm here
320s > # first one: suboptimal edit script due to two sided approach
320s >
320s > A1 <- c("X", "A", "X", "C", "X", "A", "B", "C")
320s > B1 <- c("A", "B", "C", "Y")
320s > all.equal(as.character(diffChr(A1, B1)), rdsf(100))
320s [1] TRUE
320s >
320s > # second one: failure to find intersection at ends of paths (paths run into
320s > # each other eventually)
320s >
320s > A2 <- c("A", "B", "X", "A", "B")
320s > B2 <- c("A", "Y", "B")
320s > all.equal(as.character(diffChr(A2, B2)), rdsf(200))
320s [1] TRUE
320s >
320s > # Simple corner cases
320s >
320s > all.equal(
320s + as.character(diffChr(character(), character())), rdsf(225)
320s + )
320s [1] TRUE
320s > all.equal(as.character(diffChr("", "")), rdsf(250))
321s [1] TRUE
321s >
321s > # - Larger strings -------------------------------------------------------------
321s >
321s > # diffChr(X[1:2000], X[2001:4000])
321s >
321s > all.equal(as.character(diffChr(chr.7, chr.8)), rdsf(300))
321s [1] TRUE
321s >
321s > # Too slow to run; useful for benchmarking though
321s >
321s > # X1 <- X[1:2e4]
321s > # X2 <- X1[-sample(seq_along(X1), 2e3)]
321s > # X2[sample(seq_along(X2), 4e3)] <- "XXXXXX"
321s > # res <- diffChr(X1, X2)
321s > # res <- diffChr(X[1:10000], X[7500:17500])
321s > # res <- ses(X[1:10000], X[7500:17500])
321s > # res <- diffChr(X[1:25000], X[10001:50000], max.diffs=65000)
321s >
321s > # - Sentences
321s > chr.5 <- c(
321s + "hello there how are you doing",
321s + "humpty dumpty took a big fall",
321s + "lorem ipsum dolor sic est boom",
321s + "a computer once wrote a phrase"
321s + )
321s > chr.6 <- c(
321s + "hello THERE how are you doing",
321s + "and another SENTENCE blah blah",
321s + "humpty dumpty TOOK a big fall",
321s + "a COMPUTER once wrote a phrase"
321s + )
321s > all.equal(as.character(diffChr(chr.5, chr.6)), rdsf(400))
321s [1] TRUE
321s > all.equal(
321s + as.character(diffChr(chr.5, chr.6, mode="unified")), rdsf(500)
321s + )
321s [1] TRUE
321s > all.equal(
321s + as.character(diffChr(chr.5, chr.6, mode="context")), rdsf(600)
321s + )
321s [1] TRUE
321s > # - Whitespace -----------------------------------------------------------------
321s >
321s > all.equal(
321s + as.character(diffChr(c("a", "b", "c"), c("a ", "b", "c"))), rdsf(800)
321s + )
321s [1] TRUE
321s > all.equal(
321s + as.character(
321s + diffChr(c("a", "b", "c"), c("a ", "b", "c"), ignore.white.space=FALSE)
321s + ),
321s + rdsf(900)
321s + )
321s [1] TRUE
321s > # New lines count as new elements
321s > all.equal(
321s + as.character(diffChr("woo\nhoo\nfoo", c("woo", "foo"))), rdsf(1000)
321s + )
321s [1] TRUE
321s > all.equal(
321s + capture.output(diffChr("hello . world", "hello. world", format='raw')),
321s + txtf(100)
321s + )
321s [1] TRUE
321s > # - SGR ------------------------------------------------------------------------
321s >
321s > a <- c("hello \033[31mworld\033[m", "umbrellas", "tomatoes")
321s > b <- c("hello world", "umbrellas", "tomatoes")
321s >
321s > local({
321s + old.opt <- options(diffobj.sgr.supported=TRUE)
321s + on.exit(options(old.opt))
321s + diff <- diffChr(a, b) # warn: 'contained ANSI CSI SGR'
321s + try(diffChr(a, b, strip.sgr=1:3)) # "TRUE, FALSE, or NULL"
321s + try(diffChr(a, b, sgr.supported=1:3)) # "TRUE, FALSE, or NULL"
321s +
321s + c(
321s + all.equal(capture.output(show(diff)), txtf(200)),
321s + all.equal(capture.output(show(diffChr(a, b, strip.sgr=FALSE))), txtf(300)),
321s + all.equal(capture.output(show(diffChr(a, b, format='raw'))), txtf(400))
321s + )
321s + })
321s Error in diffChr(target = a, current = b, strip.sgr = 1:3) :
321s Argument `strip.sgr` must be TRUE, FALSE, or NULL
321s In addition: Warning message:
321s In diffChr(target = a, current = b) :
321s `target` or `current` contained ANSI CSI SGR when rendered; these were stripped. Use `strip.sgr=FALSE` to preserve them in the diffs.
321s Error in diffChr(target = a, current = b, sgr.supported = 1:3) :
321s Argument `sgr.supported` must be TRUE, FALSE, or NULL
321s [1] TRUE TRUE TRUE
321s > # - Alignment ------------------------------------------------------------------
321s >
321s > chr.7 <- c("a b c d e", "F G h i j k", "xxx", "yyy", "k l m n o")
321s > chr.8 <- c("f g h i j k", "hello", "goodbye", "yo", "k l m n o")
321s >
321s > all.equal(as.character(diffChr(chr.7, chr.8)), rdsf(1100))
321s [1] TRUE
321s > all.equal(
321s + as.character(diffChr(chr.7, chr.8, align=4/6)), rdsf(1100) # same as above
321s + )
321s [1] TRUE
321s > # No longer aligns
321s > all.equal(
321s + as.character(diffChr(chr.7, chr.8, align=4.01/6)), rdsf(1200)
321s + )
321s [1] TRUE
321s > all.equal(
321s + as.character(diffChr(chr.7, chr.8, align=AlignThreshold(min.chars=4))),
321s + rdsf(1100) # same as earlier
321s + )
321s [1] TRUE
321s > all.equal(
321s + as.character(diffChr(chr.7, chr.8, align=AlignThreshold(min.chars=5))),
321s + rdsf(1200) # same as above
321s + )
321s [1] TRUE
321s >
321s > ## Normally this would not align, but we allow symbols to count towards
321s > ## alignment
321s > chr.7a <- c("a b c e", "d [ f g")
321s > chr.7b <- "D [ f g"
321s > a1 <- AlignThreshold(threshold=0, min.chars=2, count.alnum.only=FALSE)
321s > all.equal(
321s + as.character(diffChr(chr.7a, chr.7b, align=a1, format='raw')),
321s + structure(
321s + c("< chr.7a > chr.7b ", "@@ 1,2 @@ @@ 1 @@ ",
321s + "< a b c e ~ ", "< d [ f g > D [ f g "), len = 4L)
321s + )
321s [1] TRUE
321s > # corner case where alignment alog exits early because it runs out of B values
321s > # to match A values to.
321s >
321s > b <- c('a b c e', 'x w z f', 'e f g h')
321s > a <- c('z o o o', 'p o o o', 'A b c e')
321s > al <- AlignThreshold(threshold=0, min.chars=0)
321s > all.equal(
321s + capture.output(show(diffChr(b, a, align=al, format='raw'))), txtf(500)
321s + )
321s [1] TRUE
321s > # - NAs ------------------------------------------------------------------------
321s >
321s > all.equal(
321s + as.character(
321s + diffChr(c(NA, letters[1:3]), c(letters[1:3], LETTERS[1:2], NA))
321s + ),
321s + rdsf(1300)
321s + )
321s [1] TRUE
321s > all.equal(
321s + as.character(
321s + diffChr(c(letters[1:3]), c(letters[1:3], LETTERS[1:2], NA))
321s + ),
321s + rdsf(1400)
321s + )
321s [1] TRUE
321s > all.equal(
321s + as.character(
321s + diffChr(c(NA, letters[1:3]), c(letters[1:3], LETTERS[1:2]))
321s + ),
321s + rdsf(1500)
321s + )
321s [1] TRUE
321s > # - Nested dots issue 134, h/t Noam Ross ---------------------------------------
321s >
321s > fn <- function(target, current, ...) {
321s + diffChr(target, current, ...)
321s + }
321s > all.equal(
321s + as.character(fn("a", "b", format = "raw")),
321s + structure(
321s + c(
321s + "< target > current ",
321s + "@@ 1 @@ @@ 1 @@ ",
321s + "< a > b "), len = 3L
321s + )
321s + )
321s [1] TRUE
321s >
321s > # - Newlines in input, issue 135, h/t Flying Sheep -----------------------------
321s >
321s > a <- 'A Time Series:\n[1] 1 2 3 4'
321s > b <- 'A Time Series:\n[1] 9 4 1 4'
321s > all.equal(
321s + c(as.character(diffobj::diffChr(a, b, format = 'raw'))),
321s + c("< a > b ",
321s + "@@ 1,2 @@ @@ 1,2 @@ ",
321s + " A Time Series: A Time Series:",
321s + "< [1] 1 2 3 4 > [1] 9 4 1 4 ")
321s + )
321s [1] TRUE
321s >
321s > # - Attributes causing dispatch in guides, issue 142 ---------------------------
321s >
321s > zlold <- c("0x0000, 0x001F", "0x007F, 0x009F", "0x0300, 0x036F")
321s > zlnew <- structure(
321s + c("0x0000, 0x001F", "0x008F, 0x009F", "0x0300, 0x036F"), .Dim = 3L
321s + )
321s > diffChr(zlold, zlnew) # no warning
321s [33m<[39m [33mzlold[39m [34m>[39m [34mzlnew[39m
321s [36m@@ 1,3 @@ [39m [36m@@ 1,3 @@ [39m
321s [90m[39m0x0000, 0x001F[90m[39m [90m[39m0x0000, 0x001F[90m[39m
321s [33m<[39m [90m[39m[33m0x007F,[39m 0x009F[90m[39m [34m>[39m [90m[39m[34m0x008F,[39m 0x009F[90m[39m
321s [90m[39m0x0300, 0x036F[90m[39m [90m[39m0x0300, 0x036F[90m[39m
321s >
321s > # - do.call, issue 158 ---------------------------------------------------------
321s >
321s > do.call(diffChr, list(1:2, 3:4, format='raw'))
321s < 1:2 > 3:4
321s @@ 1,2 @@ @@ 1,2 @@
321s < 1 > 3
321s < 2 > 4
321s >
321s >
322s PASS
322s Begin testing test-diffDeparse.R
322s
322s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
322s Copyright (C) 2024 The R Foundation for Statistical Computing
322s Platform: aarch64-unknown-linux-gnu (64-bit)
322s
322s R is free software and comes with ABSOLUTELY NO WARRANTY.
322s You are welcome to redistribute it under certain conditions.
322s Type 'license()' or 'licence()' for distribution details.
322s
322s R is a collaborative project with many contributors.
322s Type 'contributors()' for more information and
322s 'citation()' on how to cite R or R packages in publications.
322s
322s Type 'demo()' for some demos, 'help()' for on-line help, or
322s 'help.start()' for an HTML browser interface to help.
322s Type 'q()' to quit R.
322s
322s > NAME <- "diffDeparse"
322s > source(file.path('_helper', 'init.R'))
322s >
322s > # - deparse --------------------------------------------------------------------
322s >
322s > # First one will be done in unified mode since `deparse` disregards
322s > # option(width=), second will be done side by side
322s >
322s > all.equal(as.character(diffDeparse(letters, LETTERS)), rdsf(100))
322s [1] TRUE
322s > all.equal(
322s + as.character(
322s + diffDeparse(letters, LETTERS, extra=list(width.cutoff=20))
322s + ),
322s + rdsf(200)
322s + )
322s [1] TRUE
322s >
322s PASS
322s Begin testing test-diffObj.R
322s
322s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
322s Copyright (C) 2024 The R Foundation for Statistical Computing
322s Platform: aarch64-unknown-linux-gnu (64-bit)
322s
322s R is free software and comes with ABSOLUTELY NO WARRANTY.
322s You are welcome to redistribute it under certain conditions.
322s Type 'license()' or 'licence()' for distribution details.
322s
322s R is a collaborative project with many contributors.
322s Type 'contributors()' for more information and
322s 'citation()' on how to cite R or R packages in publications.
322s
322s Type 'demo()' for some demos, 'help()' for on-line help, or
322s 'help.start()' for an HTML browser interface to help.
322s Type 'q()' to quit R.
322s
322s > NAME <- "diffObj"
322s > source(file.path('_helper', 'init.R'))
322s >
322s > # - simple diffobj -------------------------------------------------------------
322s >
322s > # no diff for print
322s > all.equal(as.character(diffObj(iris.s, iris.c)), rdsf(100))
323s [1] TRUE
323s > # no diff for str
323s > all.equal(
323s + as.character(diffObj(1:100, c(1:99, 200L))), rdsf(200)
323s + )
323s [1] TRUE
323s > # diffs for both and must pick one, first one is str, second is print
323s > all.equal(
323s + as.character(diffObj(mdl1[7], mdl2[7])), rdsf(300)
323s + )
323s [1] TRUE
323s > all.equal(as.character(diffObj(mdl1, mdl2)), rdsf(400))
323s [1] TRUE
323s >
323s > # - fits or doesn't ------------------------------------------------------------
323s >
323s > # Note, the first test used to favor str until we handicapped print
323s > all.equal(
323s + diffObj(matrix(1:20, ncol=2), matrix(2:21, ncol=2), line.limit=5)@capt.mode,
323s + "str"
323s + )
323s [1] TRUE
323s > # test kinda slow, would be better to have one with smaller objects with print
323s > # methods
323s >
323s > all.equal(
323s + diffObj(mdl1, mdl2, line.limit=15, mode='unified')@capt.mode, "print"
323s + )
323s [1] TRUE
323s > all.equal(diffObj(1:1000, 1000:1, line.limit=5)@capt.mode, "str")
323s [1] TRUE
323s >
323s > # - misc -----------------------------------------------------------------------
323s >
323s > try(diffObj(1, 2, extra=list(TRUE))) # "extra"
323s Error in .local(target, current, ...) :
323s Argument `extra` must be empty in `diffObj`.
323s >
323s > # - print error ----------------------------------------------------------------
323s >
323s > x <- structure("hello", class="diffobj_ogewlhgiadfl")
323s > y <- structure("goodbye", class="diffobj_ogewlhgiadfl")
323s > try(diffObj(x, y)) # "Error in calling .diffPrint."
323s Error in print.diffobj_ogewlhgiadfl(structure("goodbye", class = "diffobj_ogewlhgiadfl")) :
323s failure
323s Error in diffObj(target = x, current = y) :
323s Error in calling `diffPrint`: Failed attempting to get text representation of object: failure
323s >
323s > # Random exmaples to think through `diffObj` output
323s >
323s > diffObj(
323s + pairlist("`logical(2L)` should be length 2 (is 3)"),
323s + pairlist("be length 2 (is 3)")
323s + )
324s [33m<[39m [33mpairlist("`logical(2L)` should be l..[39m [34m>[39m [34mpairlist("be length 2 (is 3)")[39m
324s [36m@@ 1,3 @@ [39m [36m@@ 1,3 @@ [39m
324s [90m[39m[[1]][90m[39m [90m[39m[[1]][90m[39m
324s [33m<[39m [90m[1] [39m[33m"`logical(2L)` should be length 2[39m[90m[39m [34m>[39m [90m[1] [39m[34m"be length 2 (is 3)"[39m[90m[39m
324s [33m:[39m [90m[39m[33m (is 3)"[39m[90m[39m [90m~[39m
324s
324s >
324s > diffObj(
324s + pairlist("`matrix(integer(), nrow = 3)` should be matrix (is list)", "`list(character(1L), 1L)[[2]]` should be type \"integer-like\" (is \"character\")"),
324s + pairlist("be class \"matrix\" (is \"list\")", "be type \"integer-like\" (is \"character\") at index [[2]]")
324s + )
324s [33m<[39m [33mpairlist("`matrix(integer(), nrow =..[39m [34m>[39m [34mpairlist("be class \"matrix\" (is \..[39m
324s [36m@@ 1,6 @@ [39m [36m@@ 1,6 @@ [39m
324s [90m[39m[[1]][90m[39m [90m[39m[[1]][90m[39m
324s [33m<[39m [90m[1] [39m[33m"`matrix(integer(), nrow = 3)` sh[39m[90m[39m [34m>[39m [90m[1] [39m[34m"be class \"matrix\"[39m [34m(is[39m [34m\[39m[34m"[39m[34mlist[39m[34m\[39m[34m"[39m[34m[39m[34m[39m[90m[39m
324s [33m:[39m [90m[39m[33mould be matrix (is list)"[39m[90m[39m [34m:[39m [90m[39m[34m[39m[34m[39m[34m[39m[34m[39m[34m[39m[34m[39m[34m[39m[34m)[39m[34m"[39m[90m[39m
324s
324s [90m[39m[[2]][90m[39m [90m[39m[[2]][90m[39m
324s [33m<[39m [90m[1] [39m[33m"`list(character(1L), 1L)[[2]]` s[39m[90m[39m [34m>[39m [90m[1] [39m[34m"be type \"integer-like\"[39m (is \"c[34m[39m[34m[39m[34m[39m[90m[39m
324s [33m:[39m [90m[39m[33mhould be type \"integer-like\"[39m (is \"[90m[39m [34m:[39m [90m[39m[34m[39mharacter\") [34mat[39m [34mindex[39m [34m[[2]][39m"[90m[39m
324s [33m:[39m [90m[39m[33m[39mcharacter\")"[90m[39m [90m~[39m
324s
324s >
324s PASS
324s Begin testing test-diffStr.R
324s
324s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
324s Copyright (C) 2024 The R Foundation for Statistical Computing
324s Platform: aarch64-unknown-linux-gnu (64-bit)
324s
324s R is free software and comes with ABSOLUTELY NO WARRANTY.
324s You are welcome to redistribute it under certain conditions.
324s Type 'license()' or 'licence()' for distribution details.
324s
324s R is a collaborative project with many contributors.
324s Type 'contributors()' for more information and
324s 'citation()' on how to cite R or R packages in publications.
324s
324s Type 'demo()' for some demos, 'help()' for on-line help, or
324s 'help.start()' for an HTML browser interface to help.
324s Type 'q()' to quit R.
324s
324s > NAME <- "diffStr"
324s > source(file.path('_helper', 'init.R'))
324s >
324s > # - lm models ------------------------------------------------------------------
324s >
324s > # formula display changed
324s > if(
324s + R.Version()$major >= 3 && R.Version()$minor >= "3.1" || R.Version()$major > 3
324s + )
324s + all.equal(as.character(diffStr(mdl1, mdl2)), rdsf(100))
324s [1] TRUE
324s >
324s > # Too strict a line limit, can't get under
324s > all.equal(
324s + as.character(diffStr(mdl1[7], mdl2[7], line.limit=10)), rdsf(200)
324s + )
324s [1] TRUE
324s > # Now we can get under
324s > all.equal(
324s + as.character(diffStr(mdl1[7], mdl2[7], line.limit=15)), rdsf(300)
324s + )
324s [1] TRUE
324s >
324s > # - Simple structure -----------------------------------------------------------
324s > #
324s > # Character types
324s >
324s > all.equal(as.character(diffStr(iris.c, iris.s)), rdsf(400))
325s [1] TRUE
325s >
325s > # - Strict width ---------------------------------------------------------------
325s > # formula display changed
325s > if(
325s + R.Version()$major >= 3 && R.Version()$minor >= "3.1" || R.Version()$major > 3
325s + ) {
325s + c(
325s + all.equal(
325s + as.character(
325s + diffStr(mdl1, mdl2, extra=list(strict.width="wrap"), line.limit=30)
325s + ),
325s + rdsf(500)
325s + ),
325s + all.equal(
325s + as.character(
325s + diffStr(mdl1, mdl2, extra=list(strict.width="cut"), line.limit=30)
325s + ),
325s + rdsf(550)
325s + ) )
325s + }
325s [1] TRUE TRUE
325s > # - max.diffs ------------------------------------------------------------------
325s >
325s > invisible(diffStr(iris, mtcars, max.diffs=2)) # warn: "Exceeded diff limit"
325s Warning message:
325s Exceeded diff limit during diff computation (18 vs. 2 allowed); overall diff is likely not optimal
325s >
325s > # - max.level ------------------------------------------------------------------
325s >
325s > all.equal(
325s + as.character(diffStr(mdl1[7], mdl2[7], extra=list(max.level="auto"))),
325s + rdsf(600)
325s + )
325s [1] TRUE
325s > all.equal(
325s + as.character(diffStr(mdl1[7], mdl2[7], extra=list(max.level=2))),
325s + rdsf(700)
325s + )
325s [1] TRUE
325s > # Has a difference, but can't get under; the second is just for reference
325s >
325s > lst.1 <- lst.2 <- lst.3 <- list(a=list(b=list(c=list(d=list(e=list(25))))))
325s > names(lst.2) <- "A"
325s >
325s > all.equal(
325s + as.character(diffStr(lst.1, lst.2, line.limit=2)), rdsf(800)
325s + )
325s [1] TRUE
325s > all.equal(
325s + as.character(diffStr(lst.1, lst.2, line.limit=2)), rdsf(900)
325s + )
325s [1] TRUE
325s > # Test that initial run shows difference, but too big, but next one down
325s > # doesn't so have to increase level
325s >
325s > names(lst.3$a$b$c$d) <- "E"
325s > all.equal(
325s + as.character(diffStr(lst.1, lst.3, line.limit=6)), rdsf(1000)
325s + )
325s [1] TRUE
325s >
325s > # - No visible differences -----------------------------------------------------
325s >
325s > all.equal(
325s + as.character(diffStr(1:100, c(1:99, 101L))), rdsf(1100)
325s + )
326s [1] TRUE
326s >
326s > # - Quoted Objects -------------------------------------------------------------
326s >
326s > all.equal(
326s + as.character(diffStr(quote(zz + 1), quote(zz + 3))),
326s + structure(
326s + 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"
326s + ), len = 3L
326s + ) )
326s [1] TRUE
326s >
326s > all.equal(
326s + as.character(diffStr(quote(x), quote(y))),
326s + 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)
326s + )
326s [1] TRUE
326s >
326s > # - Spaces with punctuation ----------------------------------------------------
326s >
326s > all.equal(
326s + capture.output(show(diffStr(list(a=1), list(a=1, cabera=3), format='raw'))),
326s + txtf(100)
326s + )
326s [1] TRUE
326s >
326s >
326s PASS
326s Begin testing test-file.R
326s
326s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
326s Copyright (C) 2024 The R Foundation for Statistical Computing
326s Platform: aarch64-unknown-linux-gnu (64-bit)
326s
326s R is free software and comes with ABSOLUTELY NO WARRANTY.
326s You are welcome to redistribute it under certain conditions.
326s Type 'license()' or 'licence()' for distribution details.
326s
326s R is a collaborative project with many contributors.
326s Type 'contributors()' for more information and
326s 'citation()' on how to cite R or R packages in publications.
326s
326s Type 'demo()' for some demos, 'help()' for on-line help, or
326s 'help.start()' for an HTML browser interface to help.
326s Type 'q()' to quit R.
326s
326s > NAME <- "diffFile"
326s > source(file.path('_helper', 'init.R'))
326s >
326s > # - Code File ------------------------------------------------------------------
326s >
326s > # # compare two crayon file versions
326s > # # These should eventually just be downloaded and made into diffFile tests
326s >
326s > f.p.1 <- file.path("_helper", "objs", "diffFile", "s.o.3f1f68.R")
326s > f.p.2 <- file.path("_helper", "objs", "diffFile", "s.o.30dbe0.R")
326s >
326s > # url.1 <- "https://raw.githubusercontent.com/gaborcsardi/crayon/3f1f68ab177b82a27e754a58264af801f7194820/R/string_operations.r"
326s > # url.2 <- "https://raw.githubusercontent.com/gaborcsardi/crayon/30dbe0d4d92157350af3cb3aeebd6d9a9cdf5c0e/R/string_operations.r"
326s > # f.1 <- readLines(url.1)
326s > # f.2 <- readLines(url.2)
326s > # writeLines(f.1, f.p.1)
326s > # writeLines(f.2, f.p.2)
326s >
326s > all.equal(as.character(diffFile(f.p.1, f.p.2)), rdsf(100))
326s [1] TRUE
326s >
326s > # - RDS ------------------------------------------------------------------------
326s >
326s > f1 <- tempfile()
326s > f2 <- tempfile()
326s >
326s > mx1 <- mx2 <- matrix(1:9, 3)
326s > mx2[5] <- 99
326s > saveRDS(mx1, f1)
326s > saveRDS(mx2, f2)
326s >
326s > is(diffobj:::get_rds(f1), "matrix")
326s [1] TRUE
326s > is(diffobj:::get_rds(f2), "matrix")
326s [1] TRUE
326s >
326s > ref <- as.character(diffPrint(mx1, mx2))
326s > identical(as.character(diffPrint(mx1, f2, cur.banner="mx2")), ref)
326s [1] TRUE
326s > identical(as.character(diffPrint(f1, mx2, tar.banner="mx1")), ref)
326s [1] TRUE
326s > identical(
326s + as.character(diffPrint(f1, f2, tar.banner="mx1", cur.banner="mx2")), ref
326s + )
326s [1] TRUE
326s > isTRUE(!identical(as.character(diffPrint(mx1, f2, rds=FALSE)), ref))
326s [1] TRUE
326s > unlink(c(f1, f2))
326s >
326s > # - file -----------------------------------------------------------------------
326s >
326s > f1 <- tempfile()
326s > f2 <- tempfile()
326s > letters2 <- letters
326s > letters2[15] <- "HELLO"
326s >
326s > writeLines(letters, f1)
326s > writeLines(letters2, f2)
326s >
326s > identical(
326s + as.character(diffChr(letters, letters2, tar.banner="f1", cur.banner="f2")),
326s + as.character(diffFile(f1, f2))
326s + )
326s [1] TRUE
326s > unlink(c(f1, f2))
326s >
326s > # issue 133 h/t Noam Ross, thanks for the test
326s >
326s > x <- tempfile()
326s > y <- tempfile()
326s > cat("Hello\nthere\n", file = x)
326s > file.copy(x, y)
326s [1] TRUE
326s > identical(
326s + as.character(diffFile(x, y, format = "raw")),
326s + structure(
326s + c("No visible differences between objects.",
326s + "< x > y ",
326s + "@@ 1,2 @@ @@ 1,2 @@ ",
326s + " Hello Hello ",
326s + " there there "), len = 5L)
326s + )
326s [1] TRUE
326s > unlink(c(x, y))
326s >
326s > # - CSV ------------------------------------------------------------------------
326s >
326s > f1 <- tempfile()
326s > f2 <- tempfile()
326s >
326s > iris2 <- iris
326s > iris2$Sepal.Length[25] <- 9.9
326s >
326s > write.csv(iris, f1, row.names=FALSE)
326s > write.csv(iris2, f2, row.names=FALSE)
326s >
326s > identical(
326s + as.character(diffPrint(iris, iris2, tar.banner="f1", cur.banner="f2")),
326s + as.character(diffCsv(f1, f2))
326s + )
327s [1] TRUE
327s > unlink(c(f1, f2))
327s >
327s >
327s PASS
327s Begin testing test-guide.R
327s
327s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
327s Copyright (C) 2024 The R Foundation for Statistical Computing
327s Platform: aarch64-unknown-linux-gnu (64-bit)
327s
327s R is free software and comes with ABSOLUTELY NO WARRANTY.
327s You are welcome to redistribute it under certain conditions.
327s Type 'license()' or 'licence()' for distribution details.
327s
327s R is a collaborative project with many contributors.
327s Type 'contributors()' for more information and
327s 'citation()' on how to cite R or R packages in publications.
327s
327s Type 'demo()' for some demos, 'help()' for on-line help, or
327s 'help.start()' for an HTML browser interface to help.
327s Type 'q()' to quit R.
327s
327s > NAME <- "guides"
327s > source(file.path('_helper', 'init.R'))
327s >
327s > # - detect_2d_guides -----------------------------------------------------------
327s >
327s > 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)")
327s >
327s > all.equal(diffobj:::detect_2d_guides(iris.dply), 4:5)
327s [1] TRUE
327s > # wrapping data table with separator (#96)
327s >
327s > DT.txt <- c(
327s + " V1 V2 V3",
327s + " 1: 0.3201122 0.6907066 0.5004968",
327s + " --- ",
327s + "1000: 0.3547379 0.2836985 0.8121208",
327s + " V4 V5",
327s + " 1: 0.331665 0.6788726",
327s + " --- ",
327s + "1000: 0.553012 0.7789110"
327s + )
327s > all.equal(
327s + diffobj:::detect_2d_guides(DT.txt),
327s + c(1L, 5L)
327s + )
327s [1] TRUE
327s > # Narrow width
327s >
327s > old.opt <- options(width=40)
327s > all.equal(diffobj:::detect_2d_guides(capture.output(iris)), c(1, 152))
327s [1] TRUE
327s > all.equal(
327s + diffobj:::detect_2d_guides(capture.output(USAccDeaths)), c(1, 8, 15)
327s + )
327s [1] TRUE
327s > # Time series
327s > all.equal(diffobj:::detect_2d_guides(capture.output(UKgas)), 1)
327s [1] TRUE
327s > # no row.names (#111)
327s >
327s > df1 <- capture.output(print(data.frame(a=1:3), row.names=FALSE))
327s > no.rn.guide <- diffobj:::detect_2d_guides(df1) # no warning
327s > all.equal(no.rn.guide, 1L)
327s [1] TRUE
327s >
327s > df2 <- capture.output(print(data.frame(x="A"), row.names=FALSE))
327s > no.rn.guide.2 <- diffobj:::detect_2d_guides(df2) # no warning
327s > all.equal(no.rn.guide.2, 1L)
327s [1] TRUE
327s > options(old.opt)
327s >
327s > # - detect_list_guides ---------------------------------------------------------
327s >
327s > l.1 <- list(1, 1:3, matrix(1:3, 1))
327s > l.2 <- list(a=1, list(1:3, b=4, c=list(1, b=2)), matrix(1:3, 1))
327s > c.l.1 <- capture.output(l.1)
327s > c.l.2 <- capture.output(l.2)
327s > # cbind(c.l.2, seq_along(c.l.2) %in% diffobj:::detect_list_guides(c.l.2))
327s > all.equal(diffobj:::detect_list_guides(capture.output(l.1)), c(1, 4, 7))
327s [1] TRUE
327s > all.equal(
327s + diffobj:::detect_list_guides(capture.output(l.2)),
327s + c(1, 5, 8, 12, 15, 20)
327s + )
327s [1] TRUE
327s >
327s > # - detect_matrix_guides -------------------------------------------------------
327s > mx3 <- mx4 <- mx5 <- mx5a <- mx11 <- matrix(
327s + c(
327s + "averylongwordthatcanlahblah", "causeasinglewidecolumnblah",
327s + "matrixtowrapseveraltimes", "inarrowscreen", "onceuponatime",
327s + "agreenduckflew", "overthemountains", "inalongofantelopes",
327s + "ineedthreemore", "entriesactually", "nowonlytwomore", "iwaswrongearlier"
327s + ),
327s + nrow=3, ncol=4
327s + )
327s > mx3.c <- capture.output(mx3)
327s > all.equal(diffobj:::detect_matrix_guides(mx3.c, NULL), c(1, 5))
327s [1] TRUE
327s >
327s > dimnames(mx4) <- list(A=NULL, B=NULL)
327s > mx4.c <- capture.output(mx4)
327s > all.equal(
327s + diffobj:::detect_matrix_guides(mx4.c, dimnames(mx4)), c(1, 2, 6, 7)
327s + )
327s [1] TRUE
327s > attr(mx5, "blah") <- letters[1:10]
327s > mx5.c <- capture.output(mx5)
327s > all.equal(
327s + diffobj:::detect_matrix_guides(mx5.c, dimnames(mx5)), c(1, 5)
327s + )
327s [1] TRUE
327s > # Simple matrices that don't wrap
327s >
327s > mx6 <- mx7 <- mx7.1 <- matrix(1:4, 2)
327s >
327s > mx6.c <- capture.output(mx6)
327s > all.equal(diffobj:::detect_matrix_guides(mx6.c, dimnames(mx6)), 1)
327s [1] TRUE
327s >
327s > dimnames(mx7) <- list(A=letters[1:2], B=LETTERS[25:26])
327s > mx7.c <- capture.output(mx7)
327s > all.equal(diffobj:::detect_matrix_guides(mx7.c, dimnames(mx7)), c(1, 2))
327s [1] TRUE
327s >
327s > dimnames(mx7.1) <- list(letters[1:2], B=LETTERS[25:26])
327s > mx7.1.c <- capture.output(mx7.1)
327s > all.equal(diffobj:::detect_matrix_guides(mx7.1.c, dimnames(mx7.1)), c(1, 2))
327s [1] TRUE
327s >
327s > # Single col matrix
327s >
327s > mx8 <- matrix(1:2, 2)
327s >
327s > mx8.c <- capture.output(mx8)
327s > all.equal(diffobj:::detect_matrix_guides(mx8.c, dimnames(mx8)), 1)
327s [1] TRUE
327s >
327s > # Wrapping matrices with colnames
327s >
327s > mx9 <- mx3
327s > dimnames(mx9) <- list(A=letters[1:3], B=LETTERS[20:23])
327s > mx9.c <- capture.output(mx9)
327s > all.equal(
327s + diffobj:::detect_matrix_guides(mx9.c, dimnames(mx9)), c(1:2, 6:7)
327s + )
327s [1] TRUE
327s >
327s > mx10 <- mx9
327s > attr(mx10, "blah") <- matrix(1:4, 2)
327s > mx10.c <- capture.output(mx10)
327s > all.equal(
327s + diffobj:::detect_matrix_guides(mx10.c, dimnames(mx10)), c(1:2, 6:7)
327s + )
327s [1] TRUE
327s > local({
327s + old.opt <- options(width=30L)
327s + on.exit(options(old.opt))
327s + attr(mx11, "blah") <- letters[1:15]
327s + mx11.c <- capture.output(mx11)
327s +
327s + all.equal(
327s + diffobj:::detect_matrix_guides(mx11.c, dimnames(mx11)), c(1, 5, 9, 13)
327s + )
327s + })
327s [1] TRUE
327s > # - detect_array_guides --------------------------------------------------------
327s >
327s > a.1 <- array(1:6, dim=c(2, 1, 3))
327s > a.2 <- array(1:6, dim=c(2, 1, 3), dimnames=list(NULL, "X", LETTERS[1:3]))
327s > a.3 <- array(
327s + 1:6, dim=c(2, 1, 3),
327s + dimnames=list(rows=NULL, cols="X", LETTERS[1:3])
327s + )
327s > a.4 <- `attr<-`(a.3, "hello", "random attribute")
327s > a.5 <- array(1:36, dim=c(6, 2, 3))
327s > a.6 <- array(1:2, c(2, 1, 1))
327s > c.a.1 <- capture.output(a.1)
327s > c.a.2 <- capture.output(a.2)
327s > c.a.3 <- capture.output(a.3)
327s > c.a.4 <- capture.output(a.4)
327s > c.a.5 <- capture.output(a.5)
327s > c.a.6 <- capture.output(a.6)
327s > # helper funs to vizualize the guide line detection
327s > # viz_dag <- function(capt, obj)
327s > # cbind(
327s > # capt,
327s > # seq_along(capt) %in% diffobj:::detect_array_guides(capt, dimnames(obj))
327s > # )
327s > # viz_dag(c.a.1, a.1)
327s > # viz_dag(c.a.2, a.2)
327s > # viz_dag(c.a.3, a.3)
327s > # viz_dag(c.a.4, a.4)
327s > # viz_dag(c.a.5, a.5)
327s > # viz_dag(c.a.6, a.6)
327s > all.equal(
327s + diffobj:::detect_array_guides(c.a.1, dimnames(a.1)),
327s + c(1L, 2L, 7L, 8L, 13L, 14L)
327s + )
327s [1] TRUE
327s > all.equal(
327s + diffobj:::detect_array_guides(c.a.2, dimnames(a.2)),
327s + c(1L, 2L, 7L, 8L, 13L, 14L)
327s + )
327s [1] TRUE
327s > all.equal(
327s + diffobj:::detect_array_guides(c.a.3, dimnames(a.3)),
327s + c(1L, 2L, 8L, 9L, 15L, 16L)
327s + )
327s [1] TRUE
327s > all.equal(
327s + diffobj:::detect_array_guides(c.a.4, dimnames(a.4)),
327s + c(1L, 2L, 8L, 9L, 15L, 16L)
327s + )
327s [1] TRUE
327s > all.equal(
327s + diffobj:::detect_array_guides(c.a.5, dimnames(a.5)),
327s + c(1L, 2L, 11L, 12L, 21L, 22L)
327s + )
327s [1] TRUE
327s > all.equal(
327s + diffobj:::detect_array_guides(c.a.6, dimnames(a.6)),
327s + c(1L, 2L)
327s + )
327s [1] TRUE
327s > # - detect_s4_guides -----------------------------------------------------------
327s >
327s > setClass("gtest2", slots=c(hello="integer", `good bye`="list"))
327s > setClass("gtest1",
327s + slots=c(
327s + sub.class="gtest2", blah="character", gah="list", sub.class.2="gtest2"
327s + ) )
327s > obj <- new(
327s + "gtest1",
327s + sub.class=new(
327s + "gtest2", hello=1:3, `good bye`=list("a", list(l1=5, l2="wow"))
327s + ),
327s + blah=letters, gah=list(one=1:10, two=LETTERS),
327s + sub.class.2=new(
327s + "gtest2", hello=3:1, `good bye`=list("B", list(l1=5, l2="wow"))
327s + )
327s + )
327s > # note at this point the nested stuff doesn't work, so we're just shooting for
327s > # the simple match
327s >
327s > c.1 <- capture.output(obj)
327s > identical(
327s + diffobj:::detect_s4_guides(c.1, obj),
327s + c(1L, 2L, 21L, 25L, 34L)
327s + )
327s [1] TRUE
327s > # small diff as that has a non-default show method
327s >
327s > diff <- diffChr("a", "b", format='raw')
327s > diff.out <- capture.output(show(diff))
327s > all.equal(
327s + diffobj:::detect_s4_guides(diff.out, diff),
327s + integer()
327s + )
327s [1] TRUE
327s > # - custom guide fun -----------------------------------------------------------
327s >
327s > a <- b <- matrix(1:100)
327s > b[50] <- -99L
327s >
327s > fun1 <- function(x, y) c(1L, 14L, 53L)
327s >
327s > all.equal(as.character(diffPrint(a, b, guides=fun1)), rdsf(100))
327s [1] TRUE
327s > if(getRversion() >= "3.2.2") {
327s + capture.output( # warn: "If you did not specify a `guides`"
327s + trim.err <-
327s + as.character(diffPrint(a, b, guides=function(x, y) stop("boom"))),
327s + type="message"
327s + )
327s + all.equal(trim.err, rdsf(200))
327s + }
327s [1] TRUE
327s Warning message:
327s In apply_guides(current, cur.capt, guide_fun) :
327s `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.
327s > # "must produce an integer vector"
327s > try(diffobj:::apply_guides(1:26, LETTERS, function(x, y) 35L))
327s Error in diffobj:::apply_guides(1:26, LETTERS, function(x, y) 35L) :
327s `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.
327s >
327s > # - errors ---------------------------------------------------------------------
327s >
327s > try(guidesStr(1:26, rep(NA_character_, 26)))# "Cannot compute guides"
327s Error in guidesStr(1:26, rep(NA_character_, 26)) :
327s Cannot compute guides if `obj.as.chr` contains NAs
327s > try(guidesPrint(1:26, rep(NA_character_, 26)))# "Cannot compute guides"
327s Error in guidesPrint(1:26, rep(NA_character_, 26)) :
327s Cannot compute guides if `obj.as.chr` contains NAs
327s >
327s > # - corner cases ---------------------------------------------------------------
327s >
327s > all.equal(
327s + diffobj:::split_by_guides(letters, integer()),
327s + list(structure(letters, idx=seq_along(letters)))
327s + )
327s [1] TRUE
327s > try(guidesStr(1:26, rep(NA_character_, 26))) # "Cannot compute guides"
327s Error in guidesStr(1:26, rep(NA_character_, 26)) :
327s Cannot compute guides if `obj.as.chr` contains NAs
327s > try(guidesPrint(1:26, rep(NA_character_, 26))) # "Cannot compute guides"
327s Error in guidesPrint(1:26, rep(NA_character_, 26)) :
327s Cannot compute guides if `obj.as.chr` contains NAs
327s >
327s > # - issue 117 - 2d guide failure -----------------------------------------------
327s >
327s > # Thanks to Sebastian Meyer (@bastician) for MRE
327s > a <- b <- data.frame(ID = 0, value = 1)
327s > b$value <- 2
327s > a <- a[c(rep(1, 86), 2)]
327s > b <- b[c(rep(1, 86), 2)]
327s > diffPrint(a, b, mode = "unified", format='raw', context=0)
327s < a
327s > b
327s @@ 16 / 16 @@
327s ~ value
327s < 1 1
327s > 1 2
327s >
327s PASS
327s Begin testing test-html.R
327s
327s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
327s Copyright (C) 2024 The R Foundation for Statistical Computing
327s Platform: aarch64-unknown-linux-gnu (64-bit)
327s
327s R is free software and comes with ABSOLUTELY NO WARRANTY.
327s You are welcome to redistribute it under certain conditions.
327s Type 'license()' or 'licence()' for distribution details.
327s
327s R is a collaborative project with many contributors.
327s Type 'contributors()' for more information and
327s 'citation()' on how to cite R or R packages in publications.
327s
327s Type 'demo()' for some demos, 'help()' for on-line help, or
327s 'help.start()' for an HTML browser interface to help.
327s Type 'q()' to quit R.
327s
328s > NAME <- "html"
328s > source(file.path('_helper', 'init.R'))
328s >
328s > # Verify that internal css works
328s >
328s > # - HTML Output Modes ----------------------------------------------------------
328s >
328s > all.equal(
328s + as.character(
328s + diffPrint(
328s + letters[1:3], LETTERS[1:3],
328s + style=StyleHtmlLightYb(html.output="diff.only")
328s + ) ),
328s + rdsf(100)
328s + )
328s [1] TRUE
328s > all.equal(
328s + as.character(
328s + diffPrint(
328s + letters[1:6], LETTERS[1:6],
328s + style=StyleHtmlLightYb(html.output="diff.w.style")
328s + ) ),
328s + rdsf(200)
328s + )
328s [1] TRUE
328s > all.equal(
328s + as.character(
328s + diffPrint(
328s + letters[1:6], LETTERS[1:6],
328s + style=StyleHtmlLightYb(html.output="page")
328s + ) ),
328s + rdsf(300)
328s + )
328s [1] TRUE
328s > all.equal(
328s + as.character(
328s + diffPrint(
328s + letters[1:6], LETTERS[1:6], mode="unified",
328s + style=StyleHtmlLightYb(html.output="page")
328s + ) ),
328s + rdsf(350)
328s + )
328s [1] TRUE
328s > # - Sub CSS --------------------------------------------------------------------
328s >
328s > # Mess up the CSS to test that we can change CSS file
328s >
328s > local({
328s + f <- tempfile()
328s + on.exit(unlink(f))
328s + cat("div.row {background-color: red;}\n", file=f)
328s + all.equal(
328s + as.character(
328s + diffPrint(
328s + letters, LETTERS,
328s + style=StyleHtmlLightYb(css=f, html.output="diff.w.style")
328s + )
328s + ),
328s + rdsf(400)
328s + )
328s + })
328s [1] TRUE
328s > # - Tag funs -------------------------------------------------------------------
328s >
328s > div_a <- div_f("A", c(color="red"))
328s > all.equal(
328s + div_a(c("a", "b")),
328s + c(
328s + "
a
",
328s + "b
"
328s + )
328s + )
328s [1] TRUE
328s > span_a <- span_f()
328s > all.equal(span_a(c("a", "b")), c("a", "b"))
328s [1] TRUE
328s >
328s > try(div_a(TRUE)) # "must be character"
328s Error in div_a(TRUE) : Argument `x` must be character.
328s > all.equal(div_a(character()),character())
328s [1] TRUE
328s >
328s > # - nchar ----------------------------------------------------------------------
328s >
328s > all.equal(nchar_html("25"), 2)
328s [1] TRUE
328s > all.equal(nchar_html("25 "), 3)
328s [1] TRUE
328s >
328s > # - cont_f ---------------------------------------------------------------------
328s >
328s > try(cont_f("hello")(1:3)) # "must be character"
328s Error in cont_f("hello")(1:3) : Argument `x` must be character.
328s >
328s PASS
328s Begin testing test-limit.R
328s
328s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
328s Copyright (C) 2024 The R Foundation for Statistical Computing
328s Platform: aarch64-unknown-linux-gnu (64-bit)
328s
328s R is free software and comes with ABSOLUTELY NO WARRANTY.
328s You are welcome to redistribute it under certain conditions.
328s Type 'license()' or 'licence()' for distribution details.
328s
328s R is a collaborative project with many contributors.
328s Type 'contributors()' for more information and
328s 'citation()' on how to cite R or R packages in publications.
328s
328s Type 'demo()' for some demos, 'help()' for on-line help, or
328s 'help.start()' for an HTML browser interface to help.
328s Type 'q()' to quit R.
328s
328s > NAME <- "limit"
328s > source(file.path('_helper', 'init.R'))
328s >
328s > # - Simple limit ---------------------------------------------------------------
328s >
328s > A <- B <- letters[1:5]
328s > B[2] <- "B"
328s > B[6] <- "F"
328s > # diffChr(A, B)
328s > all.equal(as.character(diffChr(A, B, line.limit=2)), rdsf(100))
329s [1] TRUE
329s > all.equal(as.character(diffChr(A, B, line.limit=3)), rdsf(200))
329s [1] TRUE
329s >
329s > # - More Extensive Limits ------------------------------------------------------
329s >
329s > Puromycin2 <- Puromycin
329s > set.seed(1)
329s > Puromycin2$conc[c(8, 15:19, 22)] <- round(runif(7), 2)
329s > Puromycin2$state[17] <- "treated"
329s >
329s > all.equal(
329s + as.character(
329s + diffPrint(Puromycin, Puromycin2, line.limit=15, mode="sidebyside")
329s + ),
329s + rdsf(300)
329s + )
329s [1] TRUE
329s >
329s > # # Not working right
329s > # diffPrint(Puromycin, Puromycin2, line.limit=15, mode="context")
329s > all.equal(
329s + as.character(
329s + diffPrint(Puromycin, Puromycin2, line.limit=15, mode="unified")
329s + ),
329s + rdsf(500)
329s + )
329s [1] TRUE
329s >
329s > all.equal(
329s + as.character(
329s + diffPrint(Puromycin, Puromycin2, line.limit=5, mode="sidebyside")
329s + ),
329s + rdsf(600)
329s + )
329s [1] TRUE
329s > all.equal(
329s + as.character(
329s + diffPrint(Puromycin, Puromycin2, line.limit=5, mode="context")
329s + ),
329s + rdsf(700)
329s + )
329s [1] TRUE
329s > all.equal(
329s + as.character(
329s + diffPrint(Puromycin, Puromycin2, line.limit=5, mode="unified")
329s + ),
329s + rdsf(800)
329s + )
329s [1] TRUE
329s >
329s > Puromycin3 <- Puromycin2
329s > names(Puromycin3)[3L] <- "blargh"
329s > all.equal(
329s + as.character(
329s + diffPrint(Puromycin, Puromycin3, line.limit=7, mode="sidebyside")
329s + ),
329s + rdsf(900)
329s + )
329s [1] TRUE
329s > all.equal(
329s + as.character(
329s + diffPrint(Puromycin, Puromycin3, line.limit=6, mode="context")
329s + ),
329s + rdsf(1000)
329s + )
329s [1] TRUE
329s > # - Dual limit values ----------------------------------------------------------
329s >
329s > A <- letters[1:10]
329s > B <- LETTERS[1:10]
329s > all.equal(
329s + as.character(diffChr(A, B, line.limit=c(10, 3))), rdsf(1100)
329s + )
329s [1] TRUE
329s > all.equal(
329s + as.character(diffChr(A, B, line.limit=c(13, 3))), rdsf(1200)
329s + )
329s [1] TRUE
329s > try(diffChr(A, B, line.limit=c(3, 13))) # "larger than or"
329s Error in diffChr(target = A, current = B, line.limit = c(3, 13)) :
329s 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`
329s >
329s > # - Cause errors ---------------------------------------------------------------
329s >
329s > try(diffChr(letters, LETTERS, line.limit=1:3)) # "vector of length"
329s Error in diffChr(target = letters, current = LETTERS, line.limit = 1:3) :
329s 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`
329s >
329s > # - Vanishing header -----------------------------------------------------------
329s >
329s > # issue 64
329s > all.equal(
329s + as.character(
329s + diffChr(
329s + letters, letters[-13], context=auto_context(0, 10), line.limit=1L,
329s + pager="off"
329s + ) ),
329s + rdsf(1300)
329s + )
329s [1] TRUE
329s >
329s >
329s PASS
329s Begin testing test-methods.R
329s
329s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
329s Copyright (C) 2024 The R Foundation for Statistical Computing
329s Platform: aarch64-unknown-linux-gnu (64-bit)
329s
329s R is free software and comes with ABSOLUTELY NO WARRANTY.
329s You are welcome to redistribute it under certain conditions.
329s Type 'license()' or 'licence()' for distribution details.
329s
329s R is a collaborative project with many contributors.
329s Type 'contributors()' for more information and
329s 'citation()' on how to cite R or R packages in publications.
329s
329s Type 'demo()' for some demos, 'help()' for on-line help, or
329s 'help.start()' for an HTML browser interface to help.
329s Type 'q()' to quit R.
329s
329s > NAME <- "methods"
329s > source(file.path('_helper', 'init.R'))
329s >
329s > # try implementing methods that change default behavior outside of package
329s >
329s > # - Force unified --------------------------------------------------------------
329s >
329s > par.env <- new.env()
329s > local(
329s + envir=par.env, {
329s + suppressWarnings(
329s + setClass(
329s + "testdiffobj", slots=c(a="integer"), where=par.env
329s + ) )
329s + # First check that we do actually output in side by side mode
329s +
329s + print(
329s + all.equal(
329s + as.character(diffObj(new("testdiffobj", a=1L), new("testdiffobj", a=2L))),
329s + rdsf(100)
329s + ) )
329s + # Now verify that with our new method, we get unified
329s +
329s + setMethod("diffObj", c("testdiffobj", "testdiffobj"),
329s + function(target, current, ...) {
329s + dots <- match.call(expand.dots=FALSE)[["..."]]
329s + if("mode" %in% names(dots))
329s + callNextMethod()
329s + else
329s + callNextMethod(target=target, current=current, ..., mode="unified")
329s + },
329s + where=par.env
329s + )
329s + on.exit(
329s + removeMethod("diffObj", c("testdiffobj", "testdiffobj"), where=par.env)
329s + )
329s + print(
329s + all.equal(
329s + as.character(diffObj(new("testdiffobj", a=1L), new("testdiffobj", a=2L))),
329s + rdsf(200)
329s + ) )
329s + # Make sure we can still get side by side?
329s + print(
329s + all.equal(
329s + as.character(
329s + diffObj(
329s + new("testdiffobj", a=1L), new("testdiffobj", a=2L), mode="sidebyside"
329s + ) ),
329s + rdsf(100)
329s + ) )
329s + try( #"Argument `mode` must be"
329s + diffObj(new("testdiffobj", a=1L), new("testdiffobj", a=2L), mode="hello")
329s + )
329s + })
330s [1] TRUE
330s [1] TRUE
330s [1] TRUE
330s Error in diffObj(target = new("testdiffobj", a = 1L), current = new("testdiffobj", :
330s Error in calling `diffStr`: Argument `mode` must be character(1L) and in `c("auto", "unified", "context", "sidebyside")`.
330s >
330s PASS
330s Begin testing test-misc.R
330s
330s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
330s Copyright (C) 2024 The R Foundation for Statistical Computing
330s Platform: aarch64-unknown-linux-gnu (64-bit)
330s
330s R is free software and comes with ABSOLUTELY NO WARRANTY.
330s You are welcome to redistribute it under certain conditions.
330s Type 'license()' or 'licence()' for distribution details.
330s
330s R is a collaborative project with many contributors.
330s Type 'contributors()' for more information and
330s 'citation()' on how to cite R or R packages in publications.
330s
330s Type 'demo()' for some demos, 'help()' for on-line help, or
330s 'help.start()' for an HTML browser interface to help.
330s Type 'q()' to quit R.
330s
330s > NAME <- "misc"
330s > source(file.path('_helper', 'init.R'))
330s >
330s > # - trim_str -------------------------------------------------------------------
330s >
330s > a <- structure("hello", class="A", xx="B")
330s > b <- structure(1:10, yy=a)
330s > long.string <- "I'm a string long enough to force wrapping under most cases so that I may be useful for tests andiamareallylongwordtoseehowwrappingbreakslongwordsthatexceed"
330s > obj <- list(
330s + a=a, b=b, c=1:50,
330s + d=long.string,
330s + e=list(1, structure(2, zz=list(a=1, b=list("a", ls=long.string))), e=letters)
330s + )
330s > # conditional because of issue113
330s > str.txt <- capture.output(str(obj))
330s > str.txt.w <- capture.output(str(obj, width=30L, strict.width="wrap"))
330s >
330s > if(
330s + getRversion() >= '3.5.0' && as.numeric(R.Version()[['svn rev']]) >= 73780
330s + ) {
330s + c(
330s + all.equal(
330s + diffobj:::str_levels(str.txt, wrap=FALSE),
330s + c(0L, 1L, 2L, 1L, 2L, 3L, 1L, 1L, 1L, 2L, 2L, 3L, 4L, 4L, 5L, 5L, 2L)
330s + ),
330s + all.equal(
330s + diffobj:::str_levels(str.txt.w, wrap=TRUE),
330s + c(0L, 1L, 2L, 1L, 1L, 2L, 2L, 3L, 1L, 1L, 1L, 1L, 1L, 1L, 1L,
330s + 1L, 1L, 2L, 2L, 3L, 3L, 4L, 4L, 5L, 5L, 5L, 5L, 5L, 5L, 5L, 5L,
330s + 2L, 2L
330s + )
330s + ) )
330s + } else {
330s + c(
330s + all.equal(
330s + diffobj:::str_levels(str.txt, wrap=FALSE),
330s + c(0L, 1L, 3L, 1L, 2L, 4L, 1L, 1L, 1L, 2L, 2L, 3L, 4L, 4L, 5L, 5L, 2L)
330s + ),
330s + all.equal(
330s + diffobj:::str_levels(str.txt.w, wrap=TRUE),
330s + 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)
330s + ) )
330s + }
330s [1] TRUE TRUE
330s > # cat(
330s > # paste(
330s > # format(substr(str.txt.w, 1, 20)), diffobj:::str_levels(str.txt.w, TRUE),
330s > # sep=": "
330s > # ),
330s > # sep="\n"
330s > # )
330s >
330s > # - rle_sub --------------------------------------------------------------------
330s >
330s > x <- c(1, 1, 1, 2, 2, 1, 1, 3, 3, 4, 4, 4, 5, 2, 2)
330s > r <- rle(x)
330s > all.equal(diffobj:::rle_sub(r, r$values == 1L), list(1:3, 6:7))
330s [1] TRUE
330s > all.equal(diffobj:::rle_sub(r, r$values == 2L), list(4:5, 14:15))
330s [1] TRUE
330s > isTRUE(all(x[unlist(diffobj:::rle_sub(r, r$values == 1L))] == 1))
330s [1] TRUE
330s > isTRUE(all(x[unlist(diffobj:::rle_sub(r, r$values == 2L))] == 2))
330s [1] TRUE
330s > isTRUE(all(x[unlist(diffobj:::rle_sub(r, r$values == 3L))] == 3))
330s [1] TRUE
330s >
330s > # - call funs ------------------------------------------------------------------
330s >
330s > # Failure case; assumes no S4 dispatch in testthat
330s > calls <- list(quote(a()), quote(b()), quote(notafunctionblah()))
330s > all.equal(diffobj:::which_top(calls), length(calls))
330s [1] TRUE
330s > diffobj:::extract_call(calls, new.env()) # warn: "Unable to find")
330s $call
330s NULL
330s
330s $tar
330s NULL
330s
330s $cur
330s NULL
330s
330s Warning message:
330s In get_fun(found.call[[1L]], env = par.env) :
330s Unable to find function `notafunctionblah` to match call with.
330s >
330s > # missing param works
330s >
330s > calls2 <- pairlist(
330s + quote(diffChr("a")), quote(diffChr("a")), quote(.local(target, current, ...))
330s + )
330s > all.equal(
330s + diffobj:::extract_call(calls2, new.env()),
330s + list(call = quote(diffChr(target = "a", NULL)), tar = "a", cur = NULL)
330s + )
330s [1] TRUE
330s > # fallback parent frame; can't think of a good way to actually cause this to
330s > # happen
330s >
330s > # all.equal(diffobj:::par_frame(), .GlobalEnv)
330s >
330s > # - lines ----------------------------------------------------------------------
330s >
330s > old.val <- Sys.getenv("LINES", unset=NA)
330s > Sys.setenv(LINES="25")
330s > all.equal(console_lines(), 25L)
330s [1] TRUE
330s > Sys.setenv(LINES="-25")
330s > all.equal(console_lines(), 48L)
330s [1] TRUE
330s > Sys.unsetenv("LINES")
330s > all.equal(console_lines(), 48L)
330s [1] TRUE
330s >
330s > # - get_funs -------------------------------------------------------------------
330s >
330s > identical(
330s + diffobj:::get_fun(quote(diffobj::diffPrint), .BaseNamespaceEnv),
330s + diffobj::diffPrint
330s + )
330s [1] TRUE
330s > identical(
330s + diffobj:::get_fun(quote(diffobj:::diffPrint), .BaseNamespaceEnv),
330s + diffobj::diffPrint
330s + )
330s [1] TRUE
330s > identical(
330s + diffobj:::get_fun(quote(diffPrint), getNamespace("diffobj")),
330s + diffobj::diffPrint
330s + )
330s [1] TRUE
330s > gf <- diffobj:::get_fun(quote(notAFunction), getNamespace("diffobj")) # warn
330s Warning message:
330s In diffobj:::get_fun(quote(notAFunction), getNamespace("diffobj")) :
330s Unable to find function `notAFunction` to match call with.
330s >
330s > identical(gf, NULL)
330s [1] TRUE
330s >
330s > # - trimws2 --------------------------------------------------------------------
330s >
330s > all.equal(diffobj:::trimws2("hello world"), "hello world")
330s [1] TRUE
330s > all.equal(diffobj:::trimws2(" hello world"), "hello world")
330s [1] TRUE
330s > all.equal(diffobj:::trimws2(" hello world "), "hello world")
330s [1] TRUE
330s > all.equal(diffobj:::trimws2(" hello world ", 'left'), "hello world ")
330s [1] TRUE
330s > all.equal(diffobj:::trimws2(" hello world ", 'right'), " hello world")
330s [1] TRUE
330s >
330s > try(diffobj:::trimws2(" hello world ", 'banana')) # "is wrong"
330s Error in diffobj:::trimws2(" hello world ", "banana") :
330s Argument which is wrong
330s >
330s > # - string ---------------------------------------------------------------------
330s >
330s > try(diffobj:::substr2("hello world", 1, 1:2)) # "same length"
330s Error in diffobj:::substr2("hello world", 1, 1:2) :
330s `start` and `stop` must be length 1 or the same length as `x`.
330s >
330s > # - Gutters --------------------------------------------------------------------
330s >
330s > etc <- new("Settings")
330s > etc@style <- StyleRaw()
330s > etc@style@funs@gutter <- function(x) stop("bad gutters")
330s > try(diffobj:::gutter_dat(etc)) # "Failed attempting to apply gutter."
330s Error in funs@gutter(paste0(gutt.dat.format, funs@gutter.pad(text@gutter.pad))) :
330s bad gutters
330s Error in diffobj:::gutter_dat(etc) :
330s Failed attempting to apply gutter formatting functions; if you did not customize them, contact maintainer. See `?StyleFuns`.
330s >
330s > # - Finalizer error handling ---------------------------------------------------
330s >
330s > try(finalizeHtml(letters, NULL)) # "must be character"
330s Error in .local(x, ...) : Argument `x.chr` must be character
330s > try(finalizeHtml(letters, letters, letters)) # "must be character\\(1L"
330s Error in .local(x, ...) : Argument `js` must be character(1L) and not NA.
330s >
330s > # - c.factor -------------------------------------------------------------------
330s >
330s > all.equal(diffobj:::c.factor(), factor(character()))
330s [1] TRUE
330s >
330s > # - strip_hz -------------------------------------------------------------------
330s >
330s > # Can't trigger this directly because wrapper doesn't let this case through
330s > diffobj:::strip_hz_c_int(character(), 8L, TRUE)
330s character(0)
330s >
330s >
330s >
331s PASS
331s Begin testing test-pager.R
331s
331s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
331s Copyright (C) 2024 The R Foundation for Statistical Computing
331s Platform: aarch64-unknown-linux-gnu (64-bit)
331s
331s R is free software and comes with ABSOLUTELY NO WARRANTY.
331s You are welcome to redistribute it under certain conditions.
331s Type 'license()' or 'licence()' for distribution details.
331s
331s R is a collaborative project with many contributors.
331s Type 'contributors()' for more information and
331s 'citation()' on how to cite R or R packages in publications.
331s
331s Type 'demo()' for some demos, 'help()' for on-line help, or
331s 'help.start()' for an HTML browser interface to help.
331s Type 'q()' to quit R.
331s
331s > NAME <- "pager"
331s > source(file.path('_helper', 'init.R'))
331s > source(file.path('_helper', 'tools.R'))
331s >
331s > # void pager, doesn't do anything, just to test side effect of writing to file
331s >
331s > void <- function(x) NULL
331s >
331s > # - Specifying pager -----------------------------------------------------------
331s >
331s > style <- gdo("diffobj.style")
331s > if(is.null(style)) style <- StyleAnsi8NeutralYb()
331s > style@pager@file.ext <- "xyz" # make pager identifiable
331s > all.equal(
331s + diffChr(
331s + letters, LETTERS, style=style, pager="auto", interactive=TRUE
331s + )@etc@style@pager@file.ext,
331s + "xyz"
331s + )
331s [1] TRUE
331s > all.equal(
331s + diffChr(
331s + letters, LETTERS, style=style, pager="off", interactive=TRUE
331s + )@etc@style@pager,
331s + PagerOff()
331s + )
331s [1] TRUE
331s > identical(
331s + diffChr(
331s + letters, LETTERS, style=style, pager="auto", interactive=FALSE
331s + )@etc@style@pager,
331s + PagerOff()
331s + )
331s [1] TRUE
331s >
331s > # - System Pagers --------------------------------------------------------------
331s >
331s > less.orig <- Sys.getenv("LESS")
331s > pager_mock <- function(...) {
331s + warning(Sys.getenv("LESS"))
331s + 42
331s + }
331s > is(PagerSystem(), "PagerSystem")
331s [1] TRUE
331s > is(
331s + pg.less <- PagerSystemLess(pager=pager_mock, flags="VWF"),
331s + "PagerSystemLess"
331s + )
331s [1] TRUE
331s > res <- pg.less@pager() # warning: "VWF$"
331s Warning message:
331s In pager.old(x) : -VWF
331s > all.equal(res, 42)
331s [1] TRUE
331s > all.equal(less.orig, Sys.getenv("LESS"))
331s [1] TRUE
331s > all.equal(PagerSystemLess(pager=pager_mock)@flags, "R")
331s [1] TRUE
331s >
331s > try(PagerSystemLess(pager=pager_mock, flags=letters))
331s Error in initialize(value, ...) :
331s Argument `flags` must be character(1L) and not NA
331s >
331s > # - use_pager ------------------------------------------------------------------
331s >
331s > local({
331s + suppressMessages(mock(diffobj:::console_lines, 10L))
331s + on.exit(suppressMessages(untrace(diffobj:::console_lines)))
331s + c(
331s + isTRUE(diffobj:::use_pager(PagerSystem(threshold=0L), 1L)),
331s + identical(diffobj:::use_pager(PagerSystem(threshold=50L), 25L), FALSE),
331s + isTRUE(diffobj:::use_pager(PagerSystem(threshold=-1L), 25L))
331s + )
331s + })
331s [1] TRUE TRUE TRUE
331s >
331s > # - Setting LESS var -----------------------------------------------------------
331s >
331s > local({
331s + less.orig <- Sys.getenv("LESS", unset=NA)
331s + old.opt <- options(crayon.enabled=FALSE) # problems with crayon and LESS
331s + on.exit({
331s + diffobj:::reset_less_var(less.orig) # should be tested..., but super simple
331s + options(old.opt)
331s + })
331s +
331s + # Here we change the LESS variable even though we're mocking getenv
331s +
331s + Sys.unsetenv("LESS")
331s + a0 <- isTRUE(is.na(diffobj:::set_less_var("XF")))
331s + a <- all.equal(Sys.getenv("LESS"), "-XF")
331s + Sys.setenv(LESS="-X -F")
331s + b <- all.equal(diffobj:::set_less_var("VP"), "-X -F")
331s + c <- all.equal(Sys.getenv("LESS"), "-X -FVP")
331s + diffobj:::reset_less_var("-XF")
331s + d <- all.equal(Sys.getenv("LESS"), "-XF")
331s + diffobj:::reset_less_var(NA_character_)
331s + e <- all.equal(Sys.getenv("LESS"), "")
331s + Sys.setenv(LESS="-XF")
331s + f <- all.equal(diffobj:::set_less_var("V"), "-XF")
331s + g <- all.equal(Sys.getenv("LESS"), "-XFV")
331s + c(a0, a, b, c, d, e, f, g)
331s + })
331s [1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE
331s >
331s > # - viewer vs browser ----------------------------------------------------------
331s >
331s > local({
331s + viewer <- function(x) "viewer"
331s + old.external <- options(viewer=viewer, browser=function(url) "browser")
331s + on.exit(options(old.external))
331s + suppressMessages(mock(diffobj::make_blocking, quote(fun)))
331s + on.exit(suppressMessages(untrace(diffobj::make_blocking)), add=TRUE)
331s + pager <- PagerBrowser()
331s + a <- all.equal(pager@pager("blah"), "viewer")
331s + options(viewer=NULL)
331s + b <- all.equal(pager@pager("blah"), "browser")
331s + options(viewer=function(x) stop("viewer error"))
331s + res <- pager@pager("blah") # warning: "IDE viewer"
331s + c <- all.equal(res, "browser")
331s + c(a, b, c)
331s + })
331s [1] TRUE TRUE TRUE
331s Warning message:
331s In pager@pager("blah") :
331s IDE viewer failed with error viewer error; falling back to `browseURL`
331s >
331s > # - blocking -------------------------------------------------------------------
331s >
331s > # Note that readline just proceeds in non-interactive mode, which is why we
331s > # need the mock here
331s >
331s > local({
331s + suppressMessages(mock(diffobj:::interactive, FALSE))
331s + on.exit(suppressMessages(untrace(diffobj:::interactive)))
331s + suppressMessages(mock(diffobj:::readline, quote(warning("readline"))))
331s + on.exit(suppressMessages(untrace(diffobj:::readline)), add=TRUE)
331s + try(make_blocking("hello")) # "must be a function"
331s + try(make_blocking(identity, letters)) # "must be character\\(1L")
331s + try(make_blocking(identity, "a", "a")) # "must be TRUE"
331s +
331s + res <- make_blocking(sum)(1:10) # warn: "readline"
331s + a <- all.equal(sum(1:10), res)
331s + b <- isTRUE(
331s + withVisible(
331s + suppressWarnings(make_blocking(sum, invisible=FALSE)(1:10))
331s + )[['visible']]
331s + )
331s + c(a, b)
331s + })
331s Error in make_blocking("hello") : Argument `fun` must be a function
331s Error in make_blocking(identity, letters) :
331s Argument `msg` must be character(1L) and not NA
331s Error in make_blocking(identity, "a", "a") :
331s Argument `invisible.res` must be TRUE or FALSE
331s [1] TRUE TRUE
331s Warning message:
331s In readline(msg) : readline
331s > local({
331s + suppressMessages(mock(diffobj:::interactive, TRUE))
331s + on.exit(suppressMessages(untrace(diffobj:::interactive)))
331s + suppressMessages(mock(diffobj:::readline, quote(warning("readline"))))
331s + on.exit(suppressMessages(untrace(diffobj:::readline)), add=TRUE)
331s + show( # warn "readline"
331s + diffChr(
331s + "a", "b", format='raw',
331s + pager=list(pager=void, make.blocking=TRUE, threshold=0)
331s + )
331s + )
331s + show( # warn "readline"
331s + diffChr(
331s + "a", "b", format='html',
331s + pager=list(pager=void, make.blocking=NA, threshold=0)
331s + ) )
331s + show(diffChr("a", "b", format='html', pager=list(pager=void)))
331s + })
331s Warning messages:
331s 1: In readline(msg) : readline
331s 2: In readline(msg) : readline
331s 3: In readline(msg) : readline
331s > # There should be no warnings in this lot
331s >
331s > local({
331s + suppressMessages(mock(diffobj:::interactive, TRUE))
331s + on.exit(suppressMessages(untrace(diffobj:::interactive)))
331s + suppressMessages(mock(diffobj:::readline, quote(warning("readline"))))
331s + on.exit(suppressMessages(untrace(diffobj:::readline)), add=TRUE)
331s + f <- tempfile()
331s + on.exit(unlink(f), add=TRUE)
331s + show( # no warning
331s + diffChr(
331s + "a", "b", format='html',
331s + pager=list(pager=void, make.blocking=NA, file.path=f)
331s + ) )
331s + show( # no warning
331s + diffChr(
331s + "a", "b", format='html',
331s + pager=list(pager=void, make.blocking=FALSE, file.path=f)
331s + ) )
331s + show( # no warning
331s + diffChr("a", "b", format='html', pager=list(pager=void, file.path=f))
331s + )
331s + })
331s >
331s > # - html page output -----------------------------------------------------------
331s >
331s > pager <- PagerBrowser(
331s + pager=function(x) cat(readLines(x), sep="\n"), make.blocking=FALSE
331s + )
331s > all.equal(
331s + capture.output(show(diffChr("A", "B", pager=pager, style=StyleRaw()))),
331s + c("< \"A\" > \"B\" ", "@@ 1 @@ @@ 1 @@ ", "< A > B ")
331s + )
331s [1] TRUE
331s > pager.warn <- PagerBrowser(
331s + pager=function(x) cat(readLines(x), sep="\n"), make.blocking=FALSE
331s + )
331s > try( # "Unable to instantiate `Style` object: Argument `js` .* is not a file"
331s + diffChr(
331s + "A", "B", pager=pager.warn, format="html", style=list(js="notafile")
331s + ) )
331s Error in diffChr(target = "A", current = "B", pager = pager.warn, format = "html", :
331s Unable to instantiate `Style` object: Argument `js` ("notafile") is not a file
331s > try( # "Unable to instantiate `Style` object: Argument `css` .* is not a file"
331s + diffChr(
331s + "A", "B", pager=pager.warn, format="html", style=list(css="notafile")
331s + )
331s + )
331s Error in diffChr(target = "A", current = "B", pager = pager.warn, format = "html", :
331s Unable to instantiate `Style` object: Argument `css` ("notafile") is not a file
331s > # Create objects that bypass the validation
331s >
331s > style.obj.1 <- style.obj.2 <- StyleHtmlLightYb()
331s > style.obj.1@css <- "notafile"
331s > style.obj.2@js <- "notafile"
331s >
331s > invisible(
331s + capture.output( # warn: "Unable to read provided css file"
331s + show(diffChr("A", "B", pager=pager.warn, style=style.obj.1))
331s + ) )
331s Warning messages:
331s 1: In file(con, "r") :
331s cannot open file 'notafile': No such file or directory
331s 2: In .local(x, ...) :
331s Unable to read provided css file "notafile" (error: cannot open the connection).
331s > invisible(
331s + capture.output( # "Unable to read provided js file"
331s + show(diffChr("A", "B", pager=pager.warn, style=style.obj.2))
331s + ) )
331s Warning messages:
331s 1: In file(con, "r") :
331s cannot open file 'notafile': No such file or directory
331s 2: In .local(x, ...) :
331s Unable to read provided js file "notafile" (error: cannot open the connection).
331s > # - pager_is_less --------------------------------------------------------------
331s >
331s > is.less <- pager_is_less()
331s > isTRUE(diffobj:::is.TF(is.less))
331s [1] TRUE
331s >
331s > less <- tryCatch(
331s + system2("which", "less", stdout=TRUE, stderr=TRUE),
331s + error=function(e) NULL, warning=function(e) NULL
331s + )
331s > sys.cat <- tryCatch(
331s + system2("which", "cat", stdout=TRUE, stderr=TRUE),
331s + error=function(e) NULL, warning=function(e) NULL
331s + )
331s > if(diffobj:::is.chr.1L(less) && file_test("-x", less)) {
331s + local({
331s + old.opt <- options(pager=less)
331s + on.exit(options(old.opt))
331s +
331s + # has to be stopifnot as we can't return TRUE for systems that don't
331s + # meet these requirements
331s + stopifnot(
331s + identical(diffobj:::pager_opt_default(), FALSE),
331s + isTRUE(pager_is_less())
331s + )
331s + })
331s + }
331s > if(diffobj:::is.chr.1L(sys.cat) && file_test("-x", sys.cat)) {
331s + local({
331s + old.opt <- options(pager=sys.cat)
331s + on.exit(options(old.opt))
331s +
331s + # has to be stopifnot as we can't return TRUE for systems that don't
331s + # meet these requirements
331s + stopifnot(
331s + identical(diffobj:::pager_opt_default(), FALSE),
331s + identical(pager_is_less(), FALSE)
331s + )
331s + })
331s + }
331s > ## force some checks
331s >
331s > local({
331s + old.opt <- options(pager=NULL)
331s + on.exit(options(old.opt))
331s + identical(pager_is_less(), FALSE)
331s + })
331s [1] TRUE
331s > identical(diffobj:::file_is_less(tempfile()), FALSE)
331s [1] TRUE
331s >
331s > # - file.path ------------------------------------------------------------------
331s >
331s > f <- tempfile()
331s > show(
331s + diffChr(
331s + "A", "B", format='raw',
331s + pager=list(pager=void, file.path=f, threshold=0L)
331s + ) )
331s > all.equal(
331s + readLines(f),
331s + c("< \"A\" > \"B\" ", "@@ 1 @@ @@ 1 @@ ",
331s + "< A > B ")
331s + )
331s [1] TRUE
331s > show( # No error on this one
331s + diffChr(
331s + "A", "B", format='raw',
331s + pager=list(pager=void, file.path=NA, threshold=0L)
331s + ) )
332s > try(Pager(file.path=letters)) # "must be length 1"
332s Error in initialize(value, ...) : Argument `file.path` must be length 1.
332s > try(Pager(file.path=1)) # "must be character"
332s Error in initialize(value, ...) : Argument `file.path` must be character.
332s >
332s > # - basic pager ----------------------------------------------------------------
332s >
332s > local({
332s + f <- tempfile()
332s + on.exit(unlink(f))
332s + c(
332s + all.equal(
332s + capture.output(
332s + show(
332s + diffChr(
332s + 1, 2, pager=Pager(file.path=f, threshold=0L),
332s + format='raw'
332s + )
332s + ) ),
332s + txtf(100)
332s + ),
332s + all.equal(txtf(100), readLines(f))
332s + )
332s + })
332s [1] TRUE TRUE
332s >
332s > # - format-pager interaction ---------------------------------------------------
332s >
332s > local({
332s + old.opt <- options(crayon.colors=7)
332s + crayon::num_colors(TRUE)
332s + on.exit({
332s + options(old.opt)
332s + crayon::num_colors(TRUE)
332s + })
332s + c(
332s + is(
332s + diffChr(1, 2, format='auto', pager="on", interactive=TRUE)@etc@style,
332s + "StyleHtml"
332s + ),
332s + is(
332s + diffChr(1, 2, format='auto', pager="on", interactive=FALSE)@etc@style,
332s + "StyleRaw"
332s + ),
332s + is(
332s + diffChr(
332s + 1, 2, format='auto', pager=PagerBrowser(), interactive=FALSE
332s + )@etc@style,
332s + "StyleHtml"
332s + )
332s + )
332s + })
332s [1] TRUE TRUE TRUE
332s > # - format-pager interaction 2 -------------------------------------------------
332s >
332s > local({
332s + old.rs <- Sys.getenv('RSTUDIO', unset=NA)
332s + old.rsterm <- Sys.getenv('RSTUDIO_TERM', unset=NA)
332s + on.exit({
332s + if(is.na(old.rs)) {
332s + Sys.unsetenv('RSTUDIO')
332s + } else Sys.setenv('RSTUDIO'=old.rs)
332s +
332s + if(is.na(old.rsterm)) {
332s + Sys.unsetenv('RSTUDIO_TERM')
332s + } else Sys.setenv('RSTUDIO_TERM'=old.rsterm)
332s + })
332s + Sys.unsetenv('RSTUDIO')
332s + Sys.unsetenv('RSTUDIO_TERM')
332s + old.opt <- options(crayon.colors=8)
332s + crayon::num_colors(TRUE)
332s + on.exit({options(old.opt); crayon::num_colors(TRUE)}, add=TRUE)
332s +
332s + Sys.setenv(RSTUDIO='1')
332s +
332s + a <- c(
332s + is(
332s + diffChr(1, 2, format='auto', pager='on', interactive=TRUE)@etc@style,
332s + "StyleHtml"
332s + ),
332s + is(
332s + diffChr(1, 2, format='auto', interactive=FALSE)@etc@style,
332s + "StyleAnsi"
332s + ) )
332s + Sys.setenv(RSTUDIO_TERM='HELLO')
332s + crayon::num_colors(TRUE)
332s +
332s + c(
332s + a,
332s + is(
332s + diffChr(1, 2, format='auto', pager='on', interactive=TRUE)@etc@style,
332s + "StyleAnsi"
332s + ) )
332s + })
332s [1] TRUE TRUE TRUE
332s >
332s > # - format-pager interaction 3 -------------------------------------------------
332s >
332s > is(
332s + diffPrint(1:3, 3:1, format='auto', interactive=FALSE, term.colors=1)@etc@style,
332s + "StyleRaw"
332s + )
332s [1] TRUE
332s > is(
332s + diffPrint(1:3, 3:1, format='auto', interactive=FALSE, term.colors=8)@etc@style,
332s + "StyleAnsi"
332s + )
332s [1] TRUE
332s >
332s > # - Default pager writes to screen ---------------------------------------------
332s >
332s > # issue132 thanks Bill Dunlap
332s >
332s > local({
332s + f <- tempfile()
332s + on.exit(unlink(f))
332s + writeLines("hello world", f)
332s +
332s + all.equal(capture.output(new("Pager")@pager(f)), "hello world")
332s + })
332s [1] TRUE
332s >
332s >
332s PASS
332s Begin testing test-rdiff.R
332s
332s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
332s Copyright (C) 2024 The R Foundation for Statistical Computing
332s Platform: aarch64-unknown-linux-gnu (64-bit)
332s
332s R is free software and comes with ABSOLUTELY NO WARRANTY.
332s You are welcome to redistribute it under certain conditions.
332s Type 'license()' or 'licence()' for distribution details.
332s
332s R is a collaborative project with many contributors.
332s Type 'contributors()' for more information and
332s 'citation()' on how to cite R or R packages in publications.
332s
332s Type 'demo()' for some demos, 'help()' for on-line help, or
332s 'help.start()' for an HTML browser interface to help.
332s Type 'q()' to quit R.
332s
332s > NAME <- "rdiff"
332s > source(file.path('_helper', 'init.R'))
332s >
332s > # - diff util detection --------------------------------------------------------
332s >
332s > identical(has_Rdiff(function(...) warning("test warning")), FALSE)
332s [1] TRUE
332s > isTRUE(has_Rdiff(function(...) NULL))
332s [1] TRUE
332s >
332s > # - errors ---------------------------------------------------------------------
332s >
332s > try(Rdiff_chr(stop('hello'), 'goodbye')) # "Unable to coerce"
332s Error in try(as.character(from)) : hello
332s Error in Rdiff_chr(stop("hello"), "goodbye") :
332s Unable to coerce `target` to character.
332s > try(Rdiff_chr('hello', stop('goodbye'))) # "Unable to coerce"
332s Error in try(as.character(to)) : goodbye
332s Error in Rdiff_chr("hello", stop("goodbye")) :
332s Unable to coerce `current` to character.
332s > try(Rdiff_obj(stop('hello'), 'goodbye')) # "Unable to store"
332s Error in vapply(list(from, to), function(x) { : hello
332s Error in Rdiff_obj(stop("hello"), "goodbye") :
332s Unable to store text representation of objects
332s >
332s > # - Rdiff_chr/obj --------------------------------------------------------------
332s >
332s > # Only run tests on machines that are likely to have diff utility
332s >
332s > if(identical(.Platform$OS.type, "unix") && has_Rdiff()) {
332s + local({
332s + A2 <- c("A", "B", "C")
332s + B2 <- c("X", "A", "Y", "C")
332s + A3 <- 1:3
332s + B3 <- c(100L, 1L, 200L, 3L)
332s +
332s + # Rdiff_chr
332s +
332s + ref.res <- c("0a1", "2c3")
332s + ref.res.1 <- c("0a1", "> X", "2c3", "< B", "---", "> Y")
332s +
332s + a <- identical(Rdiff_chr(A2, B2, silent=TRUE, minimal=TRUE), ref.res)
332s + capt <- capture.output(res <- Rdiff_chr(A2, B2, silent=FALSE, minimal=TRUE))
332s + b <- identical(res, ref.res)
332s + c <- identical(capt, res)
332s + capt.1 <- capture.output(
332s + res.1 <- Rdiff_chr(A2, B2, silent=FALSE, minimal=FALSE)
332s + )
332s + d <- identical(capt.1, ref.res.1)
332s + e <- identical(res.1, ref.res.1)
332s +
332s + # test coersion
332s + f <- identical(Rdiff_chr(A3, B3, minimal=TRUE, silent=TRUE), ref.res)
332s +
332s + # Rdiff_obj
332s +
332s + ref.res2 <- c("1c1", "< [1] \"A\" \"B\" \"C\"", "---", "> [1] \"X\" \"A\" \"Y\" \"C\"" )
332s + ref.res3 <- c("1c1")
332s +
332s + g <- identical(Rdiff_obj(A2, B2, silent=TRUE), ref.res2)
332s + h <- identical(Rdiff_obj(A2, B2, minimal=TRUE, silent=TRUE), ref.res3)
332s +
332s + # with rds
332s + f1 <- tempfile()
332s + f2 <- tempfile()
332s + saveRDS(A2, f1)
332s + saveRDS(B2, f2)
332s + on.exit(unlink(c(f1, f2)))
332s +
332s + i <- identical(Rdiff_obj(f1, B2, silent=TRUE), ref.res2)
332s + j <- identical(Rdiff_obj(A2, f2, silent=TRUE), ref.res2)
332s + k <- identical(Rdiff_obj(f1, f2, silent=TRUE), ref.res2)
332s +
332s + res <- c(a, b, c, d, e, f, g, h, i, k)
332s + if(!all(res)) stop("Failed: ", deparse(which(!res)))
332s + })
332s + }
332s >
332s PASS
332s Begin testing test-s4.R
332s
332s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
332s Copyright (C) 2024 The R Foundation for Statistical Computing
332s Platform: aarch64-unknown-linux-gnu (64-bit)
332s
332s R is free software and comes with ABSOLUTELY NO WARRANTY.
332s You are welcome to redistribute it under certain conditions.
332s Type 'license()' or 'licence()' for distribution details.
332s
332s R is a collaborative project with many contributors.
332s Type 'contributors()' for more information and
332s 'citation()' on how to cite R or R packages in publications.
332s
332s Type 'demo()' for some demos, 'help()' for on-line help, or
332s 'help.start()' for an HTML browser interface to help.
332s Type 'q()' to quit R.
332s
332s > NAME <- "s4"
332s > source(file.path('_helper', 'init.R'))
333s >
333s > # - diff data validation works
333s > #
333s > # These are not currently in use
333s > # expect_match(diffobj:::valid_dat("hello"), "should be a list")
333s > # D0 <- D1 <- D2 <- D3 <- D4 <- D5 <- D6 <- D7 <-
333s > # diffPrint(letters, LETTERS)@tar.dat
333s >
333s > # expect_match(diffobj:::valid_dat(unname(D0)), "should have names")
333s >
333s > # length(D1[[1L]]) <- 1L
333s > # expect_match(diffobj:::valid_dat(D1), "should have equal length")
333s >
333s > # D2$orig <- integer(length(D2$orig))
333s > # expect_match(diffobj:::valid_dat(D2), "should be character")
333s >
333s > # D3$trim.ind.start <- character(length(D3$trim.ind.start))
333s > # expect_match(diffobj:::valid_dat(D3), "should be integer")
333s >
333s > # D4$word.ind <- integer(length(D4$word.ind))
333s > # expect_match(diffobj:::valid_dat(D4), "should be list")
333s >
333s > # D5$word.ind <- vector("list", length(D5$word.ind))
333s > # expect_match(diffobj:::valid_dat(D5), "not in expected format")
333s >
333s > # D6$tok.rat <- D6$tok.rat + 2
333s > # expect_match(diffobj:::valid_dat(D6), "with all values between")
333s >
333s > # D7$fill <- integer(length(D7$fill))
333s > # expect_match(diffobj:::valid_dat(D7), "should be logical")
333s >
333s > # - any ------------------------------------------------------------------------
333s >
333s > isTRUE(any(diffChr('a', 'b')))
333s [1] TRUE
333s > identical(any(diffChr('a', 'a')), FALSE)
333s [1] TRUE
333s > try(any(diffChr('a', 'a'), 2)) # "supports only one argument"
333s Error : `any` method for `Diff` supports only one argument
333s >
333s PASS
333s Begin testing test-scaling.R
333s
333s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
333s Copyright (C) 2024 The R Foundation for Statistical Computing
333s Platform: aarch64-unknown-linux-gnu (64-bit)
333s
333s R is free software and comes with ABSOLUTELY NO WARRANTY.
333s You are welcome to redistribute it under certain conditions.
333s Type 'license()' or 'licence()' for distribution details.
333s
333s R is a collaborative project with many contributors.
333s Type 'contributors()' for more information and
333s 'citation()' on how to cite R or R packages in publications.
333s
333s Type 'demo()' for some demos, 'help()' for on-line help, or
333s 'help.start()' for an HTML browser interface to help.
333s Type 'q()' to quit R.
333s
333s > NAME <- "scaling"
333s > source(file.path('_helper', 'init.R'))
333s >
333s > # These tests are not actually run since they require manual intervention to
333s > # check for browser rendering
333s >
333s > # These tests should be run on as many browsers as possible as well as in
333s > # RStudio, and consist of running the code and resizing the windows to see
333s > # what happens
333s >
333s > if(FALSE) { # prevent running
333s + # Text should be allowed to unfurl beyond native width
333s +
333s + diffStr(mdl1, mdl2, format="html")
333s + diffStr(mdl1, mdl2, format="html", style=list(scale=FALSE))
333s +
333s + diffPrint(c(mdl1), c(mdl2), format="html")
333s +
333s + # Revealed problems with pixel rounding in scaling
333s +
333s + diffPrint(letters[1:6], LETTERS[1:6], format="html")
333s + diffPrint(letters[1:6], LETTERS[1:6], format="html", style=list(scale=FALSE))
333s +
333s + # Revealed problems with gutter width computations; and scaling
333s +
333s + mx.2 <- matrix(1:100, ncol=4)
333s + mx.4 <- mx.3 <- mx.2
333s + mx.3[15, 2] <- 111L
333s + mx.3a <- mx.3[-5, ]
333s + diffPrint(mx.2, mx.3a, format="html")
333s +
333s + # summary stuff
333s +
333s + summary(diffPrint(letters, LETTERS, format="html"))
333s + summary(diffStr(mdl1, mdl2, format="html"))
333s + summary(diffPrint(c(mdl1), c(mdl2), format="html"))
333s +
333s + # Long banners
333s +
333s + diffPrint(
333s + 1:20 + 100 + 100 + 100 + 100 + 100 + 100 + 100,
333s + 2:20 + 100 + 100 + 100 + 100 + 100 + 100 + 100,
333s + format="html", style=list(scale=FALSE)
333s + )
333s + diffPrint(
333s + 1:20 + 100 + 100 + 100 + 100 + 100 + 100 + 100,
333s + 2:20 + 100 + 100 + 100 + 100 + 100 + 100 + 100,
333s + format="html"
333s + )
333s + # context
333s +
333s + diffPrint(
333s + 1:20 + 100 + 100 + 100 + 100 + 100 + 100 + 100,
333s + 2:20 + 100 + 100 + 100 + 100 + 100 + 100 + 100,
333s + format="html", mode="context"
333s + )
333s + }
333s >
333s PASS
333s Begin testing test-ses.R
333s
333s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
333s Copyright (C) 2024 The R Foundation for Statistical Computing
333s Platform: aarch64-unknown-linux-gnu (64-bit)
333s
333s R is free software and comes with ABSOLUTELY NO WARRANTY.
333s You are welcome to redistribute it under certain conditions.
333s Type 'license()' or 'licence()' for distribution details.
333s
333s R is a collaborative project with many contributors.
333s Type 'contributors()' for more information and
333s 'citation()' on how to cite R or R packages in publications.
333s
333s Type 'demo()' for some demos, 'help()' for on-line help, or
333s 'help.start()' for an HTML browser interface to help.
333s Type 'q()' to quit R.
333s
334s > NAME <- "ses"
334s > source(file.path('_helper', 'init.R'))
334s >
334s > # Any tests added here should also be added to the valgrind test file
334s >
334s > # - basic ----------------------------------------------------------------------
334s >
334s > all.equal(ses(letters[1:10], letters[1:10]), character())
334s [1] TRUE
334s > all.equal(ses(letters[1:10], LETTERS[1:10]), "1,10c1,10")
334s [1] TRUE
334s > all.equal(ses(letters[1:5], LETTERS[1:10]), "1,5c1,10")
334s [1] TRUE
334s > all.equal(ses(letters[1:10], LETTERS[1:5]), "1,10c1,5")
334s [1] TRUE
334s > all.equal(ses(letters[2:10], letters[1:7]), c("0a1", "7,9d7"))
334s [1] TRUE
334s > all.equal(
334s + ses(letters[c(1:5, 1:5, 1:5)], c("e", "d", "a", "b", "c")),
334s + c("1,4d0", "6,8d1", "10d2", "14,15d5")
334s + )
334s [1] TRUE
334s > all.equal(
334s + ses(c("e", "d", "a", "b", "c"), letters[c(1:5, 1:5, 1:5)]),
334s + c("0a1,4", "1a6,8", "2a10", "5a14,15")
334s + )
334s [1] TRUE
334s > # edit distance = 1
334s >
334s > # - trigger edit distance 1 branches -------------------------------------------
334s >
334s > all.equal(ses("a", c("a", "b")), "1a2")
334s [1] TRUE
334s > all.equal(ses(c("a", "b"), "a"), "2d1")
334s [1] TRUE
334s > all.equal(ses("c", c("b", "c")), "0a1")
334s [1] TRUE
334s > all.equal(ses(c("b", "c"), "c"), "1d0")
334s [1] TRUE
334s >
334s > all.equal(ses("a", character()), "1d0")
334s [1] TRUE
334s > all.equal(ses(character(), "a"), "0a1")
334s [1] TRUE
334s > all.equal(ses(character(), character()), character())
334s [1] TRUE
334s >
334s > ## this is from the atomic tests, haven't dug into why they actually trigger
334s > ## the desired branches, but it is fairly complex
334s > set.seed(2)
334s > w1 <- sample(
334s + c(
334s + "carrot", "cat", "cake", "eat", "rabbit", "holes", "the", "a", "pasta",
334s + "boom", "noon", "sky", "hat", "blah", "paris", "dog", "snake"
334s + ), 25, replace=TRUE
334s + )
334s > w4 <- w3 <- w2 <- w1
334s > w2[sample(seq_along(w1), 5)] <- LETTERS[1:5]
334s > w3 <- w1[8:15]
334s > w4 <- c(w1[1:5], toupper(w1[1:5]), w1[6:15], toupper(w1[1:5]))
334s >
334s > all.equal(ses(w1, w4), c("5a6,10", "15,21d19", "23,25c21,25"))
334s [1] TRUE
334s >
334s > # - longer strings -------------------------------------------------------------
334s >
334s > # A bigger string
334s >
334s > string <- do.call(paste0, expand.grid(LETTERS, LETTERS, LETTERS))
334s >
334s > all.equal(
334s + ses(string, c("hello", string[-c(5, 500, 1000)], "goodbye")),
334s + c("0a1", "5d5", "500d499", "1000d998", "17576a17575")
334s + )
334s [1] TRUE
334s > all.equal(
334s + ses(c(string[200:500], "hello", string[-(1:400)][-c(5, 500, 1000)]), string),
334s + c("0a1,199", "207,306d405", "800a900", "1299a1400")
334s + )
334s [1] TRUE
334s >
334s > # - max diffs ------------------------------------------------------------------
334s >
334s > ses(letters[1:10], LETTERS[1:10], max.diffs=5) # "Exceeded `max.diffs`"
334s [1] "1,10c1,10"
334s Warning message:
334s In diff_myers(args[["a"]], args[["b"]], max.diffs = args[["max.diffs"]], :
334s Exceeded `max.diffs`: 20 vs 5 allowed. Diff is probably suboptimal.
334s > all.equal(
334s + ses(letters[1:10], LETTERS[1:10], max.diffs=5, warn=FALSE),
334s + "1,10c1,10"
334s + )
334s [1] TRUE
334s > all.equal(
334s + ses(
334s + letters[1:10],
334s + c(letters[1], LETTERS[2:5], letters[6:10]), max.diffs=5, warn=FALSE
334s + ),
334s + "2,5c2,5"
334s + )
334s [1] TRUE
334s > all.equal(
334s + ses(
334s + letters[1:10],
334s + c(letters[1], LETTERS[2:5], letters[6:8], LETTERS[9], letters[10]),
334s + max.diffs=5, warn=FALSE
334s + ),
334s + c("2,5c2,5", "9c9")
334s + )
334s [1] TRUE
334s > # - Issue 152 --------------------------------------------------------------
334s >
334s > # h/t @hadley, used to error, now warns
334s >
334s > all.equal(ses(letters[1:4], letters[1:3]), "4d3")
334s [1] TRUE
334s > all.equal(ses(letters[1:3], letters[1:4]), "3a4")
334s [1] TRUE
334s > ses(1, 2:9, max.diffs = 8)
334s [1] "1c1,8"
334s Warning message:
334s In diff_myers(args[["a"]], args[["b"]], max.diffs = args[["max.diffs"]], :
334s Exceeded `max.diffs`: 9 vs 8 allowed. Diff is probably suboptimal.
334s >
334s > # h/t @gadenbui, data is extracted from palmerpenguins@0.1.0::penguins
334s > #
334s > # comparison <- subset(penguins, year == 2007 | flipper_length_mm > 220)
334s > # test <- subset(penguins, year == 2008)
334s > # a <- test$bill_length_mm
334s > # b <- comparison$bill_length_mm
334s >
334s > a <- c(39.6, 40.1, 35, 42, 34.5, 41.4, 39, 40.6, 36.5, 37.6, 35.7,
334s + 41.3, 37.6, 41.1, 36.4, 41.6, 35.5, 41.1, 35.9, 41.8, 33.5, 39.7,
334s + 39.6, 45.8, 35.5, 42.8, 40.9, 37.2, 36.2, 42.1, 34.6, 42.9, 36.7,
334s + 35.1, 37.3, 41.3, 36.3, 36.9, 38.3, 38.9, 35.7, 41.1, 34, 39.6,
334s + 36.2, 40.8, 38.1, 40.3, 33.1, 43.2, 49.1, 48.4, 42.6, 44.4, 44,
334s + 48.7, 42.7, 49.6, 45.3, 49.6, 50.5, 43.6, 45.5, 50.5, 44.9, 45.2,
334s + 46.6, 48.5, 45.1, 50.1, 46.5, 45, 43.8, 45.5, 43.2, 50.4, 45.3,
334s + 46.2, 45.7, 54.3, 45.8, 49.8, 46.2, 49.5, 43.5, 50.7, 47.7, 46.4,
334s + 48.2, 46.5, 46.4, 48.6, 47.5, 51.1, 45.2, 45.2, 50.5, 49.5, 46.4,
334s + 52.8, 40.9, 54.2, 42.5, 51, 49.7, 47.5, 47.6, 52, 46.9, 53.5,
334s + 49, 46.2, 50.9, 45.5)
334s > b <- c(39.1, 39.5, 40.3, NA, 36.7, 39.3, 38.9, 39.2, 34.1, 42, 37.8,
334s + 37.8, 41.1, 38.6, 34.6, 36.6, 38.7, 42.5, 34.4, 46, 37.8, 37.7,
334s + 35.9, 38.2, 38.8, 35.3, 40.6, 40.5, 37.9, 40.5, 39.5, 37.2, 39.5,
334s + 40.9, 36.4, 39.2, 38.8, 42.2, 37.6, 39.8, 36.5, 40.8, 36, 44.1,
334s + 37, 39.6, 41.1, 37.5, 36, 42.3, 46.1, 50, 48.7, 50, 47.6, 46.5,
334s + 45.4, 46.7, 43.3, 46.8, 40.9, 49, 45.5, 48.4, 45.8, 49.3, 42,
334s + 49.2, 46.2, 48.7, 50.2, 45.1, 46.5, 46.3, 42.9, 46.1, 44.5, 47.8,
334s + 48.2, 50, 47.3, 42.8, 45.1, 59.6, 49.6, 50.5, 50.5, 50.1, 50.4,
334s + 46.2, 54.3, 49.8, 49.5, 50.7, 46.4, 48.2, 48.6, 45.2, 52.5, 50,
334s + 50.8, 52.1, 52.2, 49.5, 50.8, 46.9, 51.1, 55.9, 49.1, 49.8, 51.5,
334s + 55.1, 48.8, 50.4, 46.5, 50, 51.3, 45.4, 52.7, 45.2, 46.1, 51.3,
334s + 46, 51.3, 46.6, 51.7, 47, 52, 45.9, 50.5, 50.3, 58, 46.4, 49.2,
334s + 42.4, 48.5, 43.2, 50.6, 46.7, 52)
334s >
334s > # In <0.3.4: Exceeded buffer for finding fake snake
334s > ses(a[-c(15:38, 50:90)], b[-c(40:85, 100:125)], max.diffs=80)
334s [1] "1,3c1,9" "5,13c11,12" "15,25c14,48" "26a50" "28,29d51"
334s [6] "31c53,57" "33c59,60" "35,42c62,67" "44,49d68"
334s Warning message:
334s In diff_myers(args[["a"]], args[["b"]], max.diffs = args[["max.diffs"]], :
334s Exceeded `max.diffs`: 101 vs 80 allowed. Diff is probably suboptimal.
334s >
334s > # In <0.3.4: Faux Snake Process Failed
334s > ses(a[-(18:38)], b[-(50:80)], max.diffs=115)
334s [1] "1,3c1,9" "5,7c11,26" "9,12c28,38" "13a40,46"
334s [5] "15,54c48,82" "56,68d83" "70,74c85,88" "75a90,98"
334s [9] "77c100,101" "79,86c103,108" "88,93d109"
334s Warning message:
334s In diff_myers(args[["a"]], args[["b"]], max.diffs = args[["max.diffs"]], :
334s Exceeded `max.diffs`: 182 vs 115 allowed. Diff is probably suboptimal.
334s >
334s > # - issue 157 ------------------------------------------------------------------
334s >
334s > # Arguably could match on 'A' instead of 'X' and be more compact
334s > a <- c('a', 'b', 'c', 'A', 'X', 'Y', 'Z', 'W')
334s > b <- c('X', 'C', 'A', 'U', 1, 2, 3)
334s > ses(a, b, max.diffs=13)
334s [1] "1,4d0" "6,8c2,7"
334s >
334s > # segfault (but may have beend debugging code)
334s > ses(letters[1:2], LETTERS[1:2], max.diffs = 4)
334s [1] "1,2c1,2"
334s >
334s > # snake overrun
334s > ses(c("G", "C", "T", "C", "A", "C", "G", "C"), c("T", "G"), max.diffs=2)
334s [1] "0a1" "2,8d2"
334s Warning message:
334s In diff_myers(args[["a"]], args[["b"]], max.diffs = args[["max.diffs"]], :
334s Exceeded `max.diffs`: 8 vs 2 allowed. Diff is probably suboptimal.
334s >
334s > # effect of max.diffs on compactness (waldo logical comparison)
334s > ses(c('A','A','A','A','A'), c('B','A','B','A','B'), max.diffs=0)
334s [1] "1c1" "3c3" "5c5"
334s Warning message:
334s In diff_myers(args[["a"]], args[["b"]], max.diffs = args[["max.diffs"]], :
334s Exceeded `max.diffs`: 6 vs 0 allowed. Diff is probably suboptimal.
334s > ses(c('A','A','A','A','A'), c('B','A','B','A','B'), max.diffs=1)
334s [1] "0a1" "2c3" "4,5c5"
334s Warning message:
334s In diff_myers(args[["a"]], args[["b"]], max.diffs = args[["max.diffs"]], :
334s Exceeded `max.diffs`: 6 vs 1 allowed. Diff is probably suboptimal.
334s > ses(c('A','A','A','A','A'), c('B','A','B','A','B'), max.diffs=2)
334s [1] "0a1" "2,4c3" "5a5"
334s Warning message:
334s In diff_myers(args[["a"]], args[["b"]], max.diffs = args[["max.diffs"]], :
334s Exceeded `max.diffs`: 6 vs 2 allowed. Diff is probably suboptimal.
334s >
334s > # back snake all matches before faux snake triggered
334s > ses_dat(
334s + a=c("T", "A", "A", "C", "C", "A"),
334s + b=c("A", "G", "A", "A"), max.diffs = 0
334s + )
334s "ses_dat" object (Match: 3, Delete: 3, Insert: 1):
334s
334s D: T C C
334s M: A A A
334s I: G
334s Warning message:
334s In diff_myers(args[["a"]], args[["b"]], max.diffs = args[["max.diffs"]], :
334s Exceeded `max.diffs`: 4 vs 0 allowed. Diff is probably suboptimal.
334s >
334s > # - errors ---------------------------------------------------------------------
334s >
334s > try(ses('a', 'b', max.diffs='hello')) # "must be scalar integer"
334s Error in ses_prep(a = a, b = b, max.diffs = max.diffs, warn = warn) :
334s Argument `max.diffs` must be scalar integer.
334s > try(ses('a', 'b', warn='hello')) # "must be TRUE or FALSE"
334s Error in ses_prep(a = a, b = b, max.diffs = max.diffs, warn = warn) :
334s Argument `warn` must be TRUE or FALSE.
334s >
334s > a <- structure(1, class='diffobj_ogewlhgiadfl2')
334s > try(ses(a, 1)) # "could not be coerced")
334s Error in as.character.diffobj_ogewlhgiadfl2(a) : failure2
334s Error in ses_prep(a = a, b = b, max.diffs = max.diffs, warn = warn) :
334s Argument `a` is not character and could not be coerced to such
334s > try(ses(1, a)) # "could not be coerced"
334s Error in as.character.diffobj_ogewlhgiadfl2(b) : failure2
334s Error in ses_prep(a = a, b = b, max.diffs = max.diffs, warn = warn) :
334s Argument `b` is not character and could not be coerced to such
334s >
334s > # We want to have a test file that fully covers the C code in order to run
334s > # valgrind with just that one. We were unable to isolate simple diffs that
334s > # triggered all the code, but we were able to do it with the below in addition
334s > # to the above.
334s >
334s > # - Repeat tests for full coverage in SES file ---------------------------------
334s > # From test.diffStr.R
334s > # formula display changed
334s > if(
334s + R.Version()$major >= 3 && R.Version()$minor >= "3.1" ||
334s + R.Version()$major >= 4) {
334s + rdsf1 <- function(x)
334s + readRDS(file.path("_helper", "objs", "diffStr", sprintf("%s.rds", x)))
334s + all.equal(
334s + as.character(
334s + diffStr(mdl1, mdl2, extra=list(strict.width="wrap"), line.limit=30)
334s + ),
334s + rdsf1(500)
334s + )
334s + }
335s [1] TRUE
335s > # from testthat.warnings.R
335s >
335s > A3 <- c("a b c", "d e f A B C D", "g h i", "f")
335s > B3 <- c("a b c", "xd e f E Q L S", "g h i", "q")
335s >
335s > diffChr(A3, B3, max.diffs=2) # warn: "Exceeded diff"
335s [33m<[39m [33mA3[39m [34m>[39m [34mB3[39m
335s [36m@@ 1,4 @@ [39m [36m@@ 1,4 @@ [39m
335s [90m[39ma b c[90m[39m [90m[39ma b c[90m[39m
335s [33m<[39m [90m[39m[33md[39m [33me[39m [33mf[39m [33mA[39m [33mB[39m [33mC[39m [33mD[39m[90m[39m [34m>[39m [90m[39m[34mxd[39m [34me[39m [34mf[39m [34mE[39m [34mQ[39m [34mL[39m [34mS[39m[90m[39m
335s [33m<[39m [90m[39m[33mg[39m [33mh[39m [33mi[39m[90m[39m [34m>[39m [90m[39m[34mg[39m [34mh[39m [34mi[39m[90m[39m
335s [33m<[39m [90m[39m[33mf[39m[90m[39m [34m>[39m [90m[39m[34mq[39m[90m[39m
335s Warning message:
335s Exceeded diff limit during diff computation (6 vs. 2 allowed); overall diff is likely not optimal
335s >
335s > # - ses_dat --------------------------------------------------------------------
335s >
335s > a <- b <- do.call(paste0, expand.grid(LETTERS, LETTERS))
335s > set.seed(2)
335s > b <- b[-sample(length(b), 100)]
335s > a <- a[-sample(length(b), 100)]
335s >
335s > dat <- ses_dat(a, b)
335s > all.equal(dat[['val']][dat[['op']] != 'Delete'], b)
335s [1] TRUE
335s > all.equal(dat[['val']][dat[['op']] != 'Insert'], a)
335s [1] TRUE
335s > all.equal(a[dat[['id.a']][!is.na(dat[['id.a']])]], a)
335s [1] TRUE
335s >
335s > dat2 <- ses_dat(a, b, extra=FALSE)
335s > all.equal(dat[1:2], dat2)
335s [1] TRUE
335s > all.equal(length(dat2), 2L)
335s [1] TRUE
335s >
335s > try(ses_dat(a, b, extra=NA)) # 'TRUE or FALSE'
335s Error in ses_dat(a, b, extra = NA) :
335s Argument `extra` must be TRUE or FALSE.
335s >
335s > # - encoding agnostic #144 -----------------------------------------------------
335s >
335s > # h/t @hadley, these are different in string cache, but should compare equal
335s > # as per ?identical
335s > x <- c("fa\xE7ile", "fa\ue7ile")
335s > Encoding(x) <- c("latin1", "UTF-8")
335s > y <- rev(x)
335s > all.equal(diffobj::ses(x, y), character())
335s [1] TRUE
335s >
335s PASS
335s Begin testing test-style.R
335s
335s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
335s Copyright (C) 2024 The R Foundation for Statistical Computing
335s Platform: aarch64-unknown-linux-gnu (64-bit)
335s
335s R is free software and comes with ABSOLUTELY NO WARRANTY.
335s You are welcome to redistribute it under certain conditions.
335s Type 'license()' or 'licence()' for distribution details.
335s
335s R is a collaborative project with many contributors.
335s Type 'contributors()' for more information and
335s 'citation()' on how to cite R or R packages in publications.
335s
335s Type 'demo()' for some demos, 'help()' for on-line help, or
335s 'help.start()' for an HTML browser interface to help.
335s Type 'q()' to quit R.
335s
335s > NAME <- "style"
335s > source(file.path('_helper', 'init.R'))
335s >
335s > ## - Style Palette ------------------------------------------------------------
335s >
335s > all.equal(
335s + capture.output(diffobj:::display_ansi_256_styles()),
335s + rdsf(100)
335s + )
336s [1] TRUE
336s > ## - crayon settings -----------------------------------------------------------
336s >
336s > # make sure crayon options are appropriately overriden
336s > local({
336s + old.opt <- options(crayon.enabled=FALSE)
336s + on.exit(options(old.opt))
336s + print(identical(crayon::green("green"), "green"))
336s + # should have ANSI coloring despite crayon disabled
336s + print(
336s + all.equal(
336s + as.character(diffChr(letters[1:3], LETTERS[1:3])), rdsf(200)
336s + )
336s + )
336s + identical(crayon::green("green"), "green")
336s + })
336s [1] TRUE
336s [1] TRUE
336s [1] TRUE
336s > ## - Palette of Styles ---------------------------------------------------------
336s >
336s > pos <- PaletteOfStyles()
336s > identical(
336s + pos[["ansi256", "light", "rgb"]],
336s + getClassDef("StyleAnsi256LightRgb", package="diffobj", inherits=FALSE)
336s + )
336s [1] TRUE
336s > all.equal(
336s + capture.output(show(pos)), rdsf(300)
336s + )
337s [1] TRUE
337s > all.equal(
337s + capture.output(summary(pos)), rdsf(400)
337s + )
337s [1] TRUE
337s >
337s > pos["ansi256", "light", "yb"] <- list(StyleRaw())
337s > all.equal(
337s + c(pos["ansi256", "light", "yb"]@data), list(StyleRaw()),
337s + check.environment=FALSE
337s + )
337s [1] TRUE
337s > all.equal(
337s + pos[["ansi256", "light", "yb"]], StyleRaw(),
337s + check.environment=FALSE
337s + )
337s [1] TRUE
337s >
337s > ## - Auto Styles ---------------------------------------------------------------
337s >
337s > try(diffChr(letters, LETTERS, style="auto", format="xml"))
337s Error in diffChr(target = letters, current = LETTERS, style = "auto", :
337s Argument `format` must be one of `c("auto", "raw", "ansi8", "ansi256", "html")`.
337s > is(
337s + diffChr(
337s + letters, LETTERS, style="auto", format="auto", brightness="light",
337s + term.colors=256
337s + )@etc@style,
337s + "StyleAnsi256LightYb"
337s + )
337s [1] TRUE
337s > is(
337s + diffChr(
337s + letters, LETTERS, style="auto", format="auto", brightness="light",
337s + term.colors=8
337s + )@etc@style,
337s + "StyleAnsi8NeutralYb"
337s + )
337s [1] TRUE
337s > is(
337s + diffChr(
337s + letters, LETTERS, style="auto", format="auto", interactive=FALSE,
337s + term.colors=1
337s + )@etc@style,
337s + "StyleRaw"
337s + )
337s [1] TRUE
337s > is(
337s + diffChr(
337s + letters, LETTERS, style="auto", format="auto", interactive=TRUE,
337s + term.colors=1 # note pager off by default in tests
337s + )@etc@style,
337s + "StyleRaw"
337s + )
337s [1] TRUE
337s > is(
337s + diffChr(
337s + letters, LETTERS, style="auto", format="auto", interactive=TRUE,
337s + pager="auto", term.colors=1
337s + )@etc@style,
337s + "StyleHtml"
337s + )
337s [1] TRUE
337s > is(
337s + diffChr(
337s + letters, LETTERS, style="auto", format="auto", interactive=TRUE,
337s + pager="auto", term.colors=9
337s + )@etc@style,
337s + "StyleAnsi8NeutralYb"
337s + )
337s [1] TRUE
337s > is(
337s + diffChr(
337s + letters, LETTERS, style="auto", format="auto", interactive=TRUE,
337s + pager="auto", brightness='light', term.colors=500
337s + )@etc@style,
337s + "StyleAnsi256LightYb"
337s + )
337s [1] TRUE
337s > is(
337s + diffChr(
337s + letters, LETTERS, style="auto", format="html", interactive=TRUE,
337s + pager="auto", color.mode=c("rgb", ansi8="yb")
337s + )@etc@style,
337s + "StyleHtmlLightRgb"
337s + )
337s [1] TRUE
337s > is(
337s + diffChr(
337s + letters, LETTERS, style="auto", format="html", interactive=TRUE,
337s + pager="auto", color.mode=c("rgb", html="yb")
337s + )@etc@style,
337s + "StyleHtmlLightYb"
337s + )
337s [1] TRUE
337s > ## - Palette Params ------------------------------------------------------------
337s >
337s > all.equal(
337s + as.character(
337s + diffChr(
337s + letters, LETTERS, style="auto", format="ansi256",
337s + brightness=c("light", ansi256="dark")
337s + ) ),
337s + rdsf(500)
337s + )
337s [1] TRUE
337s > all.equal(
337s + as.character(
337s + diffChr(
337s + letters, LETTERS, style="auto", format="ansi256", brightness=c("dark")
337s + ) ),
337s + rdsf(500)
337s + )
337s [1] TRUE
337s > ## - Style Validation ----------------------------------------------------------
337s >
337s > s.f <- StyleFuns()
337s > isTRUE(validObject(s.f))
337s [1] TRUE
337s > s.f@word.insert <- function(x, y) NULL
337s > try(validObject(s.f)) # word.insert
337s Error in validObject(s.f) :
337s invalid class "StyleFuns" object: Argument `word.insert` may not have non-default formals argument after the first.
337s >
337s > try(diffChr(1,2, format='html', style=list(scale=1:3)))
337s Error in diffChr(target = 1, current = 2, format = "html", style = list(scale = 1:3)) :
337s Unable to instantiate `Style` object: Argument `scale` must be TRUE or FALSE
337s > try(diffChr(1,2, format='html', style=list(html.output="a")))
337s Error in diffChr(target = 1, current = 2, format = "html", style = list(html.output = "a")) :
337s Unable to instantiate `Style` object: Argument `html.output` must be in `c("auto", "page", "diff.only", "diff.w.style")`.
337s >
337s > ## - Pallette w/ Objs ----------------------------------------------------------
337s >
337s > pal <- PaletteOfStyles()
337s > pal["raw", "neutral", "rgb"] <- list(new(pal[["raw", "neutral", "rgb"]]))
337s >
337s > suppressWarnings(
337s + withCallingHandlers(
337s + invisible(diffChr(
337s + letters, LETTERS, format="raw", brightness="neutral", color.mode="rgb",
337s + palette.of.styles=pal, style=list(na.sub="NA")
337s + )),
337s + warning=function(e) writeLines(conditionMessage(e))
337s + )
337s + )
337s 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.
337s > ## - External Files ------------------------------------------------------------
337s >
337s > isTRUE(file_test("-f", diffobj_css()))
337s [1] TRUE
337s > isTRUE(file_test("-f", diffobj_js()))
337s [1] TRUE
337s >
337s PASS
337s Begin testing test-subset.R
337s
337s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
337s Copyright (C) 2024 The R Foundation for Statistical Computing
337s Platform: aarch64-unknown-linux-gnu (64-bit)
337s
337s R is free software and comes with ABSOLUTELY NO WARRANTY.
337s You are welcome to redistribute it under certain conditions.
337s Type 'license()' or 'licence()' for distribution details.
337s
337s R is a collaborative project with many contributors.
337s Type 'contributors()' for more information and
337s 'citation()' on how to cite R or R packages in publications.
337s
337s Type 'demo()' for some demos, 'help()' for on-line help, or
337s 'help.start()' for an HTML browser interface to help.
337s Type 'q()' to quit R.
337s
337s > NAME <- "subset"
337s > source(file.path('_helper', 'init.R'))
338s >
338s > A <- B <- letters[1:5]
338s > B[2] <- "B"
338s > B[6] <- "F"
338s >
338s > # - subset ---------------------------------------------------------------------
338s >
338s > local({
338s + old.opt <- options(diffobj.style=StyleRaw())
338s + on.exit(options(old.opt))
338s + a0 <- all.equal(
338s + c(as.character(diffChr(A, B)[1:3])),
338s + c("< A > B ", "@@ 1,5 @@ @@ 1,6 @@ ", " a a ")
338s +
338s + )
338s + a <- all.equal(
338s + c(as.character(diffChr(A, B)[1])), c(as.character(head(diffChr(A, B), 1)))
338s + )
338s + b <- all.equal(
338s + c(as.character(diffChr(A, B)[7:8])), c(as.character(tail(diffChr(A, B), 2)))
338s + )
338s + c(a0, a, b)
338s + })
338s [1] TRUE TRUE TRUE
338s > # - subset errors --------------------------------------------------------------
338s >
338s > diff <- diffChr(A, B)
338s > try(diff[NA_real_]) # "contain NAs or both positive"
338s Error in .local(x, i, ...) :
338s `i` may not contain NAs or both positive and negative indices
338s > try(diff[c(-1, 1)]) # "contain NAs or both positive"
338s Error in .local(x, i, ...) :
338s `i` may not contain NAs or both positive and negative indices
338s > try(head(diff, 1, 2)) # "does not support arguments"
338s Error in .local(x, ...) :
338s This method does not support arguments other than `x` or `n`
338s > try(head(diff, NA)) # "must be integer"
338s Error in .local(x, ...) : `n` must be integer(1L) and not NA
338s > try(head(diff, 1:3)) # "must be integer"
338s Error in .local(x, ...) : `n` must be integer(1L) and not NA
338s > try(tail(diff, 1:3)) # "must be integer"
338s Error in .local(x, ...) : `n` must be integer(1L) and not NA
338s > try(tail(diff, 1, 2)) # "does not support arguments"
338s Error in .local(x, ...) :
338s This method does not support arguments other than `x` or `n`
338s >
338s >
338s >
338s PASS
338s Begin testing test-summary.R
338s
338s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
338s Copyright (C) 2024 The R Foundation for Statistical Computing
338s Platform: aarch64-unknown-linux-gnu (64-bit)
338s
338s R is free software and comes with ABSOLUTELY NO WARRANTY.
338s You are welcome to redistribute it under certain conditions.
338s Type 'license()' or 'licence()' for distribution details.
338s
338s R is a collaborative project with many contributors.
338s Type 'contributors()' for more information and
338s 'citation()' on how to cite R or R packages in publications.
338s
338s Type 'demo()' for some demos, 'help()' for on-line help, or
338s 'help.start()' for an HTML browser interface to help.
338s Type 'q()' to quit R.
338s
338s > NAME <- "summary"
338s > source(file.path('_helper', 'init.R'))
338s >
338s > # Note, atomic prints happen in different test file
338s >
338s > # - Any ------------------------------------------------------------------------
338s >
338s > identical(any(diffPrint(iris.s, iris.s)), FALSE)
338s [1] TRUE
338s > res <- any(diffPrint(iris.s, iris.c)) # warn: "objects are NOT"
339s Warning message:
339s No visible differences, but objects are NOT `all.equal`.
339s > identical(res, FALSE)
339s [1] TRUE
339s > isTRUE(any(diffPrint(iris.s, iris.4)))
339s [1] TRUE
339s >
339s >
339s > # - Small Summary --------------------------------------------------------------
339s >
339s > all.equal(
339s + as.character(summary(diffPrint(iris.s, iris.4))), rdsf(100)
339s + )
339s [1] TRUE
339s > all.equal(
339s + as.character(summary(diffPrint(iris.s, iris.2))), rdsf(200)
339s + )
339s [1] TRUE
339s > all.equal(
339s + as.character(summary(diffPrint(iris.s, iris.3))), rdsf(300)
339s + )
339s [1] TRUE
339s > all.equal(
339s + as.character(summary(diffPrint(iris.s, iris.c))), rdsf(400)
339s + )
339s [1] TRUE
339s > # All equal
339s >
339s > all.equal(
339s + as.character(summary(diffChr(letters, letters))), rdsf(450)
339s + )
339s [1] TRUE
339s >
339s > # - Big Summary ----------------------------------------------------------------
339s >
339s > # Make sure we test summary reduction, wrapping
339s >
339s > all.equal(
339s + as.character(summary(diffChr(chr.7, chr.8))), rdsf(500)
339s + )
339s [1] TRUE
339s > all.equal(
339s + as.character(summary(diffChr(chr.7, chr.8), scale.threshold=1)), rdsf(600)
339s + )
339s [1] TRUE
339s > all.equal(
339s + as.character(summary(diffChr(chr.7, chr.8), scale.threshold=0)), rdsf(700)
339s + )
340s [1] TRUE
340s > # Force truncation of summary
340s > all.equal(
340s + as.character(
340s + summary(diffChr(chr.7, chr.8), scale.threshold=0, max.lines=2)
340s + ),
340s + rdsf(800)
340s + )
340s [1] TRUE
340s >
340s > # - Show -----------------------------------------------------------------------
340s >
340s > isTRUE(
340s + paste0(capture.output(summary(diffChr(chr.7, chr.8))), collapse="\n") ==
340s + as.character(summary(diffChr(chr.7, chr.8)))
340s + )
340s [1] TRUE
340s >
340s > # - HTML summary ---------------------------------------------------------------
340s >
340s > all.equal(
340s + as.character(
340s + summary(
340s + diffPrint(
340s + iris.s, iris.4, format="html", style=list(html.output="page")
340s + ) ) ),
340s + rdsf(900)
340s + )
340s [1] TRUE
340s >
340s > # - errors ---------------------------------------------------------------------
340s >
340s > diff <- diffChr("hello green world", "hello red world")
340s > try(summary(diff, max.lines=0)) # "strictly positive"
340s Error in .local(object, ...) :
340s Argument `max.lines` must be integer(1L) and strictly positive
340s > try(summary(diff, width=1:3)) # "integer\\(1L\\)"
340s Error in .local(object, ...) :
340s Argument `width` must be integer(1L) and positive
340s > try(summary(diff, scale.threshold=5)) # "between 0 and 1"
340s Error in .local(object, ...) :
340s Argument `scale.threshold` must be numeric(1L) between 0 and 1
340s >
340s > # - width wrap -----------------------------------------------------------------
340s >
340s > diff <- diffChr("hello green world", "hello red world", format='raw')
340s > all.equal(capture.output(show(summary(diff, width=5))), txtf(100))
340s [1] TRUE
340s >
340s >
340s PASS
340s Begin testing test-text.R
340s
340s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
340s Copyright (C) 2024 The R Foundation for Statistical Computing
340s Platform: aarch64-unknown-linux-gnu (64-bit)
340s
340s R is free software and comes with ABSOLUTELY NO WARRANTY.
340s You are welcome to redistribute it under certain conditions.
340s Type 'license()' or 'licence()' for distribution details.
340s
340s R is a collaborative project with many contributors.
340s Type 'contributors()' for more information and
340s 'citation()' on how to cite R or R packages in publications.
340s
340s Type 'demo()' for some demos, 'help()' for on-line help, or
340s 'help.start()' for an HTML browser interface to help.
340s Type 'q()' to quit R.
340s
340s > NAME <- "text"
340s > source(file.path('_helper', 'init.R'))
340s >
340s > # - simple wrap
340s >
340s > txt1 <- c(
340s + "humpty dumpty sat on a wall and had a big fall",
340s + "humpty sat on a wall and dumped a big fall"
340s + )
340s > res1 <- diffobj:::wrap(txt1, 10, TRUE, sgr.supported=TRUE)
340s >
340s > identical(
340s + gsub(" *$", "", vapply(res1, paste0, character(1L), collapse="")), txt1
340s + )
340s [1] TRUE
340s > all.equal(lapply(res1, nchar), list(rep(10L, 5L), rep(10L, 5L)))
340s [1] TRUE
340s >
340s > txt2 <- "hello world!"
340s > identical(
340s + unlist(diffobj:::wrap(txt2, nchar(txt2), TRUE, sgr.supported=TRUE)),
340s + txt2
340s + )
340s [1] TRUE
340s > identical(
340s + paste0(
340s + unlist(diffobj:::wrap(txt2, nchar(txt2) / 2, TRUE, sgr.supported=TRUE)),
340s + collapse=""
340s + ),
340s + txt2
340s + )
340s [1] TRUE
340s >
340s > # - wrap with escape sequences
340s >
340s > txt3 <- c(
340s + paste0(
340s + "humpty dumpty ", crayon::style("sat on a wall", "red"),
340s + " and had a big fall",
340s + crayon::style(
340s + crayon::style(
340s + "humpty sat on a wall and dumped a big fall",
340s + "green"
340s + ),
340s + "bgRed"
340s + ), "woohoo"
340s + ),
340s + paste0(
340s + crayon::style("hello ", "inverse"), "beautiful ",
340s + crayon::style("world", "blue")
340s + )
340s + )
340s > res3 <- diffobj:::wrap(txt3, 10, TRUE, sgr.supported=TRUE)
340s >
340s > identical(
340s + crayon::strip_style(
340s + gsub(" *$", "", vapply(res3, paste0, character(1L), collapse=""))
340s + ),
340s + crayon::strip_style(txt3)
340s + )
340s [1] TRUE
340s > all.equal(
340s + lapply(res3, crayon::col_nchar),
340s + list(rep(10L, 10L), rep(10L, 3L))
340s + )
340s [1] TRUE
340s >
340s > # - strip hz whitespace
340s >
340s > options(crayon.enabled=FALSE)
340s > all.equal(
340s + diffobj:::strip_hz_control("a\tb", stops=4L, sgr.supported=TRUE), "a b")
340s [1] TRUE
340s > all.equal(
340s + diffobj:::strip_hz_control("ab\t", stops=4L, sgr.supported=TRUE), "ab ")
340s [1] TRUE
340s > all.equal(
340s + diffobj:::strip_hz_control("a\tb\t", stops=4L, sgr.supported=TRUE), "a b ")
340s [1] TRUE
340s > all.equal(
340s + diffobj:::strip_hz_control("\ta\tb\t", stops=4L, sgr.supported=TRUE),
340s + " a b "
340s + )
340s [1] TRUE
340s > all.equal(
340s + diffobj:::strip_hz_control("\ta\tb\t", stops=c(2L, 4L), sgr.supported=TRUE),
340s + " a b "
340s + )
340s [1] TRUE
340s > all.equal(
340s + diffobj:::strip_hz_control(
340s + c("ab\t", "\ta\tb\t"), sgr.supported=TRUE, stops=4L
340s + ),
340s + c("ab ", " a b ")
340s + )
340s [1] TRUE
340s > # recall that nchar("\033") == 1
340s > all.equal(
340s + diffobj:::strip_hz_control(
340s + "\033[31ma\t\033[39mhello\tb", stops=10L, sgr.supported=FALSE
340s + ),
340s + "\033[31ma \033[39mhello b"
340s + )
340s [1] TRUE
340s > all.equal(
340s + diffobj:::strip_hz_control(
340s + "\033[31ma\t\033[39mhello\tb", stops=10L, sgr.supported=TRUE
340s + ),
340s + "\033[31ma\033[39m \033[31m\033[39mhello \033[31m\033[39mb"
340s + )
340s [1] TRUE
340s > # carriage returns
340s >
340s > all.equal(
340s + diffobj:::strip_hz_control("hellothere\rHELLO", sgr.supported=TRUE),
340s + "HELLOthere"
340s + )
340s [1] TRUE
340s > all.equal(
340s + diffobj:::strip_hz_control(
340s + c("hellothere\rHELLO", "000\r12345678\rabcdef\rABC"), sgr.supported=TRUE
340s + ),
340s + c("HELLOthere", "ABCdef78")
340s + )
340s [1] TRUE
340s > all.equal(
340s + diffobj:::strip_hz_control("hellothere\r", sgr.supported=TRUE),
340s + "hellothere"
340s + )
340s [1] TRUE
340s > all.equal(
340s + diffobj:::strip_hz_control(character(), sgr.supported=TRUE), character()
340s + )
340s [1] TRUE
340s > # newlines
340s >
340s > all.equal(
340s + diffobj:::strip_hz_control(c("a", "", "\n", "a\nb"), sgr.supported=TRUE),
340s + c("a", "", "", "a", "b")
340s + )
340s [1] TRUE
340s > # with colors
340s >
340s > options(crayon.enabled=TRUE)
340s >
340s > all.equal(
340s + crayon::strip_style(
340s + diffobj:::strip_hz_control(
340s + "\033[31ma\t\033[39mhello\tb", stops=10L, sgr.supported=TRUE)
340s + ),
340s + "a hello b"
340s + )
340s [1] TRUE
340s > test.chr <- paste0(
340s + crayon::red(crayon::`%+%`("000", crayon::bgBlue("\r12345678"))),
340s + "\rabcdef", crayon::green("\rABC")
340s + )
340s > # visually inspect these
340s >
340s > # cat("\n")
340s > # cat(test.chr, sep="\n")
340s > res <- diffobj:::strip_hz_control(test.chr, sgr.supported=TRUE)
340s > # cat(res, sep="\n")
340s > all.equal(crayon::strip_style(res), "ABCdef78")
340s [1] TRUE
340s >
340s > # Mix tabs and carriage returns, visual inspection assumes terminal tab
340s > # stops at 8L; note output not exactly the same since it seems tabs don't
340s > # ovewrite prior screen state whereas spaces do
340s >
340s > test.chr.2 <- paste0(
340s + crayon::red(crayon::`%+%`("000", crayon::bgBlue("\r123\t456\t78"))),
340s + "\rab\tcd f", crayon::green("\rABC")
340s + )
340s > # cat("\n")
340s > # cat(test.chr.2, sep="\n")
340s > res.2 <- diffobj:::strip_hz_control(test.chr.2, stops=8L, sgr.supported=TRUE)
340s > # cat(res.2, sep="\n")
340s >
340s > all.equal(crayon::strip_style(res.2), "ABC cd f 78")
340s [1] TRUE
340s >
340s > # multi line
340s >
340s > test.chr.3 <- c(test.chr, test.chr.2)
340s > # cat("\n")
340s > res.3 <- diffobj:::strip_hz_control(test.chr.3, sgr.supported=TRUE)
340s > # cat(res.3, sep="\n")
340s > # cat(test.chr.3, sep="\n")
340s >
340s > all.equal(crayon::strip_style(res.3), c("ABCdef78", "ABC cd f 78"))
340s [1] TRUE
340s >
340s >
340s PASS
340s Begin testing test-trim.R
340s
340s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
340s Copyright (C) 2024 The R Foundation for Statistical Computing
340s Platform: aarch64-unknown-linux-gnu (64-bit)
340s
340s R is free software and comes with ABSOLUTELY NO WARRANTY.
340s You are welcome to redistribute it under certain conditions.
340s Type 'license()' or 'licence()' for distribution details.
340s
340s R is a collaborative project with many contributors.
340s Type 'contributors()' for more information and
340s 'citation()' on how to cite R or R packages in publications.
340s
340s Type 'demo()' for some demos, 'help()' for on-line help, or
340s 'help.start()' for an HTML browser interface to help.
340s Type 'q()' to quit R.
340s
340s > NAME <- "trim"
340s > source(file.path('_helper', 'init.R'))
340s >
340s > .mx.base <- matrix(
340s + c(
340s + "averylongwordthatcanlahblah", "causeasinglewidecolumnblah",
340s + "matrixtowrapseveraltimes", "inarrowscreen", "onceuponatime",
340s + "agreenduckflew", "overthemountains", "inalongofantelopes",
340s + "ineedthreemore", "entriesactually", "nowonlytwomore", "iwaswrongearlier"
340s + ),
340s + nrow=3, ncol=4
340s + )
340s >
340s > # - Atomic ---------------------------------------------------------------------
340s >
340s > set.seed(1)
340s > x <- capture.output(1:50)
340s > y <- capture.output(factor(sample(letters, 50, replace=TRUE)))
340s >
340s > all.equal(
340s + diffobj:::strip_atomic_rh(x),
340s + 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")
340s + )
340s [1] TRUE
340s > all.equal(
340s + diffobj:::strip_atomic_rh(y),
340s + 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")
340s + )
340s [1] TRUE
340s > all.equal(diffobj:::which_atomic_rh(capture.output(1:5)), 1)
340s [1] TRUE
340s >
340s > all.equal(as.character(diffPrint(1:3, 2:6, trim=FALSE)), rdsf(50))
341s [1] TRUE
341s >
341s > # bad headers
341s >
341s > bh <- c("[1] a b c", "[4] d e f", "[5] h")
341s > all.equal(diffobj:::which_atomic_rh(bh), integer())
341s [1] TRUE
341s >
341s > # - Matrix
341s > mx1 <- mx2 <- matrix(1:3, 3)
341s > all.equal(
341s + diffobj:::strip_matrix_rh(capture.output(mx1), dimnames(mx1)),
341s + c(" [,1]", " 1", " 2", " 3")
341s + )
341s [1] TRUE
341s > # shouldn't strip headers from attributes
341s > attr(mx2, "blah") <- matrix(1:2, 2)
341s > all.equal(
341s + diffobj:::strip_matrix_rh(capture.output(mx2), dimnames(mx2)),
341s + c(" [,1]", " 1", " 2", " 3", "attr(,\"blah\")", " [,1]", "[1,] 1", "[2,] 2")
341s + )
341s [1] TRUE
341s > # Matrices that wrap
341s >
341s > mx3 <- mx4 <- mx5 <- mx6 <- .mx.base
341s > old.opt <- options(width=30)
341s >
341s > all.equal(
341s + diffobj:::strip_matrix_rh(capture.output(mx3), dimnames(mx3)),
341s + c(" [,1] ", "\"averylongwordthatcanlahblah\"", "\"causeasinglewidecolumnblah\" ", "\"matrixtowrapseveraltimes\" ", " [,2] ", "\"inarrowscreen\" ", "\"onceuponatime\" ", "\"agreenduckflew\"", " [,3] ", "\"overthemountains\" ", "\"inalongofantelopes\"", "\"ineedthreemore\" ", " [,4] ", "\"entriesactually\" ", "\"nowonlytwomore\" ", "\"iwaswrongearlier\"")
341s + )
341s [1] TRUE
341s > # Add rownames; should no longer strip
341s >
341s > rownames(mx4) <- 2:4
341s > all.equal(
341s + diffobj:::strip_matrix_rh(capture.output(mx4), dimnames(mx4)),
341s + capture.output(mx4)
341s + )
341s [1] TRUE
341s > # Attributes don't have stuff stripped
341s >
341s > attr(mx6, "blah") <- letters[1:15]
341s >
341s > all.equal(
341s + diffobj:::strip_matrix_rh(capture.output(mx6), dimnames(mx6)),
341s + 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\"")
341s + )
341s [1] TRUE
341s > # Single row matrix
341s >
341s > all.equal(
341s + diffobj:::which_matrix_rh(capture.output(matrix(1:2, nrow=1)), NULL), 2
341s + )
341s [1] TRUE
341s > options(width=80)
341s >
341s > # - Table ----------------------------------------------------------------------
341s >
341s > old.opt <- options(width=30)
341s >
341s > # Data frames
341s >
341s > df1 <- as.data.frame(.mx.base)
341s > all.equal(
341s + diffobj:::strip_table_rh(capture.output(df1)),
341s + c(" V1", "averylongwordthatcanlahblah", " causeasinglewidecolumnblah", " matrixtowrapseveraltimes", " V2", " inarrowscreen", " onceuponatime", "agreenduckflew", " V3", " overthemountains", "inalongofantelopes", " ineedthreemore", " V4", " entriesactually", " nowonlytwomore", "iwaswrongearlier")
341s + )
341s [1] TRUE
341s > df2 <- df1[c(2, 1, 3), ]
341s >
341s > all.equal(
341s + diffobj:::strip_table_rh(capture.output(df2)),
341s + capture.output(df2)
341s + )
341s [1] TRUE
341s > # Rownames that start from one and sequential, should get stripped; also,
341s > # colon allowed
341s >
341s > df3 <- df1
341s > rownames(df3) <- paste0(1:3, ":")
341s > all.equal(
341s + diffobj:::strip_table_rh(capture.output(df3)),
341s + c(" V1", "averylongwordthatcanlahblah", " causeasinglewidecolumnblah", " matrixtowrapseveraltimes", " V2", " inarrowscreen", " onceuponatime", "agreenduckflew", " V3", " overthemountains", "inalongofantelopes", " ineedthreemore", " V4", " entriesactually", " nowonlytwomore", "iwaswrongearlier")
341s + )
341s [1] TRUE
341s > # Try ts
341s >
341s > all.equal(
341s + diffobj:::strip_table_rh(capture.output(USAccDeaths)),
341s + capture.output(USAccDeaths)
341s + )
341s [1] TRUE
341s > # Set it so first year is 1
341s >
341s > USAD2 <- USAccDeaths
341s > tsp(USAD2)[1:2] <- tsp(USAD2)[1:2] - 1972
341s >
341s > all.equal(
341s + diffobj:::strip_table_rh(capture.output(USAD2)),
341s + 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")
341s + )
341s [1] TRUE
341s > # single row data frame
341s >
341s > all.equal(c(diffobj:::which_table_rh(capture.output(data.frame(1, 2)))), 2)
341s [1] TRUE
341s >
341s > # More than 10 rows data.frame
341s >
341s > all.equal(
341s + c(diffobj:::which_table_rh(capture.output(head(Puromycin, 10L)))),
341s + 2:11
341s + )
341s [1] TRUE
341s > # Bad wrap
341s >
341s > bw <- c(
341s + " bad", "1 123", "2 456",
341s + " dab", "1 123", "2 456",
341s + " abd", "1 123")
341s >
341s > all.equal(
341s + diffobj:::wtr_help(bw, diffobj:::.pat.tbl),
341s + c(2L, 3L, 5L, 6L)
341s + )
341s [1] TRUE
341s >
341s > # - Array
341s > a <- array(1:6, c(3, 1, 2))
341s > a.c <- capture.output(a)
341s > all.equal(
341s + diffobj:::strip_array_rh(a.c, dimnames(a)),
341s + c(", , 1", "", " [,1]", " 1", " 2", " 3", "", ", , 2", "", " [,1]", " 4", " 5", " 6", "")
341s + )
341s [1] TRUE
341s > viz_sarh <- function(capt, obj)
341s + cbind(
341s + capt,
341s + as.integer(
341s + seq_along(capt) %in% diffobj:::which_array_rh(capt, dimnames(obj))
341s + )
341s + )
341s > a1 <- a2 <- a3 <- a4 <- array(
341s + "averylongphrasethatwillforcemytwocolumnarraytowrapblahblah", c(2, 2, 2)
341s + )
341s > ca1 <- capture.output(a1)
341s > viz_sarh(ca1, a1)
341s capt
341s [1,] ", , 1"
341s [2,] ""
341s [3,] " [,1] "
341s [4,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [5,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [6,] " [,2] "
341s [7,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [8,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [9,] ""
341s [10,] ", , 2"
341s [11,] ""
341s [12,] " [,1] "
341s [13,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [14,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [15,] " [,2] "
341s [16,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [17,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [18,] ""
341s
341s [1,] "0"
341s [2,] "0"
341s [3,] "0"
341s [4,] "1"
341s [5,] "1"
341s [6,] "0"
341s [7,] "1"
341s [8,] "1"
341s [9,] "0"
341s [10,] "0"
341s [11,] "0"
341s [12,] "0"
341s [13,] "1"
341s [14,] "1"
341s [15,] "0"
341s [16,] "1"
341s [17,] "1"
341s [18,] "0"
341s > all.equal(
341s + diffobj:::which_array_rh(ca1, dimnames(a1)),
341s + c(4L, 5L, 7L, 8L, 13L, 14L, 16L, 17L)
341s + )
341s [1] TRUE
341s > colnames(a2) <- c("ABC", "DEF")
341s > ca2 <- capture.output(a2)
341s > viz_sarh(ca2, a2)
341s capt
341s [1,] ", , 1"
341s [2,] ""
341s [3,] " ABC "
341s [4,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [5,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [6,] " DEF "
341s [7,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [8,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [9,] ""
341s [10,] ", , 2"
341s [11,] ""
341s [12,] " ABC "
341s [13,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [14,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [15,] " DEF "
341s [16,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [17,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [18,] ""
341s
341s [1,] "0"
341s [2,] "0"
341s [3,] "0"
341s [4,] "1"
341s [5,] "1"
341s [6,] "0"
341s [7,] "1"
341s [8,] "1"
341s [9,] "0"
341s [10,] "0"
341s [11,] "0"
341s [12,] "0"
341s [13,] "1"
341s [14,] "1"
341s [15,] "0"
341s [16,] "1"
341s [17,] "1"
341s [18,] "0"
341s > all.equal(
341s + diffobj:::which_array_rh(ca2, dimnames(a2)),
341s + c(4L, 5L, 7L, 8L, 13L, 14L, 16L, 17L)
341s + )
341s [1] TRUE
341s > rownames(a3) <- 1:2
341s > ca3 <- capture.output(a3)
341s > viz_sarh(ca3, a3)
341s capt
341s [1,] ", , 1"
341s [2,] ""
341s [3,] " [,1] "
341s [4,] "1 \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [5,] "2 \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [6,] " [,2] "
341s [7,] "1 \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [8,] "2 \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [9,] ""
341s [10,] ", , 2"
341s [11,] ""
341s [12,] " [,1] "
341s [13,] "1 \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [14,] "2 \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [15,] " [,2] "
341s [16,] "1 \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [17,] "2 \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [18,] ""
341s
341s [1,] "0"
341s [2,] "0"
341s [3,] "0"
341s [4,] "0"
341s [5,] "0"
341s [6,] "0"
341s [7,] "0"
341s [8,] "0"
341s [9,] "0"
341s [10,] "0"
341s [11,] "0"
341s [12,] "0"
341s [13,] "0"
341s [14,] "0"
341s [15,] "0"
341s [16,] "0"
341s [17,] "0"
341s [18,] "0"
341s > all.equal(diffobj:::which_array_rh(ca3, dimnames(a3)), integer(0L))
341s [1] TRUE
341s >
341s > attr(a4, "blahblah") <- matrix(1:4, 2)
341s > ca4 <- capture.output(a4)
341s > viz_sarh(ca4, a4)
341s capt
341s [1,] ", , 1"
341s [2,] ""
341s [3,] " [,1] "
341s [4,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [5,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [6,] " [,2] "
341s [7,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [8,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [9,] ""
341s [10,] ", , 2"
341s [11,] ""
341s [12,] " [,1] "
341s [13,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [14,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [15,] " [,2] "
341s [16,] "[1,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [17,] "[2,] \"averylongphrasethatwillforcemytwocolumnarraytowrapblahblah\""
341s [18,] ""
341s [19,] "attr(,\"blahblah\")"
341s [20,] " [,1] [,2]"
341s [21,] "[1,] 1 3"
341s [22,] "[2,] 2 4"
341s
341s [1,] "0"
341s [2,] "0"
341s [3,] "0"
341s [4,] "1"
341s [5,] "1"
341s [6,] "0"
341s [7,] "1"
341s [8,] "1"
341s [9,] "0"
341s [10,] "0"
341s [11,] "0"
341s [12,] "0"
341s [13,] "1"
341s [14,] "1"
341s [15,] "0"
341s [16,] "1"
341s [17,] "1"
341s [18,] "0"
341s [19,] "0"
341s [20,] "0"
341s [21,] "0"
341s [22,] "0"
341s > all.equal(
341s + diffobj:::which_array_rh(ca4, dimnames(a4)),
341s + c(4L, 5L, 7L, 8L, 13L, 14L, 16L, 17L)
341s + )
341s [1] TRUE
341s > options(width=80)
341s >
341s > # - List -----------------------------------------------------------------------
341s >
341s > l1 <- list(
341s + matrix(1:4, 2), b=list(abc=c(letters, LETTERS), list(matrix(4:1, 2)))
341s + )
341s > l1.c <- capture.output(l1)
341s > all.equal(
341s + diffobj:::strip_list_rh(l1.c, l1),
341s + 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", "", "", "")
341s + )
341s [1] TRUE
341s >
341s > a <- list(list())
341s > aa <- list(list(), "a")
341s > b <- list("a", list())
341s > c <- list(list("a"), "b")
341s > d <- list("a", "b", "c")
341s >
341s > identical(
341s + diffobj:::strip_list_rh(capture.output(d), d),
341s + c("[[1]]", "\"a\"", "", "[[2]]", "\"b\"", "", "[[3]]", "\"c\"", "")
341s + )
341s [1] TRUE
341s > identical(
341s + diffobj:::strip_list_rh(capture.output(a), a),
341s + c("[[1]]", "list()", "")
341s + )
341s [1] TRUE
341s > identical(
341s + diffobj:::strip_list_rh(capture.output(aa), aa),
341s + c("[[1]]", "list()", "", "[[2]]", "\"a\"", "")
341s + )
341s [1] TRUE
341s > identical(
341s + diffobj:::strip_list_rh(capture.output(b), b),
341s + c("[[1]]", "\"a\"", "", "[[2]]", "list()", "")
341s + )
341s [1] TRUE
341s > identical(
341s + diffobj:::strip_list_rh(capture.output(c), c),
341s + c("[[1]]", "[[1]][[1]]", "\"a\"", "", "", "[[2]]", "\"b\"", "")
341s + )
341s [1] TRUE
341s >
341s > # - custom trim fun ------------------------------------------------------------
341s >
341s > a <- matrix(100:102)
341s > b <- matrix(101:103)
341s > fun1 <- function(x, y) cbind(rep(1L, 4), rep(5L, 4))
341s >
341s > all.equal(as.character(diffPrint(a, b, trim=fun1)), rdsf(100))
341s [1] TRUE
341s > if(getRversion() >= "3.2.2") {
341s + capture.output(
341s + trim.err <- as.character(diffPrint(a, b, trim=function(x, y) stop("boom"))),
341s + type="message"
341s + ) # warn: "If you did not specify a `trim`"
341s + all.equal(trim.err, rdsf(200))
341s + }
341s [1] TRUE
341s Warning message:
341s In apply_trim(current, cur.capt.p, etc@trim) :
341s `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.
341s > # purposefully bad trim fun
341s >
341s > try( # "method return value must be a two "
341s + diffPrint(1:100, 2:100, trim=function(x, y) TRUE)
341s + )
341s Error in apply_trim(target, tar.capt.p, etc@trim) :
341s `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.
341s > try( # "Invalid trim function"
341s + diffobj:::apply_trim(letters, letters, function(x) TRUE),
341s + )
341s Error in diffobj:::apply_trim(letters, letters, function(x) TRUE) :
341s Invalid trim function (does not have at least two arguments). If you did not customize the trim function contact maintainer; see `?trim`
341s > try(# "must have as many rows"
341s + diffobj:::apply_trim(
341s + letters, letters, function(x, y) cbind(1:25, 1:25)
341s + )
341s + )
341s Error in diffobj:::apply_trim(letters, letters, function(x, y) cbind(1:25, :
341s `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.
341s >
341s > # - s4 -------------------------------------------------------------------------
341s >
341s > setClass("DOTrimTest", slots=c(a="numeric", b="list", c="matrix"))
341s > obj <- new(
341s + "DOTrimTest", a=1:40, b=list(a=1, letters, NULL), c=matrix(1:9, 3)
341s + )
341s > all.equal(
341s + diffobj:::strip_s4_rh(capture.output(obj), obj), rdsf(300)
341s + )
341s [1] TRUE
341s >
341s >
341s PASS
341s Begin testing test-warnings.R
341s
341s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
341s Copyright (C) 2024 The R Foundation for Statistical Computing
341s Platform: aarch64-unknown-linux-gnu (64-bit)
341s
341s R is free software and comes with ABSOLUTELY NO WARRANTY.
341s You are welcome to redistribute it under certain conditions.
341s Type 'license()' or 'licence()' for distribution details.
341s
341s R is a collaborative project with many contributors.
341s Type 'contributors()' for more information and
341s 'citation()' on how to cite R or R packages in publications.
341s
341s Type 'demo()' for some demos, 'help()' for on-line help, or
341s 'help.start()' for an HTML browser interface to help.
341s Type 'q()' to quit R.
341s
341s > NAME <- "warnings"
341s > source(file.path('_helper', 'init.R'))
341s >
341s > # tests designed to produce warnings
341s >
341s > # - Extra args for `str` -------------------------------------------------------
341s >
341s > a <- "hello"
341s > b <- "goodbye"
341s >
341s > invisible(diffStr(a, b, extra=list(comp.str="^"))) # "Specifying"
342s Warning message:
342s In capt_fun(target, current, etc = etc.proc, err = err, extra) :
342s Specifying `comp.str` may cause `str` output level folding to be incorrect
342s > invisible(diffStr(a, b, extra=list(comp="^"))) # "Specifying")
342s Warning messages:
342s 1: In match.call(definition, call, expand.dots, envir) :
342s partial argument match of 'comp' to 'comp.str'
342s 2: In capt_fun(target, current, etc = etc.proc, err = err, extra) :
342s Specifying `comp.str` may cause `str` output level folding to be incorrect
342s > invisible(diffStr(a, b, extra=list(indent.str="..."))) # "Specifying"
342s Warning message:
342s In capt_fun(target, current, etc = etc.proc, err = err, extra) :
342s Specifying `indent.str` may cause `str` output level folding to be incorrect
342s > invisible(diffStr(a, b, extra=list(indent="..."))) # "Specifying"
342s Warning messages:
342s 1: In match.call(definition, call, expand.dots, envir) :
342s partial argument match of 'indent' to 'indent.str'
342s 2: In capt_fun(target, current, etc = etc.proc, err = err, extra) :
342s Specifying `indent.str` may cause `str` output level folding to be incorrect
342s >
342s > # - Max diffs ------------------------------------------------------------------
342s >
342s > # Max limit warnings work properly; these are not fully fleshed out
342s >
342s > A3 <- c("a b c", "d e f A B C D", "g h i", "f")
342s > B3 <- c("a b c", "xd e f E Q L S", "g h i", "q")
342s >
342s > invisible(diffChr(A3, B3, max.diffs=2)) # warn: "Exceeded diff"
342s Warning message:
342s Exceeded diff limit during diff computation (6 vs. 2 allowed); overall diff is likely not optimal
342s >
342s > # - Overriden formals ----------------------------------------------------------
342s >
342s > # warn "Provided `style` argument will override the provided `format` argument"
342s > invisible(diffChr(letters, LETTERS, style=StyleRaw(), format="ansi8"))
342s Warning message:
342s In diffChr(target = letters, current = LETTERS, style = StyleRaw(), :
342s Provided `style` argument will override the provided `format` argument
342s >
342s > # warn: "Provided `style` .* `format` and `color.mode` arguments"
342s > invisible(
342s + diffChr(letters, LETTERS, style=StyleRaw(), format="ansi8", color.mode="rgb")
342s + )
342s Warning message:
342s In diffChr(target = letters, current = LETTERS, style = StyleRaw(), :
342s Provided `style` argument will override the provided `format` and `color.mode` arguments.
342s >
342s >
342s PASS
343s autopkgtest [18:19:56]: test run-unit-test: -----------------------]
343s run-unit-test PASS
343s autopkgtest [18:19:56]: test run-unit-test: - - - - - - - - - - results - - - - - - - - - -
344s autopkgtest [18:19:57]: test pkg-r-autopkgtest: preparing testbed
588s autopkgtest [18:24:01]: testbed dpkg architecture: arm64
588s autopkgtest [18:24:01]: testbed apt version: 2.7.12
588s autopkgtest [18:24:01]: @@@@@@@@@@@@@@@@@@@@ test bed setup
589s Get:1 http://ftpmaster.internal/ubuntu noble-proposed InRelease [117 kB]
589s Get:2 http://ftpmaster.internal/ubuntu noble-proposed/restricted Sources [6540 B]
589s Get:3 http://ftpmaster.internal/ubuntu noble-proposed/universe Sources [3682 kB]
590s Get:4 http://ftpmaster.internal/ubuntu noble-proposed/main Sources [474 kB]
590s Get:5 http://ftpmaster.internal/ubuntu noble-proposed/multiverse Sources [51.4 kB]
590s Get:6 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 Packages [646 kB]
590s Get:7 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 c-n-f Metadata [3144 B]
590s Get:8 http://ftpmaster.internal/ubuntu noble-proposed/restricted arm64 Packages [33.6 kB]
590s Get:9 http://ftpmaster.internal/ubuntu noble-proposed/restricted arm64 c-n-f Metadata [116 B]
590s Get:10 http://ftpmaster.internal/ubuntu noble-proposed/universe arm64 Packages [4006 kB]
590s Get:11 http://ftpmaster.internal/ubuntu noble-proposed/universe arm64 c-n-f Metadata [8528 B]
590s Get:12 http://ftpmaster.internal/ubuntu noble-proposed/multiverse arm64 Packages [55.5 kB]
590s Get:13 http://ftpmaster.internal/ubuntu noble-proposed/multiverse arm64 c-n-f Metadata [116 B]
592s Fetched 9084 kB in 2s (4359 kB/s)
592s Reading package lists...
596s Reading package lists...
596s Building dependency tree...
596s Reading state information...
596s Calculating upgrade...
597s The following packages will be REMOVED:
597s libglib2.0-0 libssl3
597s The following NEW packages will be installed:
597s libglib2.0-0t64 libssl3t64 xdg-user-dirs
597s The following packages have been kept back:
597s curl
597s The following packages will be upgraded:
597s gir1.2-glib-2.0 libglib2.0-data libtirpc-common openssl readline-common
597s ubuntu-minimal ubuntu-standard
597s 7 upgraded, 3 newly installed, 2 to remove and 1 not upgraded.
597s Need to get 4613 kB of archives.
597s After this operation, 211 kB of additional disk space will be used.
597s Get:1 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 gir1.2-glib-2.0 arm64 2.79.3-3ubuntu5 [182 kB]
597s Get:2 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libglib2.0-0t64 arm64 2.79.3-3ubuntu5 [1527 kB]
598s Get:3 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 openssl arm64 3.0.13-0ubuntu1 [983 kB]
598s Get:4 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libssl3t64 arm64 3.0.13-0ubuntu1 [1770 kB]
598s Get:5 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libglib2.0-data all 2.79.3-3ubuntu5 [46.6 kB]
598s Get:6 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libtirpc-common all 1.3.4+ds-1.1 [8018 B]
598s Get:7 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 readline-common all 8.2-3.1 [56.4 kB]
598s Get:8 http://ftpmaster.internal/ubuntu noble/main arm64 ubuntu-minimal arm64 1.536 [10.7 kB]
598s Get:9 http://ftpmaster.internal/ubuntu noble/main arm64 xdg-user-dirs arm64 0.18-1 [18.1 kB]
598s Get:10 http://ftpmaster.internal/ubuntu noble/main arm64 ubuntu-standard arm64 1.536 [10.7 kB]
599s Fetched 4613 kB in 1s (6233 kB/s)
599s (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 ... 74758 files and directories currently installed.)
599s Preparing to unpack .../gir1.2-glib-2.0_2.79.3-3ubuntu5_arm64.deb ...
599s Unpacking gir1.2-glib-2.0:arm64 (2.79.3-3ubuntu5) over (2.79.2-1~ubuntu1) ...
599s dpkg: libglib2.0-0:arm64: dependency problems, but removing anyway as you requested:
599s udisks2 depends on libglib2.0-0 (>= 2.77.0).
599s shared-mime-info depends on libglib2.0-0 (>= 2.75.3).
599s python3-gi depends on libglib2.0-0 (>= 2.77.0).
599s python3-dbus depends on libglib2.0-0 (>= 2.16.0).
599s netplan.io depends on libglib2.0-0 (>= 2.70.0).
599s netplan-generator depends on libglib2.0-0 (>= 2.70.0).
599s libxmlb2:arm64 depends on libglib2.0-0 (>= 2.54.0).
599s libvolume-key1:arm64 depends on libglib2.0-0 (>= 2.18.0).
599s libudisks2-0:arm64 depends on libglib2.0-0 (>= 2.75.3).
599s libqrtr-glib0:arm64 depends on libglib2.0-0 (>= 2.56).
599s libqmi-proxy depends on libglib2.0-0 (>= 2.30.0).
599s libqmi-glib5:arm64 depends on libglib2.0-0 (>= 2.54.0).
599s libpolkit-gobject-1-0:arm64 depends on libglib2.0-0 (>= 2.38.0).
599s libpolkit-agent-1-0:arm64 depends on libglib2.0-0 (>= 2.38.0).
599s libnetplan0:arm64 depends on libglib2.0-0 (>= 2.75.3).
599s libmm-glib0:arm64 depends on libglib2.0-0 (>= 2.62.0).
599s libmbim-proxy depends on libglib2.0-0 (>= 2.56).
599s libmbim-glib4:arm64 depends on libglib2.0-0 (>= 2.56).
599s libjson-glib-1.0-0:arm64 depends on libglib2.0-0 (>= 2.75.3).
599s libjcat1:arm64 depends on libglib2.0-0 (>= 2.75.3).
599s libgusb2:arm64 depends on libglib2.0-0 (>= 2.75.3).
599s libgudev-1.0-0:arm64 depends on libglib2.0-0 (>= 2.38.0).
599s libgirepository-1.0-1:arm64 depends on libglib2.0-0 (>= 2.79.0).
599s libfwupd2:arm64 depends on libglib2.0-0 (>= 2.79.0).
599s libblockdev3:arm64 depends on libglib2.0-0 (>= 2.42.2).
599s libblockdev-utils3:arm64 depends on libglib2.0-0 (>= 2.75.3).
599s libblockdev-swap3:arm64 depends on libglib2.0-0 (>= 2.42.2).
599s libblockdev-part3:arm64 depends on libglib2.0-0 (>= 2.42.2).
599s libblockdev-nvme3:arm64 depends on libglib2.0-0 (>= 2.42.2).
599s libblockdev-mdraid3:arm64 depends on libglib2.0-0 (>= 2.42.2).
599s libblockdev-loop3:arm64 depends on libglib2.0-0 (>= 2.42.2).
599s libblockdev-fs3:arm64 depends on libglib2.0-0 (>= 2.42.2).
599s libblockdev-crypto3:arm64 depends on libglib2.0-0 (>= 2.42.2).
599s fwupd depends on libglib2.0-0 (>= 2.79.0).
599s bolt depends on libglib2.0-0 (>= 2.56.0).
599s
599s (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 ... 74758 files and directories currently installed.)
599s Removing libglib2.0-0:arm64 (2.79.2-1~ubuntu1) ...
600s Selecting previously unselected package libglib2.0-0t64:arm64.
600s (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 ... 74733 files and directories currently installed.)
600s Preparing to unpack .../libglib2.0-0t64_2.79.3-3ubuntu5_arm64.deb ...
600s libglib2.0-0t64.preinst: Removing /var/lib/dpkg/info/libglib2.0-0:arm64.postrm to avoid loss of /usr/share/glib-2.0/schemas/gschemas.compiled...
600s removed '/var/lib/dpkg/info/libglib2.0-0:arm64.postrm'
600s Unpacking libglib2.0-0t64:arm64 (2.79.3-3ubuntu5) ...
600s Preparing to unpack .../openssl_3.0.13-0ubuntu1_arm64.deb ...
600s Unpacking openssl (3.0.13-0ubuntu1) over (3.0.10-1ubuntu4) ...
600s dpkg: libssl3:arm64: dependency problems, but removing anyway as you requested:
600s wget depends on libssl3 (>= 3.0.0).
600s u-boot-tools depends on libssl3 (>= 3.0.0).
600s tnftp depends on libssl3 (>= 3.0.0).
600s tcpdump depends on libssl3 (>= 3.0.0).
600s systemd-resolved depends on libssl3 (>= 3.0.0).
600s systemd depends on libssl3 (>= 3.0.0).
600s sudo depends on libssl3 (>= 3.0.0).
600s sbsigntool depends on libssl3 (>= 3.0.0).
600s rsync depends on libssl3 (>= 3.0.0).
600s python3-cryptography depends on libssl3 (>= 3.0.0).
600s openssh-server depends on libssl3 (>= 3.0.10).
600s openssh-client depends on libssl3 (>= 3.0.10).
600s mtd-utils depends on libssl3 (>= 3.0.0).
600s mokutil depends on libssl3 (>= 3.0.0).
600s linux-headers-6.8.0-11-generic depends on libssl3 (>= 3.0.0).
600s libsystemd-shared:arm64 depends on libssl3 (>= 3.0.0).
600s libssh-4:arm64 depends on libssl3 (>= 3.0.0).
600s libsasl2-modules:arm64 depends on libssl3 (>= 3.0.0).
600s libsasl2-2:arm64 depends on libssl3 (>= 3.0.0).
600s libpython3.12-minimal:arm64 depends on libssl3 (>= 3.0.0).
600s libnvme1 depends on libssl3 (>= 3.0.0).
600s libkrb5-3:arm64 depends on libssl3 (>= 3.0.0).
600s libkmod2:arm64 depends on libssl3 (>= 3.0.0).
600s libfido2-1:arm64 depends on libssl3 (>= 3.0.0).
600s libcurl4:arm64 depends on libssl3 (>= 3.0.0).
600s libcryptsetup12:arm64 depends on libssl3 (>= 3.0.0).
600s kmod depends on libssl3 (>= 3.0.0).
600s dhcpcd-base depends on libssl3 (>= 3.0.0).
600s bind9-libs:arm64 depends on libssl3 (>= 3.0.0).
600s
600s (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 ... 74758 files and directories currently installed.)
600s Removing libssl3:arm64 (3.0.10-1ubuntu4) ...
600s Selecting previously unselected package libssl3t64:arm64.
600s (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 ... 74747 files and directories currently installed.)
600s Preparing to unpack .../0-libssl3t64_3.0.13-0ubuntu1_arm64.deb ...
600s Unpacking libssl3t64:arm64 (3.0.13-0ubuntu1) ...
600s Preparing to unpack .../1-libglib2.0-data_2.79.3-3ubuntu5_all.deb ...
600s Unpacking libglib2.0-data (2.79.3-3ubuntu5) over (2.79.2-1~ubuntu1) ...
600s Preparing to unpack .../2-libtirpc-common_1.3.4+ds-1.1_all.deb ...
600s Unpacking libtirpc-common (1.3.4+ds-1.1) over (1.3.4+ds-1build1) ...
600s Preparing to unpack .../3-readline-common_8.2-3.1_all.deb ...
600s Unpacking readline-common (8.2-3.1) over (8.2-3) ...
601s Preparing to unpack .../4-ubuntu-minimal_1.536_arm64.deb ...
601s Unpacking ubuntu-minimal (1.536) over (1.535) ...
601s Selecting previously unselected package xdg-user-dirs.
601s Preparing to unpack .../5-xdg-user-dirs_0.18-1_arm64.deb ...
601s Unpacking xdg-user-dirs (0.18-1) ...
601s Preparing to unpack .../6-ubuntu-standard_1.536_arm64.deb ...
601s Unpacking ubuntu-standard (1.536) over (1.535) ...
601s Setting up ubuntu-minimal (1.536) ...
601s Setting up xdg-user-dirs (0.18-1) ...
601s Setting up libssl3t64:arm64 (3.0.13-0ubuntu1) ...
601s Setting up libtirpc-common (1.3.4+ds-1.1) ...
601s Setting up ubuntu-standard (1.536) ...
601s Setting up libglib2.0-0t64:arm64 (2.79.3-3ubuntu5) ...
602s No schema files found: doing nothing.
602s Setting up libglib2.0-data (2.79.3-3ubuntu5) ...
602s Setting up gir1.2-glib-2.0:arm64 (2.79.3-3ubuntu5) ...
602s Setting up openssl (3.0.13-0ubuntu1) ...
602s Setting up readline-common (8.2-3.1) ...
602s Processing triggers for man-db (2.12.0-3) ...
603s Processing triggers for install-info (7.1-3) ...
603s Processing triggers for libc-bin (2.39-0ubuntu2) ...
603s Reading package lists...
604s Building dependency tree...
604s Reading state information...
604s 0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
605s Hit:1 http://ftpmaster.internal/ubuntu noble InRelease
605s Hit:2 http://ftpmaster.internal/ubuntu noble-updates InRelease
605s Hit:3 http://ftpmaster.internal/ubuntu noble-security InRelease
605s Hit:4 http://ftpmaster.internal/ubuntu noble-proposed InRelease
607s Reading package lists...
607s Reading package lists...
608s Building dependency tree...
608s Reading state information...
608s Calculating upgrade...
608s The following packages have been kept back:
608s curl
608s 0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
608s Reading package lists...
609s Building dependency tree...
609s Reading state information...
610s 0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
616s Reading package lists...
616s Building dependency tree...
616s Reading state information...
617s Starting pkgProblemResolver with broken count: 0
617s Starting 2 pkgProblemResolver with broken count: 0
617s Done
617s The following additional packages will be installed:
617s build-essential cpp cpp-13 cpp-13-aarch64-linux-gnu cpp-aarch64-linux-gnu
617s curl dctrl-tools fontconfig fontconfig-config fonts-dejavu-core
617s fonts-dejavu-mono fonts-font-awesome fonts-glyphicons-halflings
617s fonts-mathjax g++ g++-13 g++-13-aarch64-linux-gnu g++-aarch64-linux-gnu gcc
617s gcc-13 gcc-13-aarch64-linux-gnu gcc-aarch64-linux-gnu gfortran gfortran-13
617s gfortran-13-aarch64-linux-gnu gfortran-aarch64-linux-gnu icu-devtools
617s javascript-common libasan8 libatomic1 libblas-dev libblas3 libbz2-dev
617s libc-dev-bin libc6-dev libcairo2 libcc1-0 libcrypt-dev libcurl4t64
617s libdatrie1 libdeflate0 libfontconfig1 libgcc-13-dev libgfortran-13-dev
617s libgfortran5 libgomp1 libgraphite2-3 libharfbuzz0b libhwasan0 libice6
617s libicu-dev libisl23 libitm1 libjbig0 libjpeg-dev libjpeg-turbo8
617s libjpeg-turbo8-dev libjpeg8 libjpeg8-dev libjs-bootstrap libjs-bootstrap4
617s libjs-d3 libjs-es5-shim libjs-highlight.js libjs-jquery
617s libjs-jquery-datatables libjs-jquery-selectize.js libjs-jquery-ui libjs-json
617s libjs-mathjax libjs-microplugin.js libjs-modernizr libjs-popper.js
617s libjs-prettify libjs-sifter.js libjs-twitter-bootstrap-datepicker
617s liblapack-dev liblapack3 liblerc4 liblsan0 liblua5.4-0 liblzma-dev libmpc3
617s libncurses-dev libnsl-dev libpango-1.0-0 libpangocairo-1.0-0
617s libpangoft2-1.0-0 libpaper-utils libpaper1 libpcre2-16-0 libpcre2-32-0
618s libpcre2-dev libpcre2-posix3 libpixman-1-0 libpkgconf3 libpng-dev
618s libpng16-16t64 libpsl5t64 libreadline-dev libreadline8t64 libsharpyuv0
618s libsm6 libstdc++-13-dev libtcl8.6 libthai-data libthai0 libtiff6
618s libtirpc-dev libtirpc3t64 libtk8.6 libtsan2 libubsan1 libwebp7
618s libxcb-render0 libxcb-shm0 libxft2 libxrender1 libxss1 libxt6t64
618s linux-libc-dev littler node-bootstrap-sass node-html5shiv node-normalize.css
618s pandoc pandoc-data pkg-config pkg-r-autopkgtest pkgconf pkgconf-bin
618s r-base-core r-base-dev r-cran-base64enc r-cran-bslib r-cran-cachem
618s r-cran-cli r-cran-commonmark r-cran-crayon r-cran-diffobj r-cran-digest
618s r-cran-ellipsis r-cran-evaluate r-cran-fastmap r-cran-fontawesome r-cran-fs
618s r-cran-glue r-cran-highr r-cran-htmltools r-cran-httpuv r-cran-jquerylib
618s r-cran-jsonlite r-cran-knitr r-cran-later r-cran-lifecycle r-cran-littler
618s r-cran-magrittr r-cran-memoise r-cran-mime r-cran-pkgkitten r-cran-promises
618s r-cran-r6 r-cran-rappdirs r-cran-rcpp r-cran-rlang r-cran-rmarkdown
618s r-cran-sass r-cran-shiny r-cran-sourcetools r-cran-stringi r-cran-stringr
618s r-cran-tinytex r-cran-vctrs r-cran-withr r-cran-xfun r-cran-xtable
618s r-cran-yaml rpcsvc-proto unzip x11-common xdg-utils zip zlib1g-dev
618s Suggested packages:
618s cpp-doc gcc-13-locales cpp-13-doc debtags gcc-13-doc gcc-multilib
618s manpages-dev autoconf automake libtool flex bison gdb gcc-doc
618s gdb-aarch64-linux-gnu gfortran-doc gfortran-13-doc libcoarrays-dev apache2
618s | lighttpd | httpd liblapack-doc glibc-doc icu-doc libjs-jquery-ui-docs
618s fonts-mathjax-extras fonts-stix libjs-mathjax-doc liblzma-doc ncurses-doc
618s readline-doc libstdc++-13-doc tcl8.6 tk8.6 nodejs texlive-latex-recommended
618s texlive-xetex texlive-luatex pandoc-citeproc texlive-latex-extra context
618s wkhtmltopdf librsvg2-bin groff ghc php python ruby libjs-katex
618s citation-style-language-styles elpa-ess r-doc-info | r-doc-pdf r-mathlib
618s r-base-html texlive-base texlive-latex-base texlive-plain-generic
618s texlive-fonts-recommended texlive-fonts-extra texlive-extra-utils texinfo
618s r-cran-rstudioapi r-cran-markdown r-cran-testthat r-cran-getopt r-cran-covr
618s r-cran-httr r-cran-roxygen2 r-cran-inline r-cran-callr r-cran-plm r-cran-zoo
618s r-cran-survival
618s Recommended packages:
618s bzip2-doc manpages manpages-dev libc-devtools node-jquery libpng-tools
618s r-recommended r-doc-html r-cran-curl r-cran-ggplot2 r-cran-testthat
618s r-cran-thematic r-cran-callr r-cran-covr r-cran-htmlwidgets r-cran-mockery
618s r-cran-processx r-cran-ps r-cran-rprojroot r-cran-rstudioapi r-cran-tibble
618s r-cran-whoami r-cran-xml2 r-cran-lattice r-cran-dplyr r-cran-rsvg
618s r-cran-pillar r-cran-spelling r-cran-dbi r-cran-rsqlite r-cran-waldo
618s r-cran-testit r-cran-cairo r-cran-markdown r-cran-ragg r-cran-httr
618s r-cran-r.rsp r-cran-sf r-cran-codetools r-cran-formatr r-cran-gridsvg
618s r-cran-jpeg r-cran-magick r-cran-png r-cran-reticulate r-cran-rgl
618s r-cran-tikzdevice r-cran-webshot r-cran-svglite node-highlight.js
618s r-cran-lintr r-cran-tidyverse r-cran-future r-cran-purrr r-cran-usethis
618s r-cran-dygraphs r-cran-rsconnect r-cran-downlit r-cran-bit64 r-cran-generics
618s r-cran-pkgdown r-cran-zeallot r-cran-remotes r-cran-renv r-cran-runit
618s libfile-mimeinfo-perl libnet-dbus-perl libx11-protocol-perl x11-utils
618s x11-xserver-utils
618s The following packages will be REMOVED:
618s libcurl4 libpng16-16 libpsl5 libreadline8 libtirpc3
618s The following NEW packages will be installed:
618s autopkgtest-satdep build-essential cpp cpp-13 cpp-13-aarch64-linux-gnu
618s cpp-aarch64-linux-gnu dctrl-tools fontconfig fontconfig-config
618s fonts-dejavu-core fonts-dejavu-mono fonts-font-awesome
618s fonts-glyphicons-halflings fonts-mathjax g++ g++-13 g++-13-aarch64-linux-gnu
618s g++-aarch64-linux-gnu gcc gcc-13 gcc-13-aarch64-linux-gnu
618s gcc-aarch64-linux-gnu gfortran gfortran-13 gfortran-13-aarch64-linux-gnu
618s gfortran-aarch64-linux-gnu icu-devtools javascript-common libasan8
618s libatomic1 libblas-dev libblas3 libbz2-dev libc-dev-bin libc6-dev libcairo2
618s libcc1-0 libcrypt-dev libcurl4t64 libdatrie1 libdeflate0 libfontconfig1
618s libgcc-13-dev libgfortran-13-dev libgfortran5 libgomp1 libgraphite2-3
618s libharfbuzz0b libhwasan0 libice6 libicu-dev libisl23 libitm1 libjbig0
618s libjpeg-dev libjpeg-turbo8 libjpeg-turbo8-dev libjpeg8 libjpeg8-dev
618s libjs-bootstrap libjs-bootstrap4 libjs-d3 libjs-es5-shim libjs-highlight.js
618s libjs-jquery libjs-jquery-datatables libjs-jquery-selectize.js
618s libjs-jquery-ui libjs-json libjs-mathjax libjs-microplugin.js
618s libjs-modernizr libjs-popper.js libjs-prettify libjs-sifter.js
618s libjs-twitter-bootstrap-datepicker liblapack-dev liblapack3 liblerc4
618s liblsan0 liblua5.4-0 liblzma-dev libmpc3 libncurses-dev libnsl-dev
618s libpango-1.0-0 libpangocairo-1.0-0 libpangoft2-1.0-0 libpaper-utils
618s libpaper1 libpcre2-16-0 libpcre2-32-0 libpcre2-dev libpcre2-posix3
618s libpixman-1-0 libpkgconf3 libpng-dev libpng16-16t64 libpsl5t64
618s libreadline-dev libreadline8t64 libsharpyuv0 libsm6 libstdc++-13-dev
618s libtcl8.6 libthai-data libthai0 libtiff6 libtirpc-dev libtirpc3t64 libtk8.6
618s libtsan2 libubsan1 libwebp7 libxcb-render0 libxcb-shm0 libxft2 libxrender1
618s libxss1 libxt6t64 linux-libc-dev littler node-bootstrap-sass node-html5shiv
618s node-normalize.css pandoc pandoc-data pkg-config pkg-r-autopkgtest pkgconf
618s pkgconf-bin r-base-core r-base-dev r-cran-base64enc r-cran-bslib
618s r-cran-cachem r-cran-cli r-cran-commonmark r-cran-crayon r-cran-diffobj
618s r-cran-digest r-cran-ellipsis r-cran-evaluate r-cran-fastmap
618s r-cran-fontawesome r-cran-fs r-cran-glue r-cran-highr r-cran-htmltools
618s r-cran-httpuv r-cran-jquerylib r-cran-jsonlite r-cran-knitr r-cran-later
618s r-cran-lifecycle r-cran-littler r-cran-magrittr r-cran-memoise r-cran-mime
618s r-cran-pkgkitten r-cran-promises r-cran-r6 r-cran-rappdirs r-cran-rcpp
618s r-cran-rlang r-cran-rmarkdown r-cran-sass r-cran-shiny r-cran-sourcetools
618s r-cran-stringi r-cran-stringr r-cran-tinytex r-cran-vctrs r-cran-withr
618s r-cran-xfun r-cran-xtable r-cran-yaml rpcsvc-proto unzip x11-common
618s xdg-utils zip zlib1g-dev
618s The following packages will be upgraded:
618s curl
618s 1 upgraded, 183 newly installed, 5 to remove and 0 not upgraded.
618s Need to get 196 MB/196 MB of archives.
618s After this operation, 760 MB of additional disk space will be used.
618s Get:1 /tmp/autopkgtest.5QiPmk/2-autopkgtest-satdep.deb autopkgtest-satdep arm64 0 [732 B]
618s Get:2 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libpsl5t64 arm64 0.21.2-1.1 [57.4 kB]
618s Get:3 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 curl arm64 8.5.0-2ubuntu7 [222 kB]
618s Get:4 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libcurl4t64 arm64 8.5.0-2ubuntu7 [332 kB]
618s Get:5 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libpng16-16t64 arm64 1.6.43-3 [185 kB]
618s Get:6 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libreadline8t64 arm64 8.2-3.1 [153 kB]
618s Get:7 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libtirpc3t64 arm64 1.3.4+ds-1.1 [83.5 kB]
618s Get:8 http://ftpmaster.internal/ubuntu noble/main arm64 libc-dev-bin arm64 2.39-0ubuntu2 [19.7 kB]
618s Get:9 http://ftpmaster.internal/ubuntu noble/main arm64 linux-libc-dev arm64 6.8.0-11.11 [1569 kB]
618s Get:10 http://ftpmaster.internal/ubuntu noble/main arm64 libcrypt-dev arm64 1:4.4.36-4 [136 kB]
618s Get:11 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libtirpc-dev arm64 1.3.4+ds-1.1 [201 kB]
618s Get:12 http://ftpmaster.internal/ubuntu noble/main arm64 libnsl-dev arm64 1.3.0-3 [71.9 kB]
618s Get:13 http://ftpmaster.internal/ubuntu noble/main arm64 rpcsvc-proto arm64 1.4.2-0ubuntu6 [65.4 kB]
618s Get:14 http://ftpmaster.internal/ubuntu noble/main arm64 libc6-dev arm64 2.39-0ubuntu2 [1596 kB]
618s Get:15 http://ftpmaster.internal/ubuntu noble/main arm64 libisl23 arm64 0.26-3 [713 kB]
618s Get:16 http://ftpmaster.internal/ubuntu noble/main arm64 libmpc3 arm64 1.3.1-1 [55.3 kB]
618s Get:17 http://ftpmaster.internal/ubuntu noble/main arm64 cpp-13-aarch64-linux-gnu arm64 13.2.0-17ubuntu2 [10.3 MB]
619s Get:18 http://ftpmaster.internal/ubuntu noble/main arm64 cpp-13 arm64 13.2.0-17ubuntu2 [1028 B]
619s Get:19 http://ftpmaster.internal/ubuntu noble/main arm64 cpp-aarch64-linux-gnu arm64 4:13.2.0-7ubuntu1 [5316 B]
619s Get:20 http://ftpmaster.internal/ubuntu noble/main arm64 cpp arm64 4:13.2.0-7ubuntu1 [22.4 kB]
619s Get:21 http://ftpmaster.internal/ubuntu noble/main arm64 libcc1-0 arm64 14-20240303-1ubuntu1 [44.7 kB]
619s Get:22 http://ftpmaster.internal/ubuntu noble/main arm64 libgomp1 arm64 14-20240303-1ubuntu1 [144 kB]
619s Get:23 http://ftpmaster.internal/ubuntu noble/main arm64 libitm1 arm64 14-20240303-1ubuntu1 [27.7 kB]
619s Get:24 http://ftpmaster.internal/ubuntu noble/main arm64 libatomic1 arm64 14-20240303-1ubuntu1 [11.4 kB]
619s Get:25 http://ftpmaster.internal/ubuntu noble/main arm64 libasan8 arm64 14-20240303-1ubuntu1 [2919 kB]
619s Get:26 http://ftpmaster.internal/ubuntu noble/main arm64 liblsan0 arm64 14-20240303-1ubuntu1 [1282 kB]
619s Get:27 http://ftpmaster.internal/ubuntu noble/main arm64 libtsan2 arm64 14-20240303-1ubuntu1 [2687 kB]
619s Get:28 http://ftpmaster.internal/ubuntu noble/main arm64 libubsan1 arm64 14-20240303-1ubuntu1 [1151 kB]
619s Get:29 http://ftpmaster.internal/ubuntu noble/main arm64 libhwasan0 arm64 14-20240303-1ubuntu1 [1597 kB]
619s Get:30 http://ftpmaster.internal/ubuntu noble/main arm64 libgcc-13-dev arm64 13.2.0-17ubuntu2 [2464 kB]
619s Get:31 http://ftpmaster.internal/ubuntu noble/main arm64 gcc-13-aarch64-linux-gnu arm64 13.2.0-17ubuntu2 [20.1 MB]
619s Get:32 http://ftpmaster.internal/ubuntu noble/main arm64 gcc-13 arm64 13.2.0-17ubuntu2 [467 kB]
619s Get:33 http://ftpmaster.internal/ubuntu noble/main arm64 gcc-aarch64-linux-gnu arm64 4:13.2.0-7ubuntu1 [1198 B]
619s Get:34 http://ftpmaster.internal/ubuntu noble/main arm64 gcc arm64 4:13.2.0-7ubuntu1 [5018 B]
619s Get:35 http://ftpmaster.internal/ubuntu noble/main arm64 libstdc++-13-dev arm64 13.2.0-17ubuntu2 [2322 kB]
619s Get:36 http://ftpmaster.internal/ubuntu noble/main arm64 g++-13-aarch64-linux-gnu arm64 13.2.0-17ubuntu2 [11.7 MB]
620s Get:37 http://ftpmaster.internal/ubuntu noble/main arm64 g++-13 arm64 13.2.0-17ubuntu2 [14.4 kB]
620s Get:38 http://ftpmaster.internal/ubuntu noble/main arm64 g++-aarch64-linux-gnu arm64 4:13.2.0-7ubuntu1 [962 B]
620s Get:39 http://ftpmaster.internal/ubuntu noble/main arm64 g++ arm64 4:13.2.0-7ubuntu1 [1082 B]
620s Get:40 http://ftpmaster.internal/ubuntu noble/main arm64 build-essential arm64 12.10ubuntu1 [4932 B]
620s Get:41 http://ftpmaster.internal/ubuntu noble/main arm64 dctrl-tools arm64 2.24-3build2 [65.2 kB]
620s Get:42 http://ftpmaster.internal/ubuntu noble/main arm64 fonts-dejavu-mono all 2.37-8 [502 kB]
620s Get:43 http://ftpmaster.internal/ubuntu noble/main arm64 fonts-dejavu-core all 2.37-8 [835 kB]
620s Get:44 http://ftpmaster.internal/ubuntu noble/main arm64 fontconfig-config arm64 2.15.0-1ubuntu1 [37.0 kB]
620s Get:45 http://ftpmaster.internal/ubuntu noble/main arm64 libfontconfig1 arm64 2.15.0-1ubuntu1 [142 kB]
620s Get:46 http://ftpmaster.internal/ubuntu noble/main arm64 fontconfig arm64 2.15.0-1ubuntu1 [190 kB]
620s Get:47 http://ftpmaster.internal/ubuntu noble/main arm64 fonts-font-awesome all 5.0.10+really4.7.0~dfsg-4.1 [516 kB]
620s Get:48 http://ftpmaster.internal/ubuntu noble/universe arm64 fonts-glyphicons-halflings all 1.009~3.4.1+dfsg-3 [118 kB]
620s Get:49 http://ftpmaster.internal/ubuntu noble/main arm64 fonts-mathjax all 2.7.9+dfsg-1 [2208 kB]
620s Get:50 http://ftpmaster.internal/ubuntu noble/main arm64 libgfortran5 arm64 14-20240303-1ubuntu1 [444 kB]
620s Get:51 http://ftpmaster.internal/ubuntu noble/main arm64 libgfortran-13-dev arm64 13.2.0-17ubuntu2 [478 kB]
620s Get:52 http://ftpmaster.internal/ubuntu noble/main arm64 gfortran-13-aarch64-linux-gnu arm64 13.2.0-17ubuntu2 [10.8 MB]
620s Get:53 http://ftpmaster.internal/ubuntu noble/main arm64 gfortran-13 arm64 13.2.0-17ubuntu2 [10.3 kB]
620s Get:54 http://ftpmaster.internal/ubuntu noble/main arm64 gfortran-aarch64-linux-gnu arm64 4:13.2.0-7ubuntu1 [1022 B]
620s Get:55 http://ftpmaster.internal/ubuntu noble/main arm64 gfortran arm64 4:13.2.0-7ubuntu1 [1164 B]
620s Get:56 http://ftpmaster.internal/ubuntu noble/main arm64 icu-devtools arm64 74.2-1ubuntu1 [209 kB]
620s Get:57 http://ftpmaster.internal/ubuntu noble/main arm64 javascript-common all 11+nmu1 [5936 B]
620s Get:58 http://ftpmaster.internal/ubuntu noble/main arm64 libblas3 arm64 3.12.0-3 [143 kB]
620s Get:59 http://ftpmaster.internal/ubuntu noble/main arm64 libblas-dev arm64 3.12.0-3 [111 kB]
620s Get:60 http://ftpmaster.internal/ubuntu noble/main arm64 libbz2-dev arm64 1.0.8-5ubuntu1 [35.8 kB]
620s Get:61 http://ftpmaster.internal/ubuntu noble/main arm64 libpixman-1-0 arm64 0.42.2-1 [193 kB]
620s Get:62 http://ftpmaster.internal/ubuntu noble/main arm64 libxcb-render0 arm64 1.15-1 [16.1 kB]
620s Get:63 http://ftpmaster.internal/ubuntu noble/main arm64 libxcb-shm0 arm64 1.15-1 [5780 B]
620s Get:64 http://ftpmaster.internal/ubuntu noble/main arm64 libxrender1 arm64 1:0.9.10-1.1 [19.1 kB]
620s Get:65 http://ftpmaster.internal/ubuntu noble/main arm64 libcairo2 arm64 1.18.0-1 [550 kB]
620s Get:66 http://ftpmaster.internal/ubuntu noble/main arm64 libdatrie1 arm64 0.2.13-3 [21.7 kB]
620s Get:67 http://ftpmaster.internal/ubuntu noble/main arm64 libdeflate0 arm64 1.19-1 [43.4 kB]
620s Get:68 http://ftpmaster.internal/ubuntu noble/main arm64 libgraphite2-3 arm64 1.3.14-2 [81.5 kB]
620s Get:69 http://ftpmaster.internal/ubuntu noble/main arm64 libharfbuzz0b arm64 8.3.0-2 [463 kB]
620s Get:70 http://ftpmaster.internal/ubuntu noble/main arm64 x11-common all 1:7.7+23ubuntu2 [23.4 kB]
620s Get:71 http://ftpmaster.internal/ubuntu noble/main arm64 libice6 arm64 2:1.0.10-1build2 [41.7 kB]
620s Get:72 http://ftpmaster.internal/ubuntu noble/main arm64 libicu-dev arm64 74.2-1ubuntu1 [11.9 MB]
621s Get:73 http://ftpmaster.internal/ubuntu noble/main arm64 libjpeg-turbo8 arm64 2.1.5-2ubuntu1 [160 kB]
621s Get:74 http://ftpmaster.internal/ubuntu noble/main arm64 libjpeg-turbo8-dev arm64 2.1.5-2ubuntu1 [304 kB]
621s Get:75 http://ftpmaster.internal/ubuntu noble/main arm64 libjpeg8 arm64 8c-2ubuntu11 [2148 B]
621s Get:76 http://ftpmaster.internal/ubuntu noble/main arm64 libjpeg8-dev arm64 8c-2ubuntu11 [1484 B]
621s Get:77 http://ftpmaster.internal/ubuntu noble/main arm64 libjpeg-dev arm64 8c-2ubuntu11 [1482 B]
621s Get:78 http://ftpmaster.internal/ubuntu noble/universe arm64 libjs-bootstrap all 3.4.1+dfsg-3 [129 kB]
621s Get:79 http://ftpmaster.internal/ubuntu noble/universe arm64 libjs-popper.js all 1.16.1+ds-6 [54.1 kB]
621s Get:80 http://ftpmaster.internal/ubuntu noble/universe arm64 libjs-bootstrap4 all 4.6.1+dfsg1-4 [537 kB]
621s Get:81 http://ftpmaster.internal/ubuntu noble/universe arm64 libjs-d3 all 3.5.17-4 [132 kB]
621s Get:82 http://ftpmaster.internal/ubuntu noble/universe arm64 libjs-es5-shim all 4.6.7-2 [39.8 kB]
621s Get:83 http://ftpmaster.internal/ubuntu noble/universe arm64 libjs-highlight.js all 9.18.5+dfsg1-2 [385 kB]
621s Get:84 http://ftpmaster.internal/ubuntu noble/main arm64 libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [328 kB]
621s Get:85 http://ftpmaster.internal/ubuntu noble/universe arm64 libjs-jquery-datatables all 1.11.5+dfsg-2 [146 kB]
621s Get:86 http://ftpmaster.internal/ubuntu noble/universe arm64 libjs-sifter.js all 0.6.0+dfsg-3 [12.6 kB]
621s Get:87 http://ftpmaster.internal/ubuntu noble/universe arm64 libjs-microplugin.js all 0.0.3+dfsg-1.1 [3712 B]
621s Get:88 http://ftpmaster.internal/ubuntu noble/universe arm64 libjs-jquery-selectize.js all 0.12.6+dfsg-1.1 [51.0 kB]
621s Get:89 http://ftpmaster.internal/ubuntu noble/universe arm64 libjs-jquery-ui all 1.13.2+dfsg-1 [252 kB]
621s Get:90 http://ftpmaster.internal/ubuntu noble/universe arm64 libjs-json all 0~20221030+~1.0.8-1 [20.6 kB]
621s Get:91 http://ftpmaster.internal/ubuntu noble/universe arm64 libjs-prettify all 2015.12.04+dfsg-1.1 [39.3 kB]
621s Get:92 http://ftpmaster.internal/ubuntu noble/main arm64 liblapack3 arm64 3.12.0-3 [2241 kB]
621s Get:93 http://ftpmaster.internal/ubuntu noble/main arm64 liblapack-dev arm64 3.12.0-3 [4293 kB]
621s Get:94 http://ftpmaster.internal/ubuntu noble/main arm64 liblerc4 arm64 4.0.0+ds-4ubuntu1 [153 kB]
621s Get:95 http://ftpmaster.internal/ubuntu noble/main arm64 liblua5.4-0 arm64 5.4.6-3 [158 kB]
621s Get:96 http://ftpmaster.internal/ubuntu noble/main arm64 libncurses-dev arm64 6.4+20240113-1ubuntu1 [385 kB]
621s Get:97 http://ftpmaster.internal/ubuntu noble/main arm64 libthai-data all 0.1.29-2 [158 kB]
621s Get:98 http://ftpmaster.internal/ubuntu noble/main arm64 libthai0 arm64 0.1.29-2 [18.1 kB]
621s Get:99 http://ftpmaster.internal/ubuntu noble/main arm64 libpango-1.0-0 arm64 1.51.0+ds-4 [226 kB]
621s Get:100 http://ftpmaster.internal/ubuntu noble/main arm64 libpangoft2-1.0-0 arm64 1.51.0+ds-4 [41.2 kB]
621s Get:101 http://ftpmaster.internal/ubuntu noble/main arm64 libpangocairo-1.0-0 arm64 1.51.0+ds-4 [27.6 kB]
621s Get:102 http://ftpmaster.internal/ubuntu noble/main arm64 libpaper1 arm64 1.1.29 [13.1 kB]
621s Get:103 http://ftpmaster.internal/ubuntu noble/main arm64 libpaper-utils arm64 1.1.29 [8480 B]
621s Get:104 http://ftpmaster.internal/ubuntu noble/main arm64 libpcre2-16-0 arm64 10.42-4ubuntu1 [195 kB]
621s Get:105 http://ftpmaster.internal/ubuntu noble/main arm64 libpcre2-32-0 arm64 10.42-4ubuntu1 [183 kB]
622s Get:106 http://ftpmaster.internal/ubuntu noble/main arm64 libpcre2-posix3 arm64 10.42-4ubuntu1 [6654 B]
622s Get:107 http://ftpmaster.internal/ubuntu noble/main arm64 libpcre2-dev arm64 10.42-4ubuntu1 [679 kB]
622s Get:108 http://ftpmaster.internal/ubuntu noble/main arm64 libpkgconf3 arm64 1.8.1-2 [31.2 kB]
622s Get:109 http://ftpmaster.internal/ubuntu noble/main arm64 zlib1g-dev arm64 1:1.3.dfsg-3ubuntu1 [895 kB]
622s Get:110 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libpng-dev arm64 1.6.43-3 [267 kB]
622s Get:111 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libreadline-dev arm64 8.2-3.1 [177 kB]
622s Get:112 http://ftpmaster.internal/ubuntu noble/main arm64 libsharpyuv0 arm64 1.3.2-0.4 [14.4 kB]
622s Get:113 http://ftpmaster.internal/ubuntu noble/main arm64 libsm6 arm64 2:1.2.3-1build2 [16.1 kB]
622s Get:114 http://ftpmaster.internal/ubuntu noble/main arm64 libtcl8.6 arm64 8.6.13+dfsg-2 [980 kB]
622s Get:115 http://ftpmaster.internal/ubuntu noble/main arm64 libjbig0 arm64 2.1-6.1ubuntu1 [28.9 kB]
622s Get:116 http://ftpmaster.internal/ubuntu noble/main arm64 libwebp7 arm64 1.3.2-0.4 [191 kB]
622s Get:117 http://ftpmaster.internal/ubuntu noble/main arm64 libtiff6 arm64 4.5.1+git230720-3ubuntu1 [226 kB]
622s Get:118 http://ftpmaster.internal/ubuntu noble/main arm64 libxft2 arm64 2.3.6-1 [43.3 kB]
622s Get:119 http://ftpmaster.internal/ubuntu noble/main arm64 libxss1 arm64 1:1.2.3-1build2 [8252 B]
622s Get:120 http://ftpmaster.internal/ubuntu noble/main arm64 libtk8.6 arm64 8.6.13-2 [760 kB]
622s Get:121 http://ftpmaster.internal/ubuntu noble-proposed/main arm64 libxt6t64 arm64 1:1.2.1-1.2 [168 kB]
622s Get:122 http://ftpmaster.internal/ubuntu noble/main arm64 zip arm64 3.0-13 [172 kB]
622s Get:123 http://ftpmaster.internal/ubuntu noble/main arm64 unzip arm64 6.0-28ubuntu3 [171 kB]
622s Get:124 http://ftpmaster.internal/ubuntu noble/main arm64 xdg-utils all 1.1.3-4.1ubuntu3 [62.0 kB]
622s Get:125 http://ftpmaster.internal/ubuntu noble-proposed/universe arm64 r-base-core arm64 4.3.3-2build1 [26.8 MB]
622s Get:126 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-littler arm64 0.3.19-1 [93.4 kB]
622s Get:127 http://ftpmaster.internal/ubuntu noble/universe arm64 littler all 0.3.19-1 [2472 B]
622s Get:128 http://ftpmaster.internal/ubuntu noble/universe arm64 node-bootstrap-sass all 3.4.3-2 [187 kB]
622s Get:129 http://ftpmaster.internal/ubuntu noble/universe arm64 node-html5shiv all 3.7.3+dfsg-5 [13.5 kB]
622s Get:130 http://ftpmaster.internal/ubuntu noble/universe arm64 node-normalize.css all 8.0.1-5 [10.8 kB]
622s Get:131 http://ftpmaster.internal/ubuntu noble/universe arm64 pandoc-data all 3.1.3-1 [92.4 kB]
622s Get:132 http://ftpmaster.internal/ubuntu noble/universe arm64 pandoc arm64 3.1.3+ds-2 [27.7 MB]
623s Get:133 http://ftpmaster.internal/ubuntu noble/main arm64 pkgconf-bin arm64 1.8.1-2 [20.4 kB]
623s Get:134 http://ftpmaster.internal/ubuntu noble/main arm64 pkgconf arm64 1.8.1-2 [16.7 kB]
623s Get:135 http://ftpmaster.internal/ubuntu noble/main arm64 pkg-config arm64 1.8.1-2 [7170 B]
623s Get:136 http://ftpmaster.internal/ubuntu noble/main arm64 liblzma-dev arm64 5.4.5-0.3 [209 kB]
623s Get:137 http://ftpmaster.internal/ubuntu noble-proposed/universe arm64 r-base-dev all 4.3.3-2build1 [4334 B]
623s Get:138 http://ftpmaster.internal/ubuntu noble/universe arm64 pkg-r-autopkgtest all 20231212ubuntu1 [6448 B]
623s Get:139 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-base64enc arm64 0.1-3-3 [27.4 kB]
623s Get:140 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-rlang arm64 1.1.3-1 [1663 kB]
623s Get:141 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-fastmap arm64 1.1.1-1 [69.6 kB]
623s Get:142 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-cachem arm64 1.0.8-1 [72.3 kB]
623s Get:143 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-digest arm64 0.6.34-1 [182 kB]
623s Get:144 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-ellipsis arm64 0.3.2-2 [35.5 kB]
623s Get:145 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-htmltools arm64 0.5.7-1 [369 kB]
623s Get:146 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-jquerylib all 0.1.4+dfsg-4 [13.5 kB]
623s Get:147 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-jsonlite arm64 1.8.8+dfsg-1 [441 kB]
623s Get:148 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-cli arm64 3.6.2-1 [1377 kB]
623s Get:149 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-glue arm64 1.7.0-1 [154 kB]
623s Get:150 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-lifecycle all 1.0.4+dfsg-1 [110 kB]
623s Get:151 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-memoise all 2.0.1-1 [53.9 kB]
623s Get:152 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-mime arm64 0.12-1 [35.8 kB]
623s Get:153 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-fs arm64 1.6.3+dfsg-1 [227 kB]
623s Get:154 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-r6 all 2.5.1-1 [99.0 kB]
623s Get:155 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-rappdirs arm64 0.3.3-1 [47.5 kB]
623s Get:156 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-sass arm64 0.4.8+dfsg-1 [952 kB]
623s Get:157 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-bslib all 0.6.1+dfsg-1 [5138 kB]
623s Get:158 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-commonmark arm64 1.9.1-1 [127 kB]
623s Get:159 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-crayon all 1.5.2-1 [164 kB]
623s Get:160 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-diffobj arm64 0.3.5-1 [1116 kB]
623s Get:161 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-evaluate all 0.23-1 [90.2 kB]
623s Get:162 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-fontawesome all 0.5.2-1 [1300 kB]
623s Get:163 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-xfun arm64 0.41+dfsg-1 [415 kB]
623s Get:164 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-highr all 0.10+dfsg-1 [38.3 kB]
623s Get:165 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-pkgkitten all 0.2.3-1 [25.1 kB]
623s Get:166 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-rcpp arm64 1.0.12-1 [1971 kB]
624s Get:167 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-later arm64 1.3.2+dfsg-1 [120 kB]
624s Get:168 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-magrittr arm64 2.0.3-1 [154 kB]
624s Get:169 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-promises arm64 1.2.1+dfsg-1 [282 kB]
624s Get:170 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-httpuv arm64 1.6.14+dfsg-1 [496 kB]
624s Get:171 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-yaml arm64 2.3.8-1 [107 kB]
624s Get:172 http://ftpmaster.internal/ubuntu noble/main arm64 libjs-mathjax all 2.7.9+dfsg-1 [5665 kB]
624s Get:173 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-knitr all 1.45+dfsg-1 [917 kB]
624s Get:174 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-stringi arm64 1.8.3-1 [869 kB]
624s Get:175 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-vctrs arm64 0.6.5-1 [1327 kB]
624s Get:176 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-stringr all 1.5.1-1 [290 kB]
624s Get:177 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-tinytex all 0.49-1 [141 kB]
624s Get:178 http://ftpmaster.internal/ubuntu noble/universe arm64 libjs-modernizr all 2.6.2+ds1-5 [48.3 kB]
624s Get:179 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-xtable all 1:1.8-4-2 [689 kB]
624s Get:180 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-sourcetools arm64 0.1.7-1-1 [47.2 kB]
624s Get:181 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-withr all 2.5.0-1 [225 kB]
624s Get:182 http://ftpmaster.internal/ubuntu noble/universe arm64 libjs-twitter-bootstrap-datepicker all 1.3.1+dfsg1-4.1 [28.5 kB]
624s Get:183 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-shiny all 1.8.0+dfsg-1 [2762 kB]
624s Get:184 http://ftpmaster.internal/ubuntu noble/universe arm64 r-cran-rmarkdown all 2.25+dfsg-3 [1481 kB]
625s Preconfiguring packages ...
625s Fetched 196 MB in 6s (31.2 MB/s)
625s dpkg: libpsl5:arm64: dependency problems, but removing anyway as you requested:
625s wget depends on libpsl5 (>= 0.16.0).
625s libcurl4:arm64 depends on libpsl5 (>= 0.16.0).
625s libcurl3-gnutls:arm64 depends on libpsl5 (>= 0.16.0).
625s
625s (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 ... 74774 files and directories currently installed.)
625s Removing libpsl5:arm64 (0.21.2-1build1) ...
626s Selecting previously unselected package libpsl5t64:arm64.
626s (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 ... 74769 files and directories currently installed.)
626s Preparing to unpack .../libpsl5t64_0.21.2-1.1_arm64.deb ...
626s Unpacking libpsl5t64:arm64 (0.21.2-1.1) ...
626s Preparing to unpack .../curl_8.5.0-2ubuntu7_arm64.deb ...
626s Unpacking curl (8.5.0-2ubuntu7) over (8.5.0-2ubuntu2) ...
626s (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 ... 74775 files and directories currently installed.)
626s Removing libcurl4:arm64 (8.5.0-2ubuntu2) ...
626s Selecting previously unselected package libcurl4t64:arm64.
626s (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 ... 74770 files and directories currently installed.)
626s Preparing to unpack .../libcurl4t64_8.5.0-2ubuntu7_arm64.deb ...
626s Unpacking libcurl4t64:arm64 (8.5.0-2ubuntu7) ...
626s dpkg: libpng16-16:arm64: dependency problems, but removing anyway as you requested:
626s libplymouth5:arm64 depends on libpng16-16 (>= 1.6.2).
626s libfreetype6:arm64 depends on libpng16-16 (>= 1.6.2-1).
626s
626s (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 ... 74776 files and directories currently installed.)
626s Removing libpng16-16:arm64 (1.6.43-1) ...
626s Selecting previously unselected package libpng16-16t64:arm64.
626s (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 ... 74766 files and directories currently installed.)
626s Preparing to unpack .../libpng16-16t64_1.6.43-3_arm64.deb ...
626s Unpacking libpng16-16t64:arm64 (1.6.43-3) ...
626s dpkg: libreadline8:arm64: dependency problems, but removing anyway as you requested:
626s parted depends on libreadline8 (>= 6.0).
626s libpython3.12-stdlib:arm64 depends on libreadline8 (>= 7.0~beta).
626s gpgsm depends on libreadline8 (>= 6.0).
626s gpgconf depends on libreadline8 (>= 6.0).
626s gpg depends on libreadline8 (>= 6.0).
626s gawk depends on libreadline8 (>= 6.0).
626s fdisk depends on libreadline8 (>= 6.0).
626s
626s (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 ... 74777 files and directories currently installed.)
626s Removing libreadline8:arm64 (8.2-3) ...
626s Selecting previously unselected package libreadline8t64:arm64.
626s (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 ... 74765 files and directories currently installed.)
626s Preparing to unpack .../libreadline8t64_8.2-3.1_arm64.deb ...
626s Adding 'diversion of /lib/aarch64-linux-gnu/libhistory.so.8 to /lib/aarch64-linux-gnu/libhistory.so.8.usr-is-merged by libreadline8t64'
626s Adding 'diversion of /lib/aarch64-linux-gnu/libhistory.so.8.2 to /lib/aarch64-linux-gnu/libhistory.so.8.2.usr-is-merged by libreadline8t64'
626s Adding 'diversion of /lib/aarch64-linux-gnu/libreadline.so.8 to /lib/aarch64-linux-gnu/libreadline.so.8.usr-is-merged by libreadline8t64'
626s Adding 'diversion of /lib/aarch64-linux-gnu/libreadline.so.8.2 to /lib/aarch64-linux-gnu/libreadline.so.8.2.usr-is-merged by libreadline8t64'
626s Unpacking libreadline8t64:arm64 (8.2-3.1) ...
626s dpkg: libtirpc3:arm64: dependency problems, but removing anyway as you requested:
626s lsof depends on libtirpc3 (>= 1.0.2).
626s libpython3.12-stdlib:arm64 depends on libtirpc3 (>= 1.0.2).
626s libnss-nisplus:arm64 depends on libtirpc3 (>= 1.0.2).
626s libnsl2:arm64 depends on libtirpc3 (>= 1.0.2).
626s iproute2 depends on libtirpc3 (>= 1.0.2).
626s
626s (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 ... 74785 files and directories currently installed.)
626s Removing libtirpc3:arm64 (1.3.4+ds-1build1) ...
626s Selecting previously unselected package libtirpc3t64:arm64.
626s (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 ... 74779 files and directories currently installed.)
626s Preparing to unpack .../000-libtirpc3t64_1.3.4+ds-1.1_arm64.deb ...
626s Adding 'diversion of /lib/aarch64-linux-gnu/libtirpc.so.3 to /lib/aarch64-linux-gnu/libtirpc.so.3.usr-is-merged by libtirpc3t64'
626s Adding 'diversion of /lib/aarch64-linux-gnu/libtirpc.so.3.0.0 to /lib/aarch64-linux-gnu/libtirpc.so.3.0.0.usr-is-merged by libtirpc3t64'
626s Unpacking libtirpc3t64:arm64 (1.3.4+ds-1.1) ...
627s Selecting previously unselected package libc-dev-bin.
627s Preparing to unpack .../001-libc-dev-bin_2.39-0ubuntu2_arm64.deb ...
627s Unpacking libc-dev-bin (2.39-0ubuntu2) ...
627s Selecting previously unselected package linux-libc-dev:arm64.
627s Preparing to unpack .../002-linux-libc-dev_6.8.0-11.11_arm64.deb ...
627s Unpacking linux-libc-dev:arm64 (6.8.0-11.11) ...
627s Selecting previously unselected package libcrypt-dev:arm64.
627s Preparing to unpack .../003-libcrypt-dev_1%3a4.4.36-4_arm64.deb ...
627s Unpacking libcrypt-dev:arm64 (1:4.4.36-4) ...
627s Selecting previously unselected package libtirpc-dev:arm64.
627s Preparing to unpack .../004-libtirpc-dev_1.3.4+ds-1.1_arm64.deb ...
627s Unpacking libtirpc-dev:arm64 (1.3.4+ds-1.1) ...
627s Selecting previously unselected package libnsl-dev:arm64.
627s Preparing to unpack .../005-libnsl-dev_1.3.0-3_arm64.deb ...
627s Unpacking libnsl-dev:arm64 (1.3.0-3) ...
627s Selecting previously unselected package rpcsvc-proto.
627s Preparing to unpack .../006-rpcsvc-proto_1.4.2-0ubuntu6_arm64.deb ...
627s Unpacking rpcsvc-proto (1.4.2-0ubuntu6) ...
627s Selecting previously unselected package libc6-dev:arm64.
627s Preparing to unpack .../007-libc6-dev_2.39-0ubuntu2_arm64.deb ...
627s Unpacking libc6-dev:arm64 (2.39-0ubuntu2) ...
627s Selecting previously unselected package libisl23:arm64.
627s Preparing to unpack .../008-libisl23_0.26-3_arm64.deb ...
627s Unpacking libisl23:arm64 (0.26-3) ...
627s Selecting previously unselected package libmpc3:arm64.
627s Preparing to unpack .../009-libmpc3_1.3.1-1_arm64.deb ...
627s Unpacking libmpc3:arm64 (1.3.1-1) ...
627s Selecting previously unselected package cpp-13-aarch64-linux-gnu.
627s Preparing to unpack .../010-cpp-13-aarch64-linux-gnu_13.2.0-17ubuntu2_arm64.deb ...
627s Unpacking cpp-13-aarch64-linux-gnu (13.2.0-17ubuntu2) ...
628s Selecting previously unselected package cpp-13.
628s Preparing to unpack .../011-cpp-13_13.2.0-17ubuntu2_arm64.deb ...
628s Unpacking cpp-13 (13.2.0-17ubuntu2) ...
628s Selecting previously unselected package cpp-aarch64-linux-gnu.
628s Preparing to unpack .../012-cpp-aarch64-linux-gnu_4%3a13.2.0-7ubuntu1_arm64.deb ...
628s Unpacking cpp-aarch64-linux-gnu (4:13.2.0-7ubuntu1) ...
628s Selecting previously unselected package cpp.
628s Preparing to unpack .../013-cpp_4%3a13.2.0-7ubuntu1_arm64.deb ...
628s Unpacking cpp (4:13.2.0-7ubuntu1) ...
628s Selecting previously unselected package libcc1-0:arm64.
628s Preparing to unpack .../014-libcc1-0_14-20240303-1ubuntu1_arm64.deb ...
628s Unpacking libcc1-0:arm64 (14-20240303-1ubuntu1) ...
628s Selecting previously unselected package libgomp1:arm64.
628s Preparing to unpack .../015-libgomp1_14-20240303-1ubuntu1_arm64.deb ...
628s Unpacking libgomp1:arm64 (14-20240303-1ubuntu1) ...
628s Selecting previously unselected package libitm1:arm64.
628s Preparing to unpack .../016-libitm1_14-20240303-1ubuntu1_arm64.deb ...
628s Unpacking libitm1:arm64 (14-20240303-1ubuntu1) ...
628s Selecting previously unselected package libatomic1:arm64.
628s Preparing to unpack .../017-libatomic1_14-20240303-1ubuntu1_arm64.deb ...
628s Unpacking libatomic1:arm64 (14-20240303-1ubuntu1) ...
628s Selecting previously unselected package libasan8:arm64.
628s Preparing to unpack .../018-libasan8_14-20240303-1ubuntu1_arm64.deb ...
628s Unpacking libasan8:arm64 (14-20240303-1ubuntu1) ...
628s Selecting previously unselected package liblsan0:arm64.
628s Preparing to unpack .../019-liblsan0_14-20240303-1ubuntu1_arm64.deb ...
628s Unpacking liblsan0:arm64 (14-20240303-1ubuntu1) ...
628s Selecting previously unselected package libtsan2:arm64.
628s Preparing to unpack .../020-libtsan2_14-20240303-1ubuntu1_arm64.deb ...
628s Unpacking libtsan2:arm64 (14-20240303-1ubuntu1) ...
628s Selecting previously unselected package libubsan1:arm64.
628s Preparing to unpack .../021-libubsan1_14-20240303-1ubuntu1_arm64.deb ...
628s Unpacking libubsan1:arm64 (14-20240303-1ubuntu1) ...
628s Selecting previously unselected package libhwasan0:arm64.
628s Preparing to unpack .../022-libhwasan0_14-20240303-1ubuntu1_arm64.deb ...
628s Unpacking libhwasan0:arm64 (14-20240303-1ubuntu1) ...
628s Selecting previously unselected package libgcc-13-dev:arm64.
628s Preparing to unpack .../023-libgcc-13-dev_13.2.0-17ubuntu2_arm64.deb ...
628s Unpacking libgcc-13-dev:arm64 (13.2.0-17ubuntu2) ...
628s Selecting previously unselected package gcc-13-aarch64-linux-gnu.
628s Preparing to unpack .../024-gcc-13-aarch64-linux-gnu_13.2.0-17ubuntu2_arm64.deb ...
628s Unpacking gcc-13-aarch64-linux-gnu (13.2.0-17ubuntu2) ...
629s Selecting previously unselected package gcc-13.
629s Preparing to unpack .../025-gcc-13_13.2.0-17ubuntu2_arm64.deb ...
629s Unpacking gcc-13 (13.2.0-17ubuntu2) ...
629s Selecting previously unselected package gcc-aarch64-linux-gnu.
629s Preparing to unpack .../026-gcc-aarch64-linux-gnu_4%3a13.2.0-7ubuntu1_arm64.deb ...
629s Unpacking gcc-aarch64-linux-gnu (4:13.2.0-7ubuntu1) ...
629s Selecting previously unselected package gcc.
629s Preparing to unpack .../027-gcc_4%3a13.2.0-7ubuntu1_arm64.deb ...
629s Unpacking gcc (4:13.2.0-7ubuntu1) ...
629s Selecting previously unselected package libstdc++-13-dev:arm64.
629s Preparing to unpack .../028-libstdc++-13-dev_13.2.0-17ubuntu2_arm64.deb ...
629s Unpacking libstdc++-13-dev:arm64 (13.2.0-17ubuntu2) ...
629s Selecting previously unselected package g++-13-aarch64-linux-gnu.
629s Preparing to unpack .../029-g++-13-aarch64-linux-gnu_13.2.0-17ubuntu2_arm64.deb ...
629s Unpacking g++-13-aarch64-linux-gnu (13.2.0-17ubuntu2) ...
629s Selecting previously unselected package g++-13.
629s Preparing to unpack .../030-g++-13_13.2.0-17ubuntu2_arm64.deb ...
629s Unpacking g++-13 (13.2.0-17ubuntu2) ...
629s Selecting previously unselected package g++-aarch64-linux-gnu.
629s Preparing to unpack .../031-g++-aarch64-linux-gnu_4%3a13.2.0-7ubuntu1_arm64.deb ...
629s Unpacking g++-aarch64-linux-gnu (4:13.2.0-7ubuntu1) ...
629s Selecting previously unselected package g++.
630s Preparing to unpack .../032-g++_4%3a13.2.0-7ubuntu1_arm64.deb ...
630s Unpacking g++ (4:13.2.0-7ubuntu1) ...
630s Selecting previously unselected package build-essential.
630s Preparing to unpack .../033-build-essential_12.10ubuntu1_arm64.deb ...
630s Unpacking build-essential (12.10ubuntu1) ...
630s Selecting previously unselected package dctrl-tools.
630s Preparing to unpack .../034-dctrl-tools_2.24-3build2_arm64.deb ...
630s Unpacking dctrl-tools (2.24-3build2) ...
630s Selecting previously unselected package fonts-dejavu-mono.
630s Preparing to unpack .../035-fonts-dejavu-mono_2.37-8_all.deb ...
630s Unpacking fonts-dejavu-mono (2.37-8) ...
630s Selecting previously unselected package fonts-dejavu-core.
630s Preparing to unpack .../036-fonts-dejavu-core_2.37-8_all.deb ...
630s Unpacking fonts-dejavu-core (2.37-8) ...
630s Selecting previously unselected package fontconfig-config.
630s Preparing to unpack .../037-fontconfig-config_2.15.0-1ubuntu1_arm64.deb ...
630s Unpacking fontconfig-config (2.15.0-1ubuntu1) ...
630s Selecting previously unselected package libfontconfig1:arm64.
630s Preparing to unpack .../038-libfontconfig1_2.15.0-1ubuntu1_arm64.deb ...
630s Unpacking libfontconfig1:arm64 (2.15.0-1ubuntu1) ...
630s Selecting previously unselected package fontconfig.
630s Preparing to unpack .../039-fontconfig_2.15.0-1ubuntu1_arm64.deb ...
630s Unpacking fontconfig (2.15.0-1ubuntu1) ...
630s Selecting previously unselected package fonts-font-awesome.
630s Preparing to unpack .../040-fonts-font-awesome_5.0.10+really4.7.0~dfsg-4.1_all.deb ...
630s Unpacking fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ...
630s Selecting previously unselected package fonts-glyphicons-halflings.
630s Preparing to unpack .../041-fonts-glyphicons-halflings_1.009~3.4.1+dfsg-3_all.deb ...
630s Unpacking fonts-glyphicons-halflings (1.009~3.4.1+dfsg-3) ...
630s Selecting previously unselected package fonts-mathjax.
630s Preparing to unpack .../042-fonts-mathjax_2.7.9+dfsg-1_all.deb ...
630s Unpacking fonts-mathjax (2.7.9+dfsg-1) ...
630s Selecting previously unselected package libgfortran5:arm64.
630s Preparing to unpack .../043-libgfortran5_14-20240303-1ubuntu1_arm64.deb ...
630s Unpacking libgfortran5:arm64 (14-20240303-1ubuntu1) ...
630s Selecting previously unselected package libgfortran-13-dev:arm64.
630s Preparing to unpack .../044-libgfortran-13-dev_13.2.0-17ubuntu2_arm64.deb ...
630s Unpacking libgfortran-13-dev:arm64 (13.2.0-17ubuntu2) ...
630s Selecting previously unselected package gfortran-13-aarch64-linux-gnu.
631s Preparing to unpack .../045-gfortran-13-aarch64-linux-gnu_13.2.0-17ubuntu2_arm64.deb ...
631s Unpacking gfortran-13-aarch64-linux-gnu (13.2.0-17ubuntu2) ...
631s Selecting previously unselected package gfortran-13.
631s Preparing to unpack .../046-gfortran-13_13.2.0-17ubuntu2_arm64.deb ...
631s Unpacking gfortran-13 (13.2.0-17ubuntu2) ...
631s Selecting previously unselected package gfortran-aarch64-linux-gnu.
631s Preparing to unpack .../047-gfortran-aarch64-linux-gnu_4%3a13.2.0-7ubuntu1_arm64.deb ...
631s Unpacking gfortran-aarch64-linux-gnu (4:13.2.0-7ubuntu1) ...
631s Selecting previously unselected package gfortran.
631s Preparing to unpack .../048-gfortran_4%3a13.2.0-7ubuntu1_arm64.deb ...
631s Unpacking gfortran (4:13.2.0-7ubuntu1) ...
631s Selecting previously unselected package icu-devtools.
631s Preparing to unpack .../049-icu-devtools_74.2-1ubuntu1_arm64.deb ...
631s Unpacking icu-devtools (74.2-1ubuntu1) ...
631s Selecting previously unselected package javascript-common.
631s Preparing to unpack .../050-javascript-common_11+nmu1_all.deb ...
631s Unpacking javascript-common (11+nmu1) ...
631s Selecting previously unselected package libblas3:arm64.
631s Preparing to unpack .../051-libblas3_3.12.0-3_arm64.deb ...
631s Unpacking libblas3:arm64 (3.12.0-3) ...
631s Selecting previously unselected package libblas-dev:arm64.
631s Preparing to unpack .../052-libblas-dev_3.12.0-3_arm64.deb ...
631s Unpacking libblas-dev:arm64 (3.12.0-3) ...
631s Selecting previously unselected package libbz2-dev:arm64.
632s Preparing to unpack .../053-libbz2-dev_1.0.8-5ubuntu1_arm64.deb ...
632s Unpacking libbz2-dev:arm64 (1.0.8-5ubuntu1) ...
632s Selecting previously unselected package libpixman-1-0:arm64.
632s Preparing to unpack .../054-libpixman-1-0_0.42.2-1_arm64.deb ...
632s Unpacking libpixman-1-0:arm64 (0.42.2-1) ...
632s Selecting previously unselected package libxcb-render0:arm64.
632s Preparing to unpack .../055-libxcb-render0_1.15-1_arm64.deb ...
632s Unpacking libxcb-render0:arm64 (1.15-1) ...
632s Selecting previously unselected package libxcb-shm0:arm64.
632s Preparing to unpack .../056-libxcb-shm0_1.15-1_arm64.deb ...
632s Unpacking libxcb-shm0:arm64 (1.15-1) ...
632s Selecting previously unselected package libxrender1:arm64.
632s Preparing to unpack .../057-libxrender1_1%3a0.9.10-1.1_arm64.deb ...
632s Unpacking libxrender1:arm64 (1:0.9.10-1.1) ...
632s Selecting previously unselected package libcairo2:arm64.
632s Preparing to unpack .../058-libcairo2_1.18.0-1_arm64.deb ...
632s Unpacking libcairo2:arm64 (1.18.0-1) ...
632s Selecting previously unselected package libdatrie1:arm64.
632s Preparing to unpack .../059-libdatrie1_0.2.13-3_arm64.deb ...
632s Unpacking libdatrie1:arm64 (0.2.13-3) ...
632s Selecting previously unselected package libdeflate0:arm64.
632s Preparing to unpack .../060-libdeflate0_1.19-1_arm64.deb ...
632s Unpacking libdeflate0:arm64 (1.19-1) ...
632s Selecting previously unselected package libgraphite2-3:arm64.
632s Preparing to unpack .../061-libgraphite2-3_1.3.14-2_arm64.deb ...
632s Unpacking libgraphite2-3:arm64 (1.3.14-2) ...
632s Selecting previously unselected package libharfbuzz0b:arm64.
632s Preparing to unpack .../062-libharfbuzz0b_8.3.0-2_arm64.deb ...
632s Unpacking libharfbuzz0b:arm64 (8.3.0-2) ...
633s Selecting previously unselected package x11-common.
633s Preparing to unpack .../063-x11-common_1%3a7.7+23ubuntu2_all.deb ...
633s Unpacking x11-common (1:7.7+23ubuntu2) ...
633s Selecting previously unselected package libice6:arm64.
633s Preparing to unpack .../064-libice6_2%3a1.0.10-1build2_arm64.deb ...
633s Unpacking libice6:arm64 (2:1.0.10-1build2) ...
633s Selecting previously unselected package libicu-dev:arm64.
633s Preparing to unpack .../065-libicu-dev_74.2-1ubuntu1_arm64.deb ...
633s Unpacking libicu-dev:arm64 (74.2-1ubuntu1) ...
633s Selecting previously unselected package libjpeg-turbo8:arm64.
633s Preparing to unpack .../066-libjpeg-turbo8_2.1.5-2ubuntu1_arm64.deb ...
633s Unpacking libjpeg-turbo8:arm64 (2.1.5-2ubuntu1) ...
633s Selecting previously unselected package libjpeg-turbo8-dev:arm64.
633s Preparing to unpack .../067-libjpeg-turbo8-dev_2.1.5-2ubuntu1_arm64.deb ...
633s Unpacking libjpeg-turbo8-dev:arm64 (2.1.5-2ubuntu1) ...
633s Selecting previously unselected package libjpeg8:arm64.
633s Preparing to unpack .../068-libjpeg8_8c-2ubuntu11_arm64.deb ...
633s Unpacking libjpeg8:arm64 (8c-2ubuntu11) ...
633s Selecting previously unselected package libjpeg8-dev:arm64.
633s Preparing to unpack .../069-libjpeg8-dev_8c-2ubuntu11_arm64.deb ...
633s Unpacking libjpeg8-dev:arm64 (8c-2ubuntu11) ...
633s Selecting previously unselected package libjpeg-dev:arm64.
633s Preparing to unpack .../070-libjpeg-dev_8c-2ubuntu11_arm64.deb ...
633s Unpacking libjpeg-dev:arm64 (8c-2ubuntu11) ...
633s Selecting previously unselected package libjs-bootstrap.
633s Preparing to unpack .../071-libjs-bootstrap_3.4.1+dfsg-3_all.deb ...
633s Unpacking libjs-bootstrap (3.4.1+dfsg-3) ...
633s Selecting previously unselected package libjs-popper.js.
633s Preparing to unpack .../072-libjs-popper.js_1.16.1+ds-6_all.deb ...
633s Unpacking libjs-popper.js (1.16.1+ds-6) ...
633s Selecting previously unselected package libjs-bootstrap4.
633s Preparing to unpack .../073-libjs-bootstrap4_4.6.1+dfsg1-4_all.deb ...
633s Unpacking libjs-bootstrap4 (4.6.1+dfsg1-4) ...
634s Selecting previously unselected package libjs-d3.
634s Preparing to unpack .../074-libjs-d3_3.5.17-4_all.deb ...
634s Unpacking libjs-d3 (3.5.17-4) ...
634s Selecting previously unselected package libjs-es5-shim.
634s Preparing to unpack .../075-libjs-es5-shim_4.6.7-2_all.deb ...
634s Unpacking libjs-es5-shim (4.6.7-2) ...
634s Selecting previously unselected package libjs-highlight.js.
634s Preparing to unpack .../076-libjs-highlight.js_9.18.5+dfsg1-2_all.deb ...
634s Unpacking libjs-highlight.js (9.18.5+dfsg1-2) ...
634s Selecting previously unselected package libjs-jquery.
634s Preparing to unpack .../077-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ...
634s Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ...
634s Selecting previously unselected package libjs-jquery-datatables.
634s Preparing to unpack .../078-libjs-jquery-datatables_1.11.5+dfsg-2_all.deb ...
634s Unpacking libjs-jquery-datatables (1.11.5+dfsg-2) ...
634s Selecting previously unselected package libjs-sifter.js.
634s Preparing to unpack .../079-libjs-sifter.js_0.6.0+dfsg-3_all.deb ...
634s Unpacking libjs-sifter.js (0.6.0+dfsg-3) ...
634s Selecting previously unselected package libjs-microplugin.js.
634s Preparing to unpack .../080-libjs-microplugin.js_0.0.3+dfsg-1.1_all.deb ...
634s Unpacking libjs-microplugin.js (0.0.3+dfsg-1.1) ...
634s Selecting previously unselected package libjs-jquery-selectize.js.
634s Preparing to unpack .../081-libjs-jquery-selectize.js_0.12.6+dfsg-1.1_all.deb ...
634s Unpacking libjs-jquery-selectize.js (0.12.6+dfsg-1.1) ...
634s Selecting previously unselected package libjs-jquery-ui.
634s Preparing to unpack .../082-libjs-jquery-ui_1.13.2+dfsg-1_all.deb ...
634s Unpacking libjs-jquery-ui (1.13.2+dfsg-1) ...
634s Selecting previously unselected package libjs-json.
634s Preparing to unpack .../083-libjs-json_0~20221030+~1.0.8-1_all.deb ...
634s Unpacking libjs-json (0~20221030+~1.0.8-1) ...
634s Selecting previously unselected package libjs-prettify.
634s Preparing to unpack .../084-libjs-prettify_2015.12.04+dfsg-1.1_all.deb ...
634s Unpacking libjs-prettify (2015.12.04+dfsg-1.1) ...
634s Selecting previously unselected package liblapack3:arm64.
634s Preparing to unpack .../085-liblapack3_3.12.0-3_arm64.deb ...
634s Unpacking liblapack3:arm64 (3.12.0-3) ...
634s Selecting previously unselected package liblapack-dev:arm64.
634s Preparing to unpack .../086-liblapack-dev_3.12.0-3_arm64.deb ...
634s Unpacking liblapack-dev:arm64 (3.12.0-3) ...
634s Selecting previously unselected package liblerc4:arm64.
634s Preparing to unpack .../087-liblerc4_4.0.0+ds-4ubuntu1_arm64.deb ...
634s Unpacking liblerc4:arm64 (4.0.0+ds-4ubuntu1) ...
634s Selecting previously unselected package liblua5.4-0:arm64.
634s Preparing to unpack .../088-liblua5.4-0_5.4.6-3_arm64.deb ...
634s Unpacking liblua5.4-0:arm64 (5.4.6-3) ...
634s Selecting previously unselected package libncurses-dev:arm64.
634s Preparing to unpack .../089-libncurses-dev_6.4+20240113-1ubuntu1_arm64.deb ...
634s Unpacking libncurses-dev:arm64 (6.4+20240113-1ubuntu1) ...
634s Selecting previously unselected package libthai-data.
634s Preparing to unpack .../090-libthai-data_0.1.29-2_all.deb ...
634s Unpacking libthai-data (0.1.29-2) ...
634s Selecting previously unselected package libthai0:arm64.
635s Preparing to unpack .../091-libthai0_0.1.29-2_arm64.deb ...
635s Unpacking libthai0:arm64 (0.1.29-2) ...
635s Selecting previously unselected package libpango-1.0-0:arm64.
635s Preparing to unpack .../092-libpango-1.0-0_1.51.0+ds-4_arm64.deb ...
635s Unpacking libpango-1.0-0:arm64 (1.51.0+ds-4) ...
635s Selecting previously unselected package libpangoft2-1.0-0:arm64.
635s Preparing to unpack .../093-libpangoft2-1.0-0_1.51.0+ds-4_arm64.deb ...
635s Unpacking libpangoft2-1.0-0:arm64 (1.51.0+ds-4) ...
635s Selecting previously unselected package libpangocairo-1.0-0:arm64.
635s Preparing to unpack .../094-libpangocairo-1.0-0_1.51.0+ds-4_arm64.deb ...
635s Unpacking libpangocairo-1.0-0:arm64 (1.51.0+ds-4) ...
635s Selecting previously unselected package libpaper1:arm64.
635s Preparing to unpack .../095-libpaper1_1.1.29_arm64.deb ...
635s Unpacking libpaper1:arm64 (1.1.29) ...
635s Selecting previously unselected package libpaper-utils.
635s Preparing to unpack .../096-libpaper-utils_1.1.29_arm64.deb ...
635s Unpacking libpaper-utils (1.1.29) ...
635s Selecting previously unselected package libpcre2-16-0:arm64.
635s Preparing to unpack .../097-libpcre2-16-0_10.42-4ubuntu1_arm64.deb ...
635s Unpacking libpcre2-16-0:arm64 (10.42-4ubuntu1) ...
635s Selecting previously unselected package libpcre2-32-0:arm64.
635s Preparing to unpack .../098-libpcre2-32-0_10.42-4ubuntu1_arm64.deb ...
635s Unpacking libpcre2-32-0:arm64 (10.42-4ubuntu1) ...
635s Selecting previously unselected package libpcre2-posix3:arm64.
635s Preparing to unpack .../099-libpcre2-posix3_10.42-4ubuntu1_arm64.deb ...
635s Unpacking libpcre2-posix3:arm64 (10.42-4ubuntu1) ...
635s Selecting previously unselected package libpcre2-dev:arm64.
635s Preparing to unpack .../100-libpcre2-dev_10.42-4ubuntu1_arm64.deb ...
635s Unpacking libpcre2-dev:arm64 (10.42-4ubuntu1) ...
635s Selecting previously unselected package libpkgconf3:arm64.
635s Preparing to unpack .../101-libpkgconf3_1.8.1-2_arm64.deb ...
635s Unpacking libpkgconf3:arm64 (1.8.1-2) ...
635s Selecting previously unselected package zlib1g-dev:arm64.
635s Preparing to unpack .../102-zlib1g-dev_1%3a1.3.dfsg-3ubuntu1_arm64.deb ...
635s Unpacking zlib1g-dev:arm64 (1:1.3.dfsg-3ubuntu1) ...
635s Selecting previously unselected package libpng-dev:arm64.
635s Preparing to unpack .../103-libpng-dev_1.6.43-3_arm64.deb ...
635s Unpacking libpng-dev:arm64 (1.6.43-3) ...
635s Selecting previously unselected package libreadline-dev:arm64.
635s Preparing to unpack .../104-libreadline-dev_8.2-3.1_arm64.deb ...
635s Unpacking libreadline-dev:arm64 (8.2-3.1) ...
635s Selecting previously unselected package libsharpyuv0:arm64.
635s Preparing to unpack .../105-libsharpyuv0_1.3.2-0.4_arm64.deb ...
635s Unpacking libsharpyuv0:arm64 (1.3.2-0.4) ...
635s Selecting previously unselected package libsm6:arm64.
635s Preparing to unpack .../106-libsm6_2%3a1.2.3-1build2_arm64.deb ...
635s Unpacking libsm6:arm64 (2:1.2.3-1build2) ...
635s Selecting previously unselected package libtcl8.6:arm64.
635s Preparing to unpack .../107-libtcl8.6_8.6.13+dfsg-2_arm64.deb ...
635s Unpacking libtcl8.6:arm64 (8.6.13+dfsg-2) ...
635s Selecting previously unselected package libjbig0:arm64.
635s Preparing to unpack .../108-libjbig0_2.1-6.1ubuntu1_arm64.deb ...
635s Unpacking libjbig0:arm64 (2.1-6.1ubuntu1) ...
635s Selecting previously unselected package libwebp7:arm64.
635s Preparing to unpack .../109-libwebp7_1.3.2-0.4_arm64.deb ...
635s Unpacking libwebp7:arm64 (1.3.2-0.4) ...
635s Selecting previously unselected package libtiff6:arm64.
635s Preparing to unpack .../110-libtiff6_4.5.1+git230720-3ubuntu1_arm64.deb ...
635s Unpacking libtiff6:arm64 (4.5.1+git230720-3ubuntu1) ...
635s Selecting previously unselected package libxft2:arm64.
635s Preparing to unpack .../111-libxft2_2.3.6-1_arm64.deb ...
635s Unpacking libxft2:arm64 (2.3.6-1) ...
635s Selecting previously unselected package libxss1:arm64.
636s Preparing to unpack .../112-libxss1_1%3a1.2.3-1build2_arm64.deb ...
636s Unpacking libxss1:arm64 (1:1.2.3-1build2) ...
636s Selecting previously unselected package libtk8.6:arm64.
636s Preparing to unpack .../113-libtk8.6_8.6.13-2_arm64.deb ...
636s Unpacking libtk8.6:arm64 (8.6.13-2) ...
636s Selecting previously unselected package libxt6t64:arm64.
636s Preparing to unpack .../114-libxt6t64_1%3a1.2.1-1.2_arm64.deb ...
636s Unpacking libxt6t64:arm64 (1:1.2.1-1.2) ...
636s Selecting previously unselected package zip.
636s Preparing to unpack .../115-zip_3.0-13_arm64.deb ...
636s Unpacking zip (3.0-13) ...
636s Selecting previously unselected package unzip.
636s Preparing to unpack .../116-unzip_6.0-28ubuntu3_arm64.deb ...
636s Unpacking unzip (6.0-28ubuntu3) ...
636s Selecting previously unselected package xdg-utils.
636s Preparing to unpack .../117-xdg-utils_1.1.3-4.1ubuntu3_all.deb ...
636s Unpacking xdg-utils (1.1.3-4.1ubuntu3) ...
636s Selecting previously unselected package r-base-core.
636s Preparing to unpack .../118-r-base-core_4.3.3-2build1_arm64.deb ...
636s Unpacking r-base-core (4.3.3-2build1) ...
636s Selecting previously unselected package r-cran-littler.
636s Preparing to unpack .../119-r-cran-littler_0.3.19-1_arm64.deb ...
636s Unpacking r-cran-littler (0.3.19-1) ...
636s Selecting previously unselected package littler.
636s Preparing to unpack .../120-littler_0.3.19-1_all.deb ...
636s Unpacking littler (0.3.19-1) ...
636s Selecting previously unselected package node-bootstrap-sass.
636s Preparing to unpack .../121-node-bootstrap-sass_3.4.3-2_all.deb ...
636s Unpacking node-bootstrap-sass (3.4.3-2) ...
636s Selecting previously unselected package node-html5shiv.
636s Preparing to unpack .../122-node-html5shiv_3.7.3+dfsg-5_all.deb ...
636s Unpacking node-html5shiv (3.7.3+dfsg-5) ...
636s Selecting previously unselected package node-normalize.css.
636s Preparing to unpack .../123-node-normalize.css_8.0.1-5_all.deb ...
636s Unpacking node-normalize.css (8.0.1-5) ...
636s Selecting previously unselected package pandoc-data.
636s Preparing to unpack .../124-pandoc-data_3.1.3-1_all.deb ...
636s Unpacking pandoc-data (3.1.3-1) ...
636s Selecting previously unselected package pandoc.
636s Preparing to unpack .../125-pandoc_3.1.3+ds-2_arm64.deb ...
636s Unpacking pandoc (3.1.3+ds-2) ...
637s Selecting previously unselected package pkgconf-bin.
637s Preparing to unpack .../126-pkgconf-bin_1.8.1-2_arm64.deb ...
637s Unpacking pkgconf-bin (1.8.1-2) ...
637s Selecting previously unselected package pkgconf:arm64.
637s Preparing to unpack .../127-pkgconf_1.8.1-2_arm64.deb ...
637s Unpacking pkgconf:arm64 (1.8.1-2) ...
637s Selecting previously unselected package pkg-config:arm64.
637s Preparing to unpack .../128-pkg-config_1.8.1-2_arm64.deb ...
637s Unpacking pkg-config:arm64 (1.8.1-2) ...
637s Selecting previously unselected package liblzma-dev:arm64.
637s Preparing to unpack .../129-liblzma-dev_5.4.5-0.3_arm64.deb ...
637s Unpacking liblzma-dev:arm64 (5.4.5-0.3) ...
638s Selecting previously unselected package r-base-dev.
638s Preparing to unpack .../130-r-base-dev_4.3.3-2build1_all.deb ...
638s Unpacking r-base-dev (4.3.3-2build1) ...
638s Selecting previously unselected package pkg-r-autopkgtest.
638s Preparing to unpack .../131-pkg-r-autopkgtest_20231212ubuntu1_all.deb ...
638s Unpacking pkg-r-autopkgtest (20231212ubuntu1) ...
638s Selecting previously unselected package r-cran-base64enc.
638s Preparing to unpack .../132-r-cran-base64enc_0.1-3-3_arm64.deb ...
638s Unpacking r-cran-base64enc (0.1-3-3) ...
638s Selecting previously unselected package r-cran-rlang.
638s Preparing to unpack .../133-r-cran-rlang_1.1.3-1_arm64.deb ...
638s Unpacking r-cran-rlang (1.1.3-1) ...
638s Selecting previously unselected package r-cran-fastmap.
638s Preparing to unpack .../134-r-cran-fastmap_1.1.1-1_arm64.deb ...
638s Unpacking r-cran-fastmap (1.1.1-1) ...
638s Selecting previously unselected package r-cran-cachem.
638s Preparing to unpack .../135-r-cran-cachem_1.0.8-1_arm64.deb ...
638s Unpacking r-cran-cachem (1.0.8-1) ...
638s Selecting previously unselected package r-cran-digest.
638s Preparing to unpack .../136-r-cran-digest_0.6.34-1_arm64.deb ...
638s Unpacking r-cran-digest (0.6.34-1) ...
638s Selecting previously unselected package r-cran-ellipsis.
638s Preparing to unpack .../137-r-cran-ellipsis_0.3.2-2_arm64.deb ...
638s Unpacking r-cran-ellipsis (0.3.2-2) ...
638s Selecting previously unselected package r-cran-htmltools.
638s Preparing to unpack .../138-r-cran-htmltools_0.5.7-1_arm64.deb ...
638s Unpacking r-cran-htmltools (0.5.7-1) ...
638s Selecting previously unselected package r-cran-jquerylib.
638s Preparing to unpack .../139-r-cran-jquerylib_0.1.4+dfsg-4_all.deb ...
638s Unpacking r-cran-jquerylib (0.1.4+dfsg-4) ...
638s Selecting previously unselected package r-cran-jsonlite.
638s Preparing to unpack .../140-r-cran-jsonlite_1.8.8+dfsg-1_arm64.deb ...
638s Unpacking r-cran-jsonlite (1.8.8+dfsg-1) ...
638s Selecting previously unselected package r-cran-cli.
638s Preparing to unpack .../141-r-cran-cli_3.6.2-1_arm64.deb ...
638s Unpacking r-cran-cli (3.6.2-1) ...
638s Selecting previously unselected package r-cran-glue.
638s Preparing to unpack .../142-r-cran-glue_1.7.0-1_arm64.deb ...
638s Unpacking r-cran-glue (1.7.0-1) ...
638s Selecting previously unselected package r-cran-lifecycle.
638s Preparing to unpack .../143-r-cran-lifecycle_1.0.4+dfsg-1_all.deb ...
638s Unpacking r-cran-lifecycle (1.0.4+dfsg-1) ...
638s Selecting previously unselected package r-cran-memoise.
638s Preparing to unpack .../144-r-cran-memoise_2.0.1-1_all.deb ...
638s Unpacking r-cran-memoise (2.0.1-1) ...
638s Selecting previously unselected package r-cran-mime.
638s Preparing to unpack .../145-r-cran-mime_0.12-1_arm64.deb ...
638s Unpacking r-cran-mime (0.12-1) ...
638s Selecting previously unselected package r-cran-fs.
639s Preparing to unpack .../146-r-cran-fs_1.6.3+dfsg-1_arm64.deb ...
639s Unpacking r-cran-fs (1.6.3+dfsg-1) ...
639s Selecting previously unselected package r-cran-r6.
639s Preparing to unpack .../147-r-cran-r6_2.5.1-1_all.deb ...
639s Unpacking r-cran-r6 (2.5.1-1) ...
639s Selecting previously unselected package r-cran-rappdirs.
639s Preparing to unpack .../148-r-cran-rappdirs_0.3.3-1_arm64.deb ...
639s Unpacking r-cran-rappdirs (0.3.3-1) ...
639s Selecting previously unselected package r-cran-sass.
639s Preparing to unpack .../149-r-cran-sass_0.4.8+dfsg-1_arm64.deb ...
639s Unpacking r-cran-sass (0.4.8+dfsg-1) ...
639s Selecting previously unselected package r-cran-bslib.
639s Preparing to unpack .../150-r-cran-bslib_0.6.1+dfsg-1_all.deb ...
639s Unpacking r-cran-bslib (0.6.1+dfsg-1) ...
639s Selecting previously unselected package r-cran-commonmark.
639s Preparing to unpack .../151-r-cran-commonmark_1.9.1-1_arm64.deb ...
639s Unpacking r-cran-commonmark (1.9.1-1) ...
639s Selecting previously unselected package r-cran-crayon.
639s Preparing to unpack .../152-r-cran-crayon_1.5.2-1_all.deb ...
639s Unpacking r-cran-crayon (1.5.2-1) ...
639s Selecting previously unselected package r-cran-diffobj.
639s Preparing to unpack .../153-r-cran-diffobj_0.3.5-1_arm64.deb ...
639s Unpacking r-cran-diffobj (0.3.5-1) ...
639s Selecting previously unselected package r-cran-evaluate.
639s Preparing to unpack .../154-r-cran-evaluate_0.23-1_all.deb ...
639s Unpacking r-cran-evaluate (0.23-1) ...
639s Selecting previously unselected package r-cran-fontawesome.
639s Preparing to unpack .../155-r-cran-fontawesome_0.5.2-1_all.deb ...
639s Unpacking r-cran-fontawesome (0.5.2-1) ...
639s Selecting previously unselected package r-cran-xfun.
639s Preparing to unpack .../156-r-cran-xfun_0.41+dfsg-1_arm64.deb ...
639s Unpacking r-cran-xfun (0.41+dfsg-1) ...
639s Selecting previously unselected package r-cran-highr.
640s Preparing to unpack .../157-r-cran-highr_0.10+dfsg-1_all.deb ...
640s Unpacking r-cran-highr (0.10+dfsg-1) ...
640s Selecting previously unselected package r-cran-pkgkitten.
640s Preparing to unpack .../158-r-cran-pkgkitten_0.2.3-1_all.deb ...
640s Unpacking r-cran-pkgkitten (0.2.3-1) ...
640s Selecting previously unselected package r-cran-rcpp.
640s Preparing to unpack .../159-r-cran-rcpp_1.0.12-1_arm64.deb ...
640s Unpacking r-cran-rcpp (1.0.12-1) ...
640s Selecting previously unselected package r-cran-later.
640s Preparing to unpack .../160-r-cran-later_1.3.2+dfsg-1_arm64.deb ...
640s Unpacking r-cran-later (1.3.2+dfsg-1) ...
640s Selecting previously unselected package r-cran-magrittr.
640s Preparing to unpack .../161-r-cran-magrittr_2.0.3-1_arm64.deb ...
640s Unpacking r-cran-magrittr (2.0.3-1) ...
640s Selecting previously unselected package r-cran-promises.
640s Preparing to unpack .../162-r-cran-promises_1.2.1+dfsg-1_arm64.deb ...
640s Unpacking r-cran-promises (1.2.1+dfsg-1) ...
640s Selecting previously unselected package r-cran-httpuv.
640s Preparing to unpack .../163-r-cran-httpuv_1.6.14+dfsg-1_arm64.deb ...
640s Unpacking r-cran-httpuv (1.6.14+dfsg-1) ...
640s Selecting previously unselected package r-cran-yaml.
640s Preparing to unpack .../164-r-cran-yaml_2.3.8-1_arm64.deb ...
640s Unpacking r-cran-yaml (2.3.8-1) ...
640s Selecting previously unselected package libjs-mathjax.
640s Preparing to unpack .../165-libjs-mathjax_2.7.9+dfsg-1_all.deb ...
640s Unpacking libjs-mathjax (2.7.9+dfsg-1) ...
641s Selecting previously unselected package r-cran-knitr.
641s Preparing to unpack .../166-r-cran-knitr_1.45+dfsg-1_all.deb ...
641s Unpacking r-cran-knitr (1.45+dfsg-1) ...
641s Selecting previously unselected package r-cran-stringi.
641s Preparing to unpack .../167-r-cran-stringi_1.8.3-1_arm64.deb ...
641s Unpacking r-cran-stringi (1.8.3-1) ...
641s Selecting previously unselected package r-cran-vctrs.
641s Preparing to unpack .../168-r-cran-vctrs_0.6.5-1_arm64.deb ...
641s Unpacking r-cran-vctrs (0.6.5-1) ...
641s Selecting previously unselected package r-cran-stringr.
641s Preparing to unpack .../169-r-cran-stringr_1.5.1-1_all.deb ...
641s Unpacking r-cran-stringr (1.5.1-1) ...
641s Selecting previously unselected package r-cran-tinytex.
641s Preparing to unpack .../170-r-cran-tinytex_0.49-1_all.deb ...
641s Unpacking r-cran-tinytex (0.49-1) ...
641s Selecting previously unselected package libjs-modernizr.
641s Preparing to unpack .../171-libjs-modernizr_2.6.2+ds1-5_all.deb ...
641s Unpacking libjs-modernizr (2.6.2+ds1-5) ...
641s Selecting previously unselected package r-cran-xtable.
641s Preparing to unpack .../172-r-cran-xtable_1%3a1.8-4-2_all.deb ...
641s Unpacking r-cran-xtable (1:1.8-4-2) ...
641s Selecting previously unselected package r-cran-sourcetools.
641s Preparing to unpack .../173-r-cran-sourcetools_0.1.7-1-1_arm64.deb ...
641s Unpacking r-cran-sourcetools (0.1.7-1-1) ...
641s Selecting previously unselected package r-cran-withr.
641s Preparing to unpack .../174-r-cran-withr_2.5.0-1_all.deb ...
641s Unpacking r-cran-withr (2.5.0-1) ...
641s Selecting previously unselected package libjs-twitter-bootstrap-datepicker.
641s Preparing to unpack .../175-libjs-twitter-bootstrap-datepicker_1.3.1+dfsg1-4.1_all.deb ...
642s Unpacking libjs-twitter-bootstrap-datepicker (1.3.1+dfsg1-4.1) ...
642s Selecting previously unselected package r-cran-shiny.
642s Preparing to unpack .../176-r-cran-shiny_1.8.0+dfsg-1_all.deb ...
642s Unpacking r-cran-shiny (1.8.0+dfsg-1) ...
642s Selecting previously unselected package r-cran-rmarkdown.
642s Preparing to unpack .../177-r-cran-rmarkdown_2.25+dfsg-3_all.deb ...
642s Unpacking r-cran-rmarkdown (2.25+dfsg-3) ...
642s Selecting previously unselected package autopkgtest-satdep.
642s Preparing to unpack .../178-2-autopkgtest-satdep.deb ...
642s Unpacking autopkgtest-satdep (0) ...
642s Setting up libjs-json (0~20221030+~1.0.8-1) ...
642s Setting up javascript-common (11+nmu1) ...
642s Setting up libgraphite2-3:arm64 (1.3.14-2) ...
642s Setting up libpixman-1-0:arm64 (0.42.2-1) ...
642s Setting up libsharpyuv0:arm64 (1.3.2-0.4) ...
642s Setting up libpaper1:arm64 (1.1.29) ...
642s
642s Creating config file /etc/papersize with new version
642s Setting up fonts-mathjax (2.7.9+dfsg-1) ...
642s Setting up liblerc4:arm64 (4.0.0+ds-4ubuntu1) ...
642s Setting up libjs-mathjax (2.7.9+dfsg-1) ...
642s Setting up libxrender1:arm64 (1:0.9.10-1.1) ...
642s Setting up libdatrie1:arm64 (0.2.13-3) ...
642s Setting up libjs-popper.js (1.16.1+ds-6) ...
642s Setting up libtirpc3t64:arm64 (1.3.4+ds-1.1) ...
642s Setting up libxcb-render0:arm64 (1.15-1) ...
642s Setting up libjs-sifter.js (0.6.0+dfsg-3) ...
642s Setting up fonts-glyphicons-halflings (1.009~3.4.1+dfsg-3) ...
642s Setting up unzip (6.0-28ubuntu3) ...
642s Setting up x11-common (1:7.7+23ubuntu2) ...
643s Setting up node-html5shiv (3.7.3+dfsg-5) ...
643s Setting up libpsl5t64:arm64 (0.21.2-1.1) ...
643s Setting up libdeflate0:arm64 (1.19-1) ...
643s Setting up linux-libc-dev:arm64 (6.8.0-11.11) ...
643s Setting up libjs-microplugin.js (0.0.3+dfsg-1.1) ...
643s Setting up libxcb-shm0:arm64 (1.15-1) ...
643s Setting up libpaper-utils (1.1.29) ...
643s Setting up libgomp1:arm64 (14-20240303-1ubuntu1) ...
643s Setting up libjs-modernizr (2.6.2+ds1-5) ...
643s Setting up libjbig0:arm64 (2.1-6.1ubuntu1) ...
643s Setting up libpcre2-16-0:arm64 (10.42-4ubuntu1) ...
643s Setting up libjs-es5-shim (4.6.7-2) ...
643s Setting up zip (3.0-13) ...
643s Setting up libpcre2-32-0:arm64 (10.42-4ubuntu1) ...
643s Setting up libblas3:arm64 (3.12.0-3) ...
643s update-alternatives: using /usr/lib/aarch64-linux-gnu/blas/libblas.so.3 to provide /usr/lib/aarch64-linux-gnu/libblas.so.3 (libblas.so.3-aarch64-linux-gnu) in auto mode
643s Setting up libtirpc-dev:arm64 (1.3.4+ds-1.1) ...
643s Setting up libpkgconf3:arm64 (1.8.1-2) ...
643s Setting up rpcsvc-proto (1.4.2-0ubuntu6) ...
643s Setting up libjs-d3 (3.5.17-4) ...
643s Setting up fonts-dejavu-mono (2.37-8) ...
643s Setting up libpng16-16t64:arm64 (1.6.43-3) ...
643s Setting up libmpc3:arm64 (1.3.1-1) ...
643s Setting up libatomic1:arm64 (14-20240303-1ubuntu1) ...
643s Setting up libtcl8.6:arm64 (8.6.13+dfsg-2) ...
643s Setting up icu-devtools (74.2-1ubuntu1) ...
643s Setting up fonts-dejavu-core (2.37-8) ...
643s Setting up pkgconf-bin (1.8.1-2) ...
643s Setting up libjpeg-turbo8:arm64 (2.1.5-2ubuntu1) ...
643s Setting up libgfortran5:arm64 (14-20240303-1ubuntu1) ...
643s Setting up libwebp7:arm64 (1.3.2-0.4) ...
643s Setting up libreadline8t64:arm64 (8.2-3.1) ...
643s Setting up liblzma-dev:arm64 (5.4.5-0.3) ...
643s Setting up libubsan1:arm64 (14-20240303-1ubuntu1) ...
643s Setting up libpcre2-posix3:arm64 (10.42-4ubuntu1) ...
643s Setting up libjs-highlight.js (9.18.5+dfsg1-2) ...
643s Setting up libnsl-dev:arm64 (1.3.0-3) ...
643s Setting up libhwasan0:arm64 (14-20240303-1ubuntu1) ...
643s Setting up libcrypt-dev:arm64 (1:4.4.36-4) ...
643s Setting up libasan8:arm64 (14-20240303-1ubuntu1) ...
643s Setting up liblua5.4-0:arm64 (5.4.6-3) ...
643s Setting up libharfbuzz0b:arm64 (8.3.0-2) ...
643s Setting up libthai-data (0.1.29-2) ...
643s Setting up node-bootstrap-sass (3.4.3-2) ...
643s Setting up libjs-prettify (2015.12.04+dfsg-1.1) ...
643s Setting up libxss1:arm64 (1:1.2.3-1build2) ...
643s Setting up libjs-bootstrap4 (4.6.1+dfsg1-4) ...
643s Setting up pandoc-data (3.1.3-1) ...
643s Setting up libtsan2:arm64 (14-20240303-1ubuntu1) ...
643s Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ...
643s Setting up libisl23:arm64 (0.26-3) ...
643s Setting up libc-dev-bin (2.39-0ubuntu2) ...
643s Setting up node-normalize.css (8.0.1-5) ...
643s Setting up fonts-font-awesome (5.0.10+really4.7.0~dfsg-4.1) ...
643s Setting up xdg-utils (1.1.3-4.1ubuntu3) ...
643s update-alternatives: using /usr/bin/xdg-open to provide /usr/bin/open (open) in auto mode
643s Setting up libcc1-0:arm64 (14-20240303-1ubuntu1) ...
643s Setting up liblsan0:arm64 (14-20240303-1ubuntu1) ...
643s Setting up libblas-dev:arm64 (3.12.0-3) ...
643s update-alternatives: using /usr/lib/aarch64-linux-gnu/blas/libblas.so to provide /usr/lib/aarch64-linux-gnu/libblas.so (libblas.so-aarch64-linux-gnu) in auto mode
643s Setting up dctrl-tools (2.24-3build2) ...
643s Setting up libjs-bootstrap (3.4.1+dfsg-3) ...
643s Setting up libitm1:arm64 (14-20240303-1ubuntu1) ...
643s Setting up libjs-jquery-selectize.js (0.12.6+dfsg-1.1) ...
643s Setting up libjpeg8:arm64 (8c-2ubuntu11) ...
643s Setting up libice6:arm64 (2:1.0.10-1build2) ...
643s Setting up liblapack3:arm64 (3.12.0-3) ...
643s update-alternatives: using /usr/lib/aarch64-linux-gnu/lapack/liblapack.so.3 to provide /usr/lib/aarch64-linux-gnu/liblapack.so.3 (liblapack.so.3-aarch64-linux-gnu) in auto mode
643s Setting up cpp-13-aarch64-linux-gnu (13.2.0-17ubuntu2) ...
643s Setting up libcurl4t64:arm64 (8.5.0-2ubuntu7) ...
643s Setting up fontconfig-config (2.15.0-1ubuntu1) ...
643s Setting up libjs-twitter-bootstrap-datepicker (1.3.1+dfsg1-4.1) ...
643s Setting up libjs-jquery-datatables (1.11.5+dfsg-2) ...
643s Setting up pkgconf:arm64 (1.8.1-2) ...
643s Setting up libthai0:arm64 (0.1.29-2) ...
643s Setting up cpp-aarch64-linux-gnu (4:13.2.0-7ubuntu1) ...
643s Setting up libjs-jquery-ui (1.13.2+dfsg-1) ...
643s Setting up pandoc (3.1.3+ds-2) ...
643s Setting up liblapack-dev:arm64 (3.12.0-3) ...
643s update-alternatives: using /usr/lib/aarch64-linux-gnu/lapack/liblapack.so to provide /usr/lib/aarch64-linux-gnu/liblapack.so (liblapack.so-aarch64-linux-gnu) in auto mode
643s Setting up pkg-config:arm64 (1.8.1-2) ...
643s Setting up libgcc-13-dev:arm64 (13.2.0-17ubuntu2) ...
643s Setting up libtiff6:arm64 (4.5.1+git230720-3ubuntu1) ...
643s Setting up libc6-dev:arm64 (2.39-0ubuntu2) ...
643s Setting up curl (8.5.0-2ubuntu7) ...
643s Setting up libfontconfig1:arm64 (2.15.0-1ubuntu1) ...
643s Setting up libgfortran-13-dev:arm64 (13.2.0-17ubuntu2) ...
643s Setting up libsm6:arm64 (2:1.2.3-1build2) ...
643s Setting up libicu-dev:arm64 (74.2-1ubuntu1) ...
643s Setting up libstdc++-13-dev:arm64 (13.2.0-17ubuntu2) ...
643s Setting up libbz2-dev:arm64 (1.0.8-5ubuntu1) ...
643s Setting up fontconfig (2.15.0-1ubuntu1) ...
645s Regenerating fonts cache... done.
645s Setting up libjpeg-turbo8-dev:arm64 (2.1.5-2ubuntu1) ...
645s Setting up libxft2:arm64 (2.3.6-1) ...
645s Setting up libncurses-dev:arm64 (6.4+20240113-1ubuntu1) ...
646s Setting up libpcre2-dev:arm64 (10.42-4ubuntu1) ...
646s Setting up cpp-13 (13.2.0-17ubuntu2) ...
646s Setting up libtk8.6:arm64 (8.6.13-2) ...
646s Setting up libpango-1.0-0:arm64 (1.51.0+ds-4) ...
646s Setting up gcc-13-aarch64-linux-gnu (13.2.0-17ubuntu2) ...
646s Setting up libreadline-dev:arm64 (8.2-3.1) ...
646s Setting up libcairo2:arm64 (1.18.0-1) ...
646s Setting up libxt6t64:arm64 (1:1.2.1-1.2) ...
646s Setting up gcc-13 (13.2.0-17ubuntu2) ...
646s Setting up zlib1g-dev:arm64 (1:1.3.dfsg-3ubuntu1) ...
646s Setting up cpp (4:13.2.0-7ubuntu1) ...
646s Setting up libpangoft2-1.0-0:arm64 (1.51.0+ds-4) ...
646s Setting up libjpeg8-dev:arm64 (8c-2ubuntu11) ...
646s Setting up libpangocairo-1.0-0:arm64 (1.51.0+ds-4) ...
646s Setting up g++-13-aarch64-linux-gnu (13.2.0-17ubuntu2) ...
646s Setting up gcc-aarch64-linux-gnu (4:13.2.0-7ubuntu1) ...
646s Setting up g++-13 (13.2.0-17ubuntu2) ...
646s Setting up libpng-dev:arm64 (1.6.43-3) ...
646s Setting up libjpeg-dev:arm64 (8c-2ubuntu11) ...
646s Setting up gfortran-13-aarch64-linux-gnu (13.2.0-17ubuntu2) ...
646s Setting up gcc (4:13.2.0-7ubuntu1) ...
646s Setting up gfortran-13 (13.2.0-17ubuntu2) ...
646s Setting up r-base-core (4.3.3-2build1) ...
646s
646s Creating config file /etc/R/Renviron with new version
646s Setting up r-cran-crayon (1.5.2-1) ...
646s Setting up r-cran-sourcetools (0.1.7-1-1) ...
646s Setting up g++-aarch64-linux-gnu (4:13.2.0-7ubuntu1) ...
646s Setting up gfortran-aarch64-linux-gnu (4:13.2.0-7ubuntu1) ...
646s Setting up r-cran-commonmark (1.9.1-1) ...
646s Setting up r-cran-r6 (2.5.1-1) ...
646s Setting up r-cran-pkgkitten (0.2.3-1) ...
646s Setting up r-cran-magrittr (2.0.3-1) ...
646s Setting up r-cran-rappdirs (0.3.3-1) ...
646s Setting up r-cran-littler (0.3.19-1) ...
646s Setting up r-cran-fs (1.6.3+dfsg-1) ...
646s Setting up r-cran-rcpp (1.0.12-1) ...
646s Setting up r-cran-diffobj (0.3.5-1) ...
646s Setting up r-cran-rlang (1.1.3-1) ...
646s Setting up littler (0.3.19-1) ...
646s Setting up r-cran-xfun (0.41+dfsg-1) ...
646s Setting up r-cran-withr (2.5.0-1) ...
646s Setting up r-cran-mime (0.12-1) ...
646s Setting up r-cran-base64enc (0.1-3-3) ...
646s Setting up r-cran-digest (0.6.34-1) ...
646s Setting up r-cran-yaml (2.3.8-1) ...
646s Setting up r-cran-evaluate (0.23-1) ...
646s Setting up r-cran-highr (0.10+dfsg-1) ...
646s Setting up r-cran-glue (1.7.0-1) ...
646s Setting up r-cran-xtable (1:1.8-4-2) ...
646s Setting up r-cran-cli (3.6.2-1) ...
646s Setting up gfortran (4:13.2.0-7ubuntu1) ...
646s update-alternatives: using /usr/bin/gfortran to provide /usr/bin/f95 (f95) in auto mode
646s 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
646s update-alternatives: using /usr/bin/gfortran to provide /usr/bin/f77 (f77) in auto mode
646s 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
646s Setting up r-cran-lifecycle (1.0.4+dfsg-1) ...
646s Setting up r-cran-fastmap (1.1.1-1) ...
646s Setting up r-cran-jsonlite (1.8.8+dfsg-1) ...
646s Setting up r-cran-stringi (1.8.3-1) ...
646s Setting up r-cran-later (1.3.2+dfsg-1) ...
646s Setting up r-cran-tinytex (0.49-1) ...
646s Setting up r-cran-knitr (1.45+dfsg-1) ...
646s Setting up g++ (4:13.2.0-7ubuntu1) ...
646s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode
646s Setting up r-cran-cachem (1.0.8-1) ...
646s Setting up build-essential (12.10ubuntu1) ...
646s Setting up r-cran-vctrs (0.6.5-1) ...
646s Setting up r-cran-ellipsis (0.3.2-2) ...
646s Setting up r-base-dev (4.3.3-2build1) ...
646s Setting up r-cran-stringr (1.5.1-1) ...
646s Setting up r-cran-memoise (2.0.1-1) ...
646s Setting up r-cran-promises (1.2.1+dfsg-1) ...
646s Setting up r-cran-htmltools (0.5.7-1) ...
646s Setting up pkg-r-autopkgtest (20231212ubuntu1) ...
646s Setting up r-cran-sass (0.4.8+dfsg-1) ...
646s Setting up r-cran-httpuv (1.6.14+dfsg-1) ...
646s Setting up r-cran-fontawesome (0.5.2-1) ...
646s Setting up r-cran-jquerylib (0.1.4+dfsg-4) ...
646s Setting up r-cran-bslib (0.6.1+dfsg-1) ...
646s Setting up r-cran-shiny (1.8.0+dfsg-1) ...
646s Setting up r-cran-rmarkdown (2.25+dfsg-3) ...
646s Setting up autopkgtest-satdep (0) ...
646s Processing triggers for man-db (2.12.0-3) ...
647s Processing triggers for install-info (7.1-3) ...
647s Processing triggers for libc-bin (2.39-0ubuntu2) ...
656s (Reading database ... 91894 files and directories currently installed.)
656s Removing autopkgtest-satdep (0) ...
658s autopkgtest [18:25:11]: test pkg-r-autopkgtest: /usr/share/dh-r/pkg-r-autopkgtest
658s autopkgtest [18:25:11]: test pkg-r-autopkgtest: [-----------------------
658s Test: Try to load the R library diffobj
659s
659s R version 4.3.3 (2024-02-29) -- "Angel Food Cake"
659s Copyright (C) 2024 The R Foundation for Statistical Computing
659s Platform: aarch64-unknown-linux-gnu (64-bit)
659s
659s R is free software and comes with ABSOLUTELY NO WARRANTY.
659s You are welcome to redistribute it under certain conditions.
659s Type 'license()' or 'licence()' for distribution details.
659s
659s R is a collaborative project with many contributors.
659s Type 'contributors()' for more information and
659s 'citation()' on how to cite R or R packages in publications.
659s
659s Type 'demo()' for some demos, 'help()' for on-line help, or
659s 'help.start()' for an HTML browser interface to help.
659s Type 'q()' to quit R.
659s
659s > library('diffobj')
659s >
659s >
659s Other tests are currently unsupported!
659s They will be progressively added.
659s autopkgtest [18:25:12]: test pkg-r-autopkgtest: -----------------------]
660s autopkgtest [18:25:13]: test pkg-r-autopkgtest: - - - - - - - - - - results - - - - - - - - - -
660s pkg-r-autopkgtest PASS
660s autopkgtest [18:25:13]: @@@@@@@@@@@@@@@@@@@@ summary
660s run-unit-test PASS
660s pkg-r-autopkgtest PASS
671s Creating nova instance adt-noble-arm64-r-cran-diffobj-20240316-181413-juju-7f2275-prod-proposed-migration-environment-2 from image adt/ubuntu-noble-arm64-server-20240314.img (UUID 7faf5f09-d335-4346-a441-4eab2f9c04fe)...
671s Creating nova instance adt-noble-arm64-r-cran-diffobj-20240316-181413-juju-7f2275-prod-proposed-migration-environment-2 from image adt/ubuntu-noble-arm64-server-20240314.img (UUID 7faf5f09-d335-4346-a441-4eab2f9c04fe)...