Diff of the two buildlogs: -- --- b1/build.log 2024-05-17 12:24:06.451164537 +0000 +++ b2/build.log 2024-05-17 12:24:51.989228492 +0000 @@ -1,6 +1,7 @@ +W: cgroups are not available on the host, not using them. I: pbuilder: network access will be disabled during build -I: Current time: Fri May 17 00:23:24 -12 2024 -I: pbuilder-time-stamp: 1715948604 +I: Current time: Fri Jun 20 08:47:09 +14 2025 +I: pbuilder-time-stamp: 1750358829 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -27,52 +28,83 @@ dpkg-source: info: applying library-path I: using fakeroot in build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/563982/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/2491798/tmp/hooks/D01_modify_environment starting +debug: Running on codethink01-arm64. +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 Jun 19 18:47 /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/2491798/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/2491798/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='arm64' - 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]="aarch64-unknown-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=arm64 + DEBIAN_FRONTEND=noninteractive DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=12 ' - DISTRIBUTION='unstable' - HOME='/root' - HOST_ARCH='arm64' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=aarch64 + HOST_ARCH=arm64 IFS=' ' - INVOCATION_ID='803f1c7959764f2a8329fa5f64db5ae7' - 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='563982' - PS1='# ' - PS2='> ' + LANG=C + LANGUAGE=nl_BE:nl + LC_ALL=C + MACHTYPE=aarch64-unknown-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=2491798 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.kyzTBe6W/pbuilderrc_lNM8 --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.kyzTBe6W/b1 --logfile b1/build.log ruby-crass_1.0.2-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' - http_proxy='http://192.168.101.4:3128' + 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.kyzTBe6W/pbuilderrc_Rgj6 --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.kyzTBe6W/b2 --logfile b2/build.log ruby-crass_1.0.2-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' + http_proxy=http://192.168.101.4:3128 I: uname -a - Linux codethink02-arm64 6.1.0-21-cloud-arm64 #1 SMP Debian 6.1.90-1 (2024-05-03) aarch64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-21-cloud-arm64 #1 SMP Debian 6.1.90-1 (2024-05-03) aarch64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 May 17 07:42 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/563982/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Jun 19 14:05 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/2491798/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -238,7 +270,7 @@ Get: 122 http://deb.debian.org/debian unstable/main arm64 ruby3.1-dev arm64 3.1.2-8.3 [1005 kB] Get: 123 http://deb.debian.org/debian unstable/main arm64 ruby-all-dev arm64 1:3.1+nmu1 [5680 B] Get: 124 http://deb.debian.org/debian unstable/main arm64 gem2deb arm64 2.2.3 [47.8 kB] -Fetched 41.3 MB in 0s (168 MB/s) +Fetched 41.3 MB in 0s (141 MB/s) debconf: delaying package configuration, since apt-utils is not installed Selecting previously unselected package libpython3.11-minimal:arm64. (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 ... 19764 files and directories currently installed.) @@ -654,8 +686,8 @@ Setting up tzdata (2024a-4) ... Current default time zone: 'Etc/UTC' -Local time is now: Fri May 17 12:23:45 UTC 2024. -Universal Time is now: Fri May 17 12:23:45 UTC 2024. +Local time is now: Thu Jun 19 18:47:27 UTC 2025. +Universal Time is now: Thu Jun 19 18:47:27 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up autotools-dev (20220109.1) ... @@ -773,7 +805,11 @@ fakeroot is already the newest version (1.34-1). 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. I: Building the package -I: Running cd /build/reproducible-path/ruby-crass-1.0.2/ && 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-crass_1.0.2-3_source.changes +I: user script /srv/workspace/pbuilder/2491798/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/2491798/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/ruby-crass-1.0.2/ && 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-crass_1.0.2-3_source.changes dpkg-buildpackage: info: source package ruby-crass dpkg-buildpackage: info: source version 1.0.2-3 dpkg-buildpackage: info: source distribution unstable @@ -804,13 +840,13 @@ dh_prep -O--buildsystem=ruby dh_auto_install --destdir=debian/ruby-crass/ -O--buildsystem=ruby dh_ruby --install /build/reproducible-path/ruby-crass-1.0.2/debian/ruby-crass -/usr/bin/ruby3.1 -S gem build --config-file /dev/null --verbose /tmp/d20240517-577926-k39hgg/gemspec +/usr/bin/ruby3.1 -S gem build --config-file /dev/null --verbose /tmp/d20250620-2501684-ye3knk/gemspec Failed to load /dev/null because it doesn't contain valid YAML hash Successfully built RubyGem Name: crass Version: 1.0.2 File: crass-1.0.2.gem -/usr/bin/ruby3.1 -S gem install --config-file /dev/null --verbose --local --verbose --no-document --ignore-dependencies --install-dir debian/ruby-crass/usr/share/rubygems-integration/all /tmp/d20240517-577926-k39hgg/crass-1.0.2.gem +/usr/bin/ruby3.1 -S gem install --config-file /dev/null --verbose --local --verbose --no-document --ignore-dependencies --install-dir debian/ruby-crass/usr/share/rubygems-integration/all /tmp/d20250620-2501684-ye3knk/crass-1.0.2.gem Failed to load /dev/null because it doesn't contain valid YAML hash /build/reproducible-path/ruby-crass-1.0.2/debian/ruby-crass/usr/share/rubygems-integration/all/gems/crass-1.0.2/lib/crass.rb /build/reproducible-path/ruby-crass-1.0.2/debian/ruby-crass/usr/share/rubygems-integration/all/gems/crass-1.0.2/lib/crass/parser.rb @@ -847,191 +883,191 @@ RUBYLIB=. GEM_PATH=/build/reproducible-path/ruby-crass-1.0.2/debian/ruby-crass/usr/share/rubygems-integration/all:/build/reproducible-path/ruby-crass-1.0.2/debian/.debhelper/generated/_source/home/.local/share/gem/ruby/3.1.0:/var/lib/gems/3.1.0:/usr/local/lib/ruby/gems/3.1.0:/usr/lib/ruby/gems/3.1.0:/usr/lib/aarch64-linux-gnu/ruby/gems/3.1.0:/usr/share/rubygems-integration/3.1.0:/usr/share/rubygems-integration/all:/usr/lib/aarch64-linux-gnu/rubygems-integration/3.1.0 ruby3.1 -S rake --rakelibdir /gem2deb-nonexistent -f debian/ruby-tests.rake /usr/bin/ruby3.1 -w /usr/share/rubygems-integration/all/gems/rake-13.2.1/lib/rake/rake_test_loader.rb "test/test_crass.rb" "test/test_css_parsing_tests.rb" "test/test_parse_properties.rb" "test/test_parse_rules.rb" "test/test_parse_stylesheet.rb" "test/test_serialization.rb" -v -Run options: -v --seed 8414 +Run options: -v --seed 39085 # Running: -Crass#test_0002_parse() should call Crass::Parser.parse_stylesheet = 0.00 s = . -Crass#test_0001_parse_properties() should call Crass::Parser.parse_properties = 0.00 s = . -Crass::Parser::#parse_rules::should parse an at-rule::with a block#test_0002_unclosed, preceded by a comment = 0.00 s = . -CSS Parsing Tests::one_component_value#test_0010_should parse: .foo = 0.00 s = . -Crass::Parser::#parse_stylesheet::should parse an at-rule::without a block#test_0001_without a prelude = Crass::Parser::#parse_rules::should parse an at-rule::with a block#test_0001_unclosed = 0.00 s = . -Crass::Parser::#parse_stylesheet::should parse an at-rule::without a block#test_0003_with a prelude followed by a comment, when :preserve_comments == true = 0.00 s = . -Crass::Parser::#parse_stylesheet::should parse an at-rule::without a block#test_0004_with a prelude containing a simple block = 0.00 s = . -CSS Parsing Tests::one_component_value#test_0002_should parse: = 0.00 s = . -CSS Parsing Tests::one_component_value#test_0009_should parse: /**/ { foo: bar; @baz [) = 0.00 s = . -Crass::Parser::#parse_stylesheet::should parse a style rule#test_0002_with preceding comment, selector, block, comment, when :preserve_comments == true = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0013_should parse: '' 'Lorem "îpsum"' 'a\\nb' 'a\nb 'eof = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0009_should parse: rgba0() -rgba() --rgba() -\-rgba() 0rgba() -0rgba() _rgba() .rgba() rgbâ() \30rgba() rgba () @rgba() #rgba() = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0024_should parse: url() url( ) url(\n Foô\030\n!\n) url(\na\nb\n) url(a\ b) url(a(b) url(a\(b) url(a'b) url(a\'b) url(a"b) url(a\"b) url(a\nb) url(a\\nb) url(a\a b) url(a\ = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0049_should parse: @media print { (foo]{bar) }baz = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0044_should parse: u+?????? U+1?????? = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0010_should parse: @media0 @-Media @--media @-\-media @0media @-0media @_media @.media @medİa @\30 media\ = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0043_should parse: u+????? U+1????? U+10????? = CSS Parsing Tests::component_value_list#test_0002_should parse: /*/*///** /* **/*//* = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0045_should parse: u+1-2 U+100000-2 U+1000000-2 U+10-200000 = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0021_should parse: URL(foo) Url(foo) ûrl(foo) url (foo) url\ (foo) url( 'foo' = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0047_should parse: ~=|=^=$=*=|| |/**/| ~/**/= = CSS Parsing Tests::component_value_list#test_0006_should parse: red-->/* Not CDC */ = 0.00 s = . 0.00 s = . -Crass::Parser::#parse_rules#test_0002_should parse property values containing functions = CSS Parsing Tests::one_component_value#test_0005_should parse: . = 0.00 s = . -Crass::Parser::#parse_rules#test_0003_should parse property values containing nested functions = 0.00 s = . -CSS Parsing Tests::stylesheet#test_0001_should parse: = CSS Parsing Tests::one_component_value#test_0007_should parse: /**/ 4px = Crass::Parser::#parse_rules::should parse an at-rule::with a block#test_0003_unclosed, preceded by a comment, when :preserve_comments == true = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0034_should parse: 12\% /* Percent sign can not be escaped */ = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0042_should parse: u+???? U+1???? U+10???? U+100???? = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0048_should parse: a:not([href^=http\:], [href ^= 'https\:'\n]) { color: rgba(0%, 100%, 50%); } = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0004_should parse: \n\nRed = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0039_should parse: u+? u+1? U+10? U+100? U+1000? U+10000? U+100000? = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0015_should parse: "Lo\rem \130 ps\u m" '\376\37 6\000376\0000376\ = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0022_should parse: url('a' b) url('c' d) = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0011_should parse: #red0 #-Red #--red #-\-red #0red #-0red #_Red #.red #rêd #êrd #\.red\ = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0029_should parse: 3. /* Decimal point must have following digits */ = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0025_should parse: url(!#$%&*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{|}~€žŸ ¡¢ = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0005_should parse: red/* CDC */--> = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0041_should parse: u+??? U+1??? U+10??? U+100??? U+1000??? = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0026_should parse: url() url() url() url() url() url() url() url() url( ) url() url() url() url() url() url() url() url() url() url() url() url() url() url() url() url() url() url() url() = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0036_should parse: 12e2px +34e+1px -45E-0px .68e+3px +.79e-1px -.01E2px 2.3E+1px +45.0e6px -0.67e0px = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0014_should parse: "" "Lorem 'îpsum'" "a\\nb" "a\nb "eof = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0035_should parse: 12px +34px -45px .67px +.89px -.01px 2.3px +45.0px -0.67px = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0001_should parse: = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0032_should parse: 12% +34% -45% .67% +.89% -.01% 2.3% +45.0% -0.67% = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0046_should parse: ù+12 Ü+12 u +12 U+ 12 U+12 - 20 U+1?2 U+1?-50 = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0023_should parse: url('a\nb) url('c\n = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0031_should parse: 3e-2.1 /* Integer exponents only */ = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0028_should parse: 12e2 +34e+1 -45E-0 .68e+3 +.79e-1 -.01E2 2.3E+1 +45.0e6 -0.67e0 = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0007_should parse: \- red0 -red --red -\-red\ blue 0red -0red red _Red .red rêd r\êd € = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0008_should parse: \30red \00030 red \30 \nred \0000000red \1100000red \red \r ed \.red \ red \\nred \376\37 6\000376\0000376\ = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0016_should parse: url( '') url('Lorem "îpsum"'\n) url('a\\nb' ) url('a\nb) url('eof = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0038_should parse: u+1 U+10 U+100 U+1000 U+10000 U+100000 U+1000000 = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0020_should parse: url("Lo\rem \130 ps\u m") url('\376\37 6\000376\0000376\ = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0030_should parse: 3\65-2 /* Scientific notation E can not be escaped */ = 0.00 s = . +CSS Parsing Tests::stylesheet#test_0013_should parse: div { color: #aaa; } p{} = 0.00 s = . +CSS Parsing Tests::stylesheet#test_0007_should parse: @foo { bar = 0.00 s = . +CSS Parsing Tests::stylesheet#test_0003_should parse: foo 4 = 0.00 s = . +CSS Parsing Tests::stylesheet#test_0004_should parse: @foo = 0.00 s = . +CSS Parsing Tests::stylesheet#test_0011_should parse: /* CDO/CDC are ignored between rules */ { = 0.00 s = . CSS Parsing Tests::stylesheet#test_0008_should parse: @foo [ bar = 0.00 s = . -CSS Parsing Tests::one_component_value#test_0004_should parse: /**/ /* a */\n\n = 0.00 s = . +CSS Parsing Tests::stylesheet#test_0016_should parse: {}@a = 0.00 s = . +CSS Parsing Tests::stylesheet#test_0012_should parse: a{ = 0.00 s = . +CSS Parsing Tests::stylesheet#test_0014_should parse: div {} --> = 0.00 s = . +CSS Parsing Tests::stylesheet#test_0002_should parse: foo = 0.00 s = . +CSS Parsing Tests::stylesheet#test_0005_should parse: @foo bar; /* comment */ = 0.00 s = . CSS Parsing Tests::stylesheet#test_0009_should parse: /**/ div > p { color: #aaa; } /**/ = 0.00 s = . -CSS Parsing Tests::stylesheet#test_0011_should parse: /* CDO/CDC are ignored between rules */ { = 0.00 s = . -0.00 s = . -CSS Parsing Tests::stylesheet#test_0003_should parse: foo 4 = 0.00 s = . -CSS Parsing Tests::stylesheet#test_0007_should parse: @foo { bar = 0.00 s = . CSS Parsing Tests::stylesheet#test_0015_should parse: {}a = 0.00 s = . -CSS Parsing Tests::stylesheet#test_0005_should parse: @foo bar; /* comment */ = 0.00 s = . -0.00 s = . -CSS Parsing Tests::stylesheet#test_0002_should parse: foo = 0.00 s = . -CSS Parsing Tests::stylesheet#test_0012_should parse: a{ = 0.00 s = . -CSS Parsing Tests::stylesheet#test_0013_should parse: div { color: #aaa; } p{} = 0.00 s = . -CSS Parsing Tests::stylesheet#test_0004_should parse: @foo = 0.00 s = . +CSS Parsing Tests::stylesheet#test_0001_should parse: = 0.00 s = . +CSS Parsing Tests::stylesheet#test_0010_should parse: /**/ { color: #aaa = 0.00 s = . +CSS Parsing Tests::stylesheet#test_0006_should parse: /**/ @foo bar{[(4 = 0.00 s = . +Crass::Parser::#parse_stylesheet#test_0001_should parse an empty stylesheet = 0.00 s = . +Crass::Parser::#parse_stylesheet#test_0002_should parse property values containing functions = 0.00 s = . +Crass::Parser::#parse_stylesheet#test_0003_should parse property values containing nested functions = 0.00 s = . +Crass::Parser::#parse_rules::should parse an at-rule::with a block#test_0001_unclosed = 0.00 s = . +Crass::Parser::#parse_rules::should parse an at-rule::with a block#test_0002_unclosed, preceded by a comment = 0.00 s = . +Crass::Parser::#parse_rules::should parse an at-rule::with a block#test_0003_unclosed, preceded by a comment, when :preserve_comments == true = 0.00 s = . +Crass::Parser::#parse_properties#test_0007_should parse values containing nested functions = 0.00 s = . +Crass::Parser::#parse_properties#test_0001_should return an empty tree when given an empty string = 0.00 s = . +Crass::Parser::#parse_properties#test_0002_should include semicolon and whitespace tokens = 0.00 s = . +Crass::Parser::#parse_properties#test_0004_should parse at-rules even though they may be invalid in the given context = 0.00 s = . +Crass::Parser::#parse_properties#test_0005_should parse at-rules with a {} simple block immediately following the prelude = 0.00 s = . +Crass::Parser::#parse_properties#test_0006_should parse values containing functions = 0.00 s = . +Crass::Parser::#parse_properties#test_0008_should not choke on a missing property value = 0.00 s = . +Crass::Parser::#parse_properties#test_0003_should include semicolon, whitespace, and comment tokens when :preserve_comments == true = 0.00 s = . +CSS Parsing Tests::one_component_value#test_0006_should parse: a = 0.00 s = . +CSS Parsing Tests::one_component_value#test_0010_should parse: .foo = 0.00 s = . +CSS Parsing Tests::one_component_value#test_0002_should parse: = 0.00 s = . +CSS Parsing Tests::one_component_value#test_0008_should parse: rgba(100%, 0%, 50%, .5) = 0.00 s = . +CSS Parsing Tests::one_component_value#test_0009_should parse: /**/ { foo: bar; @baz [) = 0.00 s = . +CSS Parsing Tests::one_component_value#test_0003_should parse: /**/ = 0.00 s = . +CSS Parsing Tests::one_component_value#test_0007_should parse: /**/ 4px = 0.00 s = . CSS Parsing Tests::one_component_value#test_0001_should parse: = 0.00 s = . -Crass::Parser::#parse_stylesheet::should parse an at-rule::with a block#test_0002_unclosed, preceded by a comment = 0.00 s = . -Crass::Parser::#parse_stylesheet::should parse an at-rule::with a block#test_0003_unclosed, preceded by a comment, when :preserve_comments == true = 0.00 s = . -Crass::Parser::#parse_stylesheet::should parse an at-rule::with a block#test_0001_unclosed = 0.00 s = . -CSS Parsing Tests::rule_list#test_0011_should parse: /* CDO/CDC are not special */ { = 0.00 s = . -CSS Parsing Tests::rule_list#test_0003_should parse: foo 4 = CSS Parsing Tests::stylesheet#test_0014_should parse: div {} --> = Crass::Parser::#parse_stylesheet::should parse an at-rule::without a block#test_0002_with a prelude followed by a comment = 0.00 s = . -CSS Parsing Tests::rule_list#test_0006_should parse: /**/ @foo bar{[(4 = 0.00 s = . -CSS Parsing Tests::rule_list#test_0001_should parse: = 0.00 s = . +CSS Parsing Tests::one_component_value#test_0005_should parse: . = 0.00 s = . +CSS Parsing Tests::one_component_value#test_0004_should parse: /**/ /* a */\n\n = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0012_should parse: \n/**/ foo: = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0013_should parse: foo:; = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0017_should parse: foo: 9000 ! /**/ IMPORTant /**/ = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0008_should parse: foo*: = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0009_should parse: foo.. 9000 = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0014_should parse: /**/ foo /**/ : = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0005_should parse: @foo: = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0020_should parse: foo: 9000 important = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0021_should parse: foo:important = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0015_should parse: foo:;bar:; = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0019_should parse: foo: 9000 !important! = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0011_should parse: foo : = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0001_should parse: = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0004_should parse: foo = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0016_should parse: foo: 9000 !Important = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0018_should parse: foo: 9000 /* Dotted capital I */!İmportant = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0022_should parse: foo: 9000 @bar{ !important = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0003_should parse: ; = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0007_should parse: .foo: = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0002_should parse: /**/\n = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0010_should parse: foo: = 0.00 s = . +CSS Parsing Tests::one_declaration#test_0006_should parse: #foo: = 0.00 s = . +Crass::Parser::#parse_stylesheet::should parse a style rule#test_0001_with preceding comment, selector, block, comment = 0.00 s = . +Crass::Parser::#parse_stylesheet::should parse a style rule#test_0002_with preceding comment, selector, block, comment, when :preserve_comments == true = 0.00 s = . +CSS Parsing Tests::rule_list#test_0007_should parse: @foo { bar = 0.00 s = . CSS Parsing Tests::rule_list#test_0010_should parse: /**/ { color: #aaa = 0.00 s = . -CSS Parsing Tests::one_component_value#test_0003_should parse: /**/ = 0.00 s = . +CSS Parsing Tests::rule_list#test_0013_should parse: div {} --> = 0.00 s = . +CSS Parsing Tests::rule_list#test_0014_should parse: {}a = 0.00 s = . +CSS Parsing Tests::rule_list#test_0006_should parse: /**/ @foo bar{[(4 = 0.00 s = . +CSS Parsing Tests::rule_list#test_0009_should parse: /**/ div > p { color: #aaa; } /**/ = 0.00 s = . CSS Parsing Tests::rule_list#test_0008_should parse: @foo [ bar = 0.00 s = . +CSS Parsing Tests::rule_list#test_0011_should parse: /* CDO/CDC are not special */ { = 0.00 s = . CSS Parsing Tests::rule_list#test_0012_should parse: div { color: #aaa; } p{} = 0.00 s = . -CSS Parsing Tests::rule_list#test_0014_should parse: {}a = CSS Parsing Tests::stylesheet#test_0006_should parse: /**/ @foo bar{[(4 = 0.00 s = . CSS Parsing Tests::rule_list#test_0002_should parse: foo = 0.00 s = . -CSS Parsing Tests::rule_list#test_0005_should parse: @foo bar; /* comment */ = 0.00 s = . -CSS Parsing Tests::rule_list#test_0009_should parse: /**/ div > p { color: #aaa; } /**/ = 0.00 s = . -CSS Parsing Tests::rule_list#test_0007_should parse: @foo { bar = 0.00 s = . -0.00 s = . -CSS Parsing Tests::rule_list#test_0013_should parse: div {} --> = 0.00 s = . +CSS Parsing Tests::rule_list#test_0001_should parse: = 0.00 s = . +CSS Parsing Tests::rule_list#test_0015_should parse: {}@a = 0.00 s = . CSS Parsing Tests::rule_list#test_0004_should parse: @foo = 0.00 s = . -Crass::Parser::#parse_stylesheet#test_0002_should parse property values containing functions = 0.00 s = . -Crass::Parser::#parse_stylesheet#test_0001_should parse an empty stylesheet = 0.00 s = . -Crass::Parser::#parse_stylesheet#test_0003_should parse property values containing nested functions = 0.00 s = . -Crass::Parser::#parse_properties#test_0004_should parse at-rules even though they may be invalid in the given context = 0.00 s = . -Crass::Parser::#parse_properties#test_0001_should return an empty tree when given an empty string = 0.00 s = . -Crass::Parser::#parse_properties#test_0008_should not choke on a missing property value = 0.00 s = . -Crass::Parser::#parse_properties#test_0006_should parse values containing functions = 0.00 s = . -Crass::Parser::#parse_properties#test_0007_should parse values containing nested functions = 0.00 s = . -Crass::Parser::#parse_properties#test_0005_should parse at-rules with a {} simple block immediately following the prelude = 0.00 s = . -Crass::Parser::#parse_properties#test_0002_should include semicolon and whitespace tokens = 0.00 s = . -Crass::Parser::#parse_properties#test_0003_should include semicolon, whitespace, and comment tokens when :preserve_comments == true = 0.00 s = . -CSS Parsing Tests::declaration_list#test_0004_should parse: z;a:b = 0.00 s = . -CSS Parsing Tests::declaration_list#test_0005_should parse: z:x!;a:b = 0.00 s = . +CSS Parsing Tests::rule_list#test_0003_should parse: foo 4 = 0.00 s = . +CSS Parsing Tests::rule_list#test_0005_should parse: @foo bar; /* comment */ = 0.00 s = . +Crass#test_0001_parse_properties() should call Crass::Parser.parse_properties = 0.00 s = . +Crass#test_0002_parse() should call Crass::Parser.parse_stylesheet = 0.00 s = . +Crass::Parser::#parse_rules::should parse a style rule#test_0001_with preceding comment, selector, block, comment = 0.00 s = . +Crass::Parser::#parse_rules::should parse a style rule#test_0002_with preceding comment, selector, block, comment, when :preserve_comments == true = 0.00 s = . +Crass::Parser::#parse_stylesheet::should parse an at-rule::with a block#test_0001_unclosed = 0.00 s = . +Crass::Parser::#parse_stylesheet::should parse an at-rule::with a block#test_0003_unclosed, preceded by a comment, when :preserve_comments == true = 0.00 s = . +Crass::Parser::#parse_stylesheet::should parse an at-rule::with a block#test_0002_unclosed, preceded by a comment = 0.00 s = . +CSS Parsing Tests::declaration_list#test_0001_should parse: = 0.00 s = . CSS Parsing Tests::declaration_list#test_0007_should parse: @import 'foo.css'; a:b; @import 'bar.css' = 0.00 s = . CSS Parsing Tests::declaration_list#test_0003_should parse: a:b; c:d 42!important;\n = 0.00 s = . +CSS Parsing Tests::declaration_list#test_0004_should parse: z;a:b = 0.00 s = . CSS Parsing Tests::declaration_list#test_0006_should parse: a:b; c+:d = 0.00 s = . -CSS Parsing Tests::declaration_list#test_0008_should parse: @media screen { div{;}} a:b;; @media print{div{ = 0.00 s = . -CSS Parsing Tests::declaration_list#test_0001_should parse: = 0.00 s = . -CSS Parsing Tests::declaration_list#test_0010_should parse: = 0.00 s = . CSS Parsing Tests::declaration_list#test_0009_should parse: @ media screen { div{;}} a:b;; @media print{div{ = 0.00 s = . +CSS Parsing Tests::declaration_list#test_0010_should parse: = 0.00 s = . +CSS Parsing Tests::declaration_list#test_0005_should parse: z:x!;a:b = 0.00 s = . CSS Parsing Tests::declaration_list#test_0002_should parse: ;; /**/ ; ; = 0.00 s = . +CSS Parsing Tests::declaration_list#test_0008_should parse: @media screen { div{;}} a:b;; @media print{div{ = 0.00 s = . +Crass::Parser::#parse_rules::should parse an at-rule::without a block#test_0003_with a prelude followed by a comment, when :preserve_comments == true = 0.00 s = . +Crass::Parser::#parse_rules::should parse an at-rule::without a block#test_0004_with a prelude containing a simple block = 0.00 s = . +Crass::Parser::#parse_rules::should parse an at-rule::without a block#test_0001_without a prelude = 0.00 s = . +Crass::Parser::#parse_rules::should parse an at-rule::without a block#test_0002_with a prelude followed by a comment = 0.00 s = . +Serialization#test_0005_should parse and serialize /build/reproducible-path/ruby-crass-1.0.2/test/support/serialization/misc.css = 0.00 s = . +Serialization#test_0008_should reflect modifications made to the block of an `:at_rule` = 0.00 s = . +Serialization#test_0001_should parse and serialize /build/reproducible-path/ruby-crass-1.0.2/test/support/serialization/animate.css = CSS Parsing Tests::component_value_list#test_0012_should parse: p[example="\\nfoo(int x) {\\n this.x = x;\\n}\\n"] = 0.00 s = . +Serialization#test_0002_should parse and serialize /build/reproducible-path/ruby-crass-1.0.2/test/support/serialization/bootstrap-theme.css = CSS Parsing Tests::component_value_list#test_0033_should parse: 12e2% +34e+1% -45E-0% .68e+3% +.79e-1% -.01E2% 2.3E+1% +45.0e6% -0.67e0% = 0.15 s = . +Serialization#test_0004_should parse and serialize /build/reproducible-path/ruby-crass-1.0.2/test/support/serialization/html5-boilerplate.css = 0.00 s = . +Serialization#test_0003_should parse and serialize /build/reproducible-path/ruby-crass-1.0.2/test/support/serialization/bootstrap.css = CSS Parsing Tests::component_value_list#test_0017_should parse: url( = 0.00 s = . Serialization#test_0007_should not omit a trailing semicolon when serializing a `@charset` rule = 0.00 s = . -Serialization#test_0008_should reflect modifications made to the block of an `:at_rule` = CSS Parsing Tests::one_component_value#test_0006_should parse: a = 0.00 s = . -Serialization#test_0001_should parse and serialize /build/reproducible-path/ruby-crass-1.0.2/test/support/serialization/animate.css = 0.00 s = . -Serialization#test_0002_should parse and serialize /build/reproducible-path/ruby-crass-1.0.2/test/support/serialization/bootstrap-theme.css = CSS Parsing Tests::stylesheet#test_0016_should parse: {}@a = 0.00 s = . -Serialization#test_0003_should parse and serialize /build/reproducible-path/ruby-crass-1.0.2/test/support/serialization/bootstrap.css = CSS Parsing Tests::rule_list#test_0015_should parse: {}@a = 0.00 s = . -Serialization#test_0004_should parse and serialize /build/reproducible-path/ruby-crass-1.0.2/test/support/serialization/html5-boilerplate.css = Crass::Parser::#parse_stylesheet::should parse a style rule#test_0001_with preceding comment, selector, block, comment = 0.00 s = . -Serialization#test_0009_should serialize a @page rule = CSS Parsing Tests::one_component_value#test_0008_should parse: rgba(100%, 0%, 50%, .5) = 0.10 s = . -Serialization#test_0006_should parse and serialize /build/reproducible-path/ruby-crass-1.0.2/test/support/serialization/pure.css = 0.21 s = . -Crass::Parser::#parse_rules::should parse a style rule#test_0001_with preceding comment, selector, block, comment = 0.00 s = . -Crass::Parser::#parse_rules::should parse a style rule#test_0002_with preceding comment, selector, block, comment, when :preserve_comments == true = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0017_should parse: foo: 9000 ! /**/ IMPORTant /**/ = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0019_should parse: foo: 9000 !important! = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0020_should parse: foo: 9000 important = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0001_should parse: = 0.00 s = . +Serialization#test_0006_should parse and serialize /build/reproducible-path/ruby-crass-1.0.2/test/support/serialization/pure.css = CSS Parsing Tests::component_value_list#test_0027_should parse: 12 +34 -45 .67 +.89 -.01 2.3 +45.0 -0.67 = CSS Parsing Tests::component_value_list#test_0018_should parse: url( = 0.00 s = . Crass::Parser::#parse_rules#test_0001_should parse an empty stylesheet = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0022_should parse: foo: 9000 @bar{ !important = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0018_should parse: foo: 9000 /* Dotted capital I */!İmportant = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0021_should parse: foo:important = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0010_should parse: foo: = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0016_should parse: foo: 9000 !Important = CSS Parsing Tests::stylesheet#test_0010_should parse: /**/ { color: #aaa = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0006_should parse: #foo: = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0012_should parse: \n/**/ foo: = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0013_should parse: foo:; = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0014_should parse: /**/ foo /**/ : = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0002_should parse: /**/\n = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0008_should parse: foo*: = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0015_should parse: foo:;bar:; = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0003_should parse: ; = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0007_should parse: .foo: = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0004_should parse: foo = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0011_should parse: foo : = 0.00 s = . -CSS Parsing Tests::one_declaration#test_0005_should parse: @foo: = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0030_should parse: 3\65-2 /* Scientific notation E can not be escaped */ = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0046_should parse: ù+12 Ü+12 u +12 U+ 12 U+12 - 20 U+1?2 U+1?-50 = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0013_should parse: '' 'Lorem "îpsum"' 'a\\nb' 'a\nb 'eof = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0018_should parse: url( = 0.00 s = . -0.00 s = . -CSS Parsing Tests::component_value_list#test_0032_should parse: 12% +34% -45% .67% +.89% -.01% 2.3% +45.0% -0.67% = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0016_should parse: url( '') url('Lorem "îpsum"'\n) url('a\\nb' ) url('a\nb) url('eof = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0039_should parse: u+? u+1? U+10? U+100? U+1000? U+10000? U+100000? = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0033_should parse: 12e2% +34e+1% -45E-0% .68e+3% +.79e-1% -.01E2% 2.3E+1% +45.0e6% -0.67e0% = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0036_should parse: 12e2px +34e+1px -45E-0px .68e+3px +.79e-1px -.01E2px 2.3E+1px +45.0e6px -0.67e0px = 0.00 s = . -0.00 s = . -CSS Parsing Tests::component_value_list#test_0045_should parse: u+1-2 U+100000-2 U+1000000-2 U+10-200000 = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0005_should parse: red/* CDC */--> = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0002_should parse: /*/*///** /* **/*//* = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0012_should parse: p[example="\\nfoo(int x) {\\n this.x = x;\\n}\\n"] = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0014_should parse: "" "Lorem 'îpsum'" "a\\nb" "a\nb "eof = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0017_should parse: url( = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0008_should parse: \30red \00030 red \30 \nred \0000000red \1100000red \red \r ed \.red \ red \\nred \376\37 6\000376\0000376\ = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0035_should parse: 12px +34px -45px .67px +.89px -.01px 2.3px +45.0px -0.67px = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0041_should parse: u+??? U+1??? U+10??? U+100??? U+1000??? = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0011_should parse: #red0 #-Red #--red #-\-red #0red #-0red #_Red #.red #rêd #êrd #\.red\ = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0001_should parse: = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0006_should parse: red-->/* Not CDC */ = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0026_should parse: url() url() url() url() url() url() url() url() url( ) url() url() url() url() url() url() url() url() url() url() url() url() url() url() url() url() url() url() url() = 0.11 s = . -CSS Parsing Tests::component_value_list#test_0028_should parse: 12e2 +34e+1 -45E-0 .68e+3 +.79e-1 -.01E2 2.3E+1 +45.0e6 -0.67e0 = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0021_should parse: URL(foo) Url(foo) ûrl(foo) url (foo) url\ (foo) url( 'foo' = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0004_should parse: \n\nRed = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0040_should parse: u+?? U+1?? U+10?? U+100?? U+1000?? U+10000?? = CSS Parsing Tests::component_value_list#test_0009_should parse: rgba0() -rgba() --rgba() -\-rgba() 0rgba() -0rgba() _rgba() .rgba() rgbâ() \30rgba() rgba () @rgba() #rgba() = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0022_should parse: url('a' b) url('c' d) = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0034_should parse: 12\% /* Percent sign can not be escaped */ = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0044_should parse: u+?????? U+1?????? = CSS Parsing Tests::one_declaration#test_0009_should parse: foo.. 9000 = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0027_should parse: 12 +34 -45 .67 +.89 -.01 2.3 +45.0 -0.67 = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0031_should parse: 3e-2.1 /* Integer exponents only */ = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0010_should parse: @media0 @-Media @--media @-\-media @0media @-0media @_media @.media @medİa @\30 media\ = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0042_should parse: u+???? U+1???? U+10???? U+100???? = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0043_should parse: u+????? U+1????? U+10????? = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0019_should parse: url("") url("Lorem 'îpsum'"\n) url("a\\nb" ) url("a\nb) url("eof = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0038_should parse: u+1 U+10 U+100 U+1000 U+10000 U+100000 U+1000000 = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0047_should parse: ~=|=^=$=*=|| |/**/| ~/**/= = Serialization#test_0005_should parse and serialize /build/reproducible-path/ruby-crass-1.0.2/test/support/serialization/misc.css = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0049_should parse: @media print { (foo]{bar) }baz = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0007_should parse: \- red0 -red --red -\-red\ blue 0red -0red red _Red .red rêd r\êd € = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0015_should parse: "Lo\rem \130 ps\u m" '\376\37 6\000376\0000376\ = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0020_should parse: url("Lo\rem \130 ps\u m") url('\376\37 6\000376\0000376\ = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0029_should parse: 3. /* Decimal point must have following digits */ = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0048_should parse: a:not([href^=http\:], [href ^= 'https\:'\n]) { color: rgba(0%, 100%, 50%); } = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0037_should parse: 12red0 12.0-red 12--red 12-\-red 120red 12-0red 12red 12_Red 12.red 12rêd = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0023_should parse: url('a\nb) url('c\n = 0.00 s = . -CSS Parsing Tests::component_value_list#test_0003_should parse: red = 0.00 s = . -0.00 s = . -CSS Parsing Tests::component_value_list#test_0025_should parse: url(!#$%&*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[]^_`abcdefghijklmnopqrstuvwxyz{|}~€žŸ ¡¢ = 0.00 s = . -CSS Parsing Tests::one_rule#test_0009_should parse: /**/ div > p { color: #aaa; } /**/ = 0.00 s = . +Crass::Parser::#parse_rules#test_0003_should parse property values containing nested functions = 0.00 s = . +Crass::Parser::#parse_rules#test_0002_should parse property values containing functions = 0.00 s = . CSS Parsing Tests::one_rule#test_0007_should parse: @foo { bar = 0.00 s = . -CSS Parsing Tests::one_rule#test_0010_should parse: /**/ { color: #aaa = 0.00 s = . -CSS Parsing Tests::one_rule#test_0014_should parse: {}a = 0.00 s = . +CSS Parsing Tests::one_rule#test_0012_should parse: div { color: #aaa; } p{} = 0.00 s = . CSS Parsing Tests::one_rule#test_0008_should parse: @foo [ bar = 0.00 s = . CSS Parsing Tests::one_rule#test_0013_should parse: div {} --> = 0.00 s = . -CSS Parsing Tests::one_rule#test_0002_should parse: foo = 0.00 s = . -CSS Parsing Tests::one_rule#test_0005_should parse: @foo bar; /* comment */ = 0.00 s = . -CSS Parsing Tests::one_rule#test_0011_should parse: /* CDO/CDC are not special */ { = 0.02 s = . -CSS Parsing Tests::one_rule#test_0012_should parse: div { color: #aaa; } p{} = 0.00 s = . -CSS Parsing Tests::one_rule#test_0004_should parse: @foo = 0.00 s = . -0.51 s = . -CSS Parsing Tests::one_rule#test_0006_should parse: /**/ @foo bar{[(4 = 0.00 s = . -Crass::Parser::#parse_rules::should parse an at-rule::without a block#test_0001_without a prelude = 0.00 s = . -Crass::Parser::#parse_rules::should parse an at-rule::without a block#test_0002_with a prelude followed by a comment = 0.00 s = . -Crass::Parser::#parse_rules::should parse an at-rule::without a block#test_0003_with a prelude followed by a comment, when :preserve_comments == true = 0.00 s = . -Crass::Parser::#parse_rules::should parse an at-rule::without a block#test_0004_with a prelude containing a simple block = 0.00 s = . -0.00 s = . -0.00 s = . -0.05 s = . -0.00 s = . -0.00 s = . -0.00 s = . -CSS Parsing Tests::component_value_list#test_0024_should parse: url() url( ) url(\n Foô\030\n!\n) url(\na\nb\n) url(a\ b) url(a(b) url(a\(b) url(a'b) url(a\'b) url(a"b) url(a\"b) url(a\nb) url(a\\nb) url(a\a b) url(a\ = 0.00 s = . +CSS Parsing Tests::one_rule#test_0014_should parse: {}a = 0.00 s = . CSS Parsing Tests::one_rule#test_0001_should parse: = 0.00 s = . +CSS Parsing Tests::one_rule#test_0004_should parse: @foo = 0.00 s = . CSS Parsing Tests::one_rule#test_0003_should parse: foo 4 = 0.00 s = . +CSS Parsing Tests::one_rule#test_0010_should parse: /**/ { color: #aaa = 0.00 s = . +CSS Parsing Tests::one_rule#test_0009_should parse: /**/ div > p { color: #aaa; } /**/ = 0.00 s = . +CSS Parsing Tests::one_rule#test_0002_should parse: foo = 0.00 s = . +CSS Parsing Tests::one_rule#test_0006_should parse: /**/ @foo bar{[(4 = 0.00 s = . +CSS Parsing Tests::one_rule#test_0005_should parse: @foo bar; /* comment */ = 0.00 s = . +CSS Parsing Tests::one_rule#test_0011_should parse: /* CDO/CDC are not special */ { = 0.00 s = . +Crass::Parser::#parse_stylesheet::should parse an at-rule::without a block#test_0002_with a prelude followed by a comment = 0.00 s = . +Crass::Parser::#parse_stylesheet::should parse an at-rule::without a block#test_0003_with a prelude followed by a comment, when :preserve_comments == true = 0.00 s = . +Crass::Parser::#parse_stylesheet::should parse an at-rule::without a block#test_0001_without a prelude = 0.00 s = . +Crass::Parser::#parse_stylesheet::should parse an at-rule::without a block#test_0004_with a prelude containing a simple block = 0.00 s = . +Serialization#test_0009_should serialize a @page rule = 0.00 s = . 0.00 s = . 0.00 s = . +CSS Parsing Tests::component_value_list#test_0040_should parse: u+?? U+1?? U+10?? U+100?? U+1000?? U+10000?? = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0003_should parse: red = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0037_should parse: 12red0 12.0-red 12--red 12-\-red 120red 12-0red 12red 12_Red 12.red 12rêd = 0.00 s = . +CSS Parsing Tests::component_value_list#test_0019_should parse: url("") url("Lorem 'îpsum'"\n) url("a\\nb" ) url("a\nb) url("eof = 0.00 s = . +0.35 s = . +0.14 s = . +0.30 s = . +0.45 s = . -Finished in 0.902064s, 198.4338 runs/s, 205.0852 assertions/s. +Finished in 0.683988s, 261.7004 runs/s, 270.4725 assertions/s. 179 runs, 185 assertions, 0 failures, 0 errors, 0 skips @@ -1067,12 +1103,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/2491798/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/2491798/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/563982 and its subdirectories -I: Current time: Fri May 17 00:24:04 -12 2024 -I: pbuilder-time-stamp: 1715948644 +I: removing directory /srv/workspace/pbuilder/2491798 and its subdirectories +I: Current time: Fri Jun 20 08:47:50 +14 2025 +I: pbuilder-time-stamp: 1750358870