Input buildinfo: https://buildinfos.debian.net/buildinfo-pool/n/node-ignore/node-ignore_5.1.4-5_all.buildinfo Use metasnap for getting required timestamps New buildinfo file: /tmp/node-ignore-5.1.4-5vx8vlb6q/node-ignore_5.1.4-5_all.buildinfo Get source package info: node-ignore=5.1.4-5 Source URL: http://snapshot.notset.fr/mr/package/node-ignore/5.1.4-5/srcfiles?fileinfo=1 env -i PATH=/usr/sbin:/usr/bin:/sbin:/bin TMPDIR=/tmp mmdebstrap --arch=amd64 --include=autoconf=2.69-11.1 automake=1:1.16.2-1 autopoint=0.19.8.1-10 autotools-dev=20180224.1 base-files=11 base-passwd=3.5.47 bash=5.0-6 binutils=2.34-6 binutils-common=2.34-6 binutils-x86-64-linux-gnu=2.34-6 bsdmainutils=11.1.2+b1 bsdutils=1:2.35.1-2 build-essential=12.8 bzip2=1.0.8-2 coreutils=8.30-3+b1 cpp=4:9.2.1-3.1 cpp-9=9.3.0-11 dash=0.5.10.2-7 debconf=1.5.74 debhelper=13 debianutils=4.9.1 dh-autoreconf=19 dh-strip-nondeterminism=1.8.0-1 diffutils=1:3.7-3 dpkg=1.19.7 dpkg-dev=1.19.7 dwz=0.13-5 file=1:5.38-4 findutils=4.7.0-1 g++=4:9.2.1-3.1 g++-9=9.3.0-11 gcc=4:9.2.1-3.1 gcc-10-base=10-20200502-1 gcc-9=9.3.0-11 gcc-9-base=9.3.0-11 gettext=0.19.8.1-10 gettext-base=0.19.8.1-10 grep=3.4-1 groff-base=1.22.4-5 gzip=1.10-2 hostname=3.23 init-system-helpers=1.57 intltool-debian=0.35.0+20060710.5 libacl1=2.2.53-8 libarchive-zip-perl=1.68-1 libasan5=9.3.0-11 libatomic1=10-20200502-1 libattr1=1:2.4.48-5 libaudit-common=1:2.8.5-3 libaudit1=1:2.8.5-3+b1 libbinutils=2.34-6 libblkid1=2.35.1-2 libbrotli1=1.0.7-6.1 libbsd0=0.10.0-1 libbz2-1.0=1.0.8-2 libc-ares2=1.16.0-1 libc-bin=2.30-7 libc-dev-bin=2.30-7 libc6=2.30-7 libc6-dev=2.30-7 libcap-ng0=0.7.9-2.1+b2 libcc1-0=10-20200502-1 libcroco3=0.6.13-1 libcrypt-dev=1:4.4.16-1 libcrypt1=1:4.4.16-1 libctf-nobfd0=2.34-6 libctf0=2.34-6 libdb5.3=5.3.28+dfsg1-0.6 libdebconfclient0=0.251 libdebhelper-perl=13 libdpkg-perl=1.19.7 libelf1=0.176-1.1 libffi7=3.3-4 libfile-stripnondeterminism-perl=1.8.0-1 libgcc-9-dev=9.3.0-11 libgcc-s1=10-20200502-1 libgcrypt20=1.8.5-5 libgdbm-compat4=1.18.1-5 libgdbm6=1.18.1-5 libglib2.0-0=2.64.2-1 libgmp10=2:6.2.0+dfsg-4 libgomp1=10-20200502-1 libgpg-error0=1.37-1 libicu63=63.2-3 libisl22=0.22.1-1 libitm1=10-20200502-1 libjs-inherits=2.0.4-1 libjs-is-typedarray=1.0.0-2 libjs-regenerate=1.4.0-1 libjs-source-map=0.7.0++dfsg2+really.0.6.1-4 libjs-sprintf-js=1.1.2+ds1-1 libjs-typedarray-to-buffer=3.0.3-3 liblsan0=10-20200502-1 liblz4-1=1.9.2-2 liblzma5=5.2.4-1+b1 libmagic-mgc=1:5.38-4 libmagic1=1:5.38-4 libmount1=2.35.1-2 libmpc3=1.1.0-1 libmpfr6=4.0.2-1 libnghttp2-14=1.40.0-1 libnode64=10.20.1~dfsg-1 libpam-modules=1.3.1-5 libpam-modules-bin=1.3.1-5 libpam-runtime=1.3.1-5 libpam0g=1.3.1-5 libpcre2-8-0=10.34-7 libpcre3=2:8.39-12+b1 libperl5.30=5.30.0-10 libpipeline1=1.5.2-2 libquadmath0=10-20200502-1 libseccomp2=2.4.3-1+b1 libselinux1=3.0-1+b3 libsigsegv2=2.12-2 libsmartcols1=2.35.1-2 libssl1.1=1.1.1g-1 libstdc++-9-dev=9.3.0-11 libstdc++6=10-20200502-1 libsub-override-perl=0.09-2 libsystemd0=245.5-2 libtinfo6=6.2-1 libtool=2.4.6-14 libtsan0=10-20200502-1 libubsan1=10-20200502-1 libuchardet0=0.0.6-3 libudev1=245.5-2 libunistring2=0.9.10-2 libuuid1=2.35.1-2 libuv1=1.35.0-2 libxml2=2.9.10+dfsg-5 linux-libc-dev=5.6.7-1 login=1:4.8.1-1 lsb-base=11.1.0 m4=1.4.18-4 make=4.2.1-2 man-db=2.9.1-1 mawk=1.3.4.20200120-2 ncurses-base=6.2-1 ncurses-bin=6.2-1 node-ansi-regex=5.0.0-1 node-ansi-styles=4.2.1-1 node-argparse=1.0.10-2 node-array-union=2.1.0-1 node-array-uniq=2.1.0-1 node-arrify=2.0.1-1 node-babel-runtime=6.26.0+repack-4 node-babel-types=6.26.0+repack-4 node-babel7=7.4.5+~cs6.2.2-1 node-balanced-match=1.0.0-1 node-brace-expansion=1.1.11-1 node-browserslist=4.12.0-1 node-caniuse-lite=1.0.30001048+dfsg-2 node-chalk=2.4.2-1 node-clean-yaml-object=0.1.0-4 node-color-convert=1.9.3-1 node-color-name=1.1.4-1 node-commander=4.0.1+really2.20.0-2 node-commondir=1.0.1-2 node-concat-map=0.0.1-2 node-convert-source-map=1.7.0-1 node-core-js=3.6.1-3 node-debug=4.1.1-3 node-define-property=2.0.2-1 node-del=5.1.0-2 node-diff=1.4.0~dfsg-3 node-electron-to-chromium=1.3.322-1 node-escape-string-regexp=1.0.5-1 node-esprima=4.0.1+ds-2 node-esutils=2.0.2-1 node-extend-shallow=3.0.2-2 node-find-cache-dir=3.2.0-3 node-find-up=4.1.0-2 node-foreground-child=2.0.0-2 node-fs-readdir-recursive=1.1.0-1 node-fs.realpath=1.0.0-1 node-glob=7.1.6-1 node-globals=12.3.0-1 node-globby=7.1.1-2 node-graceful-fs=4.2.4-1 node-has-flag=4.0.0-1 node-imurmurhash=0.1.4-1 node-indent-string=3.2.0-1 node-inflight=1.0.6-1 node-inherits=2.0.4-1 node-invariant=2.2.2-1 node-is-buffer=1.1.6-1 node-is-extendable=1.0.1-1 node-is-extglob=2.1.1-1 node-is-glob=4.0.1-1 node-is-path-cwd=1.0.0-1 node-is-path-inside=1.0.1-1 node-is-plain-object=2.0.4+dfsg-1 node-is-typedarray=1.0.0-2 node-isarray=2.0.5-1 node-isexe=2.0.0-4 node-isobject=3.0.1-1 node-js-tokens=5.0.0-1 node-js-yaml=3.13.1+dfsg-2 node-jsesc=3.0.1-1 node-json5=0.5.1-3 node-kind-of=6.0.3+dfsg-1 node-locate-path=5.0.0-2 node-lodash=4.17.15+dfsg-2 node-loose-envify=1.4.0+dfsg1-1 node-make-dir=3.0.2-1 node-minimatch=3.0.4-4 node-mkdirp=0.5.1-2 node-ms=2.1.1-1 node-object-assign=4.1.1-3 node-once=1.4.0-3 node-output-file-sync=1.1.2-1 node-p-limit=2.2.2-1 node-p-locate=2.0.0-1 node-p-map=3.0.0-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=3.0.0-1 node-pkg-dir=4.2.0-2 node-private=0.1.8-3 node-regenerate=1.4.0-1 node-regenerate-unicode-properties=8.2.0+ds-1 node-regenerator-runtime=0.10.1-1 node-regenerator-transform=0.14.1-3 node-regex-not=1.0.2-1 node-regexpu-core=4.7.0+ds-1 node-regjsgen=0.5.1+ds-1 node-regjsparser=0.6.4+ds-2 node-resolve=1.15.1-3 node-rimraf=2.6.3-1 node-safe-buffer=5.2.0-1 node-semver=7.1.3-1 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.16+ds-1 node-sprintf-js=1.1.2+ds1-1 node-stack-utils=2.0.1-2 node-strip-ansi=6.0.0-2 node-supports-color=6.1.0-2 node-tap=12.0.1+ds-2 node-tap-mocha-reporter=3.0.7+ds-1 node-tap-parser=7.0.0+ds1-5 node-tmatch=4.0.0-2 node-to-fast-properties=3.0.1-1 node-to-regex=3.0.2+~2.1.1+~0.1.19-1 node-typedarray-to-buffer=3.0.3-3 node-typescript=3.8.3-1 node-unicode-canonical-property-names-ecmascript=1.0.4-2 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-1 node-v8flags=3.1.2-3 node-wrappy=1.0.2-1 node-write-file-atomic=3.0.3-1 nodejs=10.20.1~dfsg-1 pandoc=2.5-3+b1 pandoc-data=2.5-3 patch=2.7.6-6 perl=5.30.0-10 perl-base=5.30.0-10 perl-modules-5.30=5.30.0-10 po-debconf=1.0.21 sed=4.7-1 sensible-utils=0.0.12+nmu1 sysvinit-utils=2.96-3 tar=1.30+dfsg-7 util-linux=2.35.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/20200511T084653Z/ unstable main deb http://snapshot.notset.fr/archive/debian/20200507T210258Z/ 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-ignore=5.1.4-5 && mkdir -p /build/node-ignore-sYj2eH && dpkg-source --no-check -x /*.dsc /build/node-ignore-sYj2eH/node-ignore-5.1.4 && chown -R builduser:builduser /build/node-ignore-sYj2eH" --customize-hook=chroot "$1" env --unset=TMPDIR runuser builduser -c "cd /build/node-ignore-sYj2eH/node-ignore-5.1.4 && env DEB_BUILD_OPTIONS="parallel=4" LANG="C.UTF-8" LC_ALL="C.UTF-8" SOURCE_DATE_EPOCH="1589006489" dpkg-buildpackage -uc -a amd64 --build=all" --customize-hook=sync-out /build/node-ignore-sYj2eH /tmp/node-ignore-5.1.4-5vx8vlb6q bullseye /dev/null deb http://snapshot.notset.fr/archive/debian/20200507T210258Z 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.G54xmz99jD 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.G54xmz99jD Reading package lists... Building dependency tree... util-linux is already the newest version (2.35.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 132 kB of archives. After this operation, 393 kB of additional disk space will be used. Get:1 http://snapshot.notset.fr/archive/debian/20200507T210258Z unstable/main amd64 libfakeroot amd64 1.24-1 [45.7 kB] Get:2 http://snapshot.notset.fr/archive/debian/20200507T210258Z unstable/main amd64 fakeroot amd64 1.24-1 [85.9 kB] debconf: delaying package configuration, since apt-utils is not installed Fetched 132 kB in 0s (884 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 ... 4482 files and directories currently installed.) Preparing to unpack .../libfakeroot_1.24-1_amd64.deb ... Unpacking libfakeroot:amd64 (1.24-1) ... Selecting previously unselected package fakeroot. Preparing to unpack .../fakeroot_1.24-1_amd64.deb ... Unpacking fakeroot (1.24-1) ... Setting up libfakeroot:amd64 (1.24-1) ... Setting up fakeroot (1.24-1) ... update-alternatives: using /usr/bin/fakeroot-sysv to provide /usr/bin/fakeroot (fakeroot) in auto mode Processing triggers for libc-bin (2.30-7) ... 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/20200511T084653Z/ unstable main deb http://snapshot.notset.fr/archive/debian/20200507T210258Z/ unstable main' >> /etc/apt/sources.list && apt-get update"' exec /tmp/mmdebstrap.G54xmz99jD Get:1 http://snapshot.notset.fr/archive/debian/20210814T212851Z bookworm InRelease [81.6 kB] Get:2 http://snapshot.notset.fr/archive/debian/20200511T084653Z unstable InRelease [146 kB] Hit:3 http://snapshot.notset.fr/archive/debian/20200507T210258Z 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/20200511T084653Z unstable/main amd64 Packages Ign:6 http://snapshot.notset.fr/archive/debian/20200511T084653Z unstable/main amd64 Packages Ign:6 http://snapshot.notset.fr/archive/debian/20200511T084653Z unstable/main amd64 Packages Get:6 http://snapshot.notset.fr/archive/debian/20200511T084653Z unstable/main amd64 Packages [11.1 MB] Fetched 33.9 MB in 28s (1228 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.G54xmz99jD I: running --customize-hook in shell: sh -c 'chroot "$1" env sh -c "apt-get source --only-source -d node-ignore=5.1.4-5 && mkdir -p /build/node-ignore-sYj2eH && dpkg-source --no-check -x /*.dsc /build/node-ignore-sYj2eH/node-ignore-5.1.4 && chown -R builduser:builduser /build/node-ignore-sYj2eH"' exec /tmp/mmdebstrap.G54xmz99jD Reading package lists... NOTICE: 'node-ignore' packaging is maintained in the 'Git' version control system at: https://salsa.debian.org/js-team/node-ignore.git Please use: git clone https://salsa.debian.org/js-team/node-ignore.git to retrieve the latest (possibly unreleased) updates to the package. Need to get 25.0 kB of source archives. Get:1 http://snapshot.notset.fr/archive/debian/20210814T212851Z bookworm/main node-ignore 5.1.4-5 (dsc) [2077 B] Get:2 http://snapshot.notset.fr/archive/debian/20210814T212851Z bookworm/main node-ignore 5.1.4-5 (tar) [18.9 kB] Get:3 http://snapshot.notset.fr/archive/debian/20210814T212851Z bookworm/main node-ignore 5.1.4-5 (diff) [4092 B] Fetched 25.0 kB in 0s (544 kB/s) Download complete and in download only mode W: Download is performed unsandboxed as root as file 'node-ignore_5.1.4-5.dsc' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied) dpkg-source: info: extracting node-ignore in /build/node-ignore-sYj2eH/node-ignore-5.1.4 dpkg-source: info: unpacking node-ignore_5.1.4.orig.tar.gz dpkg-source: info: unpacking node-ignore_5.1.4-5.debian.tar.xz I: running --customize-hook in shell: sh -c 'chroot "$1" env --unset=TMPDIR runuser builduser -c "cd /build/node-ignore-sYj2eH/node-ignore-5.1.4 && env DEB_BUILD_OPTIONS="parallel=4" LANG="C.UTF-8" LC_ALL="C.UTF-8" SOURCE_DATE_EPOCH="1589006489" dpkg-buildpackage -uc -a amd64 --build=all"' exec /tmp/mmdebstrap.G54xmz99jD dpkg-buildpackage: info: source package node-ignore dpkg-buildpackage: info: source version 5.1.4-5 dpkg-buildpackage: info: source distribution unstable dpkg-buildpackage: info: source changed by Jonas Smedegaard dpkg-source --before-build . debian/rules clean dh clean debian/rules override_dh_clean make[1]: Entering directory '/build/node-ignore-sYj2eH/node-ignore-5.1.4' dh_clean -- README.html README.txt CHANGELOG.html CHANGELOG.txt make[1]: Leaving directory '/build/node-ignore-sYj2eH/node-ignore-5.1.4' debian/rules binary-indep dh binary-indep dh_update_autotools_config -i dh_autoreconf -i debian/rules override_dh_auto_build make[1]: Entering directory '/build/node-ignore-sYj2eH/node-ignore-5.1.4' pandoc --from gfm-raw_html --to html --standalone --output README.html README.md [WARNING] This document format requires a nonempty element. Please specify either 'title' or 'pagetitle' in the metadata, e.g. by using --metadata pagetitle="..." on the command line. Falling back to 'README' pandoc --from gfm-raw_html --to plain --output README.txt README.md pandoc --from gfm-raw_html --to html --standalone --output CHANGELOG.html CHANGELOG.md [WARNING] This document format requires a nonempty <title> element. Please specify either 'title' or 'pagetitle' in the metadata, e.g. by using --metadata pagetitle="..." on the command line. Falling back to 'CHANGELOG' pandoc --from gfm-raw_html --to plain --output CHANGELOG.txt CHANGELOG.md babeljs --no-babelrc --presets @babel/preset-env --out-file legacy.js index.js Browserslist: caniuse-lite is outdated. Please run: npx browserslist@latest --update-db make[1]: Leaving directory '/build/node-ignore-sYj2eH/node-ignore-5.1.4' debian/rules override_dh_auto_test make[1]: Entering directory '/build/node-ignore-sYj2eH/node-ignore-5.1.4' tsc ./test/ts/simple.ts --lib ES6 node ./test/ts/simple.js tap test/ignore.js TAP version 13 # Subtest: test/ignore.js # Subtest: .filter(): gitignore 2.22.1 example ok 1 - should be equivalent 1..1 ok 1 - .filter(): gitignore 2.22.1 example # time=18.179ms # Subtest: .createFilter(): gitignore 2.22.1 example ok 1 - should be equivalent 1..1 ok 2 - .createFilter(): gitignore 2.22.1 example # time=2.478ms # Subtest: .ignores(path): gitignore 2.22.1 example ok 1 - path: "doc/frotz/" ok 2 - path: "a/doc/frotz/" 1..2 ok 3 - .ignores(path): gitignore 2.22.1 example # time=2.204ms # Subtest: .filter(): #56 ok 1 - should be equivalent 1..1 ok 4 - .filter(): #56 # time=1.71ms # Subtest: .createFilter(): #56 ok 1 - should be equivalent 1..1 ok 5 - .createFilter(): #56 # time=1.881ms # Subtest: .ignores(path): #56 ok 1 - path: "foo/bar.js" 1..1 ok 6 - .ignores(path): #56 # time=1.218ms # Subtest: .filter(): object prototype ok 1 - should be equivalent 1..1 ok 7 - .filter(): object prototype # time=2.18ms # Subtest: .createFilter(): object prototype ok 1 - should be equivalent 1..1 ok 8 - .createFilter(): object prototype # time=1.163ms # Subtest: .ignores(path): object prototype ok 1 - path: "hasOwnProperty" ok 2 - path: "a/hasOwnProperty" ok 3 - path: "toString" ok 4 - path: "a/toString" 1..4 ok 9 - .ignores(path): object prototype # time=2.137ms # Subtest: .filter(): a and a/ ok 1 - should be equivalent 1..1 ok 10 - .filter(): a and a/ # time=6.419ms # Subtest: .createFilter(): a and a/ ok 1 - should be equivalent 1..1 ok 11 - .createFilter(): a and a/ # time=1.086ms # Subtest: .ignores(path): a and a/ ok 1 - path: "a" ok 2 - path: "a2/" ok 3 - path: "b" ok 4 - path: "b2/" 1..4 ok 12 - .ignores(path): a and a/ # time=2.303ms # Subtest: .filter(): ending question mark ok 1 - should be equivalent 1..1 ok 13 - .filter(): ending question mark # time=1.678ms # Subtest: .createFilter(): ending question mark ok 1 - should be equivalent 1..1 ok 14 - .createFilter(): ending question mark # time=1.712ms # Subtest: .ignores(path): ending question mark ok 1 - path: "a.webp" ok 2 - path: "a.webm" ok 3 - path: "a.webam" ok 4 - path: "a.png" 1..4 ok 15 - .ignores(path): ending question mark # time=2.102ms # Subtest: .filter(): intermediate question mark ok 1 - should be equivalent 1..1 ok 16 - .filter(): intermediate question mark # time=1.354ms # Subtest: .createFilter(): intermediate question mark ok 1 - should be equivalent 1..1 ok 17 - .createFilter(): intermediate question mark # time=0.983ms # Subtest: .ignores(path): intermediate question mark ok 1 - path: "abc" ok 2 - path: "acc" ok 3 - path: "ac" ok 4 - path: "abbc" 1..4 ok 18 - .ignores(path): intermediate question mark # time=1.988ms # Subtest: .filter(): multiple question marks ok 1 - should be equivalent 1..1 ok 19 - .filter(): multiple question marks # time=1.248ms # Subtest: .createFilter(): multiple question marks ok 1 - should be equivalent 1..1 ok 20 - .createFilter(): multiple question marks # time=57.804ms # Subtest: .ignores(path): multiple question marks ok 1 - path: "acbdd" ok 2 - path: "acbddd" 1..2 ok 21 - .ignores(path): multiple question marks # time=1.552ms # Subtest: .filter(): normal *.[oa] ok 1 - should be equivalent 1..1 ok 22 - .filter(): normal *.[oa] # time=1.683ms # Subtest: .createFilter(): normal *.[oa] ok 1 - should be equivalent 1..1 ok 23 - .createFilter(): normal *.[oa] # time=1.001ms # Subtest: .ignores(path): normal *.[oa] ok 1 - path: "a.js" ok 2 - path: "a.a" ok 3 - path: "a.aa" ok 4 - path: "a.o" ok 5 - path: "a.0" 1..5 ok 24 - .ignores(path): normal *.[oa] # time=3.004ms # Subtest: .filter(): multiple brackets ok 1 - should be equivalent 1..1 ok 25 - .filter(): multiple brackets # time=1.282ms # Subtest: .createFilter(): multiple brackets ok 1 - should be equivalent 1..1 ok 26 - .createFilter(): multiple brackets # time=1.039ms # Subtest: .ignores(path): multiple brackets ok 1 - path: "a.ace" ok 2 - path: "a.bdf" ok 3 - path: "a.bce" ok 4 - path: "a.abc" ok 5 - path: "a.aceg" 1..5 ok 27 - .ignores(path): multiple brackets # time=2.538ms # Subtest: .filter(): special case: [] ok 1 - should be equivalent 1..1 ok 28 - .filter(): special case: [] # time=3.689ms # Subtest: .createFilter(): special case: [] ok 1 - should be equivalent 1..1 ok 29 - .createFilter(): special case: [] # time=1.228ms # Subtest: .ignores(path): special case: [] ok 1 - path: "a.[]" ok 2 - path: "a.[]a" 1..2 ok 30 - .ignores(path): special case: [] # time=1.085ms # Subtest: .filter(): mixed with numbers, characters and symbols: *.[0a_] ok 1 - should be equivalent 1..1 ok 31 - .filter(): mixed with numbers, characters and symbols: *.[0a_] # time=1.202ms # Subtest: .createFilter(): mixed with numbers, characters and symbols: *.[0a_] ok 1 - should be equivalent 1..1 ok 32 - .createFilter(): mixed with numbers, characters and symbols: *.[0a_] # time=0.833ms # Subtest: .ignores(path): mixed with numbers, characters and symbols: *.[0a_] ok 1 - path: "a.0" ok 2 - path: "a.1" ok 3 - path: "a.a" ok 4 - path: "a.b" ok 5 - path: "a._" ok 6 - path: "a.=" 1..6 ok 33 - .ignores(path): mixed with numbers, characters and symbols: *.[0a_] # time=2.077ms # Subtest: .filter(): range: [a-z] ok 1 - should be equivalent 1..1 ok 34 - .filter(): range: [a-z] # time=1.286ms # Subtest: .createFilter(): range: [a-z] ok 1 - should be equivalent 1..1 ok 35 - .createFilter(): range: [a-z] # time=0.79ms # Subtest: .ignores(path): range: [a-z] ok 1 - path: "a.pn1" ok 2 - path: "a.pn2" ok 3 - path: "a.png" ok 4 - path: "a.pna" 1..4 ok 36 - .ignores(path): range: [a-z] # time=1.535ms # Subtest: .filter(): range: [0-9] ok 1 - should be equivalent 1..1 ok 37 - .filter(): range: [0-9] # time=1.021ms # Subtest: .createFilter(): range: [0-9] ok 1 - should be equivalent 1..1 ok 38 - .createFilter(): range: [0-9] # time=0.859ms # Subtest: .ignores(path): range: [0-9] ok 1 - path: "a.pn1" ok 2 - path: "a.pn2" ok 3 - path: "a.png" ok 4 - path: "a.pna" 1..4 ok 39 - .ignores(path): range: [0-9] # time=67.081ms # Subtest: .filter(): multiple ranges: [0-9a-z] ok 1 - should be equivalent 1..1 ok 40 - .filter(): multiple ranges: [0-9a-z] # time=1.352ms # Subtest: .createFilter(): multiple ranges: [0-9a-z] ok 1 - should be equivalent 1..1 ok 41 - .createFilter(): multiple ranges: [0-9a-z] # time=1.124ms # Subtest: .ignores(path): multiple ranges: [0-9a-z] ok 1 - path: "a.pn1" ok 2 - path: "a.pn2" ok 3 - path: "a.png" ok 4 - path: "a.pna" ok 5 - path: "a.pn-" 1..5 ok 42 - .ignores(path): multiple ranges: [0-9a-z] # time=2.668ms # Subtest: .filter(): special range: [0-z] ok 1 - should be equivalent 1..1 ok 43 - .filter(): special range: [0-z] # time=1.664ms # Subtest: .createFilter(): special range: [0-z] ok 1 - should be equivalent 1..1 ok 44 - .createFilter(): special range: [0-z] # time=1.189ms # Subtest: .ignores(path): special range: [0-z] ok 1 - path: "a.0" ok 2 - path: "a.9" ok 3 - path: "a.00" ok 4 - path: "a.a" ok 5 - path: "a.z" ok 6 - path: "a.zz" 1..6 ok 45 - .ignores(path): special range: [0-z] # time=3.035ms # Subtest: .filter(): special case: range out of order: [a-9] ok 1 - should be equivalent 1..1 ok 46 - .filter(): special case: range out of order: [a-9] # time=1.266ms # Subtest: .createFilter(): special case: range out of order: [a-9] ok 1 - should be equivalent 1..1 ok 47 - .createFilter(): special case: range out of order: [a-9] # time=1.133ms # Subtest: .ignores(path): special case: range out of order: [a-9] ok 1 - path: "a.0" ok 2 - path: "a.-" ok 3 - path: "a.9" 1..3 ok 48 - .ignores(path): special case: range out of order: [a-9] # time=1.898ms # Subtest: .filter(): special case: range-like character set ok 1 - should be equivalent 1..1 ok 49 - .filter(): special case: range-like character set # time=1.538ms # Subtest: .createFilter(): special case: range-like character set ok 1 - should be equivalent 1..1 ok 50 - .createFilter(): special case: range-like character set # time=1.065ms # Subtest: .ignores(path): special case: range-like character set ok 1 - path: "a.a" ok 2 - path: "a.-" ok 3 - path: "a.b" 1..3 ok 51 - .ignores(path): special case: range-like character set # time=1.778ms # Subtest: .filter(): special case: the combination of range and set ok 1 - should be equivalent 1..1 ok 52 - .filter(): special case: the combination of range and set # time=1.4ms # Subtest: .createFilter(): special case: the combination of range and set ok 1 - should be equivalent 1..1 ok 53 - .createFilter(): special case: the combination of range and set # time=0.82ms # Subtest: .ignores(path): special case: the combination of range and set ok 1 - path: "a.a" ok 2 - path: "a.b" ok 3 - path: "a.z" ok 4 - path: "a.0" ok 5 - path: "a.1" ok 6 - path: "a.2" 1..6 ok 54 - .ignores(path): special case: the combination of range and set # time=3.702ms # Subtest: .filter(): special case: 1 step range ok 1 - should be equivalent 1..1 ok 55 - .filter(): special case: 1 step range # time=1.014ms # Subtest: .createFilter(): special case: 1 step range ok 1 - should be equivalent 1..1 ok 56 - .createFilter(): special case: 1 step range # time=0.745ms # Subtest: .ignores(path): special case: 1 step range ok 1 - path: "a.0" ok 2 - path: "a.1" ok 3 - path: "a.-" 1..3 ok 57 - .ignores(path): special case: 1 step range # time=1.142ms # Subtest: .filter(): special case: similar, but not a character set ok 1 - should be equivalent 1..1 ok 58 - .filter(): special case: similar, but not a character set # time=0.866ms # Subtest: .createFilter(): special case: similar, but not a character set ok 1 - should be equivalent 1..1 ok 59 - .createFilter(): special case: similar, but not a character set # time=0.725ms # Subtest: .ignores(path): special case: similar, but not a character set ok 1 - path: "a." ok 2 - path: "a.[" ok 3 - path: "a.a" ok 4 - path: "a.-" 1..4 ok 60 - .ignores(path): special case: similar, but not a character set # time=1.651ms # Subtest: .filter(): related to #38 ok 1 - should be equivalent 1..1 ok 61 - .filter(): related to #38 # time=1.138ms # Subtest: .createFilter(): related to #38 ok 1 - should be equivalent 1..1 ok 62 - .createFilter(): related to #38 # time=0.719ms # Subtest: .ignores(path): related to #38 ok 1 - path: "a" ok 2 - path: "abc" ok 3 - path: "abcd" 1..3 ok 63 - .ignores(path): related to #38 # time=1.314ms # Subtest: .filter(): #38 ok 1 - should be equivalent 1..1 ok 64 - .filter(): #38 # time=1.429ms # Subtest: .createFilter(): #38 ok 1 - should be equivalent 1..1 ok 65 - .createFilter(): #38 # time=0.832ms # Subtest: .ignores(path): #38 ok 1 - path: "a" ok 2 - path: "b/c" ok 3 - path: "foo/bar" ok 4 - path: "foo/e" 1..4 ok 66 - .ignores(path): #38 # time=2.263ms # Subtest: .filter(): intermediate "\ " should be unescaped to " " ok 1 - should be equivalent 1..1 ok 67 - .filter(): intermediate "\ " should be unescaped to " " # time=1.911ms # Subtest: .createFilter(): intermediate "\ " should be unescaped to " " ok 1 - should be equivalent 1..1 ok 68 - .createFilter(): intermediate "\ " should be unescaped to " " # time=1.088ms # Subtest: .ignores(path): intermediate "\ " should be unescaped to " " ok 1 - path: "abc d" ok 2 - path: "abc e" ok 3 - path: "abc/abc d" ok 4 - path: "abc/abc e" ok 5 - path: "abc/a b c" 1..5 ok 69 - .ignores(path): intermediate "\ " should be unescaped to " " # time=2.303ms # Subtest: .filter(): #25 ok 1 - should be equivalent 1..1 ok 70 - .filter(): #25 # time=1.786ms # Subtest: .createFilter(): #25 ok 1 - should be equivalent 1..1 ok 71 - .createFilter(): #25 # time=1.064ms # Subtest: .ignores(path): #25 ok 1 - path: ".ftpconfig" ok 2 - path: ".git/config" ok 3 - path: ".git/description" 1..3 ok 72 - .ignores(path): #25 # time=1.754ms # Subtest: .filter(): #26: .gitignore man page sample ok 1 - should be equivalent 1..1 ok 73 - .filter(): #26: .gitignore man page sample # time=2.076ms # Subtest: .createFilter(): #26: .gitignore man page sample ok 1 - should be equivalent 1..1 ok 74 - .createFilter(): #26: .gitignore man page sample # time=1.109ms # Subtest: .ignores(path): #26: .gitignore man page sample ok 1 - path: "no.js" ok 2 - path: "foo/no.js" ok 3 - path: "foo/bar/yes.js" ok 4 - path: "foo/bar/baz/yes.js" ok 5 - path: "boo/no.js" 1..5 ok 75 - .ignores(path): #26: .gitignore man page sample # time=2.32ms # Subtest: .filter(): wildcard: special case, escaped wildcard ok 1 - should be equivalent 1..1 ok 76 - .filter(): wildcard: special case, escaped wildcard # time=2.299ms # Subtest: .createFilter(): wildcard: special case, escaped wildcard ok 1 - should be equivalent 1..1 ok 77 - .createFilter(): wildcard: special case, escaped wildcard # time=4.19ms # Subtest: .ignores(path): wildcard: special case, escaped wildcard ok 1 - path: "a/b/*/index.html" ok 2 - path: "a/b/index.html" 1..2 ok 78 - .ignores(path): wildcard: special case, escaped wildcard # time=1.553ms # Subtest: .filter(): wildcard: treated as a shell glob suitable for consumption by fnmatch(3) ok 1 - should be equivalent 1..1 ok 79 - .filter(): wildcard: treated as a shell glob suitable for consumption by fnmatch(3) # time=1.317ms # Subtest: .createFilter(): wildcard: treated as a shell glob suitable for consumption by fnmatch(3) ok 1 - should be equivalent 1..1 ok 80 - .createFilter(): wildcard: treated as a shell glob suitable for consumption by fnmatch(3) # time=0.634ms # Subtest: .ignores(path): wildcard: treated as a shell glob suitable for consumption by fnmatch(3) ok 1 - path: "a/b/*/index.html" ok 2 - path: "a/b/index.html" 1..2 ok 81 - .ignores(path): wildcard: treated as a shell glob suitable for consumption by fnmatch(3) # time=2.962ms # Subtest: .filter(): wildcard: with no escape ok 1 - should be equivalent 1..1 ok 82 - .filter(): wildcard: with no escape # time=69.715ms # Subtest: .createFilter(): wildcard: with no escape ok 1 - should be equivalent 1..1 ok 83 - .createFilter(): wildcard: with no escape # time=0.841ms # Subtest: .ignores(path): wildcard: with no escape ok 1 - path: "a/b/*/index.html" ok 2 - path: "a/b/index.html" 1..2 ok 84 - .ignores(path): wildcard: with no escape # time=1.2ms # Subtest: .filter(): #24: a negative pattern without a trailing wildcard ok 1 - should be equivalent 1..1 ok 85 - .filter(): #24: a negative pattern without a trailing wildcard # time=1.612ms # Subtest: .createFilter(): #24: a negative pattern without a trailing wildcard ok 1 - should be equivalent 1..1 ok 86 - .createFilter(): #24: a negative pattern without a trailing wildcard # time=0.893ms # Subtest: .ignores(path): #24: a negative pattern without a trailing wildcard ok 1 - path: "node_modules/a/a.js" ok 2 - path: "node_modules/package/a.js" 1..2 ok 87 - .ignores(path): #24: a negative pattern without a trailing wildcard # time=1.114ms # Subtest: .filter(): #21: unignore with 1 globstar, reversed order ok 1 - should be equivalent 1..1 ok 88 - .filter(): #21: unignore with 1 globstar, reversed order # time=1.003ms # Subtest: .createFilter(): #21: unignore with 1 globstar, reversed order ok 1 - should be equivalent 1..1 ok 89 - .createFilter(): #21: unignore with 1 globstar, reversed order # time=0.823ms # Subtest: .ignores(path): #21: unignore with 1 globstar, reversed order ok 1 - path: "foo/bar.js" ok 2 - path: "foo/bar2.js" ok 3 - path: "foo/bar/bar.js" 1..3 ok 90 - .ignores(path): #21: unignore with 1 globstar, reversed order # time=1.377ms # Subtest: .filter(): #21: unignore with 2 globstars, reversed order ok 1 - should be equivalent 1..1 ok 91 - .filter(): #21: unignore with 2 globstars, reversed order # time=1.324ms # Subtest: .createFilter(): #21: unignore with 2 globstars, reversed order ok 1 - should be equivalent 1..1 ok 92 - .createFilter(): #21: unignore with 2 globstars, reversed order # time=0.812ms # Subtest: .ignores(path): #21: unignore with 2 globstars, reversed order ok 1 - path: "foo/bar.js" ok 2 - path: "foo/bar2.js" ok 3 - path: "foo/bar/bar.js" 1..3 ok 93 - .ignores(path): #21: unignore with 2 globstars, reversed order # time=62.483ms # Subtest: .filter(): #21: unignore with several groups of 2 globstars, reversed order ok 1 - should be equivalent 1..1 ok 94 - .filter(): #21: unignore with several groups of 2 globstars, reversed order # time=1.321ms # Subtest: .createFilter(): #21: unignore with several groups of 2 globstars, reversed order ok 1 - should be equivalent 1..1 ok 95 - .createFilter(): #21: unignore with several groups of 2 globstars, reversed order # time=0.874ms # Subtest: .ignores(path): #21: unignore with several groups of 2 globstars, reversed order ok 1 - path: "foo/bar.js" ok 2 - path: "foo/bar2.js" ok 3 - path: "foo/bar/bar.js" 1..3 ok 96 - .ignores(path): #21: unignore with several groups of 2 globstars, reversed order # time=1.463ms # Subtest: .filter(): #21: unignore with 1 globstar ok 1 - should be equivalent 1..1 ok 97 - .filter(): #21: unignore with 1 globstar # time=1.152ms # Subtest: .createFilter(): #21: unignore with 1 globstar ok 1 - should be equivalent 1..1 ok 98 - .createFilter(): #21: unignore with 1 globstar # time=0.89ms # Subtest: .ignores(path): #21: unignore with 1 globstar ok 1 - path: "foo/bar.js" ok 2 - path: "foo/bar2.js" ok 3 - path: "foo/bar/bar.js" 1..3 ok 99 - .ignores(path): #21: unignore with 1 globstar # time=1.826ms # Subtest: .filter(): #21: unignore with 2 globstars ok 1 - should be equivalent 1..1 ok 100 - .filter(): #21: unignore with 2 globstars # time=0.839ms # Subtest: .createFilter(): #21: unignore with 2 globstars ok 1 - should be equivalent 1..1 ok 101 - .createFilter(): #21: unignore with 2 globstars # time=0.867ms # Subtest: .ignores(path): #21: unignore with 2 globstars ok 1 - path: "foo/bar.js" ok 2 - path: "foo/bar2.js" ok 3 - path: "foo/bar/bar.js" 1..3 ok 102 - .ignores(path): #21: unignore with 2 globstars # time=1.404ms # Subtest: .filter(): related to #21: several groups of 2 globstars ok 1 - should be equivalent 1..1 ok 103 - .filter(): related to #21: several groups of 2 globstars # time=0.626ms # Subtest: .createFilter(): related to #21: several groups of 2 globstars ok 1 - should be equivalent 1..1 ok 104 - .createFilter(): related to #21: several groups of 2 globstars # time=1.142ms # Subtest: .ignores(path): related to #21: several groups of 2 globstars ok 1 - path: "foo/bar.js" ok 2 - path: "foo/bar2.js" ok 3 - path: "foo/bar/bar.js" 1..3 ok 105 - .ignores(path): related to #21: several groups of 2 globstars # time=2.786ms # Subtest: .filter(): ignore dot files ok 1 - should be equivalent 1..1 ok 106 - .filter(): ignore dot files # time=1.157ms # Subtest: .createFilter(): ignore dot files ok 1 - should be equivalent 1..1 ok 107 - .createFilter(): ignore dot files # time=0.997ms # Subtest: .ignores(path): ignore dot files ok 1 - path: ".a" ok 2 - path: ".gitignore" 1..2 ok 108 - .ignores(path): ignore dot files # time=0.963ms # Subtest: .filter(): #14, README example broken in `3.0.3` ok 1 - should be equivalent 1..1 ok 109 - .filter(): #14, README example broken in `3.0.3` # time=1.039ms # Subtest: .createFilter(): #14, README example broken in `3.0.3` ok 1 - should be equivalent 1..1 ok 110 - .createFilter(): #14, README example broken in `3.0.3` # time=0.664ms # Subtest: .ignores(path): #14, README example broken in `3.0.3` ok 1 - path: ".abc/a.js" ok 2 - path: ".abc/d/e.js" 1..2 ok 111 - .ignores(path): #14, README example broken in `3.0.3` # time=0.846ms # Subtest: .filter(): #14, README example broken in `3.0.3`, not negate parent folder ok 1 - should be equivalent 1..1 ok 112 - .filter(): #14, README example broken in `3.0.3`, not negate parent folder # time=70.177ms # Subtest: .createFilter(): #14, README example broken in `3.0.3`, not negate parent folder ok 1 - should be equivalent 1..1 ok 113 - .createFilter(): #14, README example broken in `3.0.3`, not negate parent folder # time=0.936ms # Subtest: .ignores(path): #14, README example broken in `3.0.3`, not negate parent folder ok 1 - path: ".abc/a.js" ok 2 - path: ".abc/d/e.js" 1..2 ok 114 - .ignores(path): #14, README example broken in `3.0.3`, not negate parent folder # time=1.028ms # Subtest: .filter(): A blank line matches no files ok 1 - should be equivalent 1..1 ok 115 - .filter(): A blank line matches no files # time=1.026ms # Subtest: .createFilter(): A blank line matches no files ok 1 - should be equivalent 1..1 ok 116 - .createFilter(): A blank line matches no files # time=0.927ms # Subtest: .ignores(path): A blank line matches no files ok 1 - path: "a" ok 2 - path: "a/b/c" 1..2 ok 117 - .ignores(path): A blank line matches no files # time=1.014ms # Subtest: .filter(): A line starting with # serves as a comment. ok 1 - should be equivalent 1..1 ok 118 - .filter(): A line starting with # serves as a comment. # time=0.677ms # Subtest: .createFilter(): A line starting with # serves as a comment. ok 1 - should be equivalent 1..1 ok 119 - .createFilter(): A line starting with # serves as a comment. # time=0.65ms # Subtest: .ignores(path): A line starting with # serves as a comment. ok 1 - path: "#abc" 1..1 ok 120 - .ignores(path): A line starting with # serves as a comment. # time=0.913ms # Subtest: .filter(): Put a backslash ("\") in front of the first hash for patterns that begin with a hash. ok 1 - should be equivalent 1..1 ok 121 - .filter(): Put a backslash ("\") in front of the first hash for patterns that begin with a hash. # time=0.882ms # Subtest: .createFilter(): Put a backslash ("\") in front of the first hash for patterns that begin with a hash. ok 1 - should be equivalent 1..1 ok 122 - .createFilter(): Put a backslash ("\") in front of the first hash for patterns that begin with a hash. # time=0.635ms # Subtest: .ignores(path): Put a backslash ("\") in front of the first hash for patterns that begin with a hash. ok 1 - path: "#abc" 1..1 ok 123 - .ignores(path): Put a backslash ("\") in front of the first hash for patterns that begin with a hash. # time=0.624ms # Subtest: .filter(): Trailing spaces are ignored unless they are quoted with backslash ("\") ok 1 - should be equivalent 1..1 ok 124 - .filter(): Trailing spaces are ignored unless they are quoted with backslash ("\") # time=62.729ms # Subtest: .createFilter(): Trailing spaces are ignored unless they are quoted with backslash ("\") ok 1 - should be equivalent 1..1 ok 125 - .createFilter(): Trailing spaces are ignored unless they are quoted with backslash ("\") # time=0.916ms # Subtest: .ignores(path): Trailing spaces are ignored unless they are quoted with backslash ("\") ok 1 - path: "abc\ " ok 2 - path: "abc " ok 3 - path: "abc " ok 4 - path: "abc " ok 5 - path: "bcd" ok 6 - path: "bcd " ok 7 - path: "bcd " ok 8 - path: "cde " ok 9 - path: "cde " ok 10 - path: "cde " 1..10 ok 126 - .ignores(path): Trailing spaces are ignored unless they are quoted with backslash ("\") # time=3.293ms # Subtest: .filter(): An optional prefix "!" which negates the pattern; any matching file excluded by a previous pattern will become included again ok 1 - should be equivalent 1..1 ok 127 - .filter(): An optional prefix "!" which negates the pattern; any matching file excluded by a previous pattern will become included again # time=1.071ms # Subtest: .createFilter(): An optional prefix "!" which negates the pattern; any matching file excluded by a previous pattern will become included again ok 1 - should be equivalent 1..1 ok 128 - .createFilter(): An optional prefix "!" which negates the pattern; any matching file excluded by a previous pattern will become included again # time=0.758ms # Subtest: .ignores(path): An optional prefix "!" which negates the pattern; any matching file excluded by a previous pattern will become included again ok 1 - path: "abc/a.js" ok 2 - path: "abc/" 1..2 ok 129 - .ignores(path): An optional prefix "!" which negates the pattern; any matching file excluded by a previous pattern will become included again # time=0.998ms # Subtest: .filter(): issue #10: It is not possible to re-include a file if a parent directory of that file is excluded ok 1 - should be equivalent 1..1 ok 130 - .filter(): issue #10: It is not possible to re-include a file if a parent directory of that file is excluded # time=1.059ms # Subtest: .createFilter(): issue #10: It is not possible to re-include a file if a parent directory of that file is excluded ok 1 - should be equivalent 1..1 ok 131 - .createFilter(): issue #10: It is not possible to re-include a file if a parent directory of that file is excluded # time=0.714ms # Subtest: .ignores(path): issue #10: It is not possible to re-include a file if a parent directory of that file is excluded ok 1 - path: "abc/a.js" ok 2 - path: "abc/d/e.js" 1..2 ok 132 - .ignores(path): issue #10: It is not possible to re-include a file if a parent directory of that file is excluded # time=66.165ms # Subtest: .filter(): we did not know whether the rule is a dir first ok 1 - should be equivalent 1..1 ok 133 - .filter(): we did not know whether the rule is a dir first # time=1.509ms # Subtest: .createFilter(): we did not know whether the rule is a dir first ok 1 - should be equivalent 1..1 ok 134 - .createFilter(): we did not know whether the rule is a dir first # time=0.903ms # Subtest: .ignores(path): we did not know whether the rule is a dir first ok 1 - path: "abc/a.js" ok 2 - path: "bcd/abc/a.js" 1..2 ok 135 - .ignores(path): we did not know whether the rule is a dir first # time=0.952ms # Subtest: .filter(): Put a backslash ("\") in front of the first "!" for patterns that begin with a literal "!" ok 1 - should be equivalent 1..1 ok 136 - .filter(): Put a backslash ("\") in front of the first "!" for patterns that begin with a literal "!" # time=1.218ms # Subtest: .createFilter(): Put a backslash ("\") in front of the first "!" for patterns that begin with a literal "!" ok 1 - should be equivalent 1..1 ok 137 - .createFilter(): Put a backslash ("\") in front of the first "!" for patterns that begin with a literal "!" # time=0.71ms # Subtest: .ignores(path): Put a backslash ("\") in front of the first "!" for patterns that begin with a literal "!" ok 1 - path: "!abc" ok 2 - path: "abc" ok 3 - path: "b/!important!.txt" ok 4 - path: "!important!.txt" 1..4 ok 138 - .ignores(path): Put a backslash ("\") in front of the first "!" for patterns that begin with a literal "!" # time=1.521ms # Subtest: .filter(): If the pattern ends with a slash, it is removed for the purpose of the following description, but it would only find a match with a directory ok 1 - should be equivalent 1..1 ok 139 - .filter(): If the pattern ends with a slash, it is removed for the purpose of the following description, but it would only find a match with a directory # time=0.818ms # Subtest: .createFilter(): If the pattern ends with a slash, it is removed for the purpose of the following description, but it would only find a match with a directory ok 1 - should be equivalent 1..1 ok 140 - .createFilter(): If the pattern ends with a slash, it is removed for the purpose of the following description, but it would only find a match with a directory # time=0.665ms # Subtest: .ignores(path): If the pattern ends with a slash, it is removed for the purpose of the following description, but it would only find a match with a directory ok 1 - path: "abc" ok 2 - path: "abc/" ok 3 - path: "bcd/abc/" 1..3 ok 141 - .ignores(path): If the pattern ends with a slash, it is removed for the purpose of the following description, but it would only find a match with a directory # time=1.055ms # Subtest: .filter(): If the pattern does not contain a slash /, Git treats it as a shell glob pattern ok 1 - should be equivalent 1..1 ok 142 - .filter(): If the pattern does not contain a slash /, Git treats it as a shell glob pattern # time=1.112ms # Subtest: .createFilter(): If the pattern does not contain a slash /, Git treats it as a shell glob pattern ok 1 - should be equivalent 1..1 ok 143 - .createFilter(): If the pattern does not contain a slash /, Git treats it as a shell glob pattern # time=1.045ms # Subtest: .ignores(path): If the pattern does not contain a slash /, Git treats it as a shell glob pattern ok 1 - path: "a.js" ok 2 - path: "b/a/a.js" ok 3 - path: "a/a.js" ok 4 - path: "b/a.jsa" ok 5 - path: "f/" ok 6 - path: "g/f/" 1..6 ok 144 - .ignores(path): If the pattern does not contain a slash /, Git treats it as a shell glob pattern # time=3.056ms # Subtest: .filter(): Otherwise, Git treats the pattern as a shell glob suitable for consumption by fnmatch(3) with the FNM_PATHNAME flag ok 1 - should be equivalent 1..1 ok 145 - .filter(): Otherwise, Git treats the pattern as a shell glob suitable for consumption by fnmatch(3) with the FNM_PATHNAME flag # time=1.557ms # Subtest: .createFilter(): Otherwise, Git treats the pattern as a shell glob suitable for consumption by fnmatch(3) with the FNM_PATHNAME flag ok 1 - should be equivalent 1..1 ok 146 - .createFilter(): Otherwise, Git treats the pattern as a shell glob suitable for consumption by fnmatch(3) with the FNM_PATHNAME flag # time=1.196ms # Subtest: .ignores(path): Otherwise, Git treats the pattern as a shell glob suitable for consumption by fnmatch(3) with the FNM_PATHNAME flag ok 1 - path: "a/a.js" ok 2 - path: "a/a.jsa" ok 3 - path: "b/a/a.js" ok 4 - path: "c/a/a.js" 1..4 ok 147 - .ignores(path): Otherwise, Git treats the pattern as a shell glob suitable for consumption by fnmatch(3) with the FNM_PATHNAME flag # time=2.792ms # Subtest: .filter(): wildcards in the pattern will not match a / in the pathname. ok 1 - should be equivalent 1..1 ok 148 - .filter(): wildcards in the pattern will not match a / in the pathname. # time=1.917ms # Subtest: .createFilter(): wildcards in the pattern will not match a / in the pathname. ok 1 - should be equivalent 1..1 ok 149 - .createFilter(): wildcards in the pattern will not match a / in the pathname. # time=1.345ms # Subtest: .ignores(path): wildcards in the pattern will not match a / in the pathname. ok 1 - path: "Documentation/git.html" ok 2 - path: "Documentation/ppc/ppc.html" ok 3 - path: "tools/perf/Documentation/perf.html" 1..3 ok 150 - .ignores(path): wildcards in the pattern will not match a / in the pathname. # time=2.173ms # Subtest: .filter(): A leading slash matches the beginning of the pathname ok 1 - should be equivalent 1..1 ok 151 - .filter(): A leading slash matches the beginning of the pathname # time=1.551ms # Subtest: .createFilter(): A leading slash matches the beginning of the pathname ok 1 - should be equivalent 1..1 ok 152 - .createFilter(): A leading slash matches the beginning of the pathname # time=0.906ms # Subtest: .ignores(path): A leading slash matches the beginning of the pathname ok 1 - path: "cat-file.c" ok 2 - path: "mozilla-sha1/sha1.c" 1..2 ok 153 - .ignores(path): A leading slash matches the beginning of the pathname # time=0.925ms # Subtest: .filter(): A leading "**" followed by a slash means match in all directories ok 1 - should be equivalent 1..1 ok 154 - .filter(): A leading "**" followed by a slash means match in all directories # time=1.278ms # Subtest: .createFilter(): A leading "**" followed by a slash means match in all directories ok 1 - should be equivalent 1..1 ok 155 - .createFilter(): A leading "**" followed by a slash means match in all directories # time=0.809ms # Subtest: .ignores(path): A leading "**" followed by a slash means match in all directories ok 1 - path: "foo" ok 2 - path: "a/foo" ok 3 - path: "foo/a" ok 4 - path: "a/foo/a" ok 5 - path: "a/b/c/foo/a" 1..5 ok 156 - .ignores(path): A leading "**" followed by a slash means match in all directories # time=1.763ms # Subtest: .filter(): "**/foo/bar" matches file or directory "bar" anywhere that is directly under directory "foo" ok 1 - should be equivalent 1..1 ok 157 - .filter(): "**/foo/bar" matches file or directory "bar" anywhere that is directly under directory "foo" # time=1.099ms # Subtest: .createFilter(): "**/foo/bar" matches file or directory "bar" anywhere that is directly under directory "foo" ok 1 - should be equivalent 1..1 ok 158 - .createFilter(): "**/foo/bar" matches file or directory "bar" anywhere that is directly under directory "foo" # time=0.761ms # Subtest: .ignores(path): "**/foo/bar" matches file or directory "bar" anywhere that is directly under directory "foo" ok 1 - path: "foo/bar" ok 2 - path: "abc/foo/bar" ok 3 - path: "abc/foo/bar/" 1..3 ok 159 - .ignores(path): "**/foo/bar" matches file or directory "bar" anywhere that is directly under directory "foo" # time=1.338ms # Subtest: .filter(): A trailing "/**" matches everything inside ok 1 - should be equivalent 1..1 ok 160 - .filter(): A trailing "/**" matches everything inside # time=1.863ms # Subtest: .createFilter(): A trailing "/**" matches everything inside ok 1 - should be equivalent 1..1 ok 161 - .createFilter(): A trailing "/**" matches everything inside # time=0.773ms # Subtest: .ignores(path): A trailing "/**" matches everything inside ok 1 - path: "abc/a/" ok 2 - path: "abc/b" ok 3 - path: "abc/d/e/f/g" ok 4 - path: "bcd/abc/a" ok 5 - path: "abc" 1..5 ok 162 - .ignores(path): A trailing "/**" matches everything inside # time=1.774ms # Subtest: .filter(): A slash followed by two consecutive asterisks then a slash matches zero or more directories ok 1 - should be equivalent 1..1 ok 163 - .filter(): A slash followed by two consecutive asterisks then a slash matches zero or more directories # time=1.097ms # Subtest: .createFilter(): A slash followed by two consecutive asterisks then a slash matches zero or more directories ok 1 - should be equivalent 1..1 ok 164 - .createFilter(): A slash followed by two consecutive asterisks then a slash matches zero or more directories # time=0.939ms # Subtest: .ignores(path): A slash followed by two consecutive asterisks then a slash matches zero or more directories ok 1 - path: "a/b" ok 2 - path: "a/x/b" ok 3 - path: "a/x/y/b" ok 4 - path: "b/a/b" 1..4 ok 165 - .ignores(path): A slash followed by two consecutive asterisks then a slash matches zero or more directories # time=61.38ms # Subtest: .filter(): add a file content ok 1 - should be equivalent 1..1 ok 166 - .filter(): add a file content # time=4.702ms # Subtest: .createFilter(): add a file content ok 1 - should be equivalent 1..1 ok 167 - .createFilter(): add a file content # time=1.048ms # Subtest: .ignores(path): add a file content ok 1 - path: "abc/a.js" ok 2 - path: "abc/b/b.js" ok 3 - path: "#e" ok 4 - path: "#f" 1..4 ok 168 - .ignores(path): add a file content # time=2.275ms # Subtest: .filter(): should excape metacharacters of regular expressions ok 1 - should be equivalent 1..1 ok 169 - .filter(): should excape metacharacters of regular expressions # time=1.898ms # Subtest: .createFilter(): should excape metacharacters of regular expressions ok 1 - should be equivalent 1..1 ok 170 - .createFilter(): should excape metacharacters of regular expressions # time=3.244ms # Subtest: .ignores(path): should excape metacharacters of regular expressions ok 1 - path: "*.js" ok 2 - path: "abc.js" ok 3 - path: "a#b.js" ok 4 - path: "abc" ok 5 - path: "#abc" ok 6 - path: "?.js" 1..6 ok 171 - .ignores(path): should excape metacharacters of regular expressions # time=1.905ms # Subtest: .filter(): issue #2: question mark should not break all things ok 1 - should be equivalent 1..1 ok 172 - .filter(): issue #2: question mark should not break all things # time=3.048ms # Subtest: .createFilter(): issue #2: question mark should not break all things ok 1 - should be equivalent 1..1 ok 173 - .createFilter(): issue #2: question mark should not break all things # time=0.83ms # Subtest: .ignores(path): issue #2: question mark should not break all things ok 1 - path: ".project" ok 2 - path: "abc/.project" ok 3 - path: ".a.sw" ok 4 - path: ".a.sw?" ok 5 - path: "thumbs.db" 1..5 ok 174 - .ignores(path): issue #2: question mark should not break all things # time=1.612ms # Subtest: .filter(): dir ended with "*" ok 1 - should be equivalent 1..1 ok 175 - .filter(): dir ended with "*" # time=0.85ms # Subtest: .createFilter(): dir ended with "*" ok 1 - should be equivalent 1..1 ok 176 - .createFilter(): dir ended with "*" # time=0.621ms # Subtest: .ignores(path): dir ended with "*" ok 1 - path: "abc" 1..1 ok 177 - .ignores(path): dir ended with "*" # time=0.66ms # Subtest: .filter(): file ended with "*" ok 1 - should be equivalent 1..1 ok 178 - .filter(): file ended with "*" # time=0.864ms # Subtest: .createFilter(): file ended with "*" ok 1 - should be equivalent 1..1 ok 179 - .createFilter(): file ended with "*" # time=1.258ms # Subtest: .ignores(path): file ended with "*" ok 1 - path: "abc.js/" ok 2 - path: "abc.js/abc" ok 3 - path: "abc.jsa/" ok 4 - path: "abc.jsa/abc" 1..4 ok 180 - .ignores(path): file ended with "*" # time=1.443ms # Subtest: .filter(): wildcard as filename ok 1 - should be equivalent 1..1 ok 181 - .filter(): wildcard as filename # time=1.134ms # Subtest: .createFilter(): wildcard as filename ok 1 - should be equivalent 1..1 ok 182 - .createFilter(): wildcard as filename # time=0.693ms # Subtest: .ignores(path): wildcard as filename ok 1 - path: "b/a.b" ok 2 - path: "b/.b" ok 3 - path: "b/.ba" ok 4 - path: "b/c/a.b" 1..4 ok 183 - .ignores(path): wildcard as filename # time=1.36ms # Subtest: .filter(): slash at the beginning and come with a wildcard ok 1 - should be equivalent 1..1 ok 184 - .filter(): slash at the beginning and come with a wildcard # time=0.681ms # Subtest: .createFilter(): slash at the beginning and come with a wildcard ok 1 - should be equivalent 1..1 ok 185 - .createFilter(): slash at the beginning and come with a wildcard # time=0.669ms # Subtest: .ignores(path): slash at the beginning and come with a wildcard ok 1 - path: ".c" ok 2 - path: "c.c" ok 3 - path: "c/c.c" ok 4 - path: "c/d" 1..4 ok 186 - .ignores(path): slash at the beginning and come with a wildcard # time=1.736ms # Subtest: .filter(): dot file ok 1 - should be equivalent 1..1 ok 187 - .filter(): dot file # time=1.059ms # Subtest: .createFilter(): dot file ok 1 - should be equivalent 1..1 ok 188 - .createFilter(): dot file # time=0.774ms # Subtest: .ignores(path): dot file ok 1 - path: ".d" ok 2 - path: ".dd" ok 3 - path: "d.d" ok 4 - path: "d/.d" ok 5 - path: "d/d.d" ok 6 - path: "d/e" 1..6 ok 189 - .ignores(path): dot file # time=1.702ms # Subtest: .filter(): dot dir ok 1 - should be equivalent 1..1 ok 190 - .filter(): dot dir # time=0.883ms # Subtest: .createFilter(): dot dir ok 1 - should be equivalent 1..1 ok 191 - .createFilter(): dot dir # time=62.505ms # Subtest: .ignores(path): dot dir ok 1 - path: ".e/" ok 2 - path: ".ee/" ok 3 - path: "e.e/" ok 4 - path: ".e/e" ok 5 - path: "e/.e" ok 6 - path: "e/e.e" ok 7 - path: "e/f" 1..7 ok 192 - .ignores(path): dot dir # time=2.259ms # Subtest: .filter(): node modules: once ok 1 - should be equivalent 1..1 ok 193 - .filter(): node modules: once # time=1.033ms # Subtest: .createFilter(): node modules: once ok 1 - should be equivalent 1..1 ok 194 - .createFilter(): node modules: once # time=0.666ms # Subtest: .ignores(path): node modules: once ok 1 - path: "node_modules/gulp/node_modules/abc.md" ok 2 - path: "node_modules/gulp/node_modules/abc.json" 1..2 ok 195 - .ignores(path): node modules: once # time=0.807ms # Subtest: .filter(): node modules: sub directories ok 1 - should be equivalent 1..1 ok 196 - .filter(): node modules: sub directories # time=1.02ms # Subtest: .createFilter(): node modules: sub directories ok 1 - should be equivalent 1..1 ok 197 - .createFilter(): node modules: sub directories # time=0.658ms # Subtest: .ignores(path): node modules: sub directories ok 1 - path: "a/b/node_modules/abc.md" 1..1 ok 198 - .ignores(path): node modules: sub directories # time=0.695ms # Subtest: .filter(): node modules: twice ok 1 - should be equivalent 1..1 ok 199 - .filter(): node modules: twice # time=0.973ms # Subtest: .createFilter(): node modules: twice ok 1 - should be equivalent 1..1 ok 200 - .createFilter(): node modules: twice # time=0.896ms # Subtest: .ignores(path): node modules: twice ok 1 - path: "node_modules/gulp/node_modules/abc.md" ok 2 - path: "node_modules/gulp/node_modules/abc.json" 1..2 ok 201 - .ignores(path): node modules: twice # time=0.934ms # Subtest: .filter(): unicode characters in windows paths ok 1 - should be equivalent 1..1 ok 202 - .filter(): unicode characters in windows paths # time=1.19ms # Subtest: .createFilter(): unicode characters in windows paths ok 1 - should be equivalent 1..1 ok 203 - .createFilter(): unicode characters in windows paths # time=0.748ms # Subtest: .ignores(path): unicode characters in windows paths ok 1 - path: "some/path/to/test/ignored.js" ok 2 - path: "some/special/path/to/目录/test/ignored.js" 1..2 ok 204 - .ignores(path): unicode characters in windows paths # time=1.926ms # Subtest: .filter(): linux: back slashes on paths ok 1 - should be equivalent 1..1 ok 205 - .filter(): linux: back slashes on paths # time=1.317ms # Subtest: .createFilter(): linux: back slashes on paths ok 1 - should be equivalent 1..1 ok 206 - .createFilter(): linux: back slashes on paths # time=0.973ms # Subtest: .ignores(path): linux: back slashes on paths ok 1 - path: "b\c/a.md" ok 2 - path: "a\b/a.js" ok 3 - path: "a\b/a" ok 4 - path: "a/a.js" 1..4 ok 207 - .ignores(path): linux: back slashes on paths # time=2.204ms 1..207 # time=2444.438ms ok 1 - test/ignore.js # time=3867.728ms 1..1 # time=3893.5ms tap test/others.js TAP version 13 # Subtest: test/others.js # Subtest: .add(<Ignore>) ok 1 - should be equivalent ok 2 - should be equivalent 1..2 ok 1 - .add(<Ignore>) # time=13.806ms # Subtest: fixes babel class 1..0 ok 2 - fixes babel class # time=1.329ms # Subtest: #32 ok 1 - should be equivalent ok 2 - should be equivalent 1..2 ok 3 - #32 # time=2.299ms # Subtest: options.ignorecase ok 1 - should be equal ok 2 - should be equal ok 3 - should be equal 1..3 ok 4 - options.ignorecase # time=3.535ms # Subtest: special case: invalid paths, throw ok 1 - path must be a string, but got "" ok 2 - path must be a string, but got `false` ok 3 - path must be `path.relative()`d, but got "/a" ok 4 - path must be a string, but got "" ok 5 - path must be a string, but got "" 1..5 ok 5 - special case: invalid paths, throw # time=5.815ms # Subtest: isPathValid ok 1 - should be equivalent 1..1 ok 6 - isPathValid # time=1.34ms # Subtest: test: no rule ok 1 - should be equivalent 1..1 ok 7 - test: no rule # time=1.373ms # Subtest: test: has rule, no match ok 1 - should be equivalent 1..1 ok 8 - test: has rule, no match # time=1.308ms # Subtest: test: only negative ok 1 - should be equivalent 1..1 ok 9 - test: only negative # time=1.149ms # Subtest: test: ignored then unignored ok 1 - should be equivalent 1..1 ok 10 - test: ignored then unignored # time=0.96ms # Subtest: test: dir ignored then unignored -> not matched ok 1 - should be equivalent 1..1 ok 11 - test: dir ignored then unignored -> not matched # time=0.999ms # Subtest: test: ignored by wildcard, then unignored ok 1 - should be equivalent 1..1 ok 12 - test: ignored by wildcard, then unignored # time=1.803ms 1..12 # time=127.581ms ok 1 - test/others.js # time=1385.614ms 1..1 # time=1413.875ms make[1]: Leaving directory '/build/node-ignore-sYj2eH/node-ignore-5.1.4' create-stamp debian/debhelper-build-stamp dh_testroot -i dh_prep -i dh_install -i debian/rules override_dh_installdocs make[1]: Entering directory '/build/node-ignore-sYj2eH/node-ignore-5.1.4' dh_installdocs --all -- README.html README.txt make[1]: Leaving directory '/build/node-ignore-sYj2eH/node-ignore-5.1.4' debian/rules override_dh_installchangelogs make[1]: Entering directory '/build/node-ignore-sYj2eH/node-ignore-5.1.4' dh_installchangelogs -- CHANGELOG.html CHANGELOG.txt make[1]: Leaving directory '/build/node-ignore-sYj2eH/node-ignore-5.1.4' 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 dh_md5sums -i dh_builddeb -i dpkg-deb: building package 'node-ignore' in '../node-ignore_5.1.4-5_all.deb'. dpkg-genbuildinfo --build=all dpkg-genchanges --build=all >../node-ignore_5.1.4-5_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-ignore-sYj2eH /tmp/node-ignore-5.1.4-5vx8vlb6q I: cleaning package lists and apt cache... I: creating tarball... I: done I: removing tempdir /tmp/mmdebstrap.G54xmz99jD... I: success in 296.8761 seconds md5: node-ignore_5.1.4-5_all.deb: OK sha1: node-ignore_5.1.4-5_all.deb: OK sha256: node-ignore_5.1.4-5_all.deb: OK Checksums: OK