Diff of the two buildlogs: -- --- b1/build.log 2023-05-22 04:53:16.901159643 +0000 +++ b2/build.log 2023-05-22 04:56:39.188248313 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Sun May 21 16:52:06 -12 2023 -I: pbuilder-time-stamp: 1684731126 +I: Current time: Mon May 22 18:53:24 +14 2023 +I: pbuilder-time-stamp: 1684731204 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/bookworm-reproducible-base.tgz] I: copying local configuration @@ -16,7 +16,7 @@ I: copying [./emacs-buttercup_1.26.orig.tar.gz] I: copying [./emacs-buttercup_1.26-4.debian.tar.xz] I: Extracting source -gpgv: Signature made Sat Jan 14 06:00:00 2023 -12 +gpgv: Signature made Sun Jan 15 08:00:00 2023 +14 gpgv: using RSA key 922C87617C1A6344A263A7EA0345391B55AA1521 gpgv: Can't check signature: No public key dpkg-source: warning: cannot verify inline signature for ./emacs-buttercup_1.26-4.dsc: no acceptable signature found @@ -27,135 +27,167 @@ dpkg-source: info: applying debian-changes I: using fakeroot in build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/30379/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/28740/tmp/hooks/D01_modify_environment starting +debug: Running on virt32c. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 May 22 18:54 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/28740/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/28740/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='armhf' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=3 ' - DISTRIBUTION='bookworm' - HOME='/root' - HOST_ARCH='armhf' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="15" [3]="1" [4]="release" [5]="arm-unknown-linux-gnueabihf") + BASH_VERSION='5.2.15(1)-release' + BUILDDIR=/build + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=armhf + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=4 ' + DIRSTACK=() + DISTRIBUTION=bookworm + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=arm + HOST_ARCH=armhf IFS=' ' - INVOCATION_ID='6a719a7305c642748692dc645d3b1074' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='30379' - PS1='# ' - PS2='> ' + INVOCATION_ID=4108f102bb8548c18a820664ef937167 + LANG=C + LANGUAGE=it_CH:it + LC_ALL=C + MACHTYPE=arm-unknown-linux-gnueabihf + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnueabihf + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=28740 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.aGpoFzIO/pbuilderrc_ifFI --distribution bookworm --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/bookworm-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.aGpoFzIO/b1 --logfile b1/build.log emacs-buttercup_1.26-4.dsc' - SUDO_GID='114' - SUDO_UID='108' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://10.0.0.15:3142/' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.aGpoFzIO/pbuilderrc_17gY --distribution bookworm --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/bookworm-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.aGpoFzIO/b2 --logfile b2/build.log --extrapackages usrmerge emacs-buttercup_1.26-4.dsc' + SUDO_GID=113 + SUDO_UID=107 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://10.0.0.15:3142/ I: uname -a - Linux jtx1c 5.10.0-23-arm64 #1 SMP Debian 5.10.179-1 (2023-05-12) aarch64 GNU/Linux + Linux i-capture-the-hostname 5.10.0-23-armmp-lpae #1 SMP Debian 5.10.179-1 (2023-05-12) armv7l GNU/Linux I: ls -l /bin total 5072 - -rwxr-xr-x 1 root root 838488 Apr 23 09:24 bash - -rwxr-xr-x 3 root root 67144 Sep 18 2022 bunzip2 - -rwxr-xr-x 3 root root 67144 Sep 18 2022 bzcat - lrwxrwxrwx 1 root root 6 Sep 18 2022 bzcmp -> bzdiff - -rwxr-xr-x 1 root root 2225 Sep 18 2022 bzdiff - lrwxrwxrwx 1 root root 6 Sep 18 2022 bzegrep -> bzgrep - -rwxr-xr-x 1 root root 4893 Nov 27 2021 bzexe - lrwxrwxrwx 1 root root 6 Sep 18 2022 bzfgrep -> bzgrep - -rwxr-xr-x 1 root root 3775 Sep 18 2022 bzgrep - -rwxr-xr-x 3 root root 67144 Sep 18 2022 bzip2 - -rwxr-xr-x 1 root root 67112 Sep 18 2022 bzip2recover - lrwxrwxrwx 1 root root 6 Sep 18 2022 bzless -> bzmore - -rwxr-xr-x 1 root root 1297 Sep 18 2022 bzmore - -rwxr-xr-x 1 root root 67632 Sep 20 2022 cat - -rwxr-xr-x 1 root root 67676 Sep 20 2022 chgrp - -rwxr-xr-x 1 root root 67644 Sep 20 2022 chmod - -rwxr-xr-x 1 root root 67684 Sep 20 2022 chown - -rwxr-xr-x 1 root root 133532 Sep 20 2022 cp - -rwxr-xr-x 1 root root 132868 Jan 5 01:20 dash - -rwxr-xr-x 1 root root 133220 Sep 20 2022 date - -rwxr-xr-x 1 root root 67732 Sep 20 2022 dd - -rwxr-xr-x 1 root root 68104 Sep 20 2022 df - -rwxr-xr-x 1 root root 133632 Sep 20 2022 dir - -rwxr-xr-x 1 root root 59128 Mar 22 21:02 dmesg - lrwxrwxrwx 1 root root 8 Dec 19 01:33 dnsdomainname -> hostname - lrwxrwxrwx 1 root root 8 Dec 19 01:33 domainname -> hostname - -rwxr-xr-x 1 root root 67560 Sep 20 2022 echo - -rwxr-xr-x 1 root root 41 Jan 24 02:43 egrep - -rwxr-xr-x 1 root root 67548 Sep 20 2022 false - -rwxr-xr-x 1 root root 41 Jan 24 02:43 fgrep - -rwxr-xr-x 1 root root 55748 Mar 22 21:02 findmnt - -rwsr-xr-x 1 root root 26208 Mar 22 20:15 fusermount - -rwxr-xr-x 1 root root 128608 Jan 24 02:43 grep - -rwxr-xr-x 2 root root 2346 Apr 9 2022 gunzip - -rwxr-xr-x 1 root root 6447 Apr 9 2022 gzexe - -rwxr-xr-x 1 root root 64220 Apr 9 2022 gzip - -rwxr-xr-x 1 root root 67032 Dec 19 01:33 hostname - -rwxr-xr-x 1 root root 67720 Sep 20 2022 ln - -rwxr-xr-x 1 root root 35132 Mar 22 21:51 login - -rwxr-xr-x 1 root root 133632 Sep 20 2022 ls - -rwxr-xr-x 1 root root 136808 Mar 22 21:02 lsblk - -rwxr-xr-x 1 root root 67800 Sep 20 2022 mkdir - -rwxr-xr-x 1 root root 67764 Sep 20 2022 mknod - -rwxr-xr-x 1 root root 67596 Sep 20 2022 mktemp - -rwxr-xr-x 1 root root 38504 Mar 22 21:02 more - -rwsr-xr-x 1 root root 38496 Mar 22 21:02 mount - -rwxr-xr-x 1 root root 9824 Mar 22 21:02 mountpoint - -rwxr-xr-x 1 root root 133532 Sep 20 2022 mv - lrwxrwxrwx 1 root root 8 Dec 19 01:33 nisdomainname -> hostname - lrwxrwxrwx 1 root root 14 Apr 2 18:25 pidof -> /sbin/killall5 - -rwxr-xr-x 1 root root 67608 Sep 20 2022 pwd - lrwxrwxrwx 1 root root 4 Apr 23 09:24 rbash -> bash - -rwxr-xr-x 1 root root 67600 Sep 20 2022 readlink - -rwxr-xr-x 1 root root 67672 Sep 20 2022 rm - -rwxr-xr-x 1 root root 67600 Sep 20 2022 rmdir - -rwxr-xr-x 1 root root 67400 Nov 2 2022 run-parts - -rwxr-xr-x 1 root root 133372 Jan 5 07:55 sed - lrwxrwxrwx 1 root root 4 Jan 5 01:20 sh -> dash - -rwxr-xr-x 1 root root 67584 Sep 20 2022 sleep - -rwxr-xr-x 1 root root 67644 Sep 20 2022 stty - -rwsr-xr-x 1 root root 50800 Mar 22 21:02 su - -rwxr-xr-x 1 root root 67584 Sep 20 2022 sync - -rwxr-xr-x 1 root root 336764 Apr 6 02:25 tar - -rwxr-xr-x 1 root root 67144 Nov 2 2022 tempfile - -rwxr-xr-x 1 root root 133224 Sep 20 2022 touch - -rwxr-xr-x 1 root root 67548 Sep 20 2022 true - -rwxr-xr-x 1 root root 9768 Mar 22 20:15 ulockmgr_server - -rwsr-xr-x 1 root root 22108 Mar 22 21:02 umount - -rwxr-xr-x 1 root root 67572 Sep 20 2022 uname - -rwxr-xr-x 2 root root 2346 Apr 9 2022 uncompress - -rwxr-xr-x 1 root root 133632 Sep 20 2022 vdir - -rwxr-xr-x 1 root root 42608 Mar 22 21:02 wdctl - lrwxrwxrwx 1 root root 8 Dec 19 01:33 ypdomainname -> hostname - -rwxr-xr-x 1 root root 1984 Apr 9 2022 zcat - -rwxr-xr-x 1 root root 1678 Apr 9 2022 zcmp - -rwxr-xr-x 1 root root 6460 Apr 9 2022 zdiff - -rwxr-xr-x 1 root root 29 Apr 9 2022 zegrep - -rwxr-xr-x 1 root root 29 Apr 9 2022 zfgrep - -rwxr-xr-x 1 root root 2081 Apr 9 2022 zforce - -rwxr-xr-x 1 root root 8103 Apr 9 2022 zgrep - -rwxr-xr-x 1 root root 2206 Apr 9 2022 zless - -rwxr-xr-x 1 root root 1842 Apr 9 2022 zmore - -rwxr-xr-x 1 root root 4577 Apr 9 2022 znew -I: user script /srv/workspace/pbuilder/30379/tmp/hooks/D02_print_environment finished + -rwxr-xr-x 1 root root 838488 Apr 24 11:24 bash + -rwxr-xr-x 3 root root 67144 Sep 19 2022 bunzip2 + -rwxr-xr-x 3 root root 67144 Sep 19 2022 bzcat + lrwxrwxrwx 1 root root 6 Sep 19 2022 bzcmp -> bzdiff + -rwxr-xr-x 1 root root 2225 Sep 19 2022 bzdiff + lrwxrwxrwx 1 root root 6 Sep 19 2022 bzegrep -> bzgrep + -rwxr-xr-x 1 root root 4893 Nov 28 2021 bzexe + lrwxrwxrwx 1 root root 6 Sep 19 2022 bzfgrep -> bzgrep + -rwxr-xr-x 1 root root 3775 Sep 19 2022 bzgrep + -rwxr-xr-x 3 root root 67144 Sep 19 2022 bzip2 + -rwxr-xr-x 1 root root 67112 Sep 19 2022 bzip2recover + lrwxrwxrwx 1 root root 6 Sep 19 2022 bzless -> bzmore + -rwxr-xr-x 1 root root 1297 Sep 19 2022 bzmore + -rwxr-xr-x 1 root root 67632 Sep 21 2022 cat + -rwxr-xr-x 1 root root 67676 Sep 21 2022 chgrp + -rwxr-xr-x 1 root root 67644 Sep 21 2022 chmod + -rwxr-xr-x 1 root root 67684 Sep 21 2022 chown + -rwxr-xr-x 1 root root 133532 Sep 21 2022 cp + -rwxr-xr-x 1 root root 132868 Jan 6 03:20 dash + -rwxr-xr-x 1 root root 133220 Sep 21 2022 date + -rwxr-xr-x 1 root root 67732 Sep 21 2022 dd + -rwxr-xr-x 1 root root 68104 Sep 21 2022 df + -rwxr-xr-x 1 root root 133632 Sep 21 2022 dir + -rwxr-xr-x 1 root root 59128 Mar 23 23:02 dmesg + lrwxrwxrwx 1 root root 8 Dec 20 03:33 dnsdomainname -> hostname + lrwxrwxrwx 1 root root 8 Dec 20 03:33 domainname -> hostname + -rwxr-xr-x 1 root root 67560 Sep 21 2022 echo + -rwxr-xr-x 1 root root 41 Jan 25 04:43 egrep + -rwxr-xr-x 1 root root 67548 Sep 21 2022 false + -rwxr-xr-x 1 root root 41 Jan 25 04:43 fgrep + -rwxr-xr-x 1 root root 55748 Mar 23 23:02 findmnt + -rwsr-xr-x 1 root root 26208 Mar 23 22:15 fusermount + -rwxr-xr-x 1 root root 128608 Jan 25 04:43 grep + -rwxr-xr-x 2 root root 2346 Apr 10 2022 gunzip + -rwxr-xr-x 1 root root 6447 Apr 10 2022 gzexe + -rwxr-xr-x 1 root root 64220 Apr 10 2022 gzip + -rwxr-xr-x 1 root root 67032 Dec 20 03:33 hostname + -rwxr-xr-x 1 root root 67720 Sep 21 2022 ln + -rwxr-xr-x 1 root root 35132 Mar 23 23:51 login + -rwxr-xr-x 1 root root 133632 Sep 21 2022 ls + -rwxr-xr-x 1 root root 136808 Mar 23 23:02 lsblk + -rwxr-xr-x 1 root root 67800 Sep 21 2022 mkdir + -rwxr-xr-x 1 root root 67764 Sep 21 2022 mknod + -rwxr-xr-x 1 root root 67596 Sep 21 2022 mktemp + -rwxr-xr-x 1 root root 38504 Mar 23 23:02 more + -rwsr-xr-x 1 root root 38496 Mar 23 23:02 mount + -rwxr-xr-x 1 root root 9824 Mar 23 23:02 mountpoint + -rwxr-xr-x 1 root root 133532 Sep 21 2022 mv + lrwxrwxrwx 1 root root 8 Dec 20 03:33 nisdomainname -> hostname + lrwxrwxrwx 1 root root 14 Apr 3 20:25 pidof -> /sbin/killall5 + -rwxr-xr-x 1 root root 67608 Sep 21 2022 pwd + lrwxrwxrwx 1 root root 4 Apr 24 11:24 rbash -> bash + -rwxr-xr-x 1 root root 67600 Sep 21 2022 readlink + -rwxr-xr-x 1 root root 67672 Sep 21 2022 rm + -rwxr-xr-x 1 root root 67600 Sep 21 2022 rmdir + -rwxr-xr-x 1 root root 67400 Nov 3 2022 run-parts + -rwxr-xr-x 1 root root 133372 Jan 6 09:55 sed + lrwxrwxrwx 1 root root 9 May 22 18:54 sh -> /bin/bash + -rwxr-xr-x 1 root root 67584 Sep 21 2022 sleep + -rwxr-xr-x 1 root root 67644 Sep 21 2022 stty + -rwsr-xr-x 1 root root 50800 Mar 23 23:02 su + -rwxr-xr-x 1 root root 67584 Sep 21 2022 sync + -rwxr-xr-x 1 root root 336764 Apr 7 04:25 tar + -rwxr-xr-x 1 root root 67144 Nov 3 2022 tempfile + -rwxr-xr-x 1 root root 133224 Sep 21 2022 touch + -rwxr-xr-x 1 root root 67548 Sep 21 2022 true + -rwxr-xr-x 1 root root 9768 Mar 23 22:15 ulockmgr_server + -rwsr-xr-x 1 root root 22108 Mar 23 23:02 umount + -rwxr-xr-x 1 root root 67572 Sep 21 2022 uname + -rwxr-xr-x 2 root root 2346 Apr 10 2022 uncompress + -rwxr-xr-x 1 root root 133632 Sep 21 2022 vdir + -rwxr-xr-x 1 root root 42608 Mar 23 23:02 wdctl + lrwxrwxrwx 1 root root 8 Dec 20 03:33 ypdomainname -> hostname + -rwxr-xr-x 1 root root 1984 Apr 10 2022 zcat + -rwxr-xr-x 1 root root 1678 Apr 10 2022 zcmp + -rwxr-xr-x 1 root root 6460 Apr 10 2022 zdiff + -rwxr-xr-x 1 root root 29 Apr 10 2022 zegrep + -rwxr-xr-x 1 root root 29 Apr 10 2022 zfgrep + -rwxr-xr-x 1 root root 2081 Apr 10 2022 zforce + -rwxr-xr-x 1 root root 8103 Apr 10 2022 zgrep + -rwxr-xr-x 1 root root 2206 Apr 10 2022 zless + -rwxr-xr-x 1 root root 1842 Apr 10 2022 zmore + -rwxr-xr-x 1 root root 4577 Apr 10 2022 znew +I: user script /srv/workspace/pbuilder/28740/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -284,7 +316,7 @@ Get: 87 http://deb.debian.org/debian bookworm/main armhf libarray-utils-perl all 0.5-3 [6184 B] Get: 88 http://deb.debian.org/debian bookworm/main armhf libconfig-tiny-perl all 2.28-2 [16.4 kB] Get: 89 http://deb.debian.org/debian bookworm/main armhf dh-elpa all 2.0.16 [31.0 kB] -Fetched 65.5 MB in 6s (11.3 MB/s) +Fetched 65.5 MB in 2s (26.7 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package install-info. (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 ... 19329 files and directories currently installed.) @@ -674,10 +706,17 @@ Reading package lists... Building dependency tree... Reading state information... +usrmerge is already the newest version (35). fakeroot is already the newest version (1.31-1.2). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package -I: Running cd /build/emacs-buttercup-1.26/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../emacs-buttercup_1.26-4_source.changes +I: user script /srv/workspace/pbuilder/28740/tmp/hooks/A99_set_merged_usr starting +Re-configuring usrmerge... +removed '/etc/unsupported-skip-usrmerge-conversion' +The system has been successfully converted. +I: user script /srv/workspace/pbuilder/28740/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/emacs-buttercup-1.26/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../emacs-buttercup_1.26-4_source.changes dpkg-buildpackage: info: source package emacs-buttercup dpkg-buildpackage: info: source version 1.26-4 dpkg-buildpackage: info: source distribution unstable @@ -688,7 +727,7 @@ fakeroot debian/rules clean dh clean --with elpa dh_auto_clean - make -j3 clean + make -j4 clean make[1]: Entering directory '/build/emacs-buttercup-1.26' rm -f *.elc tests/*.elc make[1]: Leaving directory '/build/emacs-buttercup-1.26' @@ -699,13 +738,13 @@ dh_autoreconf dh_auto_configure dh_auto_build - make -j3 + make -j4 make[1]: Entering directory '/build/emacs-buttercup-1.26' emacs -batch -L . -f batch-byte-compile buttercup-compat.el emacs -batch -L . -f batch-byte-compile buttercup.el Loading /etc/emacs/site-start.d/00debian.el (source)... -Loading /etc/emacs/site-start.d/00debian.el (source)... Loading /etc/emacs/site-start.d/50autoconf.el (source)... +Loading /etc/emacs/site-start.d/00debian.el (source)... Loading /etc/emacs/site-start.d/50autoconf.el (source)... ./bin/buttercup -L . tests emacs -batch -L . -l buttercup.el -f buttercup-run-markdown docs/writing-tests.md @@ -716,475 +755,475 @@ Running 58 out of 61 specs. A suite - contains a spec with an expectation  contains a spec with an expectation (129.10ms) + contains a spec with an expectationRunning 227 specs. + +The buttercup--enclosed-expr function + should handle + expressions wrapped by buttercup--wrap-expr  contains a spec with an expectation (335.90ms) A suite is just a function - and so is a spec  and so is a spec (0.48ms) + and so is a spec  and so is a spec (0.55ms) The :to-be matcher compares with `eq' - and has a positive case  and has a positive case (0.36ms) - and can have a negative case  and can have a negative case (0.42ms) + and has a positive case  and has a positive case (0.45ms) + and can have a negative case  and can have a negative case (0.59ms) Included matchers: - The :to-be matcher compares with `eq'  The :to-be matcher compares with `eq' (0.63ms) + The :to-be matcher compares with `eq'  The :to-be matcher compares with `eq' (0.78ms) The :to-equal matcher - works for simple literals and variables  works for simple literals and variables (0.34ms) - should work for compound objects  should work for compound objects (0.34ms) - The :to-have-same-items-as matcher compares two lists as sets  The :to-have-same-items-as matcher compares two lists as sets (1.86ms) - The :to-match matcher is for regular expressions  The :to-match matcher is for regular expressions (0.97ms) - The :to-be-truthy matcher is for boolean casting testing  The :to-be-truthy matcher is for boolean casting testing (0.43ms) - The :to-contain matcher is for finding an item in a list  The :to-contain matcher is for finding an item in a list (0.64ms) - The :to-be-less-than matcher is for mathematical comparisons  The :to-be-less-than matcher is for mathematical comparisons (0.73ms) - The :to-be-greater-than matcher is for mathematical comparisons  The :to-be-greater-than matcher is for mathematical comparisons (0.68ms) - The :to-be-close-to matcher is for precision math comparison  The :to-be-close-to matcher is for precision math comparison (0.68ms) + works for simple literals and variables  works for simple literals and variables (0.44ms) + should work for compound objects  should work for compound objects (4.60ms) + The :to-have-same-items-as matcher compares two lists as sets  The :to-have-same-items-as matcher compares two lists as sets (2.48ms) + The :to-match matcher is for regular expressions  The :to-match matcher is for regular expressions (5.45ms) + The :to-be-truthy matcher is for boolean casting testing  The :to-be-truthy matcher is for boolean casting testing (0.66ms) + The :to-contain matcher is for finding an item in a list  The :to-contain matcher is for finding an item in a list (0.97ms) + The :to-be-less-than matcher is for mathematical comparisons  The :to-be-less-than matcher is for mathematical comparisons (0.96ms) + The :to-be-greater-than matcher is for mathematical comparisons  The :to-be-greater-than matcher is for mathematical comparisons (5.27ms) + The :to-be-close-to matcher is for precision math comparison  The :to-be-close-to matcher is for precision math comparison (0.91ms) The :to-throw matcher - is for testing if an expression throws an exception  is for testing if an expression throws an exception (0.72ms) - accepts a symbol to check for the signal thrown  accepts a symbol to check for the signal thrown (0.79ms) - optionally matches arguments to signals  optionally matches arguments to signals (0.90ms) + is for testing if an expression throws an exception  is for testing if an expression throws an exception (0.97ms) + accepts a symbol to check for the signal thrown  accepts a symbol to check for the signal thrown (3.01ms) + optionally matches arguments to signals  optionally matches arguments to signals (1.22ms) ERT support - allows you to use ERT macros in tests  allows you to use ERT macros in tests (0.17ms) + allows you to use ERT macros in tests  allows you to use ERT macros in tests (0.20ms) A spec - is just a function, so it can contain any code  is just a function, so it can contain any code (0.39ms) - can have more than one expectationRunning 227 specs. - -The buttercup--enclosed-expr function - should handle - expressions wrapped by buttercup--wrap-expr  can have more than one expectation (37.55ms) + is just a function, so it can contain any code  is just a function, so it can contain any code (0.59ms) + can have more than one expectation  can have more than one expectation (46.27ms) A spec using :VAR - has access to the variables bound in :VAR  has access to the variables bound in :VAR (0.43ms) + has access to the variables bound in :VAR  has access to the variables bound in :VAR (0.50ms) A spec using :VAR* - has access to the variables bound in :VAR* which can refer to symbols already bound  has access to the variables bound in :VAR* which can refer to symbols already bound (0.38ms) + has access to the variables bound in :VAR* which can refer to symbols already bound  has access to the variables bound in :VAR* which can refer to symbols already bound (0.82ms) A spec using `before-each' and `after-each' - is just a function, so it can contain any code  is just a function, so it can contain any code (0.37ms) - can have more than one expectation  can have more than one expectation (0.56ms) + is just a function, so it can contain any code  is just a function, so it can contain any code (0.50ms) + can have more than one expectation  can have more than one expectation (0.77ms) A spec using `before-all' and `after-all' - sets the initial value of foo before specs run  sets the initial value of foo before specs run (0.35ms) - does not reset foo between specs  does not reset foo between specs (0.36ms) + sets the initial value of foo before specs run  sets the initial value of foo before specs run (0.44ms) + does not reset foo between specs  does not reset foo between specs (0.44ms) A spec - is just a function, so it can contain any code  is just a function, so it can contain any code (0.38ms) - can have more than one expectation  can have more than one expectation (0.58ms) + is just a function, so it can contain any code  is just a function, so it can contain any code (0.48ms) + can have more than one expectation  can have more than one expectation (1.07ms) nested inside a second describe - can reference both scopes as needed  can reference both scopes as needed (0.39ms) + can reference both scopes as needed  expressions wrapped by buttercup--wrap-expr  can reference both scopes as needed (0.50ms) A spec - is just a function, so it can contain any code  is just a function, so it can contain any code PENDING (0.17ms) + is just a function, so it can contain any code  is just a function, so it can contain any code PENDING (0.18ms) Pending specs - can be declared using `xit'  can be declared using `xit' PENDING (0.13ms) - can be declared with `it' but without a body  can be declared with `it' but without a body PENDING (0.15ms) + can be declared using `xit'  can be declared using `xit' PENDING (0.20ms) + can be declared with `it' but without a body  can be declared with `it' but without a body PENDING (0.18ms) A spy - tracks that the spy was called  tracks that the spy was called (0.26ms) - resets tracking after each spec  resets tracking after each spec (0.38ms) + tracks that the spy was called  tracks that the spy was called (0.31ms) + resets tracking after each spec  resets tracking after each spec (0.48ms) that is defined in a nested `describe' - will override any outer spy  will override any outer spy (0.66ms) - will not be active outside it's scope  will not be active outside it's scope (0.43ms) - tracks all arguments of its calls  tracks all arguments of its calls (0.37ms) - stops all execution on a function  stops all execution on a function (0.40ms) + will override any outer spy  will override any outer spy (1.18ms) + will not be active outside it's scope  will not be active outside it's scope (0.57ms) + tracks all arguments of its calls  tracks all arguments of its calls (0.51ms) + stops all execution on a function  stops all execution on a function (0.54ms) A spy - tracks that the spy was called twice  tracks that the spy was called twice (0.26ms) + tracks that the spy was called twice  tracks that the spy was called twice (0.34ms) A spy, when configured to call through - tracks that the spy was called  tracks that the spy was called (0.23ms) - should not affect other functions  should not affect other functions (0.40ms) - when called returns the requested value  when called returns the requested value (0.38ms) + tracks that the spy was called (133.22ms) + a closure with expression copy?  tracks that the spy was called (0.26ms) + should not affect other functions  a closure with expression copy? (0.26ms) + a lambda with expression copy?  a lambda with expression copy? (0.17ms) + byte compiled + lambda objects  should not affect other functions (0.79ms) + when called returns the requested value  when called returns the requested value (0.55ms) A spy, when configured to fake a return value - tracks that the spy was called  tracks that the spy was called (0.20ms) - should not affect other functions  should not affect other functions (0.39ms) - when called returns the requested value  when called returns the requested value (0.39ms) + tracks that the spy was called  tracks that the spy was called (0.26ms) + should not affect other functions  should not affect other functions (0.86ms) + when called returns the requested value  when called returns the requested value (0.51ms) A spy, when configured with an alternate implementation - tracks that the spy was called  tracks that the spy was called (0.21ms) - should not affect other functions  should not affect other functions (0.39ms) - when called returns the requested value  when called returns the requested value (0.39ms) + tracks that the spy was called  tracks that the spy was called (0.28ms) + should not affect other functions  should not affect other functions (0.53ms) + when called returns the requested value  when called returns the requested value (2.34ms) A spy, when configured to throw an error - throws the error  throws the error (0.47ms) + throws the error  throws the error (0.61ms) A spy - tracks if it was called at all  tracks if it was called at all (0.63ms) - tracks the number of times it was called  tracks the number of times it was called (0.63ms) - tracks the arguments of each call  tracks the arguments of each call (0.64ms) - tracks the arguments of all calls  tracks the arguments of all calls (0.42ms) - can provide the context and arguments to all calls  can provide the context and arguments to all calls (0.41ms) - has a shortcut to the most recent call  has a shortcut to the most recent call (0.42ms) - has a shortcut to the first call  has a shortcut to the first call (0.43ms) - tracks the return values and error signals of each call  tracks the return values and error signals of each call (2.29ms) - counts the number of successful and failed calls  counts the number of successful and failed calls (2.94ms) - can be reset  can be reset (0.69ms) - -A test - can issue warnings while running  expressions wrapped by buttercup--wrap-expr (61.78ms) - a closure with expression copy?  a closure with expression copy? (0.32ms) - a lambda with expression copy?  a lambda with expression copy? (0.18ms) - byte compiled - lambda objects  lambda objects (0.35ms) - wrapped expression  wrapped expression (0.26ms) + tracks if it was called at all  tracks if it was called at all (0.99ms) + tracks the number of times it was called  lambda objects (8.52ms) + wrapped expression  wrapped expression (0.32ms) should error - on a simple closure  on a simple closure (0.32ms) - on a closure with stackframe marker but no quoted expression  on a closure with stackframe marker but no quoted expression (0.32ms) - for multi-statement closures  for multi-statement closures (0.34ms) - for closures with non-empty argument lists  for closures with non-empty argument lists (0.38ms) - on simple lambda objects  on simple lambda objects (0.29ms) - on a lambda with stackframe marker but no quoted expression  on a lambda with stackframe marker but no quoted expression (0.28ms) - for multi-statement lambdas  for multi-statement lambdas (0.30ms) - for lambdas with non-empty argument lists  for lambdas with non-empty argument lists (0.33ms) - on byte-compiled functions with arguments  on byte-compiled functions with arguments (0.54ms) + on a simple closure  tracks the number of times it was called (0.83ms) + tracks the arguments of each call  on a simple closure (0.36ms) + on a closure with stackframe marker but no quoted expression  on a closure with stackframe marker but no quoted expression (0.35ms) + for multi-statement closures  tracks the arguments of each call  for multi-statement closures (0.90ms) + (0.42ms) + for closures with non-empty argument lists tracks the arguments of all calls  for closures with non-empty argument lists (0.38ms) + on simple lambda objects  tracks the arguments of all calls (0.55ms) + can provide the context and arguments to all calls  on simple lambda objects (0.32ms) + on a lambda with stackframe marker but no quoted expression  on a lambda with stackframe marker but no quoted expression (0.32ms) +  can provide the context and arguments to all calls for multi-statement lambdas (0.54ms) + has a shortcut to the most recent call  for multi-statement lambdas (0.34ms) + for lambdas with non-empty argument lists  has a shortcut to the most recent call (0.56ms) +  for lambdas with non-empty argument lists (0.38ms) + on byte-compiled functions with arguments has a shortcut to the first call  on byte-compiled functions with arguments (0.63ms) The buttercup-failed signal - can be raised  can be raised (0.28ms) + can be raised  has a shortcut to the first call (0.64ms) + tracks the return values and error signals of each call  can be raised (0.31ms) The buttercup-pending signal - can be raised  can be raised (0.28ms) + can be raised  can be raised (0.32ms) The `expect' form - with a matcher should translate to the function call with closures  with a matcher should translate to the function call with closures (0.79ms) - with no matcher should use `:to-be-truthy' as the matcher  with no matcher should use `:to-be-truthy' as the matcher (0.54ms) + with a matcher should translate to the function call with closures  with a matcher should translate to the function call with closures (0.97ms) + with no matcher should use `:to-be-truthy' as the matcher  with no matcher should use `:to-be-truthy' as the matcher (0.59ms) The `buttercup-expect' function with a function as a matcher argument - should not raise an error if the function returns true  should not raise an error if the function returns true (0.31ms) - should raise an error if the function returns false  should raise an error if the function returns false (0.32ms) + should not raise an error if the function returns true  should not raise an error if the function returns true (0.36ms) + should raise an error if the function returns false  tracks the return values and error signals of each call (3.67ms) + counts the number of successful and failed calls  counts the number of successful and failed calls (4.15ms) + can be reset  can be reset (0.90ms) + +A test + can issue warnings while running  should raise an error if the function returns false (8.76ms) with a matcher argument - should not raise an error if the matcher returns true  should not raise an error if the matcher returns true (0.30ms) - should raise an error if the matcher returns false  should raise an error if the matcher returns false (0.30ms) + should not raise an error if the matcher returns true  should not raise an error if the matcher returns true (0.34ms) + should raise an error if the matcher returns false  should raise an error if the matcher returns false (0.39ms) The `buttercup-fail' function - should raise a signal with its arguments  should raise a signal with its arguments (0.31ms) + should raise a signal with its arguments  should raise a signal with its arguments (0.33ms) The `assume' form - should raise a signal if the condition is nil  should raise a signal if the condition is nil (0.29ms) - should show the format if no message is given  should show the format if no message is given (0.30ms) - should not raise a signal if the condition is non-nil  should not raise a signal if the condition is non-nil (0.28ms) + should raise a signal if the condition is nil  should raise a signal if the condition is nil (0.32ms) + should show the format if no message is given  should show the format if no message is given (0.34ms) + should not raise a signal if the condition is non-nil  should not raise a signal if the condition is non-nil (0.31ms) The `buttercup-skip' function - should raise a signal with its arguments  should raise a signal with its arguments (0.30ms) + should raise a signal with its arguments  should raise a signal with its arguments (0.32ms) The `buttercup-define-matcher' macro - should create a matcher usable by apply-matcher  should create a matcher usable by apply-matcher (0.20ms) + should create a matcher usable by apply-matcher  should create a matcher usable by apply-matcher (0.21ms) The `buttercup--apply-matcher' function - should work with functions  should work with functions (0.19ms) - should work with matchers  should work with matchers (0.20ms) - should fail if the matcher is not defined  should fail if the matcher is not defined (0.27ms) + should work with functions  should work with functions (4.37ms) + should work with matchers  should work with matchers (0.30ms) + should fail if the matcher is not defined  should fail if the matcher is not defined (0.35ms) The :buttercup-define-matcher-for-unary-function helper - should not modify match data  should not modify match data (0.31ms) + should not modify match data  should not modify match data (0.34ms) The :buttercup-define-matcher-for-binary-function helper - should not modify match data  should not modify match data (0.31ms) + should not modify match data  should not modify match data (0.37ms) The `buttercup-suite-add-child' function - should add an element at the end of the list and return it  should add an element at the end of the list and return it (38.47ms) - should add an element even if the list is empty and return it  should add an element even if the list is empty and return it (0.37ms) - should add the parent to the child  should add the parent to the child (0.21ms) + should add an element at the end of the list and return it  should add an element at the end of the list and return it (81.92ms) + should add an element even if the list is empty and return it  should add an element even if the list is empty and return it (4.56ms) + should add the parent to the child  should add the parent to the child (0.25ms) The `buttercup-suite-parents' function - should return the list of parents for a suite  should return the list of parents for a suite (0.24ms) + should return the list of parents for a suite  should return the list of parents for a suite (0.27ms) The `buttercup-spec-parents' function - should return the list of parents for a spec  should return the list of parents for a spec (0.23ms) + should return the list of parents for a spec  should return the list of parents for a spec (0.26ms) The `buttercup-suites-total-specs-defined' function should return the number of specs in a list of suites  should return the number of specs in a list of suites (0.22ms) The `buttercup-suites-total-specs-pending' function - should return the number of pending specs in a list of suites  should return the number of pending specs in a list of suites (0.29ms) - should also count skipped specs  should also count skipped specs (0.30ms) + should return the number of pending specs in a list of suites  should return the number of pending specs in a list of suites (0.32ms) + should also count skipped specs  should also count skipped specs (0.32ms) The `buttercup-suites-total-specs-failed' function - should return the number of failed specs in a list of suites  should return the number of failed specs in a list of suites (0.21ms) + should return the number of failed specs in a list of suites  should return the number of failed specs in a list of suites (0.22ms) The `buttercup-suite-full-name' function - should return the full name of a suite without parents  should return the full name of a suite without parents (0.20ms) + should return the full name of a suite without parents  should return the full name of a suite without parents (0.21ms) should return the full name of a suite with parents  should return the full name of a suite with parents (0.21ms) The `buttercup-spec-full-name' function - should return the full name of a spec without parents  should return the full name of a spec without parents (0.20ms) - should return the full name of a spec with parents  should return the full name of a spec with parents (0.20ms) + should return the full name of a spec without parents  should return the full name of a spec without parents (0.21ms) + should return the full name of a spec with parents  should return the full name of a spec with parents (0.21ms) The `buttercup-elapsed-time' function - should report elapsed time for suites  can issue warnings while running (811.40ms) + should report elapsed time for suites  can issue warnings while running (2.07s) Warning (buttercup): This warning should be visible after the test report. - can capture its own warnings as part of the test  can capture its own warnings as part of the test (0.73ms) + can capture its own warnings as part of the test  can capture its own warnings as part of the test (0.80ms) -Ran 58 out of 61 specs, 0 failed, in 1.02s. -  should report elapsed time for suites (791.90ms) - should report elapsed time for specs  should report elapsed time for specs (0.31ms) +Ran 58 out of 61 specs, 0 failed, in 2.54s. +  should report elapsed time for suites (2.04s) + should report elapsed time for specs  should report elapsed time for specs (0.33ms) The `buttercup--run-suite' function - should set start and end time of the suite  should set start and end time of the suite (0.44ms) + should set start and end time of the suite  should set start and end time of the suite (0.49ms) The `buttercup--run-spec' function - should set start and end time of the spec  should set start and end time of the spec (0.48ms) - should not overwrite pending status with `after-each' results  should not overwrite pending status with `after-each' results (0.27ms) + should set start and end time of the spec  should set start and end time of the spec (0.63ms) + should not overwrite pending status with `after-each' results  should not overwrite pending status with `after-each' results (12.74ms) should set status to pending - for assume in `before-each'  for assume in `before-each' (0.44ms) - for assume in spec  for assume in spec (0.29ms) - for assume in `after-each'  for assume in `after-each' (0.39ms) + for assume in `before-each'  for assume in `before-each' (0.54ms) + for assume in spec  for assume in spec (0.34ms) + for assume in `after-each'  for assume in `after-each' (0.52ms) The `describe' macro - should expand to a simple call to the buttercup-describe function  should expand to a simple call to the buttercup-describe function (0.20ms) - should support the :var argument  should support the :var argument (0.19ms) - should support the :var* argument  should support the :var* argument (0.19ms) + should expand to a simple call to the buttercup-describe function  should expand to a simple call to the buttercup-describe function (0.24ms) + should support the :var argument  should support the :var argument (0.54ms) + should support the :var* argument  should support the :var* argument (0.22ms) The `buttercup-describe' function - should run the enclosing body  should run the enclosing body (0.14ms) - should set the `buttercup-suites' variable  should set the `buttercup-suites' variable (0.18ms) - should add child suites when called nested  should add child suites when called nested (0.30ms) + should run the enclosing body  should run the enclosing body (0.18ms) + should set the `buttercup-suites' variable  should set the `buttercup-suites' variable (0.22ms) + should add child suites when called nested  should add child suites when called nested (5.02ms) The `it' macro - should expand to a call to the `buttercup-it' function  should expand to a call to the `buttercup-it' function (0.20ms) - without argument should expand to xit.  without argument should expand to xit. (0.17ms) + should expand to a call to the `buttercup-it' function  should expand to a call to the `buttercup-it' function (0.24ms) + without argument should expand to xit.  without argument should expand to xit. (0.21ms) The `buttercup-it' function - should fail if not called from within a describe form  should fail if not called from within a describe form (0.26ms) - should add a spec to the current suite and return the spec  should add a spec to the current suite and return the spec (0.43ms) + should fail if not called from within a describe form  should fail if not called from within a describe form (0.30ms) + should add a spec to the current suite and return the spec  should add a spec to the current suite and return the spec (0.56ms) The `before-each' macro - expands to a function call  expands to a function call (0.25ms) + expands to a function call  expands to a function call (0.56ms) The `buttercup-before-each' function - adds its argument to the before-each list of the current suite  adds its argument to the before-each list of the current suite (0.19ms) + adds its argument to the before-each list of the current suite  adds its argument to the before-each list of the current suite (0.23ms) The `after-each' macro - expands to a function call  expands to a function call (0.17ms) + expands to a function call  expands to a function call (0.22ms) The `buttercup-after-each' function - adds its argument to the after-each list of the current suite  adds its argument to the after-each list of the current suite (0.18ms) + adds its argument to the after-each list of the current suite  adds its argument to the after-each list of the current suite (0.21ms) The `before-all' macro - expands to a function call  expands to a function call (0.18ms) + expands to a function call  expands to a function call (0.38ms) The `buttercup-before-all' function - adds its argument to the before-all list of the current suite  adds its argument to the before-all list of the current suite (0.17ms) + adds its argument to the before-all list of the current suite  adds its argument to the before-all list of the current suite (0.27ms) The `after-all' macro - expands to a function call  expands to a function call (0.18ms) + expands to a function call  expands to a function call (0.28ms) The `buttercup-after-all' function - adds its argument to the after-all list of the current suite  adds its argument to the after-all list of the current suite (0.17ms) + adds its argument to the after-all list of the current suite  adds its argument to the after-all list of the current suite (0.28ms) The `xdescribe' macro - expands directly to a function call  expands directly to a function call (0.19ms) - changes contained it-specs to pending specs  changes contained it-specs to pending specs (0.29ms) - should add a pending suite  should add a pending suite (0.18ms) + expands directly to a function call  expands directly to a function call (0.36ms) + changes contained it-specs to pending specs  changes contained it-specs to pending specs (0.54ms) + should add a pending suite  should add a pending suite (0.28ms) The `xit' macro - expands directly to a function call  expands directly to a function call (0.17ms) + expands directly to a function call  expands directly to a function call (0.27ms) The `buttercup-xit' function - should be a no-op  should be a no-op (0.16ms) - should add a function that raises a pending signal  should add a function that raises a pending signal (0.26ms) - should mark the suite as pending  should mark the suite as pending (0.18ms) - should set the failure description to PENDING  should set the failure description to PENDING (0.30ms) + should be a no-op  should be a no-op (0.25ms) + should add a function that raises a pending signal  should add a function that raises a pending signal (0.47ms) + should mark the suite as pending  should mark the suite as pending (0.28ms) + should set the failure description to PENDING  should set the failure description to PENDING (0.44ms) The Spy `spy-on' function - replaces a symbol's function slot  replaces a symbol's function slot (0.23ms) - restores the old value after a spec run  restores the old value after a spec run (0.17ms) - allows a spied-on command to be executed as a command  allows a spied-on command to be executed as a command (0.37ms) - can spy on autoloaded functions  can spy on autoloaded functions (2.34ms) - can spy on non-existing functions  can spy on non-existing functions (0.09ms) - only accepts ARG for keywords that use it  only accepts ARG for keywords that use it (0.89ms) + replaces a symbol's function slot  replaces a symbol's function slot (0.29ms) + restores the old value after a spec run  restores the old value after a spec run (0.34ms) + allows a spied-on command to be executed as a command  allows a spied-on command to be executed as a command (0.68ms) + can spy on autoloaded functions  can spy on autoloaded functions (9.48ms) + can spy on non-existing functions  can spy on non-existing functions (0.13ms) + only accepts ARG for keywords that use it  only accepts ARG for keywords that use it (9.38ms) will signal en error if - used in before-all  used in before-all (0.28ms) - used directly in describe  used directly in describe (0.27ms) + used in before-all  used in before-all (0.56ms) + used directly in describe  used directly in describe (0.43ms) :to-have-been-called matcher - returns false if the spy was not called  returns false if the spy was not called (0.19ms) - returns true if the spy was called at all  returns true if the spy was called at all (0.19ms) + returns false if the spy was not called  returns false if the spy was not called (0.34ms) + returns true if the spy was called at all  returns true if the spy was called at all (0.37ms) :to-have-been-called-with matcher - returns false if the spy was not called at all  returns false if the spy was not called at all (0.24ms) - returns false if the spy was called with different arguments  returns false if the spy was called with different arguments (0.26ms) - returns true if the spy was called with those arguments  returns true if the spy was called with those arguments (0.20ms) + returns false if the spy was not called at all  returns false if the spy was not called at all (0.38ms) + returns false if the spy was called with different arguments  returns false if the spy was called with different arguments (0.43ms) + returns true if the spy was called with those arguments  returns true if the spy was called with those arguments (0.34ms) :to-have-been-called-times matcher - returns error if the spy was called less than expected  returns error if the spy was called less than expected (0.24ms) - returns error if the spy was called more than expected  returns error if the spy was called more than expected (0.24ms) - returns true if the spy was called the expected number of times  returns true if the spy was called the expected number of times (0.20ms) - use plural words in error message  use plural words in error message (0.24ms) - use singular expected word in error message  use singular expected word in error message (0.22ms) - use singular actual word in error message  use singular actual word in error message (0.24ms) + returns error if the spy was called less than expected  returns error if the spy was called less than expected (4.65ms) + returns error if the spy was called more than expected  returns error if the spy was called more than expected (0.42ms) + returns true if the spy was called the expected number of times  returns true if the spy was called the expected number of times (0.34ms) + use plural words in error message  use plural words in error message (0.40ms) + use singular expected word in error message  use singular expected word in error message (0.43ms) + use singular actual word in error message  use singular actual word in error message (0.40ms) :and-call-through keyword functionality - tracks calls to the function  tracks calls to the function (0.08ms) - passes the arguments to the original function  passes the arguments to the original function (0.22ms) + tracks calls to the function  tracks calls to the function (0.14ms) + passes the arguments to the original function  passes the arguments to the original function (0.35ms) :and-return-value keyword functionality - tracks calls to the function  tracks calls to the function (0.08ms) - returns the specified value  returns the specified value (0.19ms) - works with strings  works with strings (0.20ms) - works with vectors  works with vectors (0.20ms) - works with symbols  works with symbols (0.19ms) - works with conses  works with conses (0.20ms) - works with lists  works with lists (0.22ms) - works with alists  works with alists (0.21ms) + tracks calls to the function  tracks calls to the function (4.26ms) + returns the specified value  returns the specified value (0.34ms) + works with strings  works with strings (0.29ms) + works with vectors  works with vectors (0.67ms) + works with symbols  works with symbols (0.36ms) + works with conses  works with conses (0.30ms) + works with lists  works with lists (0.34ms) + works with alists  works with alists (0.32ms) :and-call-fake keyword functionality - tracks calls to the function  tracks calls to the function (0.08ms) - returns the specified value  returns the specified value (0.18ms) + tracks calls to the function  tracks calls to the function (0.12ms) + returns the specified value  returns the specified value (0.27ms) :and-throw-error keyword functionality - throws an error when called  throws an error when called (0.28ms) + throws an error when called  throws an error when called (8.64ms) error-recording functionality - records the function as called even if it throws an error  records the function as called even if it throws an error (0.40ms) - counts both successful calls and calls that threw errors  counts both successful calls and calls that threw errors (0.42ms) - records args to the function whether it throw an error or not  records args to the function whether it throw an error or not (0.60ms) - records the signal thrown by a call to the function  records the signal thrown by a call to the function (39.62ms) + records the function as called even if it throws an error  records the function as called even if it throws an error (0.59ms) + counts both successful calls and calls that threw errors  counts both successful calls and calls that threw errors (0.61ms) + records args to the function whether it throw an error or not  records args to the function whether it throw an error or not (0.76ms) + records the signal thrown by a call to the function  records the signal thrown by a call to the function (112.79ms) The batch reporters on the buttercup-started event - should print the number of specs  should print the number of specs (649.78ms) - should color-print the number of specs with the default color  should color-print the number of specs with the default color (0.56ms) - should print the number of skipped specs  should print the number of skipped specs (0.54ms) - should color-print the number of skipped specs with the default color  should color-print the number of skipped specs with the default color (0.52ms) + should print the number of specs  should print the number of specs (2.01s) + should color-print the number of specs with the default color  should color-print the number of specs with the default color (0.70ms) + should print the number of skipped specs  should print the number of skipped specs (0.80ms) + should color-print the number of skipped specs with the default color  should color-print the number of skipped specs with the default color (0.78ms) on the suite-started event - should emit an indented suite description  should emit an indented suite description (0.43ms) - should color-print an indented suite description with the default color  should color-print an indented suite description with the default color (0.42ms) + should emit an indented suite description  should emit an indented suite description (12.81ms) + should color-print an indented suite description with the default color  should color-print an indented suite description with the default color (0.68ms) on the spec-started event - should emit an indented spec description  should emit an indented spec description (0.36ms) - should color-print an indented spec description with the default color  should color-print an indented spec description with the default color (0.36ms) + should emit an indented spec description  should emit an indented spec description (0.53ms) + should color-print an indented spec description with the default color  should color-print an indented spec description with the default color (0.56ms) on the spec-done event for a passed spec - should print no status tag  should print no status tag (0.50ms) - should color-print the description in green and no status tag  should color-print the description in green and no status tag (0.75ms) - should print multiline specs cleanly  should print multiline specs cleanly (0.61ms) - should color-print multiline specs cleanly  should color-print multiline specs cleanly (0.92ms) + should print no status tag  should print no status tag (0.74ms) + should color-print the description in green and no status tag  should color-print the description in green and no status tag (13.85ms) + should print multiline specs cleanly  should print multiline specs cleanly (0.96ms) + should color-print multiline specs cleanly  should color-print multiline specs cleanly (1.33ms) for a failed spec - should say FAILED  should say FAILED (0.60ms) - should color-print the description in red and say FAILED  should color-print the description in red and say FAILED (0.91ms) + should say FAILED  should say FAILED (9.19ms) + should color-print the description in red and say FAILED  should color-print the description in red and say FAILED (1.54ms) for a pending spec - should output the failure-description  should output the failure-description (0.63ms) - should color-print the description and failure-description in yellow  should color-print the description and failure-description in yellow (0.97ms) + should output the failure-description  should output the failure-description (0.94ms) + should color-print the description and failure-description in yellow  should color-print the description and failure-description in yellow (9.78ms) should throw an error for an unknown spec status - for plain output  for plain output (0.38ms) - for colored output  for colored output (0.31ms) + for plain output  for plain output (0.52ms) + for colored output  for colored output (0.46ms) on the suite-done event - should emit a newline at the end of a top-level suite  should emit a newline at the end of a top-level suite (0.32ms) - should color-print a newline at the end of a top-level suite  should color-print a newline at the end of a top-level suite (0.31ms) - should not emit anything at the end of other suites  should not emit anything at the end of other suites (0.25ms) - should not color-print anything at the end of other suites  should not color-print anything at the end of other suites (0.24ms) + should emit a newline at the end of a top-level suite  should emit a newline at the end of a top-level suite (0.46ms) + should color-print a newline at the end of a top-level suite  should color-print a newline at the end of a top-level suite (0.46ms) + should not emit anything at the end of other suites  should not emit anything at the end of other suites (4.52ms) + should not color-print anything at the end of other suites  should not color-print anything at the end of other suites (0.48ms) on the buttercup-done event - should print a summary of run and failing specs  should print a summary of run and failing specs (0.42ms) - should color-print `0 failed' specs in green  should color-print `0 failed' specs in green (0.89ms) - should color-print `X failed' specs in red  should color-print `X failed' specs in red (0.90ms) - should print a summary separating run and pending specs  should print a summary separating run and pending specs (0.41ms) - should color-print pending spec count in default color  should color-print pending spec count in default color (0.73ms) - should not raise any error even if a spec failed  should not raise any error even if a spec failed (39.44ms) + should print a summary of run and failing specs  should print a summary of run and failing specs (0.67ms) + should color-print `0 failed' specs in green  should color-print `0 failed' specs in green (1.42ms) + should color-print `X failed' specs in red  should color-print `X failed' specs in red (5.59ms) + should print a summary separating run and pending specs  should print a summary separating run and pending specs (0.63ms) + should color-print pending spec count in default color  should color-print pending spec count in default color (1.14ms) + should not raise any error even if a spec failed  should not raise any error even if a spec failed (101.27ms) on an unknown event - should raise an error  should raise an error (0.34ms) + should raise an error  should raise an error (0.50ms) Backtraces - should be printed for each failed spec  should be printed for each failed spec (1.93ms) + should be printed for each failed spec  should be printed for each failed spec (2.92ms) with style - `crop' should print truncated lines  `crop' should print truncated lines (7.04ms) - `full' should print full lines  `full' should print full lines (1.58ms) - `pretty' should pretty-print frames  `pretty' should pretty-print frames (2.53ms) - `omit' should print nothing  `omit' should print nothing (0.47ms) - should signal an error for unknown styles  should signal an error for unknown styles (0.34ms) + `crop' should print truncated lines  `crop' should print truncated lines (21.72ms) + `full' should print full lines  `full' should print full lines (2.18ms) + `pretty' should pretty-print frames  `pretty' should pretty-print frames (21.94ms) + `omit' should print nothing  `omit' should print nothing (0.68ms) + should signal an error for unknown styles  should signal an error for unknown styles (0.49ms) should generate correct backtrace for - no matcher  no matcher (0.98ms) - :to-be-truthy  :to-be-truthy (0.96ms) - :not :to-be-truthy  :not :to-be-truthy (0.95ms) - :to-be  :to-be (0.94ms) - :not :to-be  :not :to-be (0.98ms) - :to-equal  :to-equal (0.95ms) - :not :to-equal  :not :to-equal (0.95ms) - :to-have-same-items-as  :to-have-same-items-as (0.95ms) - :not :to-have-same-items-as  :not :to-have-same-items-as (1.02ms) - :to-match  :to-match (0.99ms) - :not :to-match  :not :to-match (1.25ms) - :to-be-in  :to-be-in (0.98ms) - :not :to-be-in  :not :to-be-in (0.99ms) - :to-contain  :to-contain (0.95ms) - :not :to-contain  :not :to-contain (0.94ms) - :to-be-less-than  :to-be-less-than (0.92ms) - :not :to-be-less-than  :not :to-be-less-than (0.94ms) - :to-be-greater-than  :to-be-greater-than (0.93ms) - :not :to-be-greater-than  :not :to-be-greater-than (0.95ms) - :to-be-weakly-less-than  :to-be-weakly-less-than (0.94ms) - :not :to-be-weakly-less-than  :not :to-be-weakly-less-than (0.94ms) - :to-be-weakly-greater-than  :to-be-weakly-greater-than (0.94ms) - :not :to-be-weakly-greater-than  :not :to-be-weakly-greater-than (0.95ms) - :to-be-close-to  :to-be-close-to (0.94ms) - :not :to-be-close-to  :not :to-be-close-to (0.96ms) - :to-have-been-called  :to-have-been-called (0.96ms) - :not :to-have-been-called  :not :to-have-been-called (0.95ms) - :to-have-been-called-with  :to-have-been-called-with (0.94ms) - :not :to-have-been-called-with  :not :to-have-been-called-with (0.95ms) - :to-have-been-called-times  :to-have-been-called-times (1.00ms) - :not :to-have-been-called-times  :not :to-have-been-called-times (0.95ms) - should not generate backtraces for skipped specs  should not generate backtraces for skipped specs (0.33ms) + no matcher  no matcher (9.67ms) + :to-be-truthy  :to-be-truthy (1.43ms) + :not :to-be-truthy  :not :to-be-truthy (5.49ms) + :to-be  :to-be (1.54ms) + :not :to-be  :not :to-be (1.49ms) + :to-equal  :to-equal (9.62ms) + :not :to-equal  :not :to-equal (1.49ms) + :to-have-same-items-as  :to-have-same-items-as (5.57ms) + :not :to-have-same-items-as  :not :to-have-same-items-as (1.50ms) + :to-match  :to-match (10.43ms) + :not :to-match  :not :to-match (1.72ms) + :to-be-in  :to-be-in (9.63ms) + :not :to-be-in  :not :to-be-in (1.48ms) + :to-contain  :to-contain (1.28ms) + :not :to-contain  :not :to-contain (9.63ms) + :to-be-less-than  :to-be-less-than (1.50ms) + :not :to-be-less-than  :not :to-be-less-than (1.46ms) + :to-be-greater-than  :to-be-greater-than (1.54ms) + :not :to-be-greater-than  :not :to-be-greater-than (1.49ms) + :to-be-weakly-less-than  :to-be-weakly-less-than (9.70ms) + :not :to-be-weakly-less-than  :not :to-be-weakly-less-than (1.49ms) + :to-be-weakly-greater-than  :to-be-weakly-greater-than (13.64ms) + :not :to-be-weakly-greater-than  :not :to-be-weakly-greater-than (1.64ms) + :to-be-close-to  :to-be-close-to (1.44ms) + :not :to-be-close-to  :not :to-be-close-to (9.73ms) + :to-have-been-called  :to-have-been-called (1.47ms) + :not :to-have-been-called  :not :to-have-been-called (7.80ms) + :to-have-been-called-with  :to-have-been-called-with (5.65ms) + :not :to-have-been-called-with  :not :to-have-been-called-with (1.63ms) + :to-have-been-called-times  :to-have-been-called-times (1.47ms) + :not :to-have-been-called-times  :not :to-have-been-called-times (5.66ms) + should not generate backtraces for skipped specs  should not generate backtraces for skipped specs (0.52ms) When using quiet specs in the batch reporter - should print nothing if all specs are quiet  should print nothing if all specs are quiet (0.66ms) - should print the containing suites for non-quiet specs  should print the containing suites for non-quiet specs (1.13ms) - should quiet all of the given spec statuses  should quiet all of the given spec statuses (0.70ms) - should handle `skipped' virtual status in quiet list  should handle `skipped' virtual status in quiet list (1.82ms) - should handle `disabled' virtual status in quiet list  should handle `disabled' virtual status in quiet list (1.51ms) + should print nothing if all specs are quiet  should print nothing if all specs are quiet (0.98ms) + should print the containing suites for non-quiet specs  should print the containing suites for non-quiet specs (9.93ms) + should quiet all of the given spec statuses  should quiet all of the given spec statuses (1.07ms) + should handle `skipped' virtual status in quiet list  should handle `skipped' virtual status in quiet list (6.60ms) + should handle `disabled' virtual status in quiet list  should handle `disabled' virtual status in quiet list (2.23ms) The `buttercup-run' function - should signal an error if no suites are defined  should signal an error if no suites are defined (0.30ms) - should return :no-suites for no suites and noerror  should return :no-suites for no suites and noerror (0.20ms) - should raise an error if at least one spec failed  should raise an error if at least one spec failed (0.32ms) - should return nil for failing specs and noerror  should return nil for failing specs and noerror (0.19ms) - should return t for passing specs  should return t for passing specs (0.29ms) - should call the reporter twice with events buttercup-started and -done  should call the reporter twice with events buttercup-started and -done (0.35ms) - should call `buttercup--run-suite' once per suite  should call `buttercup--run-suite' once per suite (0.33ms) + should signal an error if no suites are defined  should signal an error if no suites are defined (0.41ms) + should return :no-suites for no suites and noerror  should return :no-suites for no suites and noerror (4.75ms) + should raise an error if at least one spec failed  should raise an error if at least one spec failed (0.47ms) + should return nil for failing specs and noerror  should return nil for failing specs and noerror (0.26ms) + should return t for passing specs  should return t for passing specs (0.41ms) + should call the reporter twice with events buttercup-started and -done  should call the reporter twice with events buttercup-started and -done (0.55ms) + should call `buttercup--run-suite' once per suite  should call `buttercup--run-suite' once per suite (0.49ms) The `buttercup--print' function - should send a formatted string to the terminal  should send a formatted string to the terminal (0.09ms) + should send a formatted string to the terminal  should send a formatted string to the terminal (0.12ms) The `buttercup-mark-skipped' function - should do nothing with a reversed match-all pattern  should do nothing with a reversed match-all pattern (1.32ms) - should mark all specs as pending with a reversed match none pattern  should mark all specs as pending with a reversed match none pattern (0.49ms) - should handle multiple patterns  should handle multiple patterns (0.49ms) - should support predicates  should support predicates (0.53ms) - should support reversed predicates  should support reversed predicates (0.52ms) - should signal an error for invalid matchers  should signal an error for invalid matchers (0.56ms) + should do nothing with a reversed match-all pattern  should do nothing with a reversed match-all pattern (10.69ms) + should mark all specs as pending with a reversed match none pattern  should mark all specs as pending with a reversed match none pattern (0.72ms) + should handle multiple patterns  should handle multiple patterns (0.72ms) + should support predicates  should support predicates (1.07ms) + should support reversed predicates  should support reversed predicates (0.76ms) + should signal an error for invalid matchers  should signal an error for invalid matchers (1.00ms) Buttercup's ERT compatibility wrapper - should convert `ert-test-failed' into `buttercup-failed'  should convert `ert-test-failed' into `buttercup-failed' (0.33ms) - should convert `ert-test-skipped' into `buttercup-pending'  should convert `ert-test-skipped' into `buttercup-pending' (0.27ms) + should convert `ert-test-failed' into `buttercup-failed'  should convert `ert-test-failed' into `buttercup-failed' (0.47ms) + should convert `ert-test-skipped' into `buttercup-pending'  should convert `ert-test-skipped' into `buttercup-pending' (0.43ms) `buttercup-run-discover' should parse command line arguments - ignoring `--'  ignoring `--' (0.21ms) - requiring an extra argument for `--traceback'  requiring an extra argument for `--traceback' (0.29ms) - checking `--traceback' argument for validity  checking `--traceback' argument for validity (0.31ms) - setting `buttercup-stack-frame-style' from `--traceback' arg  setting `buttercup-stack-frame-style' from `--traceback' arg (0.35ms) - requiring an extra argument for `--pattern' or `-p'  requiring an extra argument for `--pattern' or `-p' (0.50ms) - collecting `--pattern' and `-p' args and send to `buttercup-mark-skipped'  collecting `--pattern' and `-p' args and send to `buttercup-mark-skipped' (0.38ms) - clearing `buttercup-color' if `--no-color' is given  clearing `buttercup-color' if `--no-color' is given (0.55ms) - adding `skipped' and `disabled' to quiet statuses if `--no-skip' is given  adding `skipped' and `disabled' to quiet statuses if `--no-skip' is given (0.45ms) - adding `pending' and `passed' to quiet statuses if `--only-error' is given  adding `pending' and `passed' to quiet statuses if `--only-error' is given (0.45ms) - calling `buttercup-error-on-stale-elc' if `--stale-file-error' is given  calling `buttercup-error-on-stale-elc' if `--stale-file-error' is given (0.22ms) - search any unknown args for test files  search any unknown args for test files (0.34ms) + ignoring `--'  ignoring `--' (8.45ms) + requiring an extra argument for `--traceback'  requiring an extra argument for `--traceback' (0.47ms) + checking `--traceback' argument for validity  checking `--traceback' argument for validity (0.48ms) + setting `buttercup-stack-frame-style' from `--traceback' arg  setting `buttercup-stack-frame-style' from `--traceback' arg (0.53ms) + requiring an extra argument for `--pattern' or `-p'  requiring an extra argument for `--pattern' or `-p' (0.77ms) + collecting `--pattern' and `-p' args and send to `buttercup-mark-skipped'  collecting `--pattern' and `-p' args and send to `buttercup-mark-skipped' (0.52ms) + clearing `buttercup-color' if `--no-color' is given  clearing `buttercup-color' if `--no-color' is given (5.01ms) + adding `skipped' and `disabled' to quiet statuses if `--no-skip' is given  adding `skipped' and `disabled' to quiet statuses if `--no-skip' is given (0.64ms) + adding `pending' and `passed' to quiet statuses if `--only-error' is given  adding `pending' and `passed' to quiet statuses if `--only-error' is given (0.65ms) + calling `buttercup-error-on-stale-elc' if `--stale-file-error' is given  calling `buttercup-error-on-stale-elc' if `--stale-file-error' is given (0.31ms) + search any unknown args for test files  search any unknown args for test files (0.54ms) find and load files - named test-*.el and *-tests?.el but no other files  named test-*.el and *-tests?.el but no other files (701.78ms) - only in given directories  only in given directories (4.84ms) + named test-*.el and *-tests?.el but no other files  named test-*.el and *-tests?.el but no other files (2.28s) + only in given directories  only in given directories (27.59ms) butter-minor-mode - should fontify `describe' special form  should fontify `describe' special form (0.79ms) - should fontify `it' special form  should fontify `it' special form (0.59ms) - should add special forms to `imenu'  should add special forms to `imenu' (1.12ms) + should fontify `describe' special form  should fontify `describe' special form (1.09ms) + should fontify `it' special form  should fontify `it' special form (0.83ms) + should add special forms to `imenu'  should add special forms to `imenu' (9.64ms) For stale `elc' file checks `buttercup-check-for-stale-elc' - should do nothing for `el' files  should do nothing for `el' files (647.32ms) - should signal error when `elc' is older than `el'  should signal error when `elc' is older than `el' (0.53ms) - should not signal error when `elc' is newer than `el'  should not signal error when `elc' is newer than `el' (0.42ms) - should do nothing if the `el' file does not exist  should do nothing if the `el' file does not exist (691.59ms) + should do nothing for `el' files  should do nothing for `el' files (1.79s) + should signal error when `elc' is older than `el'  should signal error when `elc' is older than `el' (0.51ms) + should not signal error when `elc' is newer than `el'  should not signal error when `elc' is newer than `el' (0.46ms) + should do nothing if the `el' file does not exist  should do nothing if the `el' file does not exist (3.68s) `buttercup-error-on-stale-elc' - should activate with no argument  should activate with no argument (0.24ms) - should deactivate with almost any argument  should deactivate with almost any argument (0.21ms) - should toggle when given `toggle' as argument  should toggle when given `toggle' as argument (0.33ms) + should activate with no argument  should activate with no argument (0.23ms) + should deactivate with almost any argument  should deactivate with almost any argument (0.22ms) + should toggle when given `toggle' as argument  should toggle when given `toggle' as argument (0.36ms) -Ran 227 specs, 0 failed, in 2.06s. +Ran 227 specs, 0 failed, in 7.85s. make[1]: Leaving directory '/build/emacs-buttercup-1.26' dh_elpa_test create-stamp debian/debhelper-build-stamp @@ -1223,12 +1262,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/28740/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/28740/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/30379 and its subdirectories -I: Current time: Sun May 21 16:53:12 -12 2023 -I: pbuilder-time-stamp: 1684731192 +I: removing directory /srv/workspace/pbuilder/28740 and its subdirectories +I: Current time: Mon May 22 18:56:35 +14 2023 +I: pbuilder-time-stamp: 1684731395