Diff of the two buildlogs: -- --- b1/build.log 2024-05-18 05:20:20.500216368 +0000 +++ b2/build.log 2024-05-18 05:22:26.350855341 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Thu Jun 19 23:41:25 -12 2025 -I: pbuilder-time-stamp: 1750419685 +I: Current time: Sat May 18 19:20:23 +14 2024 +I: pbuilder-time-stamp: 1716009623 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -30,51 +30,83 @@ 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/3916904/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/238306/tmp/hooks/D01_modify_environment starting +debug: Running on infom01-amd64. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 May 18 05:20 /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/238306/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/238306/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='amd64' - DEBIAN_FRONTEND='noninteractive' + 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]="x86_64-pc-linux-gnu") + 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=amd64 + DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 ' - DISTRIBUTION='unstable' - HOME='/root' - HOST_ARCH='amd64' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='1d6fbb2abb984c58916f164dce3b9c24' - 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='3916904' - PS1='# ' - PS2='> ' + INVOCATION_ID=3fc5599c9a764f5ba7a1df9c61fa1c68 + LANG=C + LANGUAGE=et_EE:et + LC_ALL=C + MACHTYPE=x86_64-pc-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + 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=238306 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.YEXITe9y/pbuilderrc_LBeY --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.YEXITe9y/b1 --logfile b1/build.log ruby-ffi-yajl_2.3.1-3.dsc' - SUDO_GID='109' - SUDO_UID='104' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' + 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.YEXITe9y/pbuilderrc_LiOw --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.YEXITe9y/b2 --logfile b2/build.log ruby-ffi-yajl_2.3.1-3.dsc' + SUDO_GID=109 + SUDO_UID=104 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' I: uname -a - Linux infom02-amd64 6.6.13+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.6.13-1~bpo12+1 (2024-02-15) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-21-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.90-1 (2024-05-03) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Jun 18 14:05 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/3916904/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 May 16 07:42 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/238306/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -255,7 +287,7 @@ Get: 135 http://deb.debian.org/debian unstable/main amd64 ruby-rspec-expectations all 3.13.0c0e0m0s1-2 [90.2 kB] Get: 136 http://deb.debian.org/debian unstable/main amd64 ruby-rspec-mocks all 3.13.0c0e0m0s1-2 [81.3 kB] Get: 137 http://deb.debian.org/debian unstable/main amd64 ruby-rspec all 3.13.0c0e0m0s1-2 [5184 B] -Fetched 42.8 MB in 1s (62.8 MB/s) +Fetched 42.8 MB in 1s (59.9 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package libpython3.11-minimal:amd64. (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 ... 19719 files and directories currently installed.) @@ -712,8 +744,8 @@ Setting up tzdata (2024a-4) ... Current default time zone: 'Etc/UTC' -Local time is now: Fri Jun 20 11:42:51 UTC 2025. -Universal Time is now: Fri Jun 20 11:42:51 UTC 2025. +Local time is now: Sat May 18 05:21:47 UTC 2024. +Universal Time is now: Sat May 18 05:21:47 UTC 2024. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up autotools-dev (20220109.1) ... @@ -837,7 +869,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/238306/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/238306/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 @@ -921,27 +957,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.20250619-3933183-xqmhzf", "sitelibdir=./.gem.20250619-3933183-xqmhzf", "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.20240518-253219-ffdpyu", "sitelibdir=./.gem.20240518-253219-ffdpyu", "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.20250619-3933183-xqmhzf", "sitelibdir=./.gem.20250619-3933183-xqmhzf"] +["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.20240518-253219-ffdpyu", "sitelibdir=./.gem.20240518-253219-ffdpyu"] 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/x86_64-linux-gnu/ruby-3.1.0 -I/usr/include/ruby-3.1.0/ruby/backward -I/usr/include/ruby-3.1.0 -I. -DHAVE_DLFCN_H -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 -fcf-protection -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/x86_64-linux-gnu -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.20250619-3933183-xqmhzf", "sitelibdir=./.gem.20250619-3933183-xqmhzf", "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.20240518-253219-ffdpyu", "sitelibdir=./.gem.20240518-253219-ffdpyu", "install"] make[2]: Entering directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/dlopen' -/bin/mkdir -p . ./.gem.20250619-3933183-xqmhzf/ffi_yajl/ext +/bin/mkdir -p . ./.gem.20240518-253219-ffdpyu/ffi_yajl/ext exit > .sitearchdir.-.ffi_yajl.-.ext.time -/usr/bin/install -c -m 0755 dlopen.so ./.gem.20250619-3933183-xqmhzf/ffi_yajl/ext +/usr/bin/install -c -m 0755 dlopen.so ./.gem.20240518-253219-ffdpyu/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.20250619-3933183-xqmhzf", "sitelibdir=./.gem.20250619-3933183-xqmhzf", "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.20240518-253219-ffdpyu", "sitelibdir=./.gem.20240518-253219-ffdpyu", "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 @@ -949,13 +985,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.20250619-3933183-xqmhzf sitelibdir\=./.gem.20250619-3933183-xqmhzf 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.20240518-253219-ffdpyu sitelibdir\=./.gem.20240518-253219-ffdpyu 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.20250619-3933183-xqmhzf sitelibdir\=./.gem.20250619-3933183-xqmhzf +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.20240518-253219-ffdpyu sitelibdir\=./.gem.20240518-253219-ffdpyu 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.20250619-3933183-xqmhzf sitelibdir\=./.gem.20250619-3933183-xqmhzf 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.20240518-253219-ffdpyu sitelibdir\=./.gem.20240518-253219-ffdpyu 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.20250619-3933183-xqmhzf sitelibdir\=./.gem.20250619-3933183-xqmhzf 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.20240518-253219-ffdpyu sitelibdir\=./.gem.20240518-253219-ffdpyu clean rm -f /build/reproducible-path/ruby-ffi-yajl-2.3.1/debian/ruby-ffi-yajl/usr/lib/x86_64-linux-gnu/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"] @@ -964,13 +1000,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.20250619-3933183-l9s46l", "sitelibdir=./.gem.20250619-3933183-l9s46l", "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.20240518-253219-ahvscx", "sitelibdir=./.gem.20240518-253219-ahvscx", "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.20250619-3933183-l9s46l", "sitelibdir=./.gem.20250619-3933183-l9s46l"] +["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.20240518-253219-ahvscx", "sitelibdir=./.gem.20240518-253219-ahvscx"] 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/x86_64-linux-gnu/ruby-3.1.0 -I/usr/include/ruby-3.1.0/ruby/backward -I/usr/include/ruby-3.1.0 -I. -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 -fcf-protection -fPIC -Wall -o encoder.o -c encoder.c encoder.c:307:14: warning: 'rb_cBignum_ffi_yajl' defined but not used [-Wunused-function] @@ -980,14 +1016,14 @@ gcc -fdebug-prefix-map=/build/reproducible-path/ruby-ffi-yajl-2.3.1=. -shared -o encoder.so encoder.o -L. -L/usr/lib/x86_64-linux-gnu -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.20250619-3933183-l9s46l", "sitelibdir=./.gem.20250619-3933183-l9s46l", "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.20240518-253219-ahvscx", "sitelibdir=./.gem.20240518-253219-ahvscx", "install"] make[2]: Entering directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/encoder' -/bin/mkdir -p . ./.gem.20250619-3933183-l9s46l/ffi_yajl/ext +/bin/mkdir -p . ./.gem.20240518-253219-ahvscx/ffi_yajl/ext exit > .sitearchdir.-.ffi_yajl.-.ext.time -/usr/bin/install -c -m 0755 encoder.so ./.gem.20250619-3933183-l9s46l/ffi_yajl/ext +/usr/bin/install -c -m 0755 encoder.so ./.gem.20240518-253219-ahvscx/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.20250619-3933183-l9s46l", "sitelibdir=./.gem.20250619-3933183-l9s46l", "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.20240518-253219-ahvscx", "sitelibdir=./.gem.20240518-253219-ahvscx", "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 @@ -995,13 +1031,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.20250619-3933183-l9s46l sitelibdir\=./.gem.20250619-3933183-l9s46l 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.20240518-253219-ahvscx sitelibdir\=./.gem.20240518-253219-ahvscx 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.20250619-3933183-l9s46l sitelibdir\=./.gem.20250619-3933183-l9s46l +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.20240518-253219-ahvscx sitelibdir\=./.gem.20240518-253219-ahvscx 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.20250619-3933183-l9s46l sitelibdir\=./.gem.20250619-3933183-l9s46l 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.20240518-253219-ahvscx sitelibdir\=./.gem.20240518-253219-ahvscx 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.20250619-3933183-l9s46l sitelibdir\=./.gem.20250619-3933183-l9s46l 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.20240518-253219-ahvscx sitelibdir\=./.gem.20240518-253219-ahvscx clean rm -f /build/reproducible-path/ruby-ffi-yajl-2.3.1/debian/ruby-ffi-yajl/usr/lib/x86_64-linux-gnu/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"] @@ -1010,27 +1046,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.20250619-3933183-9xlxj5", "sitelibdir=./.gem.20250619-3933183-9xlxj5", "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.20240518-253219-3ijgdz", "sitelibdir=./.gem.20240518-253219-3ijgdz", "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.20250619-3933183-9xlxj5", "sitelibdir=./.gem.20250619-3933183-9xlxj5"] +["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.20240518-253219-3ijgdz", "sitelibdir=./.gem.20240518-253219-3ijgdz"] 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/x86_64-linux-gnu/ruby-3.1.0 -I/usr/include/ruby-3.1.0/ruby/backward -I/usr/include/ruby-3.1.0 -I. -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 -fcf-protection -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/x86_64-linux-gnu -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.20250619-3933183-9xlxj5", "sitelibdir=./.gem.20250619-3933183-9xlxj5", "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.20240518-253219-3ijgdz", "sitelibdir=./.gem.20240518-253219-3ijgdz", "install"] make[2]: Entering directory '/build/reproducible-path/ruby-ffi-yajl-2.3.1/ext/ffi_yajl/ext/parser' -/bin/mkdir -p . ./.gem.20250619-3933183-9xlxj5/ffi_yajl/ext +/bin/mkdir -p . ./.gem.20240518-253219-3ijgdz/ffi_yajl/ext exit > .sitearchdir.-.ffi_yajl.-.ext.time -/usr/bin/install -c -m 0755 parser.so ./.gem.20250619-3933183-9xlxj5/ffi_yajl/ext +/usr/bin/install -c -m 0755 parser.so ./.gem.20240518-253219-3ijgdz/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.20250619-3933183-9xlxj5", "sitelibdir=./.gem.20250619-3933183-9xlxj5", "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.20240518-253219-3ijgdz", "sitelibdir=./.gem.20240518-253219-3ijgdz", "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 @@ -1038,13 +1074,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.20250619-3933183-9xlxj5 sitelibdir\=./.gem.20250619-3933183-9xlxj5 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.20240518-253219-3ijgdz sitelibdir\=./.gem.20240518-253219-3ijgdz 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.20250619-3933183-9xlxj5 sitelibdir\=./.gem.20250619-3933183-9xlxj5 +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.20240518-253219-3ijgdz sitelibdir\=./.gem.20240518-253219-3ijgdz 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.20250619-3933183-9xlxj5 sitelibdir\=./.gem.20250619-3933183-9xlxj5 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.20240518-253219-3ijgdz sitelibdir\=./.gem.20240518-253219-3ijgdz 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.20250619-3933183-9xlxj5 sitelibdir\=./.gem.20250619-3933183-9xlxj5 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.20240518-253219-3ijgdz sitelibdir\=./.gem.20240518-253219-3ijgdz clean rm -f /build/reproducible-path/ruby-ffi-yajl-2.3.1/debian/ruby-ffi-yajl/usr/lib/x86_64-linux-gnu/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 @@ -1069,685 +1105,666 @@ /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 59444 +Randomized with seed 32221 FFI_Yajl::Parser when options default to nothing - when using the class method + when using a parsing object behaves like correct json parsing + 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 json has 23456789012E666 + should return infinity + when parsing bare false + should parse to the false value + when parsing big floats + parses + when dealing with too much or too little input + 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 json is invalid UTF8 + should not parse by default + 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 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 parsing bare int + should parse to the int value should ignore repeated keys by default should replace the first hash key with the second - when parsing bare null - should parse to the nil value - when parsing bare true - should parse to the true value - when parsing bare float - should parse to the a float - should raise an exception for repeated keys - should raise - when parsing long hash keys with symbolize_keys option - parses when parsing floats - parses floats with an exponent without a sign and a large E + parses simple floating point values 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 positive exponents and a small e + parses floats with negative exponents and a small e correctly parses - parses simple negative floating point values + 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 floats with negative exponents 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 large E correctly parses - parses simple floating point values + parses floats with positive exponents and a small e correctly parses - 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 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 true - should parse - when :dont_validate_strings is set to false - should raise an ArgumentError + 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 json has multiline comments when allow_comments is false should not parse when allow_comments is true should parse - when parsing bare int - should parse to the int value - when parsing bare false - should parse to the false value - 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 1046289770033519442869495707521600000000 - should parse corectly - when parsing 2147483649 - should parse corectly when parsing nil should not coredump ruby - when parsing heavy metal umlauts in keys - correctly parses + when parsing bare string + should parse to the string value when json has comments + by default + should parse when allow_comments is false should not parse when allow_comments is true should parse - by default - should parse - when JSON is a StringIO - should parse - when parsing bare string - should parse to the string value - when parsing big floats + when parsing 2147483649 + should parse corectly + when parsing long hash keys with symbolize_keys option parses + when parsing heavy metal umlauts in keys + correctly parses + when json has inline 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 1046289770033519442869495707521600000000 + should parse corectly + when parsing bare null + should parse to the nil value when parsing 5687389800 should parse corectly - 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 bracket is present - raises an exception - when an extra brace is present - raises an exception - with allow_trailing_garbage - parses + when JSON is a StringIO + should parse + should raise an exception for repeated keys + should raise + when parsing bare true + should parse to the true value + when parsing bare float + should parse to the a float when parsing a JSON hash with only strings 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 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 values to utf-8 encodes keys to utf-8 - when the JSON is empty string - returns nil - 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 using the class method + behaves like correct json parsing + when parsing bare float + should parse to the a float + when parsing big floats + parses + when json has 23456789012E666 + should return infinity + when parsing a JSON hash with only strings + 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 Encoding.default_internal is utf-8 + encodes keys to utf-8 + encodes values to utf-8 + should ignore repeated keys by default + should replace the first hash key with the second when json has inline comments when allow_comments is false should not parse when allow_comments is true should parse - when using a parsing object - behaves like correct json parsing + when parsing 2147483649 + should parse corectly + when parsing 5687389800 + should parse corectly when parsing long hash keys with symbolize_keys option parses - should raise an exception for repeated keys - should raise - 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 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 json has multiline comments + when parsing bare false + should parse to the false value + when the JSON is empty string + returns nil + 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 comments when allow_comments is true should parse + by default + 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 bare string - should parse to the string value - 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 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 heavy metal umlauts in keys - correctly parses - when parsing big floats - parses - when json has comments + when json has multiline comments when allow_comments is false should not parse when allow_comments is true should parse - by default - should parse - when the JSON is empty string - returns nil 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 :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 :dont_validate_strings is set to false should not parse - 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 trailing braces are missing - raises an exception - when an extra brace is present - raises an exception - with allow_trailing_garbage - parses - when parsing bare null - should parse to the nil value - when parsing bare float - should parse to the a float - when parsing bare false - should parse to the false value - when parsing 1046289770033519442869495707521600000000 - should parse corectly - when json has inline comments - when allow_comments is true - should parse - when allow_comments is false + when :check_utf8 is set to true should not parse - when parsing 5687389800 - should parse corectly + 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 nil should not coredump ruby + when parsing heavy metal umlauts in keys + correctly parses + should raise an exception for repeated keys + should raise when parsing floats 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 simple negative floating point values + parses floats with an exponent without a sign and a small e correctly parses parses floats with negative exponents and a small e correctly parses - parses floats with positive exponents and a small e + parses floats with negative exponents and a large E correctly parses - parses simple floating point values + 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 + parses simple negative floating point values correctly parses - parses floats with negative exponents and a large E + parses simple floating point values correctly parses + parses floats with positive exponents and a small e + correctly parses + 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 bare true + should parse to the true value + when parsing bare string + should parse to the string value when JSON is a StringIO should parse + 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 bare int should parse to the int value - when parsing bare true - should parse to the true value - when parsing 2147483649 - should parse corectly when options are set to nil - when using the class method + when using a parsing object behaves like correct json parsing + when parsing bare false + should parse to the false value + when json has inline comments + when allow_comments is false + should not parse + when allow_comments is true + should parse + when JSON is a StringIO + should parse + 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 floats - parses simple negative floating point values - correctly parses - parses floats with positive exponents and a large E + parses floats with an exponent without a sign and a large E correctly parses - parses floats with negative exponents and a large E + parses floats with negative exponents and a small e correctly parses - parses simple floating point values + 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 - correctly parses - parses floats with an exponent without a sign and a large E + parses simple negative floating point values correctly parses parses floats with positive exponents and a small e correctly parses - when json has inline comments - when allow_comments is false + parses floats with negative exponents and a large E + correctly parses + parses simple floating point values + correctly parses + when parsing bare float + should parse to the a float + should raise an exception for repeated keys + should raise + when json has 23456789012E666 + should return infinity + when json is invalid UTF8 + should not parse by default + when :check_utf8 is set to true should not parse - when allow_comments is true - should parse - when parsing 1046289770033519442869495707521600000000 - should parse corectly - when parsing bare string - should parse to the string value - when json has comments - by default + 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 true should parse - when allow_comments is true + when :check_utf8 is set to false should parse - when allow_comments is false + 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 false should not parse + 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 bracket is present + raises an exception + when an extra brace is present + raises an exception + with allow_trailing_garbage + parses 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 values to utf-8 encodes keys to utf-8 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 parsing big floats + parses + when parsing bare null + should parse to the nil value + should ignore repeated keys by default + should replace the first hash key with the second + when the JSON is empty string + returns nil + when parsing 2147483649 + should parse corectly + when parsing long hash keys with symbolize_keys option + parses + when parsing bare true + should parse to the true value + when parsing bare string + should parse to the string value when json has multiline comments - when allow_comments is true - should parse when allow_comments is false should not parse - when parsing 2147483649 + when allow_comments is true + should parse + when parsing 1046289770033519442869495707521600000000 should parse corectly - when the JSON is empty string - returns nil when parsing 5687389800 should parse corectly - when JSON is a StringIO - should parse - when parsing nil - should not coredump ruby - should raise an exception for repeated keys - should raise - when parsing bare float - should parse to the a float - 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 + when parsing bare int + should parse to the int value + when a parsed key has utf-8 multibyte characters should parse correctly when symbolize_keys is true should symbolize keys correctly - when passing a block - should parse correctly (PENDING: handle blocks) - should ignore repeated keys by default - should replace the first hash key with the second - when parsing big floats - parses - when json has 23456789012E666 - should return infinity + should parse non-ascii symbols in UTF-8 + 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 heavy metal umlauts in keys + correctly parses + when using the class method + behaves like correct json parsing + when parsing bare int + should parse to the int value when dealing with too much or too little input 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 false - should parse to the false value + when an extra brace is present + raises an exception + with allow_trailing_garbage + parses when parsing long hash keys with symbolize_keys option parses - when parsing heavy metal umlauts in keys - correctly parses - when parsing bare int - should parse to the int value - 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 json is invalid UTF8 should not parse by default - 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 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 :dont_validate_strings is set to true should parse - when :dont_validate_strings is set to false + 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 JSON is a StringIO + should parse + when json has 23456789012E666 + should return infinity + when parsing 1046289770033519442869495707521600000000 + 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 symbolize keys correctly + should parse non-ascii symbols in UTF-8 + when json has multiline comments + when allow_comments is false should not parse - when using a parsing object - behaves like correct json parsing - should raise an exception for repeated keys - should raise + when allow_comments is true + should parse 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) + 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 + encodes values to UTF-8 when Encoding.default_internal is utf-8 encodes keys to utf-8 encodes values to utf-8 - when parsing 1046289770033519442869495707521600000000 - should parse corectly + should ignore repeated keys by default + should replace the first hash key with the second 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 int - should parse to the int value - when json has multiline comments + when json has comments when allow_comments is false should not parse when allow_comments is true should parse - when parsing bare true - should parse to the true value - 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 json has inline comments + when allow_comments is true + should parse when allow_comments is false should not parse - when parsing long hash keys with symbolize_keys option - parses + when parsing 2147483649 + should parse corectly when parsing big floats parses - 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 float - should parse to the a float when parsing 5687389800 should parse corectly - 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 parsing bare false - should parse to the false value - when dealing with too much or too little input - 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 an extra bracket is present - raises an exception - when parsing 2147483649 - should parse corectly + when parsing bare string + should parse to the string value + when parsing heavy metal umlauts in keys + correctly parses + should raise an exception for repeated keys + should raise + when parsing bare true + should parse to the true value when parsing floats - parses floats with an exponent without a sign and a large E - correctly parses parses floats with positive exponents and a small e correctly parses - parses floats with negative exponents 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 an exponent without a sign and a small e correctly parses - parses floats with positive exponents and a large E + parses floats with negative 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 negative exponents and a large E correctly parses - parses simple floating point values - correctly parses - when json has 23456789012E666 - should return infinity - when parsing nil - should not coredump ruby - when json is invalid UTF8 - should not parse by default - 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 - 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 parsing bare float + should parse to the a float + when parsing bare null + should parse to the nil value when the JSON is empty string returns nil - when JSON is a StringIO - should parse - when parsing bare string - should parse to the string value - should ignore repeated keys by default - should replace the first hash key with the second + when parsing bare false + should parse to the false value when options are set to empty hash - when using the class method + when using a parsing object behaves like correct json parsing + when parsing long hash keys with symbolize_keys option + 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 parsing big floats - parses - when parsing 1046289770033519442869495707521600000000 - should parse corectly - when the JSON is empty string - returns nil + when parsing bare null + should parse to the nil value when parsing floats - parses simple negative floating point values - correctly parses - parses floats with positive exponents and a small 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 parses floats with an exponent without a sign and a small e correctly parses + parses simple floating point values + correctly parses parses floats with negative exponents and a small e correctly parses - parses simple floating point values + 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 - when parsing long hash keys with symbolize_keys option - parses - when parsing bare false - should parse to the false value - 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 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 bare int + should parse to the int value + when parsing heavy metal umlauts in keys + correctly parses when json has 23456789012E666 should return infinity + when parsing bare string + should parse to the string value + when parsing big floats + parses + when parsing 1046289770033519442869495707521600000000 + should parse corectly + when the JSON is empty string + returns nil + when parsing 5687389800 + should parse corectly + when parsing 2147483649 + should parse corectly when dealing with too much or too little input - when an extra brace is present + when trailing brackets are missing 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 an extra bracket is present raises an exception - when parsing nil - should not coredump ruby - when parsing heavy metal umlauts in keys - correctly parses - when parsing bare true - should parse to the true value - when parsing 5687389800 - should parse corectly + when an extra brace is present + raises an exception + with allow_trailing_garbage + parses + should raise an exception for repeated keys + should raise + 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 + should ignore repeated keys by default + should replace the first hash key with the second when json has comments - when allow_comments is false - should not parse - by default - should parse when allow_comments is true should parse - when parsing bare int - should parse to the int value - when json is invalid UTF8 - should not parse by default - when :dont_validate_strings is set to true + by default should parse - when :dont_validate_strings is set to false + when allow_comments is false should not parse + when parsing bare false + should parse to the false value + when json is invalid UTF8 + should not parse by default 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 :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 parsing bare true + should parse to the true value + when JSON is a StringIO + should parse + when json has inline comments + when allow_comments is true + should parse + when allow_comments is false + should not parse 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 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 json has inline comments + 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 Encoding.default_internal is utf-8 + encodes values to utf-8 + encodes keys to utf-8 + when using the class method + behaves like correct json parsing + when parsing bare int + should parse to the int value + 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 bare false + should parse to the false value + when json has multiline comments when allow_comments is true should parse when allow_comments is false should not parse + when JSON is a StringIO + should parse + when parsing long hash keys with symbolize_keys option + parses + when parsing big floats + parses should raise an exception for repeated keys should raise - when parsing bare null - should parse to the nil value - when parsing bare float - should parse to the a float - when parsing bare string - should parse to the string value - when parsing 2147483649 - should parse corectly - should ignore repeated keys by default - should replace the first hash key with the second - when using a parsing object - behaves like correct json parsing - 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 parsing floats - parses simple floating point values - correctly parses - parses floats with negative exponents and a large E - correctly parses - 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 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 small e - correctly parses - when parsing 5687389800 - should parse corectly - when dealing with too much or too little input - 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 trailing braces are missing - raises an exception 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) - when Encoding.default_internal is utf-8 - encodes values to utf-8 - encodes keys to utf-8 when Encoding.default_internal is nil - encodes keys to UTF-8 encodes values to UTF-8 - when parsing bare float - should parse to the a float + encodes keys to UTF-8 + when parsing 5687389800 + should parse corectly + when parsing 2147483649 + should parse corectly should ignore repeated keys by default should replace the first hash key with the second - when parsing bare null - should parse to the nil value - when parsing 1046289770033519442869495707521600000000 - should parse corectly when json has 23456789012E666 should return infinity - when the JSON is empty string - returns nil - when parsing nil - should not coredump ruby when json is invalid UTF8 should not parse by default when :check_utf8 is set to true @@ -1758,325 +1775,344 @@ should raise an ArgumentError 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 false - should raise an ArgumentError when :dont_validate_strings is set to true should parse - when :dont_validate_strings is set to false - should not parse + when :dont_validate_strings is set to false + should raise an ArgumentError + 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 true + should parse to the true value + when parsing floats + 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 + parses floats with positive 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 large E + correctly parses + parses floats with negative exponents and a small e + correctly parses + parses simple floating point values + 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 - should raise an exception for repeated keys - should raise - when JSON is a StringIO - should parse - when parsing big floats - parses + when passing a block + should parse correctly (PENDING: handle blocks) + when the JSON is empty string + returns nil + when parsing bare null + should parse to the nil value + when parsing bare float + should parse to the a float + when parsing nil + should not coredump ruby + when parsing 1046289770033519442869495707521600000000 + should parse corectly when parsing bare string should parse to the string value - when parsing heavy metal umlauts in keys - correctly parses - when parsing bare int - should parse to the int value - when json has multiline comments - when allow_comments is true - should parse - when allow_comments is false - should not parse - when parsing long hash keys with symbolize_keys option - parses - when parsing bare false - should parse to the false value - when parsing bare true - should parse to the true value + when dealing with too much or too little input + 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 brackets are missing + raises an exception when json has inline comments - when allow_comments is true - should parse - when allow_comments is false - should not parse - 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 heavy metal umlauts in keys + correctly parses + +FFI_Yajl::Encoder + encodes true in keys as strings + encodes arrays in keys as strings + can encode DateTime objects + encodes hashes in keys as strings + can encode StringIOs + encodes nil in keys as strings + encodes objects in keys as strings + raises an exception for deeply nested arrays + raises an exception for deeply nested hashes + encodes symbols in keys as strings + can encode Date objects + encodes fixnums in keys as strings + encodes bignums in keys as strings + encodes false in keys as strings + can encode 32-bit unsigned ints + encodes floats in keys as strings + encodes symbols in values as strings + encodes an object in a key which has a #to_json method as strings + 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 raise an error + does not grow after a round trip + returns utf8 + does not mangle valid utf8 + returns valid utf8 + when encoding Time objects in UTC timezone + encodes them correctly + testing .to_json for Objects + calls .to_json for objects wit .to_json + calls .to_s for objects without .to_json FFI_Yajl::MapLibraryName - #dlopen_yajl_library - 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 - 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 - #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 - #expanded_library_names - maps linux correctly (PENDING: Temporarily skipped with xit) 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 + 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 + 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 + #library_names + maps cygwin correctly + #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 #library_names maps openbsd correctly + #expanded_library_names + maps aix correctly (PENDING: Temporarily skipped with xit) + #expanded_library_names + maps cygwin correctly (PENDING: Temporarily skipped with xit) + #expanded_library_names + maps openbsd correctly (PENDING: Temporarily skipped with xit) + #expanded_library_names + maps darwin correctly (PENDING: Temporarily skipped with xit) ffi_open_yajl_library - if dlopen calls all raise it should still use 'yajl' on netbsd - 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 cygwin + should call ffi_lib against an expanded library name if it finds it on cygwin #dlopen_yajl_library 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 - 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 - ffi_open_yajl_library - if dlopen calls all raise it should still use 'yajl' on darwin - should call ffi_lib against an expanded library name if it finds it on darwin + 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 + #dlopen_yajl_library + 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 darwin + #expanded_library_names + maps freebsd correctly (PENDING: Temporarily skipped with xit) 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 + should call ffi_lib against an expanded library name if it finds it on solaris2 #library_names - maps mswin correctly - #library_names - maps solaris2 correctly - #expanded_library_names - maps freebsd correctly (PENDING: Temporarily skipped with xit) - #expanded_library_names - maps netbsd correctly (PENDING: Temporarily skipped with xit) + maps linux 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 #expanded_library_names - maps mswin correctly (PENDING: Temporarily skipped with xit) + maps mingw correctly (PENDING: Temporarily skipped with xit) + #dlopen_yajl_library + 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 #library_names maps hpux 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 #library_names - maps darwin correctly - #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 + maps freebsd correctly #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 - #dlopen_yajl_library - if dlopen calls all raise it should still use the short names on freebsd - should call dlopen against an expanded library name if it finds it on freebsd 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 + if dlopen calls all raise it should still use 'yajl' on openbsd + #library_names + maps solaris2 correctly #dlopen_yajl_library - 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 + 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 #library_names maps mingw correctly - 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 - #dlopen_yajl_library - should call dlopen against an expanded library name if it finds it on hpux - if dlopen calls all raise it should still use the short names on hpux #expanded_library_names - maps mingw correctly (PENDING: Temporarily skipped with xit) - ffi_open_yajl_library - should call ffi_lib against an expanded library name if it finds it on linux - if dlopen calls all raise it should still use 'yajl' on linux + maps netbsd correctly (PENDING: Temporarily skipped with xit) + #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 #expanded_library_names - maps darwin correctly (PENDING: Temporarily skipped with xit) - 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 - #library_names - maps freebsd correctly - #library_names - maps linux correctly - #library_names - maps cygwin correctly + maps linux correctly (PENDING: Temporarily skipped with xit) + #dlopen_yajl_library + 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 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 + should call ffi_lib against an expanded library name if it finds it on freebsd + #expanded_library_names + maps mswin correctly (PENDING: Temporarily skipped with xit) #library_names - maps aix 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 + maps mswin correctly #expanded_library_names maps hpux correctly (PENDING: Temporarily skipped with xit) - #expanded_library_names - maps cygwin correctly (PENDING: Temporarily skipped with xit) + 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 #expanded_library_names maps solaris2 correctly (PENDING: Temporarily skipped with xit) - #expanded_library_names - maps aix correctly (PENDING: Temporarily skipped with xit) - #expanded_library_names - maps openbsd correctly (PENDING: Temporarily skipped with xit) + ffi_open_yajl_library + 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 + #dlopen_yajl_library + should call dlopen against an expanded library name if it finds it on hpux + if dlopen calls all raise it should still use the short names on hpux #library_names maps netbsd correctly - -FFI_Yajl::Encoder - encodes symbols in values as strings - encodes objects in keys as strings - encodes hashes in keys as strings - encodes true in keys as strings - raises an exception for deeply nested hashes - encodes nil in keys as strings - encodes bignums in keys as strings - can encode Date objects - can encode DateTime objects - encodes floats in keys as strings - encodes fixnums in keys as strings - raises an exception for deeply nested arrays - encodes false in keys as strings - encodes an object in a key which has a #to_json method as strings - can encode 32-bit unsigned ints - encodes symbols in keys as strings - encodes arrays in keys as strings - can encode StringIOs - when encoding Time objects in UTC timezone - encodes them correctly - when encoding invalid utf-8 - raises an error on invalid json - when validate_utf8 is off - does not grow after a round trip - does not raise an error - returns utf8 - does not mangle valid utf8 - returns valid utf8 - 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 + #library_names + 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 + #dlopen_yajl_library + 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 + 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 Pending: (Failures listed here are expected and do not affect your suite's status) - 1) 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 + 1) 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 + + 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 keys to us-ascii # fix us-ascii # ./spec/ffi_yajl/parser_spec.rb:290 - 2) 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 + 3) 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:294 - 3) 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 + 4) 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 + + 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 + + 6) 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 - 4) 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 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 - 5) 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:290 - - 6) 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 + 8) 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 - 7) 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 + 9) 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 - 8) 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 + 10) 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:294 - - 9) 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 + # ./spec/ffi_yajl/parser_spec.rb:290 - 10) 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 + 11) 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 - 11) 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 - - 12) 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 + 12) 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 - 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 + 13) 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 + 14) 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:294 + # ./spec/ffi_yajl/parser_spec.rb:290 - 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 + 15) 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:290 + # ./spec/ffi_yajl/parser_spec.rb:294 - 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 + 16) 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 - 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 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 - 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 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 - 19) FFI_Yajl::MapLibraryName #expanded_library_names maps linux correctly + 19) FFI_Yajl::MapLibraryName #expanded_library_names maps aix correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 20) FFI_Yajl::MapLibraryName #expanded_library_names maps freebsd correctly + 20) FFI_Yajl::MapLibraryName #expanded_library_names maps cygwin correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 21) FFI_Yajl::MapLibraryName #expanded_library_names maps netbsd correctly + 21) FFI_Yajl::MapLibraryName #expanded_library_names maps openbsd correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 22) FFI_Yajl::MapLibraryName #expanded_library_names maps mswin correctly + 22) FFI_Yajl::MapLibraryName #expanded_library_names maps darwin correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 23) FFI_Yajl::MapLibraryName #expanded_library_names maps mingw correctly + 23) FFI_Yajl::MapLibraryName #expanded_library_names maps freebsd correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 24) FFI_Yajl::MapLibraryName #expanded_library_names maps darwin correctly + 24) FFI_Yajl::MapLibraryName #expanded_library_names maps mingw correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 25) FFI_Yajl::MapLibraryName #expanded_library_names maps hpux correctly + 25) FFI_Yajl::MapLibraryName #expanded_library_names maps netbsd correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 26) FFI_Yajl::MapLibraryName #expanded_library_names maps cygwin 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 solaris2 correctly + 27) FFI_Yajl::MapLibraryName #expanded_library_names maps mswin correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 28) FFI_Yajl::MapLibraryName #expanded_library_names maps aix correctly + 28) FFI_Yajl::MapLibraryName #expanded_library_names maps hpux correctly # Temporarily skipped with xit # ./spec/ffi_yajl/map_library_name_spec.rb:58 - 29) FFI_Yajl::MapLibraryName #expanded_library_names maps openbsd 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 0.69257 seconds (files took 0.25574 seconds to load) +Finished in 0.53199 seconds (files took 0.27184 seconds to load) 448 examples, 0 failures, 29 pending -Randomized with seed 59444 +Randomized with seed 32221 ┌──────────────────────────────────────────────────────────────────────────────┐ @@ -2101,7 +2137,7 @@ dh_strip -O--buildsystem=ruby dh_makeshlibs -O--buildsystem=ruby dh_shlibdeps -O--buildsystem=ruby -dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/ruby-ffi-yajl/usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/3.1.0/ffi_yajl/ext/dlopen.so debian/ruby-ffi-yajl/usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/3.1.0/ffi_yajl/ext/encoder.so debian/ruby-ffi-yajl/usr/lib/x86_64-linux-gnu/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/x86_64-linux-gnu/ruby/vendor_ruby/3.1.0/ffi_yajl/ext/parser.so debian/ruby-ffi-yajl/usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/3.1.0/ffi_yajl/ext/encoder.so debian/ruby-ffi-yajl/usr/lib/x86_64-linux-gnu/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 @@ -2111,8 +2147,8 @@ dpkg-gencontrol: warning: package ruby-ffi-yajl: substitution variable ${ruby:Depends} unused, but is defined dh_md5sums -O--buildsystem=ruby dh_builddeb -O--buildsystem=ruby -dpkg-deb: building package 'ruby-ffi-yajl-dbgsym' in '../ruby-ffi-yajl-dbgsym_2.3.1-3_amd64.deb'. dpkg-deb: building package 'ruby-ffi-yajl' in '../ruby-ffi-yajl_2.3.1-3_amd64.deb'. +dpkg-deb: building package 'ruby-ffi-yajl-dbgsym' in '../ruby-ffi-yajl-dbgsym_2.3.1-3_amd64.deb'. dpkg-genbuildinfo --build=binary -O../ruby-ffi-yajl_2.3.1-3_amd64.buildinfo dpkg-genchanges --build=binary -O../ruby-ffi-yajl_2.3.1-3_amd64.changes dpkg-genchanges: info: binary-only upload (no source code included) @@ -2120,12 +2156,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/238306/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/238306/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/3916904 and its subdirectories -I: Current time: Thu Jun 19 23:43:19 -12 2025 -I: pbuilder-time-stamp: 1750419799 +I: removing directory /srv/workspace/pbuilder/238306 and its subdirectories +I: Current time: Sat May 18 19:22:25 +14 2024 +I: pbuilder-time-stamp: 1716009745