Diff of the two buildlogs: -- --- b1/build.log 2024-07-14 20:35:33.743844586 +0000 +++ b2/build.log 2024-07-14 20:38:00.053615672 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Sun Jul 14 08:33:54 -12 2024 -I: pbuilder-time-stamp: 1720989234 +I: Current time: Mon Jul 15 10:35:44 +14 2024 +I: pbuilder-time-stamp: 1720989344 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -30,52 +30,84 @@ dpkg-source: info: applying disable-test-failing-on-arm-arch.patch I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/21196/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/21511/tmp/hooks/D01_modify_environment starting +debug: Running on virt64b. +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 Jul 14 20:35 /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/21511/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/21511/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='armhf' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=3 ' - DISTRIBUTION='unstable' - 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]="21" [3]="1" [4]="release" [5]="arm-unknown-linux-gnueabihf") + BASH_VERSION='5.2.21(1)-release' + BUILDDIR=/build/reproducible-path + 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=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=arm + HOST_ARCH=armhf IFS=' ' - INVOCATION_ID='69dc579d13e248ff859cb6dc605d7cf8' - 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='21196' - PS1='# ' - PS2='> ' + INVOCATION_ID=4134a8577c0648919a79c9c83fda5549 + 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=21511 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.eJZuHRUO/pbuilderrc_iKQd --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.eJZuHRUO/b1 --logfile b1/build.log ruby-ffi-yajl_2.3.1-3.dsc' - SUDO_GID='112' - SUDO_UID='106' - 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.eJZuHRUO/pbuilderrc_6oWT --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.eJZuHRUO/b2 --logfile b2/build.log ruby-ffi-yajl_2.3.1-3.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 virt32b 6.1.0-22-armmp-lpae #1 SMP Debian 6.1.94-1 (2024-06-21) armv7l GNU/Linux + Linux i-capture-the-hostname 6.1.0-22-arm64 #1 SMP Debian 6.1.94-1 (2024-06-21) aarch64 GNU/Linux I: ls -l /bin lrwxrwxrwx 1 root root 7 Jun 5 22:35 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/21196/tmp/hooks/D02_print_environment finished +I: user script /srv/workspace/pbuilder/21511/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -247,7 +279,7 @@ Get: 126 http://deb.debian.org/debian unstable/main armhf ruby-rspec-expectations all 3.13.0c0e0m0s1-2 [90.2 kB] Get: 127 http://deb.debian.org/debian unstable/main armhf ruby-rspec-mocks all 3.13.0c0e0m0s1-2 [81.3 kB] Get: 128 http://deb.debian.org/debian unstable/main armhf ruby-rspec all 3.13.0c0e0m0s1-2 [5184 B] -Fetched 40.9 MB in 1s (47.4 MB/s) +Fetched 40.9 MB in 1s (34.2 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package libpython3.12-minimal:armhf. (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 ... 19407 files and directories currently installed.) @@ -677,8 +709,8 @@ Setting up tzdata (2024a-4) ... Current default time zone: 'Etc/UTC' -Local time is now: Sun Jul 14 20:34:42 UTC 2024. -Universal Time is now: Sun Jul 14 20:34:42 UTC 2024. +Local time is now: Sun Jul 14 20:37:00 UTC 2024. +Universal Time is now: Sun Jul 14 20:37:00 UTC 2024. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up autotools-dev (20220109.1) ... @@ -793,7 +825,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/ruby-ffi-yajl-2.3.1/ && 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 > ../ruby-ffi-yajl_2.3.1-3_source.changes +I: user script /srv/workspace/pbuilder/21511/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/21511/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/ruby-ffi-yajl-2.3.1/ && 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 > ../ruby-ffi-yajl_2.3.1-3_source.changes dpkg-buildpackage: info: source package ruby-ffi-yajl dpkg-buildpackage: info: source version 2.3.1-3 dpkg-buildpackage: info: source distribution unstable @@ -877,27 +913,27 @@ checking for dlopen() in -ldl... yes creating Makefile current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/dlopen -["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240714-25800-c5oajx", "sitelibdir=./.gem.20240714-25800-c5oajx", "clean"] +["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240715-3313-j2zxh5", "sitelibdir=./.gem.20240715-3313-j2zxh5", "clean"] make[2]: Entering directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/dlopen' rm -f rm -fr dlopen.so false *.o *.bak mkmf.log .*.time make[2]: Leaving directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/dlopen' current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/dlopen -["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240714-25800-c5oajx", "sitelibdir=./.gem.20240714-25800-c5oajx"] +["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240715-3313-j2zxh5", "sitelibdir=./.gem.20240715-3313-j2zxh5"] make[2]: Entering directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/dlopen' gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=. -I. -I/usr/include/arm-linux-gnueabihf/ruby-3.1.0 -I/usr/include/ruby-3.1.0/ruby/backward -I/usr/include/ruby-3.1.0 -I. -DHAVE_DLFCN_H -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=BUILDDIR=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fPIC -o dlopen.o -c dlopen.c rm -f dlopen.so gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=. -shared -o dlopen.so dlopen.o -L. -L/usr/lib/arm-linux-gnueabihf -L. -Wl,-z,relro -Wl,-z,now -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,--no-as-needed -Wl,-z,relro -Wl,-z,now -lruby-3.1 -ldl -lm -lc make[2]: Leaving directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/dlopen' current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/dlopen -["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240714-25800-c5oajx", "sitelibdir=./.gem.20240714-25800-c5oajx", "install"] +["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240715-3313-j2zxh5", "sitelibdir=./.gem.20240715-3313-j2zxh5", "install"] make[2]: Entering directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/dlopen' -/bin/mkdir -p . ./.gem.20240714-25800-c5oajx/ffi_yajl/ext +/bin/mkdir -p . ./.gem.20240715-3313-j2zxh5/ffi_yajl/ext exit > .sitearchdir.-.ffi_yajl.-.ext.time -/usr/bin/install -c -m 0755 dlopen.so ./.gem.20240714-25800-c5oajx/ffi_yajl/ext +/usr/bin/install -c -m 0755 dlopen.so ./.gem.20240715-3313-j2zxh5/ffi_yajl/ext make[2]: Leaving directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/dlopen' current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/dlopen -["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240714-25800-c5oajx", "sitelibdir=./.gem.20240714-25800-c5oajx", "clean"] +["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240715-3313-j2zxh5", "sitelibdir=./.gem.20240715-3313-j2zxh5", "clean"] make[2]: Entering directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/dlopen' rm -f rm -fr dlopen.so false *.o *.bak mkmf.log .*.time @@ -905,13 +941,13 @@ current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/dlopen /usr/bin/ruby3.1 -I/usr/lib/ruby/vendor_ruby extconf.rb current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/dlopen -make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240714-25800-c5oajx sitelibdir\=./.gem.20240714-25800-c5oajx clean +make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240715-3313-j2zxh5 sitelibdir\=./.gem.20240715-3313-j2zxh5 clean current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/dlopen -make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240714-25800-c5oajx sitelibdir\=./.gem.20240714-25800-c5oajx +make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240715-3313-j2zxh5 sitelibdir\=./.gem.20240715-3313-j2zxh5 current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/dlopen -make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240714-25800-c5oajx sitelibdir\=./.gem.20240714-25800-c5oajx install +make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240715-3313-j2zxh5 sitelibdir\=./.gem.20240715-3313-j2zxh5 install current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/dlopen -make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240714-25800-c5oajx sitelibdir\=./.gem.20240714-25800-c5oajx clean +make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240715-3313-j2zxh5 sitelibdir\=./.gem.20240715-3313-j2zxh5 clean rm -f /build/reproducible-path/ruby-ffi-yajl-2.3.1/debian/ruby-ffi-yajl/usr/lib/arm-linux-gnueabihf/ruby/vendor_ruby/3.1.0/mkmf.log current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/encoder ["/usr/bin/ruby3.1", "-I/usr/lib/ruby/vendor_ruby", "extconf.rb"] @@ -920,13 +956,13 @@ checking for yajl/yajl_tree.h... yes creating Makefile current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/encoder -["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240714-25800-t9jv5n", "sitelibdir=./.gem.20240714-25800-t9jv5n", "clean"] +["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240715-3313-vu2bce", "sitelibdir=./.gem.20240715-3313-vu2bce", "clean"] make[2]: Entering directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/encoder' rm -f rm -fr encoder.so false *.o *.bak mkmf.log .*.time make[2]: Leaving directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/encoder' current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/encoder -["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240714-25800-t9jv5n", "sitelibdir=./.gem.20240714-25800-t9jv5n"] +["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240715-3313-vu2bce", "sitelibdir=./.gem.20240715-3313-vu2bce"] make[2]: Entering directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/encoder' gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=. -I. -I/usr/include/arm-linux-gnueabihf/ruby-3.1.0 -I/usr/include/ruby-3.1.0/ruby/backward -I/usr/include/ruby-3.1.0 -I. -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=BUILDDIR=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fPIC -Wall -o encoder.o -c encoder.c encoder.c:307:14: warning: 'rb_cBignum_ffi_yajl' defined but not used [-Wunused-function] @@ -936,14 +972,14 @@ gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=. -shared -o encoder.so encoder.o -L. -L/usr/lib/arm-linux-gnueabihf -L. -Wl,-z,relro -Wl,-z,now -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,--no-as-needed -Wl,-z,relro -Wl,-z,now -lruby-3.1 -lm -lc make[2]: Leaving directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/encoder' current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/encoder -["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240714-25800-t9jv5n", "sitelibdir=./.gem.20240714-25800-t9jv5n", "install"] +["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240715-3313-vu2bce", "sitelibdir=./.gem.20240715-3313-vu2bce", "install"] make[2]: Entering directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/encoder' -/bin/mkdir -p . ./.gem.20240714-25800-t9jv5n/ffi_yajl/ext +/bin/mkdir -p . ./.gem.20240715-3313-vu2bce/ffi_yajl/ext exit > .sitearchdir.-.ffi_yajl.-.ext.time -/usr/bin/install -c -m 0755 encoder.so ./.gem.20240714-25800-t9jv5n/ffi_yajl/ext +/usr/bin/install -c -m 0755 encoder.so ./.gem.20240715-3313-vu2bce/ffi_yajl/ext make[2]: Leaving directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/encoder' current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/encoder -["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240714-25800-t9jv5n", "sitelibdir=./.gem.20240714-25800-t9jv5n", "clean"] +["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240715-3313-vu2bce", "sitelibdir=./.gem.20240715-3313-vu2bce", "clean"] make[2]: Entering directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/encoder' rm -f rm -fr encoder.so false *.o *.bak mkmf.log .*.time @@ -951,13 +987,13 @@ current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/encoder /usr/bin/ruby3.1 -I/usr/lib/ruby/vendor_ruby extconf.rb current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/encoder -make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240714-25800-t9jv5n sitelibdir\=./.gem.20240714-25800-t9jv5n clean +make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240715-3313-vu2bce sitelibdir\=./.gem.20240715-3313-vu2bce clean current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/encoder -make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240714-25800-t9jv5n sitelibdir\=./.gem.20240714-25800-t9jv5n +make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240715-3313-vu2bce sitelibdir\=./.gem.20240715-3313-vu2bce current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/encoder -make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240714-25800-t9jv5n sitelibdir\=./.gem.20240714-25800-t9jv5n install +make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240715-3313-vu2bce sitelibdir\=./.gem.20240715-3313-vu2bce install current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/encoder -make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240714-25800-t9jv5n sitelibdir\=./.gem.20240714-25800-t9jv5n clean +make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240715-3313-vu2bce sitelibdir\=./.gem.20240715-3313-vu2bce clean rm -f /build/reproducible-path/ruby-ffi-yajl-2.3.1/debian/ruby-ffi-yajl/usr/lib/arm-linux-gnueabihf/ruby/vendor_ruby/3.1.0/mkmf.log current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/parser ["/usr/bin/ruby3.1", "-I/usr/lib/ruby/vendor_ruby", "extconf.rb"] @@ -966,27 +1002,27 @@ checking for yajl/yajl_tree.h... yes creating Makefile current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/parser -["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240714-25800-anwqoo", "sitelibdir=./.gem.20240714-25800-anwqoo", "clean"] +["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240715-3313-ksu2gl", "sitelibdir=./.gem.20240715-3313-ksu2gl", "clean"] make[2]: Entering directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/parser' rm -f rm -fr parser.so false *.o *.bak mkmf.log .*.time make[2]: Leaving directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/parser' current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/parser -["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240714-25800-anwqoo", "sitelibdir=./.gem.20240714-25800-anwqoo"] +["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240715-3313-ksu2gl", "sitelibdir=./.gem.20240715-3313-ksu2gl"] make[2]: Entering directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/parser' gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=. -I. -I/usr/include/arm-linux-gnueabihf/ruby-3.1.0 -I/usr/include/ruby-3.1.0/ruby/backward -I/usr/include/ruby-3.1.0 -I. -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=BUILDDIR=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fPIC -Wall -o parser.o -c parser.c rm -f parser.so gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=. -shared -o parser.so parser.o -L. -L/usr/lib/arm-linux-gnueabihf -L. -Wl,-z,relro -Wl,-z,now -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,--no-as-needed -Wl,-z,relro -Wl,-z,now -lruby-3.1 -lm -lc make[2]: Leaving directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/parser' current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/parser -["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240714-25800-anwqoo", "sitelibdir=./.gem.20240714-25800-anwqoo", "install"] +["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240715-3313-ksu2gl", "sitelibdir=./.gem.20240715-3313-ksu2gl", "install"] make[2]: Entering directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/parser' -/bin/mkdir -p . ./.gem.20240714-25800-anwqoo/ffi_yajl/ext +/bin/mkdir -p . ./.gem.20240715-3313-ksu2gl/ffi_yajl/ext exit > .sitearchdir.-.ffi_yajl.-.ext.time -/usr/bin/install -c -m 0755 parser.so ./.gem.20240714-25800-anwqoo/ffi_yajl/ext +/usr/bin/install -c -m 0755 parser.so ./.gem.20240715-3313-ksu2gl/ffi_yajl/ext make[2]: Leaving directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/parser' current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/parser -["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240714-25800-anwqoo", "sitelibdir=./.gem.20240714-25800-anwqoo", "clean"] +["make", "V=1", "CC=gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "CXX=g++ -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=.", "DESTDIR=", "sitearchdir=./.gem.20240715-3313-ksu2gl", "sitelibdir=./.gem.20240715-3313-ksu2gl", "clean"] make[2]: Entering directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/parser' rm -f rm -fr parser.so false *.o *.bak mkmf.log .*.time @@ -994,13 +1030,13 @@ current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/parser /usr/bin/ruby3.1 -I/usr/lib/ruby/vendor_ruby extconf.rb current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/parser -make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240714-25800-anwqoo sitelibdir\=./.gem.20240714-25800-anwqoo clean +make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240715-3313-ksu2gl sitelibdir\=./.gem.20240715-3313-ksu2gl clean current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/parser -make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240714-25800-anwqoo sitelibdir\=./.gem.20240714-25800-anwqoo +make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240715-3313-ksu2gl sitelibdir\=./.gem.20240715-3313-ksu2gl current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/parser -make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240714-25800-anwqoo sitelibdir\=./.gem.20240714-25800-anwqoo install +make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240715-3313-ksu2gl sitelibdir\=./.gem.20240715-3313-ksu2gl install current directory: /build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/parser -make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240714-25800-anwqoo sitelibdir\=./.gem.20240714-25800-anwqoo clean +make V\=1 CC\=gcc\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. CXX\=g++\ -fdebug-prefix-map\=/build/reproducible-path/ruby-ffi-yajl-2.3.1\=. DESTDIR\= sitearchdir\=./.gem.20240715-3313-ksu2gl sitelibdir\=./.gem.20240715-3313-ksu2gl clean rm -f /build/reproducible-path/ruby-ffi-yajl-2.3.1/debian/ruby-ffi-yajl/usr/lib/arm-linux-gnueabihf/ruby/vendor_ruby/3.1.0/mkmf.log Rewriting shebang line of /build/reproducible-path/ruby-ffi-yajl-2.3.1/debian/ruby-ffi-yajl/usr/bin/ffi-yajl-bench @@ -1025,206 +1061,209 @@ /usr/bin/ruby3.1 -I/usr/share/rubygems-integration/all/gems/rspec-support-3.13.1/lib:/usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/lib /usr/share/rubygems-integration/all/gems/rspec-core-3.13.0/exe/rspec --pattern ./spec/\*\*/\*_spec.rb --format documentation WARN: yajl cannot be loaded, expected if this is jruby -Randomized with seed 60340 +Randomized with seed 28676 + +FFI_Yajl::Encoder + encodes floats in keys as strings + raises an exception for deeply nested arrays + encodes false in keys as strings + can encode Date objects + raises an exception for deeply nested hashes + encodes nil in keys as strings + can encode 32-bit unsigned ints + encodes arrays in keys as strings + encodes objects in keys as strings + encodes an object in a key which has a #to_json method as strings + encodes bignums in keys as strings + encodes symbols in keys as strings + encodes fixnums in keys as strings + can encode StringIOs + encodes symbols in values as strings + encodes hashes in keys as strings + can encode DateTime objects + encodes true in keys as strings + when encoding invalid utf-8 + raises an error on invalid json + when validate_utf8 is off + does not raise an error + returns valid utf8 + does not grow after a round trip + returns utf8 + does not mangle valid utf8 + testing .to_json for Objects + calls .to_s for objects without .to_json + calls .to_json for objects wit .to_json + when the encoder has nil passed in for options + does not throw an exception + when encoding Time objects in UTC timezone + encodes them correctly FFI_Yajl::Parser - when options are set to nil + when options default to nothing when using a parsing object behaves like correct json parsing - when parsing big floats - parses - when parsing nil - should not coredump ruby - when parsing 1046289770033519442869495707521600000000 + when a parsed key has utf-8 multibyte characters + should parse correctly + when symbolize_keys is true + should parse non-ascii symbols in UTF-8 + should symbolize keys correctly + when parsing 2147483649 should parse corectly - when JSON is a StringIO - should parse + when json has 23456789012E666 + should return infinity when json has comments - when allow_comments is false - should not parse when allow_comments is true should parse - by default - should parse - when parsing bare string - should parse to the string value - when parsing heavy metal umlauts in keys - correctly parses - when json has 23456789012E666 - should return infinity - when json has multiline comments when allow_comments is false should not parse - when allow_comments is true + by default should parse - when parsing bare true - should parse to the true value when the JSON is empty string returns nil - when parsing bare float - should parse to the a float - when parsing floats - parses floats with negative exponents and a small e - correctly parses - parses floats with positive exponents and a small e - correctly parses - parses floats with an exponent without a sign and a small e - correctly parses - parses simple floating point values - correctly parses - parses simple negative floating point values - correctly parses - parses floats with an exponent without a sign and a large E - correctly parses - parses floats with positive exponents and a large E - correctly parses - parses floats with negative exponents and a large E - correctly parses - when parsing a JSON string - should parse correctly - when symbolize_keys is true - should symbolize keys correctly - when passing a block - should parse correctly (PENDING: handle blocks) - when parsing bare null - should parse to the nil value + when parsing 5687389800 + should parse corectly + when parsing a JSON hash with only strings + when Encoding.default_internal is us-ascii + encodes keys to us-ascii (PENDING: fix us-ascii) + encodes values to us-ascii (PENDING: fix us-ascii) + when Encoding.default_internal is nil + encodes values to UTF-8 + encodes keys to UTF-8 + when Encoding.default_internal is utf-8 + encodes keys to utf-8 + encodes values to utf-8 when dealing with too much or too little input + when trailing brackets are missing + raises an exception + when trailing braces are missing + raises an exception when an extra bracket is present raises an exception when an extra brace is present raises an exception with allow_trailing_garbage parses - when trailing braces are missing - raises an exception - when trailing brackets are missing - raises an exception - when parsing bare int - should parse to the int value + should raise an exception for repeated keys + should raise + when parsing 1046289770033519442869495707521600000000 + should parse corectly + when parsing bare null + should parse to the nil value + when parsing bare true + should parse to the true value should ignore repeated keys by default should replace the first hash key with the second - when json has inline comments - when allow_comments is true - should parse - when allow_comments is false - should not parse - when a parsed key has utf-8 multibyte characters + when parsing long hash keys with symbolize_keys option + parses + when JSON is a StringIO + should parse + when parsing a JSON string should parse correctly when symbolize_keys is true - should parse non-ascii symbols in UTF-8 should symbolize keys correctly - when parsing bare false - should parse to the false value - when parsing 5687389800 - should parse corectly - when parsing long hash keys with symbolize_keys option - parses - when parsing 2147483649 - should parse corectly - should raise an exception for repeated keys - should raise + when passing a block + should parse correctly (PENDING: handle blocks) + when parsing bare float + should parse to the a float + when parsing bare string + should parse to the string value when json is invalid UTF8 should not parse by default when :dont_validate_strings is set to true should parse when :check_utf8 is set to false should parse - when :dont_validate_strings is set to true - should parse when :dont_validate_strings is set to false should raise an ArgumentError + when :dont_validate_strings is set to true + should parse when :check_utf8 is set to true should not parse - when :dont_validate_strings is set to false - should not parse when :dont_validate_strings is set to true should raise an ArgumentError + when :dont_validate_strings is set to false + should not parse when :dont_validate_strings is set to false should not parse - when parsing a JSON hash with only strings - when Encoding.default_internal is utf-8 - encodes values to utf-8 - encodes keys to utf-8 - when Encoding.default_internal is nil - encodes values to UTF-8 - encodes keys to UTF-8 - when Encoding.default_internal is us-ascii - encodes values to us-ascii (PENDING: fix us-ascii) - encodes keys to us-ascii (PENDING: fix us-ascii) - when using the class method - behaves like correct json parsing + when parsing bare false + should parse to the false value + when parsing big floats + parses + when json has inline comments + when allow_comments is true + should parse + when allow_comments is false + should not parse + when parsing bare int + should parse to the int value when parsing heavy metal umlauts in keys correctly parses + when json has multiline comments + when allow_comments is false + should not parse + when allow_comments is true + should parse when parsing nil should not coredump ruby when parsing floats parses floats with positive exponents and a small e correctly parses - parses floats with an exponent without a sign and a small e + parses floats with positive exponents and a large E + correctly parses + parses floats with negative exponents and a large E correctly parses parses floats with an exponent without a sign and a large E correctly parses parses floats with negative exponents and a small e correctly parses - parses floats with negative exponents and a large E + parses floats with an exponent without a sign and a small e correctly parses - parses floats with positive exponents and a large E + parses simple negative floating point values correctly parses parses simple floating point values correctly parses - parses simple negative floating point values - correctly parses - when json has 23456789012E666 - should return infinity - when parsing bare false - should parse to the false value - when parsing bare float - should parse to the a float - when parsing bare null - should parse to the nil value - when parsing 5687389800 - should parse corectly + when using the class method + behaves like correct json parsing when json has inline comments - when allow_comments is true - should parse - when allow_comments is false - should not parse - should raise an exception for repeated keys - should raise - when parsing big floats - parses - when json has multiline comments when allow_comments is false should not parse when allow_comments is true should parse - when json has comments - by default - should parse - when allow_comments is true - should parse - when allow_comments is false - should not parse - when a parsed key has utf-8 multibyte characters - should parse correctly - when symbolize_keys is true - should symbolize keys correctly - should parse non-ascii symbols in UTF-8 + when parsing bare false + should parse to the false value + when parsing nil + should not coredump ruby + when the JSON is empty string + returns nil + when parsing bare int + should parse to the int value + when JSON is a StringIO + should parse + when parsing 2147483649 + should parse corectly when dealing with too much or too little input + when trailing brackets are missing + raises an exception when an extra bracket is present raises an exception + when trailing braces are missing + raises an exception when an extra brace is present raises an exception with allow_trailing_garbage parses - when trailing braces are missing - raises an exception - when trailing brackets are missing - raises an exception when parsing bare string should parse to the string value when json is invalid UTF8 should not parse by default + when :check_utf8 is set to true + should not parse + when :dont_validate_strings is set to false + should not parse + when :dont_validate_strings is set to true + should raise an ArgumentError + when :dont_validate_strings is set to false + should not parse when :dont_validate_strings is set to true should parse when :check_utf8 is set to false @@ -1233,215 +1272,192 @@ should raise an ArgumentError when :dont_validate_strings is set to true should parse - when :check_utf8 is set to true - should not parse - when :dont_validate_strings is set to false - should not parse - when :dont_validate_strings is set to true - should raise an ArgumentError - when :dont_validate_strings is set to false + should raise an exception for repeated keys + should raise + when json has multiline comments + when allow_comments is true + should parse + when allow_comments is false should not parse - when the JSON is empty string - returns nil when parsing a JSON string should parse correctly - when passing a block - should parse correctly (PENDING: handle blocks) when symbolize_keys is true should symbolize keys correctly + when passing a block + should parse correctly (PENDING: handle blocks) + when parsing 5687389800 + should parse corectly + when parsing big floats + parses should ignore repeated keys by default should replace the first hash key with the second + when parsing bare true + should parse to the true value + when parsing floats + parses floats with positive exponents and a large E + correctly parses + parses simple floating point values + correctly parses + parses floats with negative exponents and a small e + correctly parses + parses floats with negative exponents and a large E + correctly parses + parses floats with positive exponents and a small e + correctly parses + parses simple negative floating point values + correctly parses + parses floats with an exponent without a sign and a large E + correctly parses + parses floats with an exponent without a sign and a small e + correctly parses + when parsing 1046289770033519442869495707521600000000 + should parse corectly when parsing long hash keys with symbolize_keys option parses + when json has comments + by default + should parse + when allow_comments is false + should not parse + when allow_comments is true + should parse + when parsing bare null + should parse to the nil value + when json has 23456789012E666 + should return infinity when parsing a JSON hash with only strings - when Encoding.default_internal is utf-8 - encodes keys to utf-8 - encodes values to utf-8 when Encoding.default_internal is us-ascii - encodes values to us-ascii (PENDING: fix us-ascii) encodes keys to us-ascii (PENDING: fix us-ascii) + encodes values to us-ascii (PENDING: fix us-ascii) when Encoding.default_internal is nil encodes keys to UTF-8 encodes values to UTF-8 - when parsing 1046289770033519442869495707521600000000 - should parse corectly - when parsing 2147483649 - should parse corectly - when JSON is a StringIO - should parse - when parsing bare int - should parse to the int value - when parsing bare true - should parse to the true value - when options default to nothing + when Encoding.default_internal is utf-8 + encodes keys to utf-8 + encodes values to utf-8 + when parsing heavy metal umlauts in keys + correctly parses + when a parsed key has utf-8 multibyte characters + should parse correctly + when symbolize_keys is true + should parse non-ascii symbols in UTF-8 + should symbolize keys correctly + when parsing bare float + should parse to the a float + when options are set to empty hash when using the class method behaves like correct json parsing + should ignore repeated keys by default + should replace the first hash key with the second + when json has 23456789012E666 + should return infinity when parsing floats - parses simple negative floating point values + parses floats with negative exponents and a small e correctly parses - parses floats with an exponent without a sign and a small e + parses floats with positive exponents and a large E correctly parses parses floats with an exponent without a sign and a large E correctly parses - parses floats with negative exponents and a small e + parses floats with an exponent without a sign and a small e correctly parses - parses floats with positive exponents and a large E + parses floats with positive exponents and a small e correctly parses parses simple floating point values correctly parses - parses floats with negative exponents and a large E + parses simple negative floating point values correctly parses - parses floats with positive exponents and a small e + parses floats with negative exponents and a large E correctly parses - when json has comments - when allow_comments is true - should parse - by default - should parse - when allow_comments is false - should not parse + when parsing nil + should not coredump ruby when parsing 2147483649 should parse corectly - when parsing bare int - should parse to the int value - when dealing with too much or too little input - when trailing braces are missing - raises an exception - when an extra brace is present - raises an exception - with allow_trailing_garbage - parses - when trailing brackets are missing - raises an exception - when an extra bracket is present - raises an exception - when json has inline comments + when parsing long hash keys with symbolize_keys option + parses + when json has multiline comments + when allow_comments is false + should not parse when allow_comments is true should parse + when json has inline comments when allow_comments is false should not parse - when parsing bare null - should parse to the nil value - when parsing bare float - should parse to the a float + when allow_comments is true + should parse when parsing bare false should parse to the false value + when parsing bare true + should parse to the true value + when parsing 1046289770033519442869495707521600000000 + should parse corectly + when a parsed key has utf-8 multibyte characters + should parse correctly + when symbolize_keys is true + should parse non-ascii symbols in UTF-8 + should symbolize keys correctly + when parsing a JSON string + should parse correctly + when passing a block + should parse correctly (PENDING: handle blocks) + when symbolize_keys is true + should symbolize keys correctly + when parsing bare string + should parse to the string value + when the JSON is empty string + returns nil + when parsing bare float + should parse to the a float + when parsing heavy metal umlauts in keys + correctly parses when parsing a JSON hash with only strings + when Encoding.default_internal is nil + encodes keys to UTF-8 + encodes values to UTF-8 when Encoding.default_internal is utf-8 encodes keys to utf-8 encodes values to utf-8 - when Encoding.default_internal is nil - encodes values to UTF-8 - encodes keys to UTF-8 when Encoding.default_internal is us-ascii - encodes values to us-ascii (PENDING: fix us-ascii) encodes keys to us-ascii (PENDING: fix us-ascii) + encodes values to us-ascii (PENDING: fix us-ascii) should raise an exception for repeated keys should raise - should ignore repeated keys by default - should replace the first hash key with the second - when parsing 1046289770033519442869495707521600000000 - should parse corectly - when parsing nil - should not coredump ruby - when json has multiline comments - when allow_comments is true - should parse - when allow_comments is false - should not parse - when parsing bare true - should parse to the true value - when parsing big floats - parses when json is invalid UTF8 should not parse by default - when :dont_validate_strings is set to false - should not parse when :check_utf8 is set to true should not parse - when :dont_validate_strings is set to false - should not parse when :dont_validate_strings is set to true should raise an ArgumentError + when :dont_validate_strings is set to false + should not parse + when :dont_validate_strings is set to false + should not parse when :check_utf8 is set to false should parse - when :dont_validate_strings is set to false - should raise an ArgumentError when :dont_validate_strings is set to true should parse + when :dont_validate_strings is set to false + should raise an ArgumentError when :dont_validate_strings is set to true should parse - when parsing a JSON string - should parse correctly - when passing a block - should parse correctly (PENDING: handle blocks) - when symbolize_keys is true - should symbolize keys correctly - when the JSON is empty string - returns nil - when json has 23456789012E666 - should return infinity - when a parsed key has utf-8 multibyte characters - should parse correctly - when symbolize_keys is true - should parse non-ascii symbols in UTF-8 - should symbolize keys correctly + when parsing bare int + should parse to the int value + when parsing bare null + should parse to the nil value when JSON is a StringIO should parse - when parsing heavy metal umlauts in keys - correctly parses - when parsing 5687389800 - should parse corectly - when parsing bare string - should parse to the string value - when parsing long hash keys with symbolize_keys option - parses - when using a parsing object - behaves like correct json parsing - when parsing big floats - parses when dealing with too much or too little input + when an extra bracket is present + raises an exception when trailing braces are missing raises an exception when an extra brace is present raises an exception with allow_trailing_garbage parses - when an extra bracket is present - raises an exception when trailing brackets are missing raises an exception - when parsing bare float - should parse to the a float - when parsing bare int - should parse to the int value - when parsing bare string - should parse to the string value - when parsing bare null - should parse to the nil value - when parsing bare true - should parse to the true value - should raise an exception for repeated keys - should raise - when parsing bare false - should parse to the false value - when parsing floats - parses floats with an exponent without a sign and a small e - correctly parses - parses floats with negative exponents and a large E - correctly parses - parses floats with an exponent without a sign and a large E - correctly parses - parses simple negative floating point values - correctly parses - parses floats with negative exponents and a small e - correctly parses - parses floats with positive exponents and a large E - correctly parses - parses floats with positive exponents and a small e - correctly parses - parses simple floating point values - correctly parses + when parsing big floats + parses when json has comments by default should parse @@ -1449,89 +1465,101 @@ should not parse when allow_comments is true should parse + when parsing 5687389800 + should parse corectly + when using a parsing object + behaves like correct json parsing + when parsing a JSON string + should parse correctly + when passing a block + should parse correctly (PENDING: handle blocks) + when symbolize_keys is true + should symbolize keys correctly when json is invalid UTF8 should not parse by default + when :check_utf8 is set to true + should not parse + when :dont_validate_strings is set to true + should raise an ArgumentError + when :dont_validate_strings is set to false + should not parse when :dont_validate_strings is set to true should parse - when :dont_validate_strings is set to false - should not parse when :check_utf8 is set to false should parse - when :dont_validate_strings is set to true - should parse when :dont_validate_strings is set to false should raise an ArgumentError - when :check_utf8 is set to true - should not parse when :dont_validate_strings is set to true - should raise an ArgumentError - when :dont_validate_strings is set to false - should not parse - when parsing long hash keys with symbolize_keys option - parses + should parse + when :dont_validate_strings is set to false + should not parse when parsing heavy metal umlauts in keys correctly parses - when JSON is a StringIO - should parse - when a parsed key has utf-8 multibyte characters - should parse correctly - when symbolize_keys is true - should symbolize keys correctly - should parse non-ascii symbols in UTF-8 - when parsing a JSON string - should parse correctly - when passing a block - should parse correctly (PENDING: handle blocks) - when symbolize_keys is true - should symbolize keys correctly - when parsing nil - should not coredump ruby - should ignore repeated keys by default - should replace the first hash key with the second + when parsing 5687389800 + should parse corectly when parsing a JSON hash with only strings - when Encoding.default_internal is us-ascii - encodes keys to us-ascii (PENDING: fix us-ascii) - encodes values to us-ascii (PENDING: fix us-ascii) when Encoding.default_internal is nil - encodes keys to UTF-8 encodes values to UTF-8 + encodes keys to UTF-8 + when Encoding.default_internal is us-ascii + encodes values to us-ascii (PENDING: fix us-ascii) + encodes keys to us-ascii (PENDING: fix us-ascii) when Encoding.default_internal is utf-8 encodes keys to utf-8 encodes values to utf-8 - when json has 23456789012E666 - should return infinity - when json has inline comments - when allow_comments is false - should not parse - when allow_comments is true - should parse + should ignore repeated keys by default + should replace the first hash key with the second + when parsing bare true + should parse to the true value when parsing 1046289770033519442869495707521600000000 should parse corectly + when parsing bare false + should parse to the false value + when parsing bare float + should parse to the a float + when parsing nil + should not coredump ruby + when parsing floats + parses floats with negative exponents and a small e + correctly parses + parses floats with positive exponents and a small e + correctly parses + parses simple floating point values + correctly parses + parses simple negative floating point values + correctly parses + parses floats with an exponent without a sign and a small e + correctly parses + parses floats with an exponent without a sign and a large E + correctly parses + parses floats with positive exponents and a large E + correctly parses + parses floats with negative exponents and a large E + correctly parses when the JSON is empty string returns nil - when parsing 5687389800 - should parse corectly - when json has multiline comments + when json has comments + by default + should parse when allow_comments is true should parse when allow_comments is false should not parse - when parsing 2147483649 - should parse corectly - when options are set to empty hash - when using the class method - behaves like correct json parsing - when json has inline comments + when parsing bare string + should parse to the string value + when parsing bare int + should parse to the int value + when JSON is a StringIO + should parse + when json has 23456789012E666 + should return infinity + when json has multiline comments when allow_comments is false should not parse when allow_comments is true should parse - when parsing 5687389800 - should parse corectly - when json has 23456789012E666 - should return infinity - should ignore repeated keys by default - should replace the first hash key with the second + should raise an exception for repeated keys + should raise when parsing long hash keys with symbolize_keys option parses when a parsed key has utf-8 multibyte characters @@ -1539,19 +1567,31 @@ when symbolize_keys is true should symbolize keys correctly should parse non-ascii symbols in UTF-8 - when parsing bare string - should parse to the string value - when the JSON is empty string - returns nil - when json has comments - by default - should parse - when allow_comments is true - should parse + when json has inline comments when allow_comments is false should not parse + when allow_comments is true + should parse + when parsing bare null + should parse to the nil value + when dealing with too much or too little input + when an extra bracket is present + raises an exception + when trailing brackets are missing + raises an exception + when an extra brace is present + raises an exception + with allow_trailing_garbage + parses + when trailing braces are missing + raises an exception when parsing big floats parses + when parsing 2147483649 + should parse corectly + when options are set to nil + when using the class method + behaves like correct json parsing when dealing with too much or too little input when trailing braces are missing raises an exception @@ -1563,134 +1603,196 @@ raises an exception when an extra bracket is present raises an exception - when json has multiline comments - when allow_comments is false - should not parse - when allow_comments is true - should parse - when parsing bare false - should parse to the false value - when JSON is a StringIO - should parse - when parsing 1046289770033519442869495707521600000000 - should parse corectly + when the JSON is empty string + returns nil + should raise an exception for repeated keys + should raise when parsing floats - parses floats with negative exponents and a small e - correctly parses - parses floats with positive exponents and a large E - correctly parses parses floats with positive exponents and a small e correctly parses + parses floats with an exponent without a sign and a large E + correctly parses parses simple floating point values correctly parses - parses floats with negative exponents and a large E + parses floats with negative exponents and a small e correctly parses - parses floats with an exponent without a sign and a small e + parses simple negative floating point values correctly parses - parses floats with an exponent without a sign and a large E + parses floats with negative exponents and a large E correctly parses - parses simple negative floating point values + parses floats with positive exponents and a large E correctly parses - when parsing bare true - should parse to the true value - when parsing bare null - should parse to the nil value - when parsing a JSON string + parses floats with an exponent without a sign and a small e + correctly parses + when a parsed key has utf-8 multibyte characters should parse correctly - when passing a block - should parse correctly (PENDING: handle blocks) when symbolize_keys is true + should parse non-ascii symbols in UTF-8 should symbolize keys correctly - when parsing 2147483649 + when parsing 1046289770033519442869495707521600000000 should parse corectly + when parsing 5687389800 + should parse corectly + when parsing big floats + parses + when parsing long hash keys with symbolize_keys option + parses + when json has 23456789012E666 + should return infinity + when json has multiline comments + when allow_comments is false + should not parse + when allow_comments is true + should parse when parsing nil should not coredump ruby - should raise an exception for repeated keys - should raise + when parsing heavy metal umlauts in keys + correctly parses + when json has comments + when allow_comments is true + should parse + by default + should parse + when allow_comments is false + should not parse + when parsing a JSON hash with only strings + when Encoding.default_internal is us-ascii + encodes keys to us-ascii (PENDING: fix us-ascii) + encodes values to us-ascii (PENDING: fix us-ascii) + when Encoding.default_internal is utf-8 + encodes keys to utf-8 + encodes values to utf-8 + when Encoding.default_internal is nil + encodes keys to UTF-8 + encodes values to UTF-8 when parsing bare int should parse to the int value + when parsing bare false + should parse to the false value + when parsing bare null + should parse to the nil value + when JSON is a StringIO + should parse when parsing bare float should parse to the a float - when parsing heavy metal umlauts in keys - correctly parses - when json is invalid UTF8 - should not parse by default - when :dont_validate_strings is set to true + when parsing bare true + should parse to the true value + when parsing a JSON string + should parse correctly + when passing a block + should parse correctly (PENDING: handle blocks) + when symbolize_keys is true + should symbolize keys correctly + should ignore repeated keys by default + should replace the first hash key with the second + when parsing bare string + should parse to the string value + when json has inline comments + when allow_comments is true should parse - when :dont_validate_strings is set to false + when allow_comments is false should not parse + when json is invalid UTF8 + should not parse by default when :check_utf8 is set to true should not parse - when :dont_validate_strings is set to true - should raise an ArgumentError when :dont_validate_strings is set to false should not parse + when :dont_validate_strings is set to true + should raise an ArgumentError + when :dont_validate_strings is set to false + should not parse + when :dont_validate_strings is set to true + should parse when :check_utf8 is set to false should parse - when :dont_validate_strings is set to false - should raise an ArgumentError when :dont_validate_strings is set to true should parse + when :dont_validate_strings is set to false + should raise an ArgumentError + when parsing 2147483649 + should parse corectly + when using a parsing object + behaves like correct json parsing + when json has 23456789012E666 + should return infinity when parsing a JSON hash with only strings - when Encoding.default_internal is nil - encodes keys to UTF-8 - encodes values to UTF-8 - when Encoding.default_internal is utf-8 - encodes keys to utf-8 - encodes values to utf-8 when Encoding.default_internal is us-ascii encodes values to us-ascii (PENDING: fix us-ascii) encodes keys to us-ascii (PENDING: fix us-ascii) - when using a parsing object - behaves like correct json parsing + when Encoding.default_internal is utf-8 + encodes keys to utf-8 + encodes values to utf-8 + when Encoding.default_internal is nil + encodes keys to UTF-8 + encodes values to UTF-8 + when parsing nil + should not coredump ruby + when parsing a JSON string + should parse correctly + when symbolize_keys is true + should symbolize keys correctly + when passing a block + should parse correctly (PENDING: handle blocks) + when parsing big floats + parses + when JSON is a StringIO + should parse + when the JSON is empty string + returns nil + when parsing 5687389800 + should parse corectly + should raise an exception for repeated keys + should raise + when parsing bare true + should parse to the true value + when json has comments + when allow_comments is false + should not parse + when allow_comments is true + should parse + by default + should parse + when parsing bare null + should parse to the nil value + when parsing bare float + should parse to the a float + when json has inline comments + when allow_comments is false + should not parse + when allow_comments is true + should parse + when parsing heavy metal umlauts in keys + correctly parses + when parsing 2147483649 + should parse corectly when json is invalid UTF8 should not parse by default - when :dont_validate_strings is set to false + when :check_utf8 is set to true should not parse + when :dont_validate_strings is set to true + should raise an ArgumentError + when :dont_validate_strings is set to false + should not parse when :check_utf8 is set to false should parse when :dont_validate_strings is set to false should raise an ArgumentError when :dont_validate_strings is set to true should parse - when :check_utf8 is set to true + when :dont_validate_strings is set to false should not parse - when :dont_validate_strings is set to true - should raise an ArgumentError - when :dont_validate_strings is set to false - should not parse when :dont_validate_strings is set to true should parse - when parsing big floats - parses - when parsing bare int - should parse to the int value - when dealing with too much or too little input - when trailing braces are missing - raises an exception - when trailing brackets are missing - raises an exception - when an extra brace is present - raises an exception - with allow_trailing_garbage - parses - when an extra bracket is present - raises an exception - when parsing 2147483649 - should parse corectly - when parsing nil - should not coredump ruby when a parsed key has utf-8 multibyte characters should parse correctly when symbolize_keys is true - should parse non-ascii symbols in UTF-8 should symbolize keys correctly + should parse non-ascii symbols in UTF-8 + should ignore repeated keys by default + should replace the first hash key with the second when parsing floats - parses floats with positive exponents and a large E - correctly parses - parses floats with an exponent without a sign and a small e - correctly parses - parses floats with negative exponents and a small e + parses simple negative floating point values correctly parses parses simple floating point values correctly parses @@ -1698,341 +1800,275 @@ correctly parses parses floats with negative exponents and a large E correctly parses - parses simple negative floating point values + parses floats with negative exponents and a small e + correctly parses + parses floats with an exponent without a sign and a small e + correctly parses + parses floats with positive exponents and a large E correctly parses parses floats with an exponent without a sign and a large E correctly parses - when json has comments - by default - should parse - when allow_comments is true - should parse - when allow_comments is false - should not parse - should ignore repeated keys by default - should replace the first hash key with the second - when parsing long hash keys with symbolize_keys option - parses - when parsing a JSON hash with only strings - when Encoding.default_internal is us-ascii - encodes values to us-ascii (PENDING: fix us-ascii) - encodes keys to us-ascii (PENDING: fix us-ascii) - when Encoding.default_internal is utf-8 - encodes keys to utf-8 - encodes values to utf-8 - when Encoding.default_internal is nil - encodes keys to UTF-8 - encodes values to UTF-8 - when parsing bare null - should parse to the nil value - should raise an exception for repeated keys - should raise - when the JSON is empty string - returns nil - when parsing bare float - should parse to the a float - when parsing bare false - should parse to the false value - when json has 23456789012E666 - should return infinity + when parsing bare string + should parse to the string value when parsing 1046289770033519442869495707521600000000 should parse corectly - when parsing 5687389800 - should parse corectly + when parsing bare false + should parse to the false value + when parsing bare int + should parse to the int value + when parsing long hash keys with symbolize_keys option + parses + when dealing with too much or too little input + when an extra brace is present + raises an exception + with allow_trailing_garbage + parses + when an extra bracket is present + raises an exception + when trailing brackets are missing + raises an exception + when trailing braces are missing + raises an exception when json has multiline comments - when allow_comments is true - should parse - when allow_comments is false - should not parse - when parsing bare string - should parse to the string value - when parsing bare true - should parse to the true value - when JSON is a StringIO - should parse - when parsing heavy metal umlauts in keys - correctly parses - when parsing a JSON string - should parse correctly - when passing a block - should parse correctly (PENDING: handle blocks) - when symbolize_keys is true - should symbolize keys correctly - when json has inline comments when allow_comments is false should not parse when allow_comments is true should parse -FFI_Yajl::Encoder - encodes an object in a key which has a #to_json method as strings - encodes nil in keys as strings - can encode 32-bit unsigned ints - can encode Date objects - can encode StringIOs - encodes floats in keys as strings - encodes bignums in keys as strings - encodes symbols in values as strings - encodes false in keys as strings - encodes symbols in keys as strings - encodes objects in keys as strings - encodes true in keys as strings - raises an exception for deeply nested hashes - encodes arrays in keys as strings - can encode DateTime objects - encodes hashes in keys as strings - raises an exception for deeply nested arrays - encodes fixnums in keys as strings - testing .to_json for Objects - calls .to_json for objects wit .to_json - calls .to_s for objects without .to_json - when the encoder has nil passed in for options - does not throw an exception - when encoding invalid utf-8 - raises an error on invalid json - when validate_utf8 is off - does not mangle valid utf8 - returns utf8 - does not grow after a round trip - returns valid utf8 - does not raise an error - when encoding Time objects in UTC timezone - encodes them correctly - FFI_Yajl::MapLibraryName - ffi_open_yajl_library - if dlopen calls all raise it should still use 'yajl' on openbsd - should call ffi_lib against an expanded library name if it finds it on openbsd + #library_names + maps netbsd correctly + #library_names + maps mingw correctly + #expanded_library_names + maps mingw correctly (PENDING: Temporarily skipped with xit) + #library_names + maps hpux correctly ffi_open_yajl_library should call ffi_lib against an expanded library name if it finds it on mingw if dlopen calls all raise it should still use 'yajl' on mingw - #dlopen_yajl_library - should call dlopen against an expanded library name if it finds it on freebsd - if dlopen calls all raise it should still use the short names on freebsd #expanded_library_names - maps linux correctly (PENDING: Temporarily skipped with xit) + maps mswin correctly (PENDING: Temporarily skipped with xit) ffi_open_yajl_library if dlopen calls all raise it should still use 'yajl' on linux should call ffi_lib against an expanded library name if it finds it on linux #expanded_library_names maps hpux correctly (PENDING: Temporarily skipped with xit) + ffi_open_yajl_library + should call ffi_lib against an expanded library name if it finds it on openbsd + if dlopen calls all raise it should still use 'yajl' on openbsd + ffi_open_yajl_library + should call ffi_lib against an expanded library name if it finds it on darwin + if dlopen calls all raise it should still use 'yajl' on darwin + #library_names + maps cygwin correctly #dlopen_yajl_library - should call dlopen against an expanded library name if it finds it on netbsd - if dlopen calls all raise it should still use the short names on netbsd + should call dlopen against an expanded library name if it finds it on mswin + if dlopen calls all raise it should still use the short names on mswin + #dlopen_yajl_library + should call dlopen against an expanded library name if it finds it on solaris2 + if dlopen calls all raise it should still use the short names on solaris2 + #dlopen_yajl_library + should call dlopen against an expanded library name if it finds it on freebsd + if dlopen calls all raise it should still use the short names on freebsd + ffi_open_yajl_library + should call ffi_lib against an expanded library name if it finds it on aix + if dlopen calls all raise it should still use 'yajl' on aix #expanded_library_names - maps cygwin correctly (PENDING: Temporarily skipped with xit) + maps freebsd correctly (PENDING: Temporarily skipped with xit) #library_names maps mswin correctly ffi_open_yajl_library - should call ffi_lib against an expanded library name if it finds it on cygwin - if dlopen calls all raise it should still use 'yajl' on cygwin - #dlopen_yajl_library - if dlopen calls all raise it should still use the short names on cygwin - should call dlopen against an expanded library name if it finds it on cygwin + should call ffi_lib against an expanded library name if it finds it on mswin + if dlopen calls all raise it should still use 'yajl' on mswin + #library_names + maps linux correctly ffi_open_yajl_library - if dlopen calls all raise it should still use 'yajl' on solaris2 - should call ffi_lib against an expanded library name if it finds it on solaris2 + should call ffi_lib against an expanded library name if it finds it on netbsd + if dlopen calls all raise it should still use 'yajl' on netbsd #expanded_library_names - maps aix correctly (PENDING: Temporarily skipped with xit) + maps openbsd correctly (PENDING: Temporarily skipped with xit) #library_names maps freebsd correctly - ffi_open_yajl_library - should call ffi_lib against an expanded library name if it finds it on freebsd - if dlopen calls all raise it should still use 'yajl' on freebsd - #library_names - maps openbsd correctly #library_names - maps linux correctly + maps darwin correctly #dlopen_yajl_library - should call dlopen against an expanded library name if it finds it on linux - if dlopen calls all raise it should still use the short names on linux + if dlopen calls all raise it should still use the short names on netbsd + should call dlopen against an expanded library name if it finds it on netbsd #dlopen_yajl_library - if dlopen calls all raise it should still use the short names on mswin - should call dlopen against an expanded library name if it finds it on mswin - ffi_open_yajl_library - if dlopen calls all raise it should still use 'yajl' on aix - should call ffi_lib against an expanded library name if it finds it on aix + if dlopen calls all raise it should still use the short names on openbsd + should call dlopen against an expanded library name if it finds it on openbsd #library_names - maps aix correctly - ffi_open_yajl_library - if dlopen calls all raise it should still use 'yajl' on hpux - should call ffi_lib against an expanded library name if it finds it on hpux + maps solaris2 correctly #dlopen_yajl_library - should call dlopen against an expanded library name if it finds it on darwin - if dlopen calls all raise it should still use the short names on darwin + should call dlopen against an expanded library name if it finds it on cygwin + if dlopen calls all raise it should still use the short names on cygwin #library_names - maps mingw correctly + maps openbsd correctly ffi_open_yajl_library - should call ffi_lib against an expanded library name if it finds it on darwin - if dlopen calls all raise it should still use 'yajl' on darwin + if dlopen calls all raise it should still use 'yajl' on cygwin + should call ffi_lib against an expanded library name if it finds it on cygwin + #expanded_library_names + maps aix correctly (PENDING: Temporarily skipped with xit) + ffi_open_yajl_library + should call ffi_lib against an expanded library name if it finds it on freebsd + if dlopen calls all raise it should still use 'yajl' on freebsd #dlopen_yajl_library - if dlopen calls all raise it should still use the short names on solaris2 - should call dlopen against an expanded library name if it finds it on solaris2 + if dlopen calls all raise it should still use the short names on hpux + should call dlopen against an expanded library name if it finds it on hpux + #expanded_library_names + maps darwin correctly (PENDING: Temporarily skipped with xit) #dlopen_yajl_library - should call dlopen against an expanded library name if it finds it on openbsd - if dlopen calls all raise it should still use the short names on openbsd + should call dlopen against an expanded library name if it finds it on linux + if dlopen calls all raise it should still use the short names on linux #dlopen_yajl_library - should call dlopen against an expanded library name if it finds it on aix - if dlopen calls all raise it should still use the short names on aix + should call dlopen against an expanded library name if it finds it on darwin + if dlopen calls all raise it should still use the short names on darwin #expanded_library_names - maps solaris2 correctly (PENDING: Temporarily skipped with xit) + maps linux correctly (PENDING: Temporarily skipped with xit) #expanded_library_names - maps openbsd correctly (PENDING: Temporarily skipped with xit) + maps cygwin correctly (PENDING: Temporarily skipped with xit) ffi_open_yajl_library - if dlopen calls all raise it should still use 'yajl' on mswin - should call ffi_lib against an expanded library name if it finds it on mswin - #library_names - maps cygwin correctly - #expanded_library_names - maps mswin correctly (PENDING: Temporarily skipped with xit) - #library_names - maps solaris2 correctly - #library_names - maps netbsd correctly + should call ffi_lib against an expanded library name if it finds it on hpux + if dlopen calls all raise it should still use 'yajl' on hpux #dlopen_yajl_library - if dlopen calls all raise it should still use the short names on mingw - should call dlopen against an expanded library name if it finds it on mingw + if dlopen calls all raise it should still use the short names on aix + should call dlopen against an expanded library name if it finds it on aix + ffi_open_yajl_library + should call ffi_lib against an expanded library name if it finds it on solaris2 + if dlopen calls all raise it should still use 'yajl' on solaris2 #expanded_library_names maps netbsd correctly (PENDING: Temporarily skipped with xit) #library_names - maps darwin correctly - #library_names - maps hpux correctly - #expanded_library_names - maps darwin correctly (PENDING: Temporarily skipped with xit) - #expanded_library_names - maps mingw correctly (PENDING: Temporarily skipped with xit) + maps aix correctly #dlopen_yajl_library - if dlopen calls all raise it should still use the short names on hpux - should call dlopen against an expanded library name if it finds it on hpux - ffi_open_yajl_library - should call ffi_lib against an expanded library name if it finds it on netbsd - if dlopen calls all raise it should still use 'yajl' on netbsd + should call dlopen against an expanded library name if it finds it on mingw + if dlopen calls all raise it should still use the short names on mingw #expanded_library_names - maps freebsd correctly (PENDING: Temporarily skipped with xit) + maps solaris2 correctly (PENDING: Temporarily skipped with xit) Pending: (Failures listed here are expected and do not affect your suite's status) - 1) FFI_Yajl::Parser when options are set to nil when using a parsing object behaves like correct json parsing when parsing a JSON string when passing a block should parse correctly - # handle blocks - # ./spec/ffi_yajl/parser_spec.rb:250 - - 2) FFI_Yajl::Parser when options are set to nil when using a parsing object behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes values to us-ascii + 1) FFI_Yajl::Parser when options default to nothing when using a parsing object behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes keys to us-ascii # fix us-ascii - # ./spec/ffi_yajl/parser_spec.rb:294 + # ./spec/ffi_yajl/parser_spec.rb:290 - 3) FFI_Yajl::Parser when options are set to nil when using a parsing object behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes keys to us-ascii + 2) FFI_Yajl::Parser when options default to nothing when using a parsing object behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes values to us-ascii # fix us-ascii - # ./spec/ffi_yajl/parser_spec.rb:290 + # ./spec/ffi_yajl/parser_spec.rb:294 - 4) FFI_Yajl::Parser when options are set to nil when using the class method behaves like correct json parsing when parsing a JSON string when passing a block should parse correctly + 3) FFI_Yajl::Parser when options default to nothing when using a parsing object behaves like correct json parsing when parsing a JSON string when passing a block should parse correctly # handle blocks # ./spec/ffi_yajl/parser_spec.rb:250 - 5) FFI_Yajl::Parser when options are set to nil when using the class method behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes values to us-ascii - # fix us-ascii - # ./spec/ffi_yajl/parser_spec.rb:294 + 4) FFI_Yajl::Parser when options default to nothing when using the class method behaves like correct json parsing when parsing a JSON string when passing a block should parse correctly + # handle blocks + # ./spec/ffi_yajl/parser_spec.rb:250 - 6) FFI_Yajl::Parser when options are set to nil when using the class method behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes keys to us-ascii + 5) FFI_Yajl::Parser when options default to nothing when using the class method behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes keys to us-ascii # fix us-ascii # ./spec/ffi_yajl/parser_spec.rb:290 - 7) FFI_Yajl::Parser when options default to nothing when using the class method behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes values to us-ascii + 6) FFI_Yajl::Parser when options default to nothing when using the class method behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes values to us-ascii # fix us-ascii # ./spec/ffi_yajl/parser_spec.rb:294 - 8) FFI_Yajl::Parser when options default to nothing when using the class method behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes keys to us-ascii - # fix us-ascii - # ./spec/ffi_yajl/parser_spec.rb:290 - - 9) FFI_Yajl::Parser when options default to nothing when using the class method behaves like correct json parsing when parsing a JSON string when passing a block should parse correctly - # handle blocks - # ./spec/ffi_yajl/parser_spec.rb:250 - - 10) FFI_Yajl::Parser when options default to nothing when using a parsing object behaves like correct json parsing when parsing a JSON string when passing a block should parse correctly + 7) FFI_Yajl::Parser when options are set to empty hash when using the class method behaves like correct json parsing when parsing a JSON string when passing a block should parse correctly # handle blocks # ./spec/ffi_yajl/parser_spec.rb:250 - 11) FFI_Yajl::Parser when options default to nothing when using a parsing object behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes keys to us-ascii + 8) FFI_Yajl::Parser when options are set to empty hash when using the class method behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes keys to us-ascii # fix us-ascii # ./spec/ffi_yajl/parser_spec.rb:290 - 12) FFI_Yajl::Parser when options default to nothing when using a parsing object behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes values to us-ascii + 9) FFI_Yajl::Parser when options are set to empty hash when using the class method behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes values to us-ascii # fix us-ascii # ./spec/ffi_yajl/parser_spec.rb:294 - 13) FFI_Yajl::Parser when options are set to empty hash when using the class method behaves like correct json parsing when parsing a JSON string when passing a block should parse correctly + 10) FFI_Yajl::Parser when options are set to empty hash when using a parsing object behaves like correct json parsing when parsing a JSON string when passing a block should parse correctly # handle blocks # ./spec/ffi_yajl/parser_spec.rb:250 - 14) FFI_Yajl::Parser when options are set to empty hash when using the class method behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes values to us-ascii + 11) FFI_Yajl::Parser when options are set to empty hash when using a parsing object behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes values to us-ascii # fix us-ascii # ./spec/ffi_yajl/parser_spec.rb:294 - 15) FFI_Yajl::Parser when options are set to empty hash when using the class method behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes keys to us-ascii + 12) FFI_Yajl::Parser when options are set to empty hash when using a parsing object behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes keys to us-ascii # fix us-ascii # ./spec/ffi_yajl/parser_spec.rb:290 - 16) FFI_Yajl::Parser when options are set to empty hash when using a parsing object behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes values to us-ascii + 13) FFI_Yajl::Parser when options are set to nil when using the class method behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes keys to us-ascii + # fix us-ascii + # ./spec/ffi_yajl/parser_spec.rb:290 + + 14) FFI_Yajl::Parser when options are set to nil when using the class method behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes values to us-ascii + # fix us-ascii + # ./spec/ffi_yajl/parser_spec.rb:294 + + 15) FFI_Yajl::Parser when options are set to nil when using the class method behaves like correct json parsing when parsing a JSON string when passing a block should parse correctly + # handle blocks + # ./spec/ffi_yajl/parser_spec.rb:250 + + 16) FFI_Yajl::Parser when options are set to nil when using a parsing object behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes values to us-ascii # fix us-ascii # ./spec/ffi_yajl/parser_spec.rb:294 - 17) FFI_Yajl::Parser when options are set to empty hash when using a parsing object behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes keys to us-ascii + 17) FFI_Yajl::Parser when options are set to nil when using a parsing object behaves like correct json parsing when parsing a JSON hash with only strings when Encoding.default_internal is us-ascii encodes keys to us-ascii # fix us-ascii # ./spec/ffi_yajl/parser_spec.rb:290 - 18) FFI_Yajl::Parser when options are set to empty hash when using a parsing object behaves like correct json parsing when parsing a JSON string when passing a block should parse correctly + 18) FFI_Yajl::Parser when options are set to nil when using a parsing object behaves like correct json parsing when parsing a JSON string when passing a block should parse correctly # handle blocks # ./spec/ffi_yajl/parser_spec.rb:250 - 19) FFI_Yajl::MapLibraryName #expanded_library_names maps linux correctly + 19) FFI_Yajl::MapLibraryName #expanded_library_names maps mingw correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 20) FFI_Yajl::MapLibraryName #expanded_library_names maps hpux correctly + 20) FFI_Yajl::MapLibraryName #expanded_library_names maps mswin correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 21) FFI_Yajl::MapLibraryName #expanded_library_names maps cygwin correctly + 21) FFI_Yajl::MapLibraryName #expanded_library_names maps hpux correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 22) FFI_Yajl::MapLibraryName #expanded_library_names maps aix correctly + 22) FFI_Yajl::MapLibraryName #expanded_library_names maps freebsd correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 23) FFI_Yajl::MapLibraryName #expanded_library_names maps solaris2 correctly + 23) FFI_Yajl::MapLibraryName #expanded_library_names maps openbsd correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 24) FFI_Yajl::MapLibraryName #expanded_library_names maps openbsd correctly + 24) FFI_Yajl::MapLibraryName #expanded_library_names maps aix correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 25) FFI_Yajl::MapLibraryName #expanded_library_names maps mswin correctly + 25) FFI_Yajl::MapLibraryName #expanded_library_names maps darwin correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 26) FFI_Yajl::MapLibraryName #expanded_library_names maps netbsd correctly + 26) FFI_Yajl::MapLibraryName #expanded_library_names maps linux correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 27) FFI_Yajl::MapLibraryName #expanded_library_names maps darwin correctly + 27) FFI_Yajl::MapLibraryName #expanded_library_names maps cygwin correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 28) FFI_Yajl::MapLibraryName #expanded_library_names maps mingw correctly + 28) FFI_Yajl::MapLibraryName #expanded_library_names maps netbsd correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 29) FFI_Yajl::MapLibraryName #expanded_library_names maps freebsd correctly + 29) FFI_Yajl::MapLibraryName #expanded_library_names maps solaris2 correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 -Finished in 2.28 seconds (files took 0.79357 seconds to load) +Finished in 2.05 seconds (files took 0.79392 seconds to load) 448 examples, 0 failures, 29 pending -Randomized with seed 60340 +Randomized with seed 28676 ┌──────────────────────────────────────────────────────────────────────────────┐ @@ -2061,7 +2097,7 @@ diversion by libc6 from: /lib/ld-linux-armhf.so.3 dpkg-shlibdeps: warning: diversions involved - output may be incorrect diversion by libc6 to: /lib/ld-linux-armhf.so.3.usr-is-merged -dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/ruby-ffi-yajl/usr/lib/arm-linux-gnueabihf/ruby/vendor_ruby/3.1.0/ffi_yajl/ext/encoder.so debian/ruby-ffi-yajl/usr/lib/arm-linux-gnueabihf/ruby/vendor_ruby/3.1.0/ffi_yajl/ext/dlopen.so debian/ruby-ffi-yajl/usr/lib/arm-linux-gnueabihf/ruby/vendor_ruby/3.1.0/ffi_yajl/ext/parser.so were not linked against libm.so.6 (they use none of the library's symbols) +dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/ruby-ffi-yajl/usr/lib/arm-linux-gnueabihf/ruby/vendor_ruby/3.1.0/ffi_yajl/ext/encoder.so debian/ruby-ffi-yajl/usr/lib/arm-linux-gnueabihf/ruby/vendor_ruby/3.1.0/ffi_yajl/ext/parser.so debian/ruby-ffi-yajl/usr/lib/arm-linux-gnueabihf/ruby/vendor_ruby/3.1.0/ffi_yajl/ext/dlopen.so were not linked against libm.so.6 (they use none of the library's symbols) dh_ruby_fixdepends -O--buildsystem=ruby dh_installdeb -O--buildsystem=ruby dh_gencontrol -O--buildsystem=ruby @@ -2080,12 +2116,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/21511/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/21511/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/21196 and its subdirectories -I: Current time: Sun Jul 14 08:35:28 -12 2024 -I: pbuilder-time-stamp: 1720989328 +I: removing directory /srv/workspace/pbuilder/21511 and its subdirectories +I: Current time: Mon Jul 15 10:37:54 +14 2024 +I: pbuilder-time-stamp: 1720989474