Input buildinfo: https://buildinfos.debian.net/buildinfo-pool/n/node-d3-scale/node-d3-scale_2.2.2-3_all.buildinfo Use metasnap for getting required timestamps New buildinfo file: /tmp/node-d3-scale-2.2.2-3cce3atkm/node-d3-scale_2.2.2-3_all.buildinfo Get source package info: node-d3-scale=2.2.2-3 Source URL: http://snapshot.notset.fr/mr/package/node-d3-scale/2.2.2-3/srcfiles?fileinfo=1 env -i PATH=/usr/sbin:/usr/bin:/sbin:/bin TMPDIR=/tmp mmdebstrap --arch=amd64 --include=autoconf=2.69-12 automake=1:1.16.3-1 autopoint=0.19.8.1-10 autotools-dev=20180224.1 base-files=11 base-passwd=3.5.48 bash=5.1-1 binutils=2.35.1-4 binutils-common=2.35.1-4 binutils-x86-64-linux-gnu=2.35.1-4 bsdextrautils=2.36.1-2 bsdutils=1:2.36.1-2 build-essential=12.8 bzip2=1.0.8-4 ca-certificates=20200601 coreutils=8.32-4+b1 cpp=4:10.2.0-1 cpp-10=10.2.1-1 dash=0.5.11+git20200708+dd9ef66-5 debconf=1.5.74 debhelper=13.3 debianutils=4.11.2 dh-autoreconf=19 dh-strip-nondeterminism=1.9.0-1 diffutils=1:3.7-3 dpkg=1.20.5 dpkg-dev=1.20.5 dwz=0.13+20201015-2 file=1:5.39-3 findutils=4.7.0+git20201010-2 g++=4:10.2.0-1 g++-10=10.2.1-1 gcc=4:10.2.0-1 gcc-10=10.2.1-1 gcc-10-base=10.2.1-1 gettext=0.19.8.1-10 gettext-base=0.19.8.1-10 grep=3.6-1 groff-base=1.22.4-5 gzip=1.10-2 hostname=3.23 init-system-helpers=1.59 intltool-debian=0.35.0+20060710.5 libacl1=2.2.53-8 libarchive-zip-perl=1.68-1 libarray-unique-perl=0.08-2 libasan6=10.2.1-1 libatomic1=10.2.1-1 libattr1=1:2.4.48-5 libaudit-common=1:2.8.5-3.1 libaudit1=1:2.8.5-3.1+b1 libbinutils=2.35.1-4 libblkid1=2.36.1-2 libbrotli1=1.0.9-2+b2 libbz2-1.0=1.0.8-4 libc-ares2=1.17.1-1 libc-bin=2.31-5 libc-dev-bin=2.31-5 libc6=2.31-5 libc6-dev=2.31-5 libcap-ng0=0.7.9-2.2+b1 libcc1-0=10.2.1-1 libclass-accessor-perl=0.51-1 libcom-err2=1.45.6-1 libcroco3=0.6.13-1 libcrypt-dev=1:4.4.17-1 libcrypt1=1:4.4.17-1 libctf-nobfd0=2.35.1-4 libctf0=2.35.1-4 libdb5.3=5.3.28+dfsg1-0.6 libdebconfclient0=0.255 libdebhelper-perl=13.3 libdebian-copyright-perl=0.2-4 libdpkg-perl=1.20.5 libelf1=0.182-1 libencode-locale-perl=1.05-1 liberror-perl=0.17029-1 libexporter-lite-perl=0.08-1 libffi7=3.3-5 libfile-listing-perl=6.14-1 libfile-stripnondeterminism-perl=1.9.0-1 libgcc-10-dev=10.2.1-1 libgcc-s1=10.2.1-1 libgcrypt20=1.8.7-2 libgdbm-compat4=1.18.1-5.1 libgdbm6=1.18.1-5.1 libglib2.0-0=2.66.3-2 libgmp10=2:6.2.1+dfsg-1 libgomp1=10.2.1-1 libgpg-error0=1.38-2 libgssapi-krb5-2=1.18.3-4 libhtml-parser-perl=3.75-1+b1 libhtml-tagset-perl=3.20-4 libhtml-tree-perl=5.07-2 libhttp-cookies-perl=6.09-1 libhttp-date-perl=6.05-1 libhttp-message-perl=6.26-1 libhttp-negotiate-perl=6.01-1 libicu67=67.1-5 libio-html-perl=1.001-1 libio-pty-perl=1:1.15-2 libio-socket-ssl-perl=2.068-1 libio-stringy-perl=2.111-3 libipc-run-perl=20200505.0-1 libisl23=0.23-1 libitm1=10.2.1-1 libjs-d3-format=1:1.4.1-3 libjs-inherits=2.0.4-1 libjs-regenerate=1.4.2-2 libjs-source-map=0.7.0++dfsg2+really.0.6.1-4 libjs-terser=4.1.2-7 libjs-util=0.10.3-3 libjson-perl=4.02000-2 libk5crypto3=1.18.3-4 libkeyutils1=1.6.1-2 libkrb5-3=1.18.3-4 libkrb5support0=1.18.3-4 liblsan0=10.2.1-1 liblwp-mediatypes-perl=6.04-1 liblwp-protocol-https-perl=6.09-1 liblz4-1=1.9.2-2 liblzma5=5.2.4-1+b1 libmagic-mgc=1:5.39-3 libmagic1=1:5.39-3 libmount1=2.36.1-2 libmpc3=1.2.0-1 libmpfr6=4.1.0-3 libnet-http-perl=6.19-1 libnet-ssleay-perl=1.88-3+b1 libnghttp2-14=1.42.0-1 libnode72=12.19.0~dfsg-1 libnsl-dev=1.3.0-2 libnsl2=1.3.0-2 libpam-modules=1.3.1-5 libpam-modules-bin=1.3.1-5 libpam-runtime=1.3.1-5 libpam0g=1.3.1-5 libparse-debcontrol-perl=2.005-4 libpcre2-8-0=10.36-2 libpcre3=2:8.39-13 libperl5.32=5.32.0-5 libpipeline1=1.5.3-1 libquadmath0=10.2.1-1 libseccomp2=2.5.0-3+b1 libselinux1=3.1-2+b2 libsigsegv2=2.12-2 libsmartcols1=2.36.1-2 libssl1.1=1.1.1i-1 libstdc++-10-dev=10.2.1-1 libstdc++6=10.2.1-1 libsub-name-perl=0.26-1+b1 libsub-override-perl=0.09-2 libsystemd0=247.1-4 libtie-ixhash-perl=1.23-2 libtimedate-perl=2.3300-1 libtinfo6=6.2+20201114-1 libtirpc-common=1.2.6-3 libtirpc-dev=1.2.6-3 libtirpc3=1.2.6-3 libtool=2.4.6-14 libtry-tiny-perl=0.30-1 libtsan0=10.2.1-1 libubsan1=10.2.1-1 libuchardet0=0.0.7-1 libudev1=247.1-4 libunistring2=0.9.10-4 liburi-perl=5.05-1 libuuid1=2.36.1-2 libwww-perl=6.49-1 libwww-robotrules-perl=6.02-1 libxml2=2.9.10+dfsg-6.3+b1 libzstd1=1.4.5+dfsg-4 linux-libc-dev=5.9.11-1 login=1:4.8.1-1 lsb-base=11.1.0 m4=1.4.18-4 make=4.3-4 man-db=2.9.3-2 mawk=1.3.4.20200120-2 ncurses-base=6.2+20201114-1 ncurses-bin=6.2+20201114-1 netbase=6.2 node-ansi-escapes=4.3.1-1 node-ansi-styles=4.2.1-1 node-anymatch=3.1.1+~2.2.2-1 node-array-union=2.1.0-1 node-array-uniq=2.1.0-1 node-arrify=2.0.1-1 node-assert=1.4.1-2 node-babel7=7.12.10+~cs150.141.83-1 node-balanced-match=1.0.0-1 node-brace-expansion=2.0.0-1 node-braces=3.0.2+~3.0.0-1 node-browserslist=4.16.0+~cs5.4.69-1 node-camelcase=5.3.1-1 node-caniuse-lite=1.0.30001166+dfsg-1 node-chalk=4.1.0-1 node-color-convert=1.9.3-1 node-color-name=1.1.4+~1.1.1-1 node-commander=4.1.1-3 node-commondir=1.0.1-2 node-convert-source-map=1.7.0+~1.5.1-1 node-core-js=3.8.1-1 node-d3-array=1.2.4-3 node-d3-collection=1.0.7-3 node-d3-color=1.2.8-2 node-d3-format=1:1.4.1-3 node-d3-interpolate=1.4.0-2 node-d3-time=1.0.11-3 node-d3-time-format=2.1.3-2 node-date-time=3.1.0-1 node-debbundle-acorn=8.0.4+ds+~cs19.19.27-1 node-debug=4.3.1+~cs4.1.5-1 node-decamelize=4.0.0-1 node-deep-equal=1.0.1-2 node-defined=1.0.0-2 node-del=5.1.0-2 node-electron-to-chromium=1.3.626-1 node-escape-string-regexp=4.0.0-1 node-estree-walker=2.0.1-1 node-esutils=2.0.3-1 node-fill-range=7.0.1-2 node-find-cache-dir=3.2.0-3 node-find-up=5.0.0-1 node-fs-readdir-recursive=1.1.0-1 node-fs.realpath=1.0.0-1 node-function-bind=1.1.1+repack-1 node-glob=7.1.6+~7.1.3-1 node-glob-parent=5.1.1+~5.1.0-1 node-globals=13.4.0-1 node-globby=11.0.1+~cs16.19.32-1 node-graceful-fs=4.2.4+repack-1 node-has-flag=4.0.0-1 node-hash.js=1.1.7-1 node-ignore=5.1.4-5 node-indent-string=4.0.0-1 node-inflight=1.0.6-1 node-inherits=2.0.4-1 node-is-buffer=2.0.5-1 node-is-extglob=2.1.1-1 node-is-glob=4.0.1-1 node-is-number=7.0.0-1 node-is-path-cwd=2.2.0-1 node-is-path-inside=3.0.2-1 node-is-plain-obj=3.0.0-1 node-is-reference=1.2.1-2 node-jest-worker=26.6.3+repack+~cs61.38.31-2 node-js-tokens=5.0.0-1 node-jsesc=3.0.2-1 node-json5=2.1.3-2 node-kind-of=6.0.3+dfsg-1 node-locate-character=2.0.5+repack-2 node-locate-path=6.0.0-1 node-lodash=4.17.20+dfsg+~cs8.31.170-1 node-lodash-packages=4.17.20+dfsg+~cs8.31.170-1 node-lru-cache=5.1.1-5 node-magic-string=0.25.7-3 node-make-dir=3.0.2-1 node-merge-stream=2.0.0+~1.1.2-1 node-micromatch=4.0.2+repack+~4.0.1-1 node-minimatch=3.0.4+~3.0.3-1 node-minimist=1.2.5+~cs5.3.1-2 node-ms=2.1.3+~cs0.7.31-1 node-normalize-path=3.0.0-2 node-object-inspect=1.9.0-1 node-once=1.4.0-3 node-p-limit=3.1.0+~cs2.3.0-1 node-p-locate=5.0.0-1 node-p-map=4.0.0-1 node-parse-ms=2.1.0-1 node-path-dirname=1.0.2-1 node-path-exists=4.0.0-2 node-path-is-absolute=2.0.0-1 node-path-is-inside=1.0.2-1 node-path-type=4.0.0-1 node-pify=5.0.0-1 node-pkg-dir=4.2.0-2 node-pretty-bytes=5.3.0-1 node-pretty-ms=7.0.1-1 node-quick-lru=1.1.0-2 node-randombytes=2.1.0-1 node-regenerate=1.4.2-2 node-regenerate-unicode-properties=8.2.0+ds-1 node-regenerator-runtime=0.13.7-1 node-regenerator-transform=0.14.5-1 node-regexpu-core=4.7.1-1 node-regjsgen=0.5.2+ds-1 node-regjsparser=0.6.4+ds-2 node-repeat-string=1.6.1-1 node-require-relative=0.8.7-3 node-resolve=1.19.0+~cs4.20.2-1 node-resumer=0.0.0-3 node-rimraf=3.0.2-1 node-rollup-plugin-terser=7.0.2-3 node-rollup-pluginutils=4.1.0+~2.8.2-1 node-safe-buffer=5.2.1+~cs2.1.2-1 node-semver=7.3.4-1 node-serialize-javascript=5.0.1-2 node-signal-exit=3.0.3-1 node-slash=3.0.0-1 node-source-map=0.7.0++dfsg2+really.0.6.1-4 node-source-map-support=0.5.19+ds+~0.5.3-1 node-sourcemap-codec=1.4.8-2 node-supports-color=8.0.0+~7.2.0-1 node-tape=4.9.1-1 node-terser=4.1.2-7 node-through=2.3.8-1 node-time-zone=1.0.0-2 node-to-fast-properties=3.0.1-1 node-to-regex-range=5.0.1-2 node-typescript-types=20201201-1 node-unicode-canonical-property-names-ecmascript=1.0.4-3 node-unicode-match-property-ecmascript=1.0.4-1 node-unicode-match-property-value-ecmascript=1.2.0+ds-1 node-unicode-property-aliases-ecmascript=1.1.0+ds-2 node-util=0.10.3-3 node-v8flags=3.1.2-3 node-vlq=1.0.1-3 node-wrappy=1.0.2-1 node-xtend=4.0.2-1 node-yallist=4.0.0-1 node-yargs-parser=18.1.3+~15.0.0-1 nodejs=12.19.0~dfsg-1 openssl=1.1.1i-1 patch=2.7.6-6 perl=5.32.0-5 perl-base=5.32.0-5 perl-modules-5.32=5.32.0-5 perl-openssl-defaults=5 pkg-js-tools=0.9.54 po-debconf=1.0.21 rollup=2.34.1-2 sed=4.7-1 sensible-utils=0.0.12+nmu1 sysvinit-utils=2.96-5 tar=1.32+dfsg-1 util-linux=2.36.1-2 xz-utils=5.2.4-1+b1 zlib1g=1:1.2.11.dfsg-2 --variant=apt --aptopt=Acquire::Check-Valid-Until "false" --aptopt=Acquire::http::Dl-Limit "1000"; --aptopt=Acquire::https::Dl-Limit "1000"; --aptopt=Acquire::Retries "5"; --aptopt=APT::Get::allow-downgrades "true"; --keyring=/usr/share/keyrings/ --essential-hook=chroot "$1" sh -c "apt-get --yes install fakeroot util-linux" --essential-hook=copy-in /usr/share/keyrings/debian-archive-bullseye-automatic.gpg /usr/share/keyrings/debian-archive-bullseye-security-automatic.gpg /usr/share/keyrings/debian-archive-bullseye-stable.gpg /usr/share/keyrings/debian-archive-buster-automatic.gpg /usr/share/keyrings/debian-archive-buster-security-automatic.gpg /usr/share/keyrings/debian-archive-buster-stable.gpg /usr/share/keyrings/debian-archive-keyring.gpg /usr/share/keyrings/debian-archive-removed-keys.gpg /usr/share/keyrings/debian-archive-stretch-automatic.gpg /usr/share/keyrings/debian-archive-stretch-security-automatic.gpg /usr/share/keyrings/debian-archive-stretch-stable.gpg /usr/share/keyrings/debian-ports-archive-keyring-removed.gpg /usr/share/keyrings/debian-ports-archive-keyring.gpg /usr/share/keyrings/debian-keyring.gpg /etc/apt/trusted.gpg.d/ --essential-hook=chroot "$1" sh -c "rm /etc/apt/sources.list && echo 'deb http://snapshot.notset.fr/archive/debian/20210814T212851Z/ bookworm main deb-src http://snapshot.notset.fr/archive/debian/20210814T212851Z/ bookworm main deb http://snapshot.notset.fr/archive/debian/20201221T023711Z/ unstable main deb http://snapshot.notset.fr/archive/debian/20201214T150912Z/ unstable main' >> /etc/apt/sources.list && apt-get update" --customize-hook=chroot "$1" useradd --no-create-home -d /nonexistent -p "" builduser -s /bin/bash --customize-hook=chroot "$1" env sh -c "apt-get source --only-source -d node-d3-scale=2.2.2-3 && mkdir -p /build/node-d3-scale-dVymtj && dpkg-source --no-check -x /*.dsc /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2 && chown -R builduser:builduser /build/node-d3-scale-dVymtj" --customize-hook=chroot "$1" env --unset=TMPDIR runuser builduser -c "cd /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2 && env DEB_BUILD_OPTIONS="parallel=4" LANG="C.UTF-8" LC_ALL="C.UTF-8" SOURCE_DATE_EPOCH="1608064335" dpkg-buildpackage -uc -a amd64 --build=all" --customize-hook=sync-out /build/node-d3-scale-dVymtj /tmp/node-d3-scale-2.2.2-3cce3atkm bullseye /dev/null deb http://snapshot.notset.fr/archive/debian/20201214T150912Z unstable main I: automatically chosen mode: root I: chroot architecture amd64 is equal to the host's architecture I: automatically chosen format: tar I: using /tmp/mmdebstrap.HQMgshUXuC as tempdir I: running apt-get update... I: downloading packages with apt... I: extracting archives... I: installing essential packages... I: running --essential-hook in shell: sh -c 'chroot "$1" sh -c "apt-get --yes install fakeroot util-linux"' exec /tmp/mmdebstrap.HQMgshUXuC Reading package lists... Building dependency tree... util-linux is already the newest version (2.36.1-2). The following NEW packages will be installed: fakeroot libfakeroot 0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded. Need to get 134 kB of archives. After this operation, 397 kB of additional disk space will be used. Get:1 http://snapshot.notset.fr/archive/debian/20201214T150912Z unstable/main amd64 libfakeroot amd64 1.25.3-1.1 [47.0 kB] Get:2 http://snapshot.notset.fr/archive/debian/20201214T150912Z unstable/main amd64 fakeroot amd64 1.25.3-1.1 [87.0 kB] debconf: delaying package configuration, since apt-utils is not installed Fetched 134 kB in 0s (1032 kB/s) Selecting previously unselected package libfakeroot: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 ... 4616 files and directories currently installed.) Preparing to unpack .../libfakeroot_1.25.3-1.1_amd64.deb ... Unpacking libfakeroot:amd64 (1.25.3-1.1) ... Selecting previously unselected package fakeroot. Preparing to unpack .../fakeroot_1.25.3-1.1_amd64.deb ... Unpacking fakeroot (1.25.3-1.1) ... Setting up libfakeroot:amd64 (1.25.3-1.1) ... Setting up fakeroot (1.25.3-1.1) ... update-alternatives: using /usr/bin/fakeroot-sysv to provide /usr/bin/fakeroot (fakeroot) in auto mode Processing triggers for libc-bin (2.31-5) ... I: running special hook: copy-in /usr/share/keyrings/debian-archive-bullseye-automatic.gpg /usr/share/keyrings/debian-archive-bullseye-security-automatic.gpg /usr/share/keyrings/debian-archive-bullseye-stable.gpg /usr/share/keyrings/debian-archive-buster-automatic.gpg /usr/share/keyrings/debian-archive-buster-security-automatic.gpg /usr/share/keyrings/debian-archive-buster-stable.gpg /usr/share/keyrings/debian-archive-keyring.gpg /usr/share/keyrings/debian-archive-removed-keys.gpg /usr/share/keyrings/debian-archive-stretch-automatic.gpg /usr/share/keyrings/debian-archive-stretch-security-automatic.gpg /usr/share/keyrings/debian-archive-stretch-stable.gpg /usr/share/keyrings/debian-ports-archive-keyring-removed.gpg /usr/share/keyrings/debian-ports-archive-keyring.gpg /usr/share/keyrings/debian-keyring.gpg /etc/apt/trusted.gpg.d/ I: running --essential-hook in shell: sh -c 'chroot "$1" sh -c "rm /etc/apt/sources.list && echo 'deb http://snapshot.notset.fr/archive/debian/20210814T212851Z/ bookworm main deb-src http://snapshot.notset.fr/archive/debian/20210814T212851Z/ bookworm main deb http://snapshot.notset.fr/archive/debian/20201221T023711Z/ unstable main deb http://snapshot.notset.fr/archive/debian/20201214T150912Z/ unstable main' >> /etc/apt/sources.list && apt-get update"' exec /tmp/mmdebstrap.HQMgshUXuC Get:1 http://snapshot.notset.fr/archive/debian/20210814T212851Z bookworm InRelease [81.6 kB] Get:2 http://snapshot.notset.fr/archive/debian/20201221T023711Z unstable InRelease [153 kB] Hit:3 http://snapshot.notset.fr/archive/debian/20201214T150912Z unstable InRelease Ign:4 http://snapshot.notset.fr/archive/debian/20210814T212851Z bookworm/main Sources Ign:5 http://snapshot.notset.fr/archive/debian/20210814T212851Z bookworm/main amd64 Packages Ign:4 http://snapshot.notset.fr/archive/debian/20210814T212851Z bookworm/main Sources Ign:5 http://snapshot.notset.fr/archive/debian/20210814T212851Z bookworm/main amd64 Packages Ign:4 http://snapshot.notset.fr/archive/debian/20210814T212851Z bookworm/main Sources Ign:5 http://snapshot.notset.fr/archive/debian/20210814T212851Z bookworm/main amd64 Packages Get:4 http://snapshot.notset.fr/archive/debian/20210814T212851Z bookworm/main Sources [11.4 MB] Get:5 http://snapshot.notset.fr/archive/debian/20210814T212851Z bookworm/main amd64 Packages [11.1 MB] Ign:6 http://snapshot.notset.fr/archive/debian/20201221T023711Z unstable/main amd64 Packages Ign:6 http://snapshot.notset.fr/archive/debian/20201221T023711Z unstable/main amd64 Packages Ign:6 http://snapshot.notset.fr/archive/debian/20201221T023711Z unstable/main amd64 Packages Get:6 http://snapshot.notset.fr/archive/debian/20201221T023711Z unstable/main amd64 Packages [11.6 MB] Fetched 34.3 MB in 28s (1222 kB/s) Reading package lists... I: installing remaining packages inside the chroot... I: running --customize-hook in shell: sh -c 'chroot "$1" useradd --no-create-home -d /nonexistent -p "" builduser -s /bin/bash' exec /tmp/mmdebstrap.HQMgshUXuC I: running --customize-hook in shell: sh -c 'chroot "$1" env sh -c "apt-get source --only-source -d node-d3-scale=2.2.2-3 && mkdir -p /build/node-d3-scale-dVymtj && dpkg-source --no-check -x /*.dsc /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2 && chown -R builduser:builduser /build/node-d3-scale-dVymtj"' exec /tmp/mmdebstrap.HQMgshUXuC Reading package lists... NOTICE: 'node-d3-scale' packaging is maintained in the 'Git' version control system at: https://salsa.debian.org/js-team/node-d3-scale.git Please use: git clone https://salsa.debian.org/js-team/node-d3-scale.git to retrieve the latest (possibly unreleased) updates to the package. Need to get 79.9 kB of source archives. Get:1 http://snapshot.notset.fr/archive/debian/20210814T212851Z bookworm/main node-d3-scale 2.2.2-3 (dsc) [2282 B] Get:2 http://snapshot.notset.fr/archive/debian/20210814T212851Z bookworm/main node-d3-scale 2.2.2-3 (tar) [74.2 kB] Get:3 http://snapshot.notset.fr/archive/debian/20210814T212851Z bookworm/main node-d3-scale 2.2.2-3 (diff) [3432 B] Fetched 79.9 kB in 0s (760 kB/s) Download complete and in download only mode W: Download is performed unsandboxed as root as file 'node-d3-scale_2.2.2-3.dsc' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied) dpkg-source: info: extracting node-d3-scale in /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2 dpkg-source: info: unpacking node-d3-scale_2.2.2.orig.tar.gz dpkg-source: info: unpacking node-d3-scale_2.2.2-3.debian.tar.xz dpkg-source: info: using patch list from debian/patches/series dpkg-source: info: applying reproducible_build.diff I: running --customize-hook in shell: sh -c 'chroot "$1" env --unset=TMPDIR runuser builduser -c "cd /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2 && env DEB_BUILD_OPTIONS="parallel=4" LANG="C.UTF-8" LC_ALL="C.UTF-8" SOURCE_DATE_EPOCH="1608064335" dpkg-buildpackage -uc -a amd64 --build=all"' exec /tmp/mmdebstrap.HQMgshUXuC dpkg-buildpackage: info: source package node-d3-scale dpkg-buildpackage: info: source version 2.2.2-3 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Pirate Praveen dpkg-source --before-build . fakeroot debian/rules clean dh clean --with nodejs dh_auto_clean --buildsystem=nodejs rm -rf ./node_modules/.cache dh_clean debian/rules build-indep dh build-indep --with nodejs dh_update_autotools_config -i dh_autoreconf -i dh_auto_configure --buildsystem=nodejs -i dh_auto_build --buildsystem=nodejs -i Found debian/nodejs/./build cd ./. && sh -ex debian/nodejs/./build + rollup -c src/index.js → dist/d3-scale.js... created dist/d3-scale.js in 717ms src/index.js → dist/d3-scale.min.js... created dist/d3-scale.min.js in 12.9s dh_auto_test --buildsystem=nodejs -i mkdir -p node_modules ln -s ../. node_modules/d3-scale /bin/sh -ex debian/tests/pkg-js/test + TZ=America/Los_Angeles tape test/**/*.js TAP version 13 # scaleBand() has the expected defaults ok 1 should be equivalent ok 2 should be equivalent ok 3 should be equal ok 4 should be equal ok 5 should be equal ok 6 should be equal ok 7 should be equal ok 8 should be equal # band(value) computes discrete bands in a continuous range ok 9 should be equal ok 10 should be equal ok 11 should be equal ok 12 should be equivalent ok 13 should be equal ok 14 should be equivalent ok 15 should be equal # band(value) returns undefined for values outside the domain ok 16 should be equal ok 17 should be equal ok 18 should be equal # band(value) does not implicitly add values to the domain ok 19 should be equivalent # band.step() returns the distance between the starts of adjacent bands ok 20 should be equal ok 21 should be equal ok 22 should be equal ok 23 should be equal ok 24 should be equal # band.bandwidth() returns the width of the band ok 25 should be equal ok 26 should be equal ok 27 should be equal ok 28 should be equal ok 29 should be equal ok 30 should be equal ok 31 should be equal # band.domain([]) computes reasonable band and step values ok 32 should be equal ok 33 should be equal ok 34 should be equal ok 35 should be equal ok 36 should be equal ok 37 should be equal # band.domain([value]) computes a reasonable singleton band, even with padding ok 38 should be equal ok 39 should be equal ok 40 should be equal ok 41 should be equal ok 42 should be equal ok 43 should be equal ok 44 should be equal ok 45 should be equal ok 46 should be equal # band.domain(values) recomputes the bands ok 47 should be equivalent ok 48 should be equal ok 49 should be equivalent ok 50 should be equal # band.domain(values) makes a copy of the specified domain values ok 51 should be equivalent # band.domain() returns a copy of the domain ok 52 should be equivalent ok 53 should be equivalent # band.range(values) can be descending ok 54 should be equivalent ok 55 should be equal ok 56 should be equivalent ok 57 should be equal # band.range(values) makes a copy of the specified range values ok 58 should be equivalent # band.range() returns a copy of the range ok 59 should be equivalent ok 60 should be equivalent # band.range(values) coerces values[0] and values[1] to numbers ok 61 should be equivalent # band.paddingInner(p) specifies the inner padding p ok 62 should be equivalent ok 63 should be equal ok 64 should be equivalent ok 65 should be equal # band.paddingInner(p) coerces p to a number <= 1 ok 66 should be equal ok 67 should be equal ok 68 should be equal ok 69 should be truthy # band.paddingOuter(p) specifies the outer padding p ok 70 should be equivalent ok 71 should be equal ok 72 should be equivalent ok 73 should be equal # band.paddingOuter(p) coerces p to a number ok 74 should be equal ok 75 should be equal ok 76 should be equal ok 77 should be truthy # band.rangeRound(values) is an alias for band.range(values).round(true) ok 78 should be equivalent ok 79 should be equal # band.round(true) computes discrete rounded bands in a continuous range ok 80 should be equivalent ok 81 should be equal ok 82 should be equivalent ok 83 should be equal # band.copy() copies all fields ok 84 should be equivalent ok 85 should be equivalent ok 86 should be equal ok 87 should be equal ok 88 should be equal # band.copy() isolates changes to the domain ok 89 should be equivalent ok 90 should be equivalent ok 91 should be equivalent ok 92 should be equivalent ok 93 should be equivalent ok 94 should be equivalent # band.copy() isolates changes to the range ok 95 should be equivalent ok 96 should be equivalent ok 97 should be equivalent ok 98 should be equivalent ok 99 should be equivalent ok 100 should be equivalent # scaleDiverging() has the expected defaults ok 101 should be equivalent ok 102 should be equal ok 103 should be equal ok 104 should be equal ok 105 should be equal ok 106 should be equal ok 107 should be equal ok 108 should be equal # diverging.clamp(true) enables clamping ok 109 should be equal ok 110 should be equal ok 111 should be equal ok 112 should be equal ok 113 should be equal ok 114 should be equal # diverging.domain() coerces domain values to numbers ok 115 should be equivalent ok 116 should be equal ok 117 should be equal ok 118 should be equal # diverging.domain() handles a degenerate domain ok 119 should be equivalent ok 120 should be equal ok 121 should be equal ok 122 should be equal ok 123 should be equivalent ok 124 should be equal ok 125 should be equal ok 126 should be equal ok 127 should be equivalent ok 128 should be equal ok 129 should be equal ok 130 should be equal # diverging.domain() handles a non-numeric domain ok 131 should be equal ok 132 should be equal ok 133 should be equal ok 134 should be equal ok 135 should be equal ok 136 should be equal ok 137 should be equal ok 138 should be equal ok 139 should be equal ok 140 should be equal ok 141 should be equal ok 142 should be equal # diverging.domain() only considers the first three elements of the domain ok 143 should be equivalent # diverging.copy() returns an isolated copy of the scale ok 144 should be equivalent ok 145 should be equal ok 146 should be equivalent ok 147 should be equal ok 148 should be equivalent ok 149 should be equivalent # scaleDiverging.interpolator(interpolator) sets the interpolator ok 150 should be equal ok 151 should be equal ok 152 should be equal ok 153 should be equal ok 154 should be equal ok 155 should be equal # scaleIdentity() has the expected defaults ok 156 should be equivalent ok 157 should be equivalent # scaleIdentity(range) sets the domain and range ok 158 should be equivalent ok 159 should be equivalent # identity(x) is the identity function ok 160 should be equal ok 161 should be equal ok 162 should be equal ok 163 should be equal ok 164 should be equal # identity(x) coerces input to a number ok 165 should be equal # identity.invert(y) is the identity function ok 166 should be equal ok 167 should be equal ok 168 should be equal ok 169 should be equal ok 170 should be equal # identity.invert(y) coerces range value to numbers ok 171 should be equal ok 172 should be equal ok 173 should be truthy # identity.invert(y) coerces input to a number ok 174 should be equal # identity.domain() is an alias for scale.range() ok 175 should be equal ok 176 should be equivalent ok 177 should be equivalent ok 178 should be equivalent # identity.domain() defaults to [0, 1] ok 179 should be equivalent ok 180 should be equivalent ok 181 should be equal # identity.domain() coerces values to numbers ok 182 should be equal ok 183 should be equal ok 184 should be equal ok 185 should be equal ok 186 should be equal ok 187 should be equal ok 188 should be equal ok 189 should be equal ok 190 should be equal ok 191 should be equal ok 192 should be equal ok 193 should be equal ok 194 should be equal ok 195 should be equal ok 196 should be equal ok 197 should be equal ok 198 should be equal ok 199 should be equal ok 200 should be equal ok 201 should be equal ok 202 should be equal ok 203 should be equal ok 204 should be equal ok 205 should be equal # identity.domain() can specify a polyidentity domain and range ok 206 should be equivalent ok 207 should be equal ok 208 should be equal ok 209 should be equal ok 210 should be equivalent ok 211 should be equal ok 212 should be equal ok 213 should be equal # identity.domain() does not affect the identity function ok 214 should be equal ok 215 should be equal # identity.ticks(count) generates ticks of varying degree ok 216 should be equivalent ok 217 should be equivalent ok 218 should be equivalent ok 219 should be equivalent ok 220 should be equivalent ok 221 should be equivalent ok 222 should be equivalent ok 223 should be equivalent # identity.tickFormat(count) formats ticks with the appropriate precision ok 224 should be equal ok 225 should be equal ok 226 should be equal ok 227 should be equal ok 228 should be equal ok 229 should be equal ok 230 should be equal ok 231 should be equal ok 232 should be equal # identity.copy() isolates changes to the domain or range ok 233 should be equivalent ok 234 should be equivalent ok 235 should be equivalent ok 236 should be equivalent ok 237 should be equivalent ok 238 should be equivalent # scaleLinear() has the expected defaults ok 239 should be equivalent ok 240 should be equivalent ok 241 should be equal ok 242 should be equal ok 243 should be equivalent # scaleLinear(range) sets the range ok 244 should be equivalent ok 245 should be equivalent ok 246 should be equal # scaleLinear(domain, range) sets the domain and range ok 247 should be equivalent ok 248 should be equivalent ok 249 should be equal # linear(x) maps a domain value x to a range value y ok 250 should be equal # linear(x) ignores extra range values if the domain is smaller than the range ok 251 should be equal ok 252 should be equal # linear(x) ignores extra domain values if the range is smaller than the domain ok 253 should be equal ok 254 should be equal # linear(x) maps an empty domain to the middle of the range ok 255 should be equal ok 256 should be equal # linear(x) can map a bilinear domain with two values to the corresponding range ok 257 should be equivalent ok 258 should be equal ok 259 should be equal ok 260 should be equal ok 261 should be equal ok 262 should be equal ok 263 should be equal ok 264 should be equal ok 265 should be equal ok 266 should be equal ok 267 should be equal # linear(x) can map a polylinear domain with more than two values to the corresponding range ok 268 should be equivalent ok 269 should be equal ok 270 should be equal ok 271 should be equal ok 272 should be equal ok 273 should be equal ok 274 should be equal ok 275 should be equal ok 276 should be equal ok 277 should be equal ok 278 should be equal ok 279 should be equal # linear.invert(y) maps a range value y to a domain value x ok 280 should be equal # linear.invert(y) maps an empty range to the middle of the domain ok 281 should be equal ok 282 should be equal # linear.invert(y) coerces range values to numbers ok 283 should be equal ok 284 should be equal # linear.invert(y) returns NaN if the range is not coercible to number ok 285 should be truthy ok 286 should be truthy # linear.domain(domain) accepts an array of numbers ok 287 should be equivalent ok 288 should be equivalent ok 289 should be equivalent # linear.domain(domain) coerces domain values to numbers ok 290 should be equivalent ok 291 should be equivalent ok 292 should be equivalent # linear.domain(domain) makes a copy of domain values ok 293 should be equivalent ok 294 should be equivalent ok 295 should be equivalent # linear.domain() returns a copy of domain values ok 296 should be equivalent ok 297 should be equivalent # linear.range(range) does not coerce range to numbers ok 298 should be equivalent ok 299 should be equal # linear.range(range) can accept range values as colors ok 300 should be equal ok 301 should be equal ok 302 should be equal ok 303 should be equal ok 304 should be equal ok 305 should be equal # linear.range(range) can accept range values as arrays or objects ok 306 should be equivalent ok 307 should be equivalent # linear.range(range) makes a copy of range values ok 308 should be equivalent ok 309 should be equivalent ok 310 should be equivalent # linear.range() returns a copy of range values ok 311 should be equivalent ok 312 should be equivalent # linear.rangeRound(range) is an alias for linear.range(range).interpolate(interpolateRound) ok 313 should be equal # linear.unknown(value) sets the return value for undefined and NaN input ok 314 should be equal ok 315 should be equal ok 316 should be equal ok 317 should be equal # linear.clamp() is false by default ok 318 should be equal ok 319 should be equal ok 320 should be equal ok 321 should be equal ok 322 should be equal # linear.clamp(true) restricts output values to the range ok 323 should be equal ok 324 should be equal # linear.clamp(true) restricts input values to the domain ok 325 should be equal ok 326 should be equal # linear.clamp(clamp) coerces the specified clamp value to a boolean ok 327 should be equal ok 328 should be equal ok 329 should be equal ok 330 should be equal # linear.interpolate(interpolate) takes a custom interpolator factory ok 331 should be equal ok 332 should be equivalent # linear.nice() is an alias for linear.nice(10) ok 333 should be equivalent ok 334 should be equivalent # linear.nice(count) extends the domain to match the desired ticks ok 335 should be equivalent ok 336 should be equivalent ok 337 should be equivalent ok 338 should be equivalent ok 339 should be equivalent ok 340 should be equivalent ok 341 should be equivalent ok 342 should be equivalent ok 343 should be equivalent # linear.nice(count) nices the domain, extending it to round numbers ok 344 should be equivalent ok 345 should be equivalent ok 346 should be equivalent ok 347 should be equivalent ok 348 should be equivalent ok 349 should be equivalent ok 350 should be equivalent # linear.nice(count) has no effect on degenerate domains ok 351 should be equivalent ok 352 should be equivalent # linear.nice(count) nicing a polylinear domain only affects the extent ok 353 should be equivalent ok 354 should be equivalent # linear.nice(count) accepts a tick count to control nicing step ok 355 should be equivalent ok 356 should be equivalent ok 357 should be equivalent # linear.ticks(count) returns the expected ticks for an ascending domain ok 358 should be equivalent ok 359 should be equivalent ok 360 should be equivalent ok 361 should be equivalent ok 362 should be equivalent ok 363 should be equivalent ok 364 should be equivalent ok 365 should be equivalent ok 366 should be equivalent ok 367 should be equivalent ok 368 should be equivalent ok 369 should be equivalent ok 370 should be equivalent ok 371 should be equivalent ok 372 should be equivalent ok 373 should be equivalent ok 374 should be equivalent ok 375 should be equivalent ok 376 should be equivalent ok 377 should be equivalent # linear.ticks(count) returns the expected ticks for a descending domain ok 378 should be equivalent ok 379 should be equivalent ok 380 should be equivalent ok 381 should be equivalent ok 382 should be equivalent ok 383 should be equivalent ok 384 should be equivalent ok 385 should be equivalent ok 386 should be equivalent ok 387 should be equivalent ok 388 should be equivalent ok 389 should be equivalent ok 390 should be equivalent ok 391 should be equivalent ok 392 should be equivalent ok 393 should be equivalent ok 394 should be equivalent ok 395 should be equivalent ok 396 should be equivalent ok 397 should be equivalent # linear.ticks(count) returns the expected ticks for a polylinear domain ok 398 should be equivalent ok 399 should be equivalent ok 400 should be equivalent ok 401 should be equivalent ok 402 should be equivalent ok 403 should be equivalent ok 404 should be equivalent ok 405 should be equivalent ok 406 should be equivalent ok 407 should be equivalent ok 408 should be equivalent ok 409 should be equivalent ok 410 should be equivalent ok 411 should be equivalent ok 412 should be equivalent ok 413 should be equivalent ok 414 should be equivalent ok 415 should be equivalent ok 416 should be equivalent ok 417 should be equivalent # linear.ticks(count) returns the empty array if count is not a positive integer ok 418 should be equivalent ok 419 should be equivalent ok 420 should be equivalent ok 421 should be equivalent # linear.ticks() is an alias for linear.ticks(10) ok 422 should be equivalent # linear.tickFormat() is an alias for linear.tickFormat(10) ok 423 should be equal ok 424 should be equal # linear.tickFormat(count) returns a format suitable for the ticks ok 425 should be equal ok 426 should be equal ok 427 should be equal # linear.tickFormat(count, specifier) sets the appropriate fixed precision if not specified ok 428 should be equal ok 429 should be equal ok 430 should be equal ok 431 should be equal # linear.tickFormat(count, specifier) sets the appropriate round precision if not specified ok 432 should be equal ok 433 should be equal ok 434 should be equal ok 435 should be equal ok 436 should be equal ok 437 should be equal ok 438 should be equal ok 439 should be equal ok 440 should be equal ok 441 should be equal ok 442 should be equal ok 443 should be equal ok 444 should be equal ok 445 should be equal # linear.tickFormat(count, specifier) sets the appropriate prefix precision if not specified ok 446 should be equal ok 447 should be equal # linear.tickFormat() uses the default precision when the domain is invalid ok 448 should be equal ok 449 should be equal # linear.copy() returns a copy with changes to the domain are isolated ok 450 should be equivalent ok 451 should be equal ok 452 should be equal ok 453 should be equal ok 454 should be equal ok 455 should be equivalent ok 456 should be equivalent ok 457 should be equivalent ok 458 should be equivalent # linear.copy() returns a copy with changes to the range are isolated ok 459 should be equal ok 460 should be equal ok 461 should be equivalent ok 462 should be equal ok 463 should be equal ok 464 should be equivalent ok 465 should be equivalent # linear.copy() returns a copy with changes to the interpolator are isolated ok 466 should be equal ok 467 should be equal ok 468 should be equal # linear.copy() returns a copy with changes to clamping are isolated ok 469 should be equal ok 470 should be equal ok 471 should be equal ok 472 should be equal ok 473 should be equal ok 474 should be equal # linear.copy() returns a copy with changes to the unknown value are isolated ok 475 should be equal ok 476 should be equal ok 477 should be equal ok 478 should be equal ok 479 should be equal ok 480 should be equal # scaleLog() has the expected defaults ok 481 should be equivalent ok 482 should be equivalent ok 483 should be equal ok 484 should be equal ok 485 should be equal ok 486 should be equivalent ok 487 should be in delta ok 488 should be in delta ok 489 should be in delta ok 490 should be in delta # log.domain(…) coerces values to numbers ok 491 should be equal ok 492 should be equal ok 493 should be in delta ok 494 should be in delta ok 495 should be in delta ok 496 should be in delta ok 497 should be in delta ok 498 should be in delta ok 499 should be equal ok 500 should be equal ok 501 should be in delta ok 502 should be equal ok 503 should be equal ok 504 should be in delta # log.domain(…) can take negative values ok 505 should be equivalent ok 506 should be in delta # log.domain(…).range(…) can take more than two values ok 507 should be equal ok 508 should be equal ok 509 should be equal # log.domain(…) preserves specified domain exactly, with no floating point error ok 510 should be equivalent # log.range(…) does not coerce values to numbers ok 511 should be equal ok 512 should be equal # log.range(…) can take colors ok 513 should be equal ok 514 should be equal ok 515 should be equal ok 516 should be equal ok 517 should be equal # log.range(…) can take arrays or objects ok 518 should be equivalent ok 519 should be equivalent # log.interpolate(f) sets the interpolator ok 520 should be equal ok 521 should be equal ok 522 should be equal # log(x) does not clamp by default ok 523 should be equal ok 524 should be in delta ok 525 should be in delta # log.clamp(true)(x) clamps to the domain ok 526 should be in delta ok 527 should be in delta ok 528 should be in delta ok 529 should be in delta ok 530 should be in delta ok 531 should be in delta # log.clamp(true).invert(y) clamps to the range ok 532 should be in delta ok 533 should be in delta ok 534 should be in delta ok 535 should be in delta ok 536 should be in delta ok 537 should be in delta # log(x) maps a number x to a number y ok 538 should be in delta ok 539 should be in delta ok 540 should be in delta ok 541 should be in delta ok 542 should be in delta # log.invert(y) maps a number y to a number x ok 543 should be in delta ok 544 should be in delta ok 545 should be in delta ok 546 should be in delta ok 547 should be in delta # log.invert(y) coerces y to number ok 548 should be in delta ok 549 should be in delta ok 550 should be truthy # log.base(b) sets the log base, changing the ticks ok 551 should be equivalent ok 552 should be equivalent # log.nice() nices the domain, extending it to powers of ten ok 553 should be equivalent ok 554 should be equivalent ok 555 should be equivalent ok 556 should be equivalent ok 557 should be equivalent ok 558 should be equivalent ok 559 should be in delta ok 560 should be in delta # log.nice() works on degenerate domains ok 561 should be equivalent ok 562 should be equivalent # log.nice() on a polylog domain only affects the extent ok 563 should be equivalent ok 564 should be equivalent # log.copy() isolates changes to the domain ok 565 should be equivalent ok 566 should be in delta ok 567 should be in delta ok 568 should be in delta ok 569 should be in delta ok 570 should be equivalent ok 571 should be equivalent # log.copy() isolates changes to the domain via nice ok 572 should be equivalent ok 573 should be in delta ok 574 should be in delta ok 575 should be in delta ok 576 should be in delta ok 577 should be equivalent ok 578 should be in delta ok 579 should be in delta ok 580 should be in delta ok 581 should be in delta # log.copy() isolates changes to the range ok 582 should be in delta ok 583 should be in delta ok 584 should be equivalent ok 585 should be in delta ok 586 should be in delta ok 587 should be equivalent ok 588 should be equivalent # log.copy() isolates changes to the interpolator ok 589 should be equal ok 590 should be equal ok 591 should be equal # log.copy() isolates changes to clamping ok 592 should be in delta ok 593 should be in delta ok 594 should be equal ok 595 should be in delta ok 596 should be in delta ok 597 should be equal # log.ticks() generates the expected power-of-ten for ascending ticks ok 598 should be equivalent ok 599 should be equivalent ok 600 should be equivalent # log.ticks() generates the expected power-of-ten ticks for descending domains ok 601 should be equivalent ok 602 should be equivalent ok 603 should be equivalent # log.ticks() generates the expected power-of-ten ticks for small domains ok 604 should be equivalent ok 605 should be equivalent ok 606 should be equivalent ok 607 should be equivalent # log.base(base).ticks() generates the expected power-of-base ticks ok 608 should be equivalent # log.tickFormat() is equivalent to log.tickFormat(10) ok 609 should be equivalent # log.tickFormat(count) returns a filtered ".0e" format ok 610 should be equivalent ok 611 should be equivalent ok 612 should be equivalent ok 613 should be equivalent # log.tickFormat(count, format) returns the specified format, filtered ok 614 should be equivalent # log.base(base).tickFormat() returns the "," format ok 615 should be equivalent # log.base(base).tickFormat(count) returns a filtered "," format ok 616 should be equivalent ok 617 should be equivalent ok 618 should be equivalent # log.ticks() generates log ticks ok 619 should be equivalent ok 620 should be equivalent ok 621 should be equivalent ok 622 should be equivalent # log.tickFormat(count) filters ticks to about count ok 623 should be equivalent ok 624 should be equivalent # log.ticks(count) filters powers-of-ten ticks for huge domains ok 625 should be equivalent ok 626 should be equivalent # log.ticks() generates ticks that cover the domain ok 627 should be equivalent # log.ticks() generates ticks that cover the niced domain ok 628 should be equivalent # log.tickFormat(count, format) returns a filtered format ok 629 should be equivalent # log.tickFormat(count, specifier) returns a filtered format ok 630 should be equivalent # log.ticks() returns the empty array when the domain is degenerate ok 631 should be equivalent ok 632 should be equivalent ok 633 should be equivalent ok 634 should be equivalent ok 635 should be equivalent ok 636 should be equivalent # scaleOrdinal() has the expected defaults ok 637 should be equivalent ok 638 should be equivalent ok 639 should be equal ok 640 should be equal ok 641 should be equivalent # ordinal(x) maps a unique name x in the domain to the corresponding value y in the range ok 642 should be equal ok 643 should be equal ok 644 should be equal ok 645 should be equal ok 646 should be equal ok 647 should be equal ok 648 should be equal ok 649 should be equal # ordinal(x) implicitly extends the domain when a range is explicitly specified ok 650 should be equivalent ok 651 should be equal ok 652 should be equivalent ok 653 should be equal ok 654 should be equivalent ok 655 should be equal ok 656 should be equivalent # ordinal.domain(x) makes a copy of the domain ok 657 should be equivalent # ordinal.domain() returns a copy of the domain ok 658 should be equivalent # ordinal.domain() replaces previous domain values ok 659 should be equal ok 660 should be equal ok 661 should be equivalent ok 662 should be equal ok 663 should be equal ok 664 should be equivalent # ordinal.domain() uniqueness is based on string coercion ok 665 should be equal ok 666 should be equal ok 667 should be equal # ordinal.domain() does not coerce domain values to strings ok 668 should be equivalent ok 669 should be equal ok 670 should be equal # ordinal.domain() does not barf on object built-ins ok 671 should be equal ok 672 should be equal ok 673 should be equivalent # ordinal.domain() is ordered by appearance ok 674 should be equivalent ok 675 should be equivalent ok 676 should be equivalent ok 677 should be equivalent # ordinal.range(x) makes a copy of the range ok 678 should be equivalent # ordinal.range() returns a copy of the range ok 679 should be equivalent ok 680 should be equivalent # ordinal.range(values) does not discard implicit domain associations ok 681 should be equal ok 682 should be equal ok 683 should be equal ok 684 should be equal # ordinal(value) recycles values when exhausted ok 685 should be equal ok 686 should be equal ok 687 should be equal ok 688 should be equal ok 689 should be equal ok 690 should be equal ok 691 should be equal ok 692 should be equal ok 693 should be equal # ordinal.unknown(x) sets the output value for unknown inputs ok 694 should be equal ok 695 should be equal ok 696 should be equal ok 697 should be equal # ordinal.unknown(x) prevents implicit domain extension if x is not implicit ok 698 should be equal ok 699 should be equivalent # ordinal.copy() copies all fields ok 700 should be equivalent ok 701 should be equivalent ok 702 should be equivalent # ordinal.copy() changes to the domain are isolated ok 703 should be equivalent ok 704 should be equal ok 705 should be equal ok 706 should be equal ok 707 should be equal ok 708 should be equivalent ok 709 should be equivalent # ordinal.copy() changes to the range are isolated ok 710 should be equal ok 711 should be equal ok 712 should be equivalent ok 713 should be equal ok 714 should be equal ok 715 should be equivalent ok 716 should be equivalent # scalePoint() has the expected defaults ok 717 should be equivalent ok 718 should be equivalent ok 719 should be equal ok 720 should be equal ok 721 should be equal ok 722 should be equal ok 723 should be equal # scalePoint() does not expose paddingInner and paddingOuter ok 724 should be equal ok 725 should be equal # scalePoint() is similar to scaleBand().paddingInner(1) ok 726 should be equivalent ok 727 should be equal ok 728 should be equal # point.padding(p) sets the band outer padding to p ok 729 should be equivalent ok 730 should be equal ok 731 should be equal # point.copy() returns a copy ok 732 should be equivalent ok 733 should be equivalent ok 734 should be equal ok 735 should be equal ok 736 should be equal ok 737 should be equal ok 738 should be equal # scalePow() has the expected defaults ok 739 should be equivalent ok 740 should be equivalent ok 741 should be equal ok 742 should be equal ok 743 should be equivalent # pow(x) maps a domain value x to a range value y ok 744 should be equal # pow(x) ignores extra range values if the domain is smaller than the range ok 745 should be equal ok 746 should be equal # pow(x) ignores extra domain values if the range is smaller than the domain ok 747 should be equal ok 748 should be equal # pow(x) maps an empty domain to the middle of the range ok 749 should be equal ok 750 should be equal # pow(x) can map a bipow domain with two values to the corresponding range ok 751 should be equivalent ok 752 should be equal ok 753 should be equal ok 754 should be equal ok 755 should be equal ok 756 should be equal ok 757 should be equal ok 758 should be equal ok 759 should be equal ok 760 should be equal ok 761 should be equal # pow(x) can map a polypow domain with more than two values to the corresponding range ok 762 should be equivalent ok 763 should be equal ok 764 should be equal ok 765 should be equal ok 766 should be equal ok 767 should be equal ok 768 should be equal ok 769 should be equal ok 770 should be equal ok 771 should be equal ok 772 should be equal ok 773 should be equal # pow.invert(y) maps a range value y to a domain value x ok 774 should be equal # pow.invert(y) maps an empty range to the middle of the domain ok 775 should be equal ok 776 should be equal # pow.invert(y) coerces range values to numbers ok 777 should be equal ok 778 should be equal # pow.invert(y) returns NaN if the range is not coercible to number ok 779 should be truthy ok 780 should be truthy # pow.exponent(exponent) sets the exponent to the specified value ok 781 should be in delta ok 782 should be in delta ok 783 should be in delta ok 784 should be equal ok 785 should be in delta ok 786 should be in delta ok 787 should be in delta ok 788 should be equal ok 789 should be in delta ok 790 should be in delta ok 791 should be in delta ok 792 should be equal # pow.exponent(exponent) changing the exponent does not change the domain or range ok 793 should be equivalent ok 794 should be equivalent ok 795 should be equivalent ok 796 should be equivalent ok 797 should be equivalent ok 798 should be equivalent # pow.domain(domain) accepts an array of numbers ok 799 should be equivalent ok 800 should be equivalent ok 801 should be equivalent # pow.domain(domain) coerces domain values to numbers ok 802 should be equivalent ok 803 should be equivalent ok 804 should be equivalent # pow.domain(domain) makes a copy of domain values ok 805 should be equivalent ok 806 should be equivalent ok 807 should be equivalent # pow.domain() returns a copy of domain values ok 808 should be equivalent ok 809 should be equivalent # pow.range(range) does not coerce range to numbers ok 810 should be equivalent ok 811 should be equal # pow.range(range) can accept range values as colors ok 812 should be equal ok 813 should be equal ok 814 should be equal ok 815 should be equal ok 816 should be equal ok 817 should be equal # pow.range(range) can accept range values as arrays or objects ok 818 should be equivalent ok 819 should be equivalent # pow.range(range) makes a copy of range values ok 820 should be equivalent ok 821 should be equivalent ok 822 should be equivalent # pow.range() returns a copy of range values ok 823 should be equivalent ok 824 should be equivalent # pow.rangeRound(range) is an alias for pow.range(range).interpolate(interpolateRound) ok 825 should be equal # pow.clamp() is false by default ok 826 should be equal ok 827 should be equal ok 828 should be equal ok 829 should be equal ok 830 should be equal # pow.clamp(true) restricts output values to the range ok 831 should be equal ok 832 should be equal # pow.clamp(true) restricts input values to the domain ok 833 should be equal ok 834 should be equal # pow.clamp(clamp) coerces the specified clamp value to a boolean ok 835 should be equal ok 836 should be equal ok 837 should be equal ok 838 should be equal # pow.interpolate(interpolate) takes a custom interpolator factory ok 839 should be equal ok 840 should be equivalent # pow.nice() is an alias for pow.nice(10) ok 841 should be equivalent ok 842 should be equivalent # pow.nice(count) extends the domain to match the desired ticks ok 843 should be equivalent ok 844 should be equivalent ok 845 should be equivalent ok 846 should be equivalent ok 847 should be equivalent ok 848 should be equivalent ok 849 should be equivalent ok 850 should be equivalent # pow.nice(count) nices the domain, extending it to round numbers ok 851 should be equivalent ok 852 should be equivalent ok 853 should be equivalent ok 854 should be equivalent ok 855 should be equivalent # pow.nice(count) has no effect on degenerate domains ok 856 should be equivalent ok 857 should be equivalent # pow.nice(count) nicing a polypow domain only affects the extent ok 858 should be equivalent ok 859 should be equivalent # pow.nice(count) accepts a tick count to control nicing step ok 860 should be equivalent ok 861 should be equivalent ok 862 should be equivalent # pow.ticks(count) returns the expected ticks for an ascending domain ok 863 should be equivalent ok 864 should be equivalent ok 865 should be equivalent ok 866 should be equivalent ok 867 should be equivalent ok 868 should be equivalent ok 869 should be equivalent ok 870 should be equivalent ok 871 should be equivalent ok 872 should be equivalent ok 873 should be equivalent ok 874 should be equivalent ok 875 should be equivalent ok 876 should be equivalent ok 877 should be equivalent ok 878 should be equivalent ok 879 should be equivalent ok 880 should be equivalent ok 881 should be equivalent ok 882 should be equivalent # pow.ticks(count) returns the expected ticks for a descending domain ok 883 should be equivalent ok 884 should be equivalent ok 885 should be equivalent ok 886 should be equivalent ok 887 should be equivalent ok 888 should be equivalent ok 889 should be equivalent ok 890 should be equivalent ok 891 should be equivalent ok 892 should be equivalent ok 893 should be equivalent ok 894 should be equivalent ok 895 should be equivalent ok 896 should be equivalent ok 897 should be equivalent ok 898 should be equivalent ok 899 should be equivalent ok 900 should be equivalent ok 901 should be equivalent ok 902 should be equivalent # pow.ticks(count) returns the expected ticks for a polypow domain ok 903 should be equivalent ok 904 should be equivalent ok 905 should be equivalent ok 906 should be equivalent ok 907 should be equivalent ok 908 should be equivalent ok 909 should be equivalent ok 910 should be equivalent ok 911 should be equivalent ok 912 should be equivalent ok 913 should be equivalent ok 914 should be equivalent ok 915 should be equivalent ok 916 should be equivalent ok 917 should be equivalent ok 918 should be equivalent ok 919 should be equivalent ok 920 should be equivalent ok 921 should be equivalent ok 922 should be equivalent # pow.ticks(count) returns the empty array if count is not a positive integer ok 923 should be equivalent ok 924 should be equivalent ok 925 should be equivalent ok 926 should be equivalent # pow.ticks() is an alias for pow.ticks(10) ok 927 should be equivalent # pow.tickFormat() is an alias for pow.tickFormat(10) ok 928 should be equal ok 929 should be equal # pow.tickFormat(count) returns a format suitable for the ticks ok 930 should be equal ok 931 should be equal ok 932 should be equal # pow.tickFormat(count, specifier) sets the appropriate fixed precision if not specified ok 933 should be equal ok 934 should be equal ok 935 should be equal ok 936 should be equal # pow.tickFormat(count, specifier) sets the appropriate round precision if not specified ok 937 should be equal ok 938 should be equal ok 939 should be equal ok 940 should be equal ok 941 should be equal ok 942 should be equal ok 943 should be equal ok 944 should be equal ok 945 should be equal ok 946 should be equal ok 947 should be equal ok 948 should be equal ok 949 should be equal ok 950 should be equal # pow.tickFormat(count, specifier) sets the appropriate prefix precision if not specified ok 951 should be equal ok 952 should be equal # pow.copy() returns a copy with changes to the domain are isolated ok 953 should be equivalent ok 954 should be equal ok 955 should be equal ok 956 should be equal ok 957 should be equal ok 958 should be equivalent ok 959 should be equivalent ok 960 should be equivalent ok 961 should be equivalent # pow.copy() returns a copy with changes to the range are isolated ok 962 should be equal ok 963 should be equal ok 964 should be equivalent ok 965 should be equal ok 966 should be equal ok 967 should be equivalent ok 968 should be equivalent # pow.copy() returns a copy with changes to the interpolator are isolated ok 969 should be equal ok 970 should be equal ok 971 should be equal # pow.copy() returns a copy with changes to clamping are isolated ok 972 should be equal ok 973 should be equal ok 974 should be equal ok 975 should be equal ok 976 should be equal ok 977 should be equal # pow().clamp(true).invert(x) cannot return a value outside the domain ok 978 should be equal ok 979 should be equal # scaleSqrt() is an alias for pow().exponent(0.5) ok 980 should be equal ok 981 should be in delta ok 982 should be in delta # scaleQuantile() has the expected default ok 983 should be equivalent ok 984 should be equivalent ok 985 should be equal # quantile(x) uses the R-7 algorithm to compute quantiles ok 986 should be equivalent ok 987 should be equivalent ok 988 should be equivalent ok 989 should be equivalent ok 990 should be equivalent ok 991 should be equivalent ok 992 should be equivalent ok 993 should be equivalent # quantile(x) returns undefined if the input value is NaN ok 994 should be equal # quantile.domain() values are sorted in ascending order ok 995 should be equivalent # quantile.domain() values are coerced to numbers ok 996 should be equivalent # quantile.domain() values are allowed to be zero ok 997 should be equivalent # quantile.domain() non-numeric values are ignored ok 998 should be equivalent # quantile.quantiles() returns the inner thresholds ok 999 should be equivalent ok 1000 should be equivalent # quantile.range() cardinality determines the number of quantiles ok 1001 should be equivalent ok 1002 should be equivalent ok 1003 should be equivalent ok 1004 should be equivalent # quantile.range() values are arbitrary ok 1005 should be equivalent ok 1006 should be equivalent ok 1007 should be equivalent ok 1008 should be equivalent # quantile.invertExtent() maps a value in the range to a domain extent ok 1009 should be equivalent ok 1010 should be equivalent ok 1011 should be equivalent ok 1012 should be equivalent # quantile.invertExtent() allows arbitrary range values ok 1013 should be equivalent ok 1014 should be equivalent # quantile.invertExtent() returns [NaN, NaN] when the given value is not in the range ok 1015 should be truthy ok 1016 should be truthy ok 1017 should be truthy ok 1018 should be truthy # quantile.invertExtent() returns the first match if duplicate values exist in the range ok 1019 should be equivalent ok 1020 should be equivalent ok 1021 should be equivalent # quantile.unknown(value) sets the return value for undefined and NaN input ok 1022 should be equal ok 1023 should be equal ok 1024 should be equal ok 1025 should be equal ok 1026 should be equal ok 1027 should be equal # scaleQuantize() has the expected defaults ok 1028 should be equivalent ok 1029 should be equivalent ok 1030 should be equivalent ok 1031 should be equal ok 1032 should be equal # quantize(value) maps a number to a discrete value in the range ok 1033 should be equivalent ok 1034 should be equal ok 1035 should be equal ok 1036 should be equal ok 1037 should be equal ok 1038 should be equal ok 1039 should be equal # quantize(value) clamps input values to the domain ok 1040 should be equal ok 1041 should be equal # quantize.domain() coerces domain values to numbers ok 1042 should be equivalent ok 1043 should be equal ok 1044 should be equal ok 1045 should be equal ok 1046 should be equal # quantize.domain() only considers the first and second element of the domain ok 1047 should be equivalent # quantize.range() cardinality determines the degree of quantization ok 1048 should be in delta ok 1049 should be in delta ok 1050 should be in delta ok 1051 should be in delta ok 1052 should be in delta ok 1053 should be in delta ok 1054 should be in delta # quantize.range() values are arbitrary ok 1055 should be equal ok 1056 should be equal ok 1057 should be equal ok 1058 should be equal ok 1059 should be equal ok 1060 should be equal # quantize.invertExtent() maps a value in the range to a domain extent ok 1061 should be equivalent ok 1062 should be equivalent ok 1063 should be equivalent ok 1064 should be equivalent # quantize.invertExtent() allows arbitrary range values ok 1065 should be equivalent ok 1066 should be equivalent # quantize.invertExtent() returns [NaN, NaN] when the given value is not in the range ok 1067 should be truthy ok 1068 should be truthy ok 1069 should be truthy ok 1070 should be truthy # quantize.invertExtent() returns the first match if duplicate values exist in the range ok 1071 should be equivalent ok 1072 should be equivalent # quantize.invertExtent(y) is exactly consistent with quantize(x) ok 1073 should be equal ok 1074 should be equal ok 1075 should be equal ok 1076 should be equal ok 1077 should be equal ok 1078 should be equal ok 1079 should be equal ok 1080 should be equal ok 1081 should be equal ok 1082 should be equal ok 1083 should be equal ok 1084 should be equal ok 1085 should be equal ok 1086 should be equal ok 1087 should be equal ok 1088 should be equal ok 1089 should be equal ok 1090 should be equal ok 1091 should be equal ok 1092 should be equal # scaleSequential() has the expected defaults ok 1093 should be equivalent ok 1094 should be equal ok 1095 should be equal ok 1096 should be equal ok 1097 should be equal ok 1098 should be equal ok 1099 should be equal ok 1100 should be equal ok 1101 should be equal # sequential.clamp(true) enables clamping ok 1102 should be equal ok 1103 should be equal ok 1104 should be equal ok 1105 should be equal ok 1106 should be equal ok 1107 should be equal # sequential.unknown(value) sets the return value for undefined and NaN input ok 1108 should be equal ok 1109 should be equal ok 1110 should be equal ok 1111 should be equal ok 1112 should be equal # sequential.domain() coerces domain values to numbers ok 1113 should be equivalent ok 1114 should be equal ok 1115 should be equal ok 1116 should be equal # sequential.domain() handles a degenerate domain ok 1117 should be equivalent ok 1118 should be equal ok 1119 should be equal ok 1120 should be equal # sequential.domain() handles a non-numeric domain ok 1121 should be equal ok 1122 should be equal ok 1123 should be equal ok 1124 should be equal ok 1125 should be equal # sequential.domain() only considers the first and second element of the domain ok 1126 should be equivalent # sequential.copy() returns an isolated copy of the scale ok 1127 should be equivalent ok 1128 should be equal ok 1129 should be equivalent ok 1130 should be equal ok 1131 should be equivalent ok 1132 should be equivalent # scaleSequential.interpolator(interpolator) sets the interpolator ok 1133 should be equal ok 1134 should be equal ok 1135 should be equal ok 1136 should be equal ok 1137 should be equal ok 1138 should be equal # scaleSqrt() has the expected defaults ok 1139 should be equivalent ok 1140 should be equivalent ok 1141 should be equal ok 1142 should be equal ok 1143 should be equivalent # sqrt(x) maps a domain value x to a range value y ok 1144 should be equal # scaleThreshold() has the expected defaults ok 1145 should be equivalent ok 1146 should be equivalent ok 1147 should be equal ok 1148 should be equal # threshold(x) maps a number to a discrete value in the range ok 1149 should be equal ok 1150 should be equal ok 1151 should be equal ok 1152 should be equal ok 1153 should be equal ok 1154 should be equal # threshold(x) returns undefined if the specified value x is not orderable ok 1155 should be equal ok 1156 should be equal ok 1157 should be equal ok 1158 should be equal # threshold.domain(…) supports arbitrary orderable values ok 1159 should be equal ok 1160 should be equal ok 1161 should be equal ok 1162 should be equal ok 1163 should be equal # threshold.range(…) supports arbitrary values ok 1164 should be equal ok 1165 should be equal ok 1166 should be equal ok 1167 should be equal ok 1168 should be equal ok 1169 should be equal # threshold.invertExtent(y) returns the domain extent for the specified range value ok 1170 should be equivalent ok 1171 should be equivalent ok 1172 should be equivalent ok 1173 should be equivalent # d3.tickFormat(start, stop, count) returns a format suitable for the ticks ok 1174 should be equal ok 1175 should be equal ok 1176 should be equal # d3.tickFormat(start, stop, count, specifier) sets the appropriate fixed precision if not specified ok 1177 should be equal ok 1178 should be equal ok 1179 should be equal ok 1180 should be equal # d3.tickFormat(start, stop, count, specifier) sets the appropriate round precision if not specified ok 1181 should be equal ok 1182 should be equal ok 1183 should be equal ok 1184 should be equal ok 1185 should be equal ok 1186 should be equal ok 1187 should be equal ok 1188 should be equal ok 1189 should be equal ok 1190 should be equal ok 1191 should be equal ok 1192 should be equal ok 1193 should be equal ok 1194 should be equal # d3.tickFormat(start, stop, count, specifier) sets the appropriate prefix precision if not specified ok 1195 should be equal ok 1196 should be equal # d3.tickFormat(start, stop, count) uses the default precision when the domain is invalid ok 1197 should be equal ok 1198 should be equal # time.domain([-1e50, 1e50]) is equivalent to time.domain([NaN, NaN]) ok 1199 should be equal ok 1200 should be equal ok 1201 should be equivalent # time.nice() is an alias for time.nice(10) ok 1202 should be equivalent # time.nice() can nice sub-second domains ok 1203 should be equivalent # time.nice() can nice multi-year domains ok 1204 should be equivalent # time.nice() can nice empty domains ok 1205 should be equivalent # time.nice(count) nices using the specified tick count ok 1206 should be equivalent ok 1207 should be equivalent # time.nice(interval) nices using the specified time interval ok 1208 should be equivalent ok 1209 should be equivalent ok 1210 should be equivalent ok 1211 should be equivalent # time.nice(interval) can nice empty domains ok 1212 should be equivalent # time.nice(interval) can nice a polylinear domain, only affecting its extent ok 1213 should be equivalent # time.nice(interval, step) nices using the specified time interval and step ok 1214 should be equivalent ok 1215 should be equivalent ok 1216 should be equivalent ok 1217 should be equivalent # time.copy() isolates changes to the domain ok 1218 should be equivalent ok 1219 should be equal ok 1220 should be equal ok 1221 should be equal ok 1222 should be equal ok 1223 should be equivalent ok 1224 should be equivalent # time.copy() isolates changes to the range ok 1225 should be equivalent ok 1226 should be equivalent ok 1227 should be equivalent ok 1228 should be equivalent ok 1229 should be equivalent ok 1230 should be equivalent ok 1231 should be equivalent # time.copy() isolates changes to the interpolator ok 1232 should be equal ok 1233 should be equal ok 1234 should be equal # time.copy() isolates changes to clamping ok 1235 should be equal ok 1236 should be equal ok 1237 should be equal ok 1238 should be equal ok 1239 should be equal ok 1240 should be equal # time.clamp(true).invert(value) never returns a value outside the domain ok 1241 should be truthy ok 1242 should be truthy ok 1243 should be equal ok 1244 should be equal ok 1245 should be equal ok 1246 should be equal # time.ticks(interval) observes the specified tick interval ok 1247 should be equivalent # time.ticks(interval, step) observes the specified tick interval and step ok 1248 should be equivalent # time.ticks(count) can generate sub-second ticks ok 1249 should be equivalent # time.ticks(count) can generate 1-second ticks ok 1250 should be equivalent # time.ticks(count) can generate 5-second ticks ok 1251 should be equivalent # time.ticks(count) can generate 15-second ticks ok 1252 should be equivalent # time.ticks(count) can generate 30-second ticks ok 1253 should be equivalent # time.ticks(count) can generate 1-minute ticks ok 1254 should be equivalent # time.ticks(count) can generate 5-minute ticks ok 1255 should be equivalent # time.ticks(count) can generate 15-minute ticks ok 1256 should be equivalent # time.ticks(count) can generate 30-minute ticks ok 1257 should be equivalent # time.ticks(count) can generate 1-hour ticks ok 1258 should be equivalent # time.ticks(count) can generate 3-hour ticks ok 1259 should be equivalent # time.ticks(count) can generate 6-hour ticks ok 1260 should be equivalent # time.ticks(count) can generate 12-hour ticks ok 1261 should be equivalent # time.ticks(count) can generate 1-day ticks ok 1262 should be equivalent # time.ticks(count) can generate 2-day ticks ok 1263 should be equivalent # time.ticks(count) can generate 1-week ticks ok 1264 should be equivalent # time.ticks(count) can generate 1-month ticks ok 1265 should be equivalent # time.ticks(count) can generate 3-month ticks ok 1266 should be equivalent # time.ticks(count) can generate 1-year ticks ok 1267 should be equivalent # time.ticks(count) can generate multi-year ticks ok 1268 should be equivalent # time.ticks(count) returns one tick for an empty domain ok 1269 should be equivalent # time.ticks() returns descending ticks for a descending domain ok 1270 should be equivalent ok 1271 should be equivalent # time.tickFormat()(date) formats year on New Year's ok 1272 should be equal ok 1273 should be equal ok 1274 should be equal # time.tickFormat()(date) formats month on the 1st of each month ok 1275 should be equal ok 1276 should be equal ok 1277 should be equal # time.tickFormat()(date) formats week on Sunday midnight ok 1278 should be equal ok 1279 should be equal ok 1280 should be equal # time.tickFormat()(date) formats date on midnight ok 1281 should be equal ok 1282 should be equal ok 1283 should be equal # time.tickFormat()(date) formats hour on minute zero ok 1284 should be equal ok 1285 should be equal ok 1286 should be equal # time.tickFormat()(date) formats minute on second zero ok 1287 should be equal ok 1288 should be equal ok 1289 should be equal # time.tickFormat()(date) otherwise, formats second ok 1290 should be equal ok 1291 should be equal ok 1292 should be equal # time.tickFormat(count, specifier) returns a time format for the specified specifier ok 1293 should be equal # scaleUtc.nice() is an alias for scaleUtc.nice(10) ok 1294 should be equivalent # scaleUtc.nice() can nice sub-second domains ok 1295 should be equivalent # scaleUtc.nice() can nice multi-year domains ok 1296 should be equivalent # scaleUtc.nice() can nice empty domains ok 1297 should be equivalent # scaleUtc.nice(count) nices using the specified tick count ok 1298 should be equivalent ok 1299 should be equivalent # scaleUtc.nice(interval) nices using the specified time interval ok 1300 should be equivalent ok 1301 should be equivalent ok 1302 should be equivalent ok 1303 should be equivalent # scaleUtc.nice(interval) can nice empty domains ok 1304 should be equivalent # scaleUtc.nice(interval) can nice a polylinear domain, only affecting its extent ok 1305 should be equivalent # scaleUtc.nice(interval, step) nices using the specified time interval and step ok 1306 should be equivalent ok 1307 should be equivalent ok 1308 should be equivalent ok 1309 should be equivalent # scaleUtc.copy() isolates changes to the domain ok 1310 should be equivalent ok 1311 should be equal ok 1312 should be equal ok 1313 should be equal ok 1314 should be equal ok 1315 should be equivalent ok 1316 should be equivalent # scaleUtc.copy() isolates changes to the range ok 1317 should be equivalent ok 1318 should be equivalent ok 1319 should be equivalent ok 1320 should be equivalent ok 1321 should be equivalent ok 1322 should be equivalent ok 1323 should be equivalent # scaleUtc.copy() isolates changes to the interpolator ok 1324 should be equal ok 1325 should be equal ok 1326 should be equal # scaleUtc.copy() isolates changes to clamping ok 1327 should be equal ok 1328 should be equal ok 1329 should be equal ok 1330 should be equal ok 1331 should be equal ok 1332 should be equal # scaleUtc.ticks(interval) observes the specified tick interval ok 1333 should be equivalent # scaleUtc.ticks(interval) observes the specified named tick interval ok 1334 should be equivalent # scaleUtc.ticks(interval, step) observes the specified tick interval and step ok 1335 should be equivalent # scaleUtc.ticks(count) can generate sub-second ticks ok 1336 should be equivalent # scaleUtc.ticks(count) can generate 1-second ticks ok 1337 should be equivalent # scaleUtc.ticks(count) can generate 5-second ticks ok 1338 should be equivalent # scaleUtc.ticks(count) can generate 15-second ticks ok 1339 should be equivalent # scaleUtc.ticks(count) can generate 30-second ticks ok 1340 should be equivalent # scaleUtc.ticks(count) can generate 1-minute ticks ok 1341 should be equivalent # scaleUtc.ticks(count) can generate 5-minute ticks ok 1342 should be equivalent # scaleUtc.ticks(count) can generate 15-minute ticks ok 1343 should be equivalent # scaleUtc.ticks(count) can generate 30-minute ticks ok 1344 should be equivalent # scaleUtc.ticks(count) can generate 1-hour ticks ok 1345 should be equivalent # scaleUtc.ticks(count) can generate 3-hour ticks ok 1346 should be equivalent # scaleUtc.ticks(count) can generate 6-hour ticks ok 1347 should be equivalent # scaleUtc.ticks(count) can generate 12-hour ticks ok 1348 should be equivalent # scaleUtc.ticks(count) can generate 1-day ticks ok 1349 should be equivalent # scaleUtc.ticks(count) can generate 2-day ticks ok 1350 should be equivalent # scaleUtc.ticks(count) can generate 1-week ticks ok 1351 should be equivalent # scaleUtc.ticks(count) can generate 1-month ticks ok 1352 should be equivalent # scaleUtc.ticks(count) can generate 3-month ticks ok 1353 should be equivalent # scaleUtc.ticks(count) can generate 1-year ticks ok 1354 should be equivalent # scaleUtc.ticks(count) can generate multi-year ticks ok 1355 should be equivalent # scaleUtc.ticks(count) returns one tick for an empty domain ok 1356 should be equivalent # scaleUtc.tickFormat()(date) formats year on New Year's ok 1357 should be equal ok 1358 should be equal ok 1359 should be equal # scaleUtc.tickFormat()(date) formats month on the 1st of each month ok 1360 should be equal ok 1361 should be equal ok 1362 should be equal # scaleUtc.tickFormat()(date) formats week on Sunday midnight ok 1363 should be equal ok 1364 should be equal ok 1365 should be equal # scaleUtc.tickFormat()(date) formats date on midnight ok 1366 should be equal ok 1367 should be equal ok 1368 should be equal # scaleUtc.tickFormat()(date) formats hour on minute zero ok 1369 should be equal ok 1370 should be equal ok 1371 should be equal # scaleUtc.tickFormat()(date) formats minute on second zero ok 1372 should be equal ok 1373 should be equal ok 1374 should be equal # scaleUtc.tickFormat()(date) otherwise, formats second ok 1375 should be equal ok 1376 should be equal ok 1377 should be equal # scaleUtc.tickFormat(count, specifier) returns a time format for the specified specifier ok 1378 should be equal 1..1378 # tests 1378 # pass 1378 # ok Removing node_modules/d3-scale create-stamp debian/debhelper-build-stamp fakeroot debian/rules binary-indep dh binary-indep --with nodejs dh_testroot -i dh_prep -i dh_auto_install --buildsystem=nodejs -i No "files" field in ./package.json, install all files Parsing expression ./*.sublime-* Line ./*.sublime-* becomes: ^./[^/]*\.sublime\-[^/]*$ Parsing expression ./dist/*.zip Line ./dist/*.zip becomes: ^./dist/[^/]*\.zip$ mkdir -p /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/ cp --reflink=auto -a ./package.json /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale// mkdir -p /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src cp --reflink=auto -a ./src/array.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/constant.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/pow.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/ordinal.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/colors.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/tickFormat.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/linear.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/symlog.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/threshold.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/sequential.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/nice.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/init.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/utcTime.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/number.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/continuous.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/identity.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/index.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/log.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/band.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/quantize.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/diverging.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/time.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/quantile.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ cp --reflink=auto -a ./src/sequentialQuantile.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/src/ mkdir -p /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/dist cp --reflink=auto -a ./dist/d3-scale.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/dist/ cp --reflink=auto -a ./dist/d3-scale.min.js /build/node-d3-scale-dVymtj/node-d3-scale-2.2.2/debian/node-d3-scale//usr/share/nodejs/d3-scale/dist/ Set ${nodejs:Version} to 12.19.0~dfsg dh_installdocs -i dh_installchangelogs -i dh_perl -i dh_link -i dh_strip_nondeterminism -i dh_compress -i dh_fixperms -i dh_missing -i dh_installdeb -i dh_gencontrol -i dpkg-gencontrol: warning: package node-d3-scale: substitution variable ${nodejs:Version} unused, but is defined dh_md5sums -i dh_builddeb -i dpkg-deb: building package 'node-d3-scale' in '../node-d3-scale_2.2.2-3_all.deb'. dpkg-genbuildinfo --build=all dpkg-genchanges --build=all >../node-d3-scale_2.2.2-3_all.changes dpkg-genchanges: info: binary-only arch-indep upload (source code and arch-specific packages not included) dpkg-source --after-build . dpkg-buildpackage: info: binary-only upload (no source included) I: running special hook: sync-out /build/node-d3-scale-dVymtj /tmp/node-d3-scale-2.2.2-3cce3atkm I: cleaning package lists and apt cache... I: creating tarball... I: done I: removing tempdir /tmp/mmdebstrap.HQMgshUXuC... I: success in 432.1282 seconds md5: node-d3-scale_2.2.2-3_all.deb: OK sha1: node-d3-scale_2.2.2-3_all.deb: OK sha256: node-d3-scale_2.2.2-3_all.deb: OK Checksums: OK