{"_id":"tap","_rev":"584-321d6f2037a9de506752a6abfc8423a3","name":"tap","description":"A Test-Anything-Protocol library for JavaScript","dist-tags":{"latest":"18.7.2","legacy":"12.7.0","unbundled":"14.10.2-unbundled","totally-bundled":"14.10.2-totally-bundled.1","v15-beta":"15.0.0-3","v14-legacy":"14.11.0","legacy-v16":"16.3.10"},"versions":{"0.0.1":{"name":"tap","version":"0.0.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"tap-global-harness":"0.x","tap-runner":"0.x","tap-assert":"0.x","tap-test":"0.x","tap-harness":"0.x","tap-results":"0.x","tap-consumer":"0.x","tap-producer":"0.x","inherits":"*","yamlish":"*"},"bundledDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"],"scripts":{"test":"bin/tap.js test"},"devDependencies":{},"_id":"tap@0.0.1","engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.1rc9","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"3191489eb3678e12922c999a1b233dfcedbf8dd9","tarball":"https://registry.npmjs.org/tap/-/tap-0.0.1.tgz","integrity":"sha512-C6MNqK00NOCyitpNNu1I5LSE3SsPkcrp56eJabgPBQAUrXqZynCZzhlWBdm/VMxrj8Yu4mC1vjG2QMXW0SyoCw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGoHt6lVaiz1zaC68ecqKwHFg5tviQZvqjPLXJhWITinAiEArfAkl9SvetqMUYDDWvxNBvqqxIwkkXmL0HUKZKU6lPw="}]},"directories":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"bundleDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"]},"0.0.2":{"name":"tap","version":"0.0.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"tap-global-harness":"0.x","tap-runner":"0.x","tap-assert":"0.x","tap-test":"0.x","tap-harness":"0.x","tap-results":"0.x","tap-consumer":"0.x","tap-producer":"0.x","inherits":"*","yamlish":"*"},"bundledDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"],"scripts":{"test":"bin/tap.js test"},"_npmJsonOpts":{"file":"/Users/isaacs/.npm/tap/0.0.2/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"tap@0.0.2","devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.13","_nodeVersion":"v0.5.0-pre","_defaultsLoaded":true,"dist":{"shasum":"de4383a6c8677fc03a393b5f99e795c65137c456","tarball":"https://registry.npmjs.org/tap/-/tap-0.0.2.tgz","integrity":"sha512-xyHTKPRKMHsKItIuE1BPI1yreXqQtAbrGmyX3OScDo27V1mBZZH8/8Uy6Fit3V9E8/M/fcJQ7rUnT/CjI4pOrw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD0ynXc93S4REIsKh+3+6eCuU+1QV9QHFvozXFq85BwMwIgMs2qrHNG6xZpQP+/y/w2zG581j60XEwDgqUB8QApyn0="}]},"directories":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"bundleDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"]},"0.0.3":{"name":"tap","version":"0.0.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"tap-global-harness":"0.x","tap-runner":"0.x","tap-assert":"0.x","tap-test":"0.x","tap-harness":"0.x","tap-results":"0.x","tap-consumer":"0.x","tap-producer":"0.x","inherits":"*","yamlish":"*"},"bundledDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"],"scripts":{"test":"bin/tap.js test"},"_npmJsonOpts":{"file":"/Users/isaacs/.npm/tap/0.0.3/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"tap@0.0.3","devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.15","_nodeVersion":"v0.4.9-pre","_defaultsLoaded":true,"dist":{"shasum":"ee2b4695bf2da7f524c8d834ef63805ce2722618","tarball":"https://registry.npmjs.org/tap/-/tap-0.0.3.tgz","integrity":"sha512-b7PaK+A+EjTTPNQ+GWJ4bdDQ67cfpKPlMt16feBBovcKUWwaaWt3A0B0uZ6lf5+58ETFzBOiCBj+T8Au2Zxvig==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD98SMB+5GlZD8q+BKHRQPaV/vOJLzo+zI/3qAKazVixwIhAN7jMhdqetrRNo1LXEhJLdTYy43eilhNJ/IWcKzsTSlK"}]},"directories":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"bundleDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"]},"0.0.4":{"name":"tap","version":"0.0.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"tap-global-harness":"0.x","tap-runner":"0.x >=0.0.4","tap-assert":"0.x","tap-test":"0.x","tap-harness":"0.x","tap-results":"0.x","tap-consumer":"0.x","tap-producer":"0.x","inherits":"*","yamlish":"*"},"bundledDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"],"scripts":{"test":"bin/tap.js test"},"_npmJsonOpts":{"file":"/Users/isaacs/.npm/tap/0.0.4/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"tap@0.0.4","devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.15","_nodeVersion":"v0.4.9-pre","_defaultsLoaded":true,"dist":{"shasum":"82c4f40d5ff6971a3d8d71d757ff265dc9167079","tarball":"https://registry.npmjs.org/tap/-/tap-0.0.4.tgz","integrity":"sha512-I+P7a5ZYbXyR5Le9gD8Y1DHXY6yzN2HpvkS0d8J0PqCcT5G8mvdrTJRfakolaamOnXZ7KTjxJAoAFAcv6Yc/oQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBq6SEbBcbo9CUFLvXJVMoiwmm+WVJvlRPAkudcBq/uwIgOdpPNfBFdiUnk8tZJ2amtgB3OX+TqziNKJ62iTSFJwA="}]},"directories":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"bundleDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"]},"0.0.5":{"name":"tap","version":"0.0.5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"tap-global-harness":"0.x","tap-runner":"0.x >=0.0.4","tap-assert":"0.x","tap-test":"0.x","tap-harness":"0.x","tap-results":"0.x","tap-consumer":"0.x","tap-producer":"0.x","inherits":"*","yamlish":"*"},"bundledDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"],"scripts":{"test":"bin/tap.js test"},"_npmJsonOpts":{"file":"/Users/isaacs/.npm/tap/0.0.5/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"tap@0.0.5","devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.15","_nodeVersion":"v0.4.9-pre","_defaultsLoaded":true,"dist":{"shasum":"813953aa437849d13491338663d5b5878ad7915e","tarball":"https://registry.npmjs.org/tap/-/tap-0.0.5.tgz","integrity":"sha512-lPyFqvsNqH1S6kyv6nWfjdE7DaBHVb+eBBPIflK/RVjm7wf7imHxO8BlTL2sZUYji1LhJL238KAcBsi3KhQIqA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDMLkN5UYDPZPTNxe0S+ZktYEucutUTkEbD69EvtE5BcAIhANs/ou4npJNsh9IhvMkRpIjiWl2fuo1RyMhd6fkW+Z+r"}]},"directories":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"bundleDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"]},"0.0.6":{"name":"tap","version":"0.0.6","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"tap-global-harness":"0.x","tap-runner":"0.x >=0.0.4","tap-assert":"0.x","tap-test":"0.x","tap-harness":"0.x","tap-results":"0.x","tap-consumer":"0.x","tap-producer":"0.x","inherits":"*","yamlish":"*"},"bundledDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"],"scripts":{"test":"bin/tap.js test"},"_npmJsonOpts":{"file":"/Users/isaacs/.npm/tap/0.0.6/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"tap@0.0.6","devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.18","_nodeVersion":"v0.4.10-pre","_defaultsLoaded":true,"dist":{"shasum":"6b0a2a743ffed5e62be1dafc2b3daf6b03c8697b","tarball":"https://registry.npmjs.org/tap/-/tap-0.0.6.tgz","integrity":"sha512-iPwxcDFsi3GqGp/ngMY85siKrGpD+tQqd6htd2MOTQjJsWReAgj3VAPdhxohiQ+AQQ+f2Ol71AX/RaeJhck5xg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC+eoJlGgubYip597e5oznRARSm8OpVQdvmqKNvAbVESgIhAMaD/lHvk9edlYhbFSIqiSv/U2ayVrKflFtw6VOoFYKk"}]},"directories":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"bundleDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"]},"0.0.7":{"name":"tap","version":"0.0.7","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"tap-global-harness":"0.x","tap-runner":"0.x >=0.0.4","tap-assert":"0.x","tap-test":"0.x","tap-harness":"0.x","tap-results":"0.x","tap-consumer":"0.x","tap-producer":"0.x","inherits":"*","yamlish":"*"},"bundledDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"],"scripts":{"test":"bin/tap.js test"},"_npmJsonOpts":{"file":"/Users/isaacs/.npm/tap/0.0.7/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"tap@0.0.7","devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.22","_nodeVersion":"v0.4.10-pre","_defaultsLoaded":true,"dist":{"shasum":"fc7b0d14d7a5185cf8be4184d1b04a7b86aa0fdc","tarball":"https://registry.npmjs.org/tap/-/tap-0.0.7.tgz","integrity":"sha512-SmAVIYNI1cXfHv88WByLSviX+TW9bXnA+vPxUwU39dIjnd9x9xF1Ibgd5V9XKXTi+jNmQnnDrjmHRCclo9IYuA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDwB2XVzOD7GichqCJMhczugW1U0HpbxULN5ZcIdlPCfAiEA4rosRqBPEFOu2rz6FibFHSmrUbrh8f0ZQI2Tn+skQ6o="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"bundleDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"]},"0.0.8":{"name":"tap","version":"0.0.8","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"tap-global-harness":"0.x","tap-runner":"0.x >=0.0.4","tap-assert":"0.x","tap-test":"0.x","tap-harness":"0.x","tap-results":"0.x","tap-consumer":"0.x","tap-producer":"0.x","inherits":"*","yamlish":"*"},"bundledDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"],"scripts":{"test":"bin/tap.js test"},"_npmJsonOpts":{"file":"/Users/isaacs/.npm/tap/0.0.8/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"tap@0.0.8","devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.22","_nodeVersion":"v0.4.10-pre","_defaultsLoaded":true,"dist":{"shasum":"f3ac8c951ad185c07d16c1c963bde6ec12db0e98","tarball":"https://registry.npmjs.org/tap/-/tap-0.0.8.tgz","integrity":"sha512-TTP1O5Fsu+ca4cWe+zi1rANHlA2HuK2J99iBuQPUxXeRVqOTinJlIj/DTltwTF5Wilw6+DvlCMPMLfIhlRPQiQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB2TK8h557XuAnDo+it6ExW1TXu4MzL0+lFAYlJPNIteAiAIpAxhqA/Td3CMmCu/5JeY2IIhs+ZUM3qqQpMHSW2XJg=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"bundleDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"]},"0.0.9":{"name":"tap","version":"0.0.9","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"tap-global-harness":"0.x","tap-runner":"0.x >=0.0.4","tap-assert":"0.x","tap-test":"0.x","tap-harness":"0.x","tap-results":"0.x","tap-consumer":"0.x","tap-producer":"0.x","inherits":"*","yamlish":"*"},"bundledDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"],"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test"},"_npmJsonOpts":{"file":"/Users/isaacs/.npm/tap/0.0.9/package/package.json","wscript":false,"contributors":false,"serverjs":false},"_id":"tap@0.0.9","devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.27","_nodeVersion":"v0.4.11","_defaultsLoaded":true,"dist":{"shasum":"78db1b1df7ce306ffe91c6bd7a6b43bf853568ce","tarball":"https://registry.npmjs.org/tap/-/tap-0.0.9.tgz","integrity":"sha512-u3Qqh55/9kqOQHirWFNlxTKDI88wTZoxWPKAJyByUrK3eFPUvIVvRmQAGnwvcTfhstmeeBkLj84v/1sr0/pD9Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICIsGE2loZSNpa/DhcS1wFf4brvfddBIG/Uy6fo5d1MpAiA2GejPJTkIAEyseyYzGgLi+wOsywzKdvrzDmsOU3FgSw=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"bundleDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"]},"0.0.10":{"name":"tap","version":"0.0.10","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"tap-global-harness":"0.x","tap-runner":"0.x >=0.0.4","tap-assert":"0.x","tap-test":"0.x","tap-harness":"0.x","tap-results":"0.x","tap-consumer":"0.x","tap-producer":"0.x","inherits":"*","yamlish":"*"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"tap@0.0.10","bundleDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"],"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.93","_nodeVersion":"v0.5.9-pre","_defaultsLoaded":true,"dist":{"shasum":"43e0b6f921280130b3525aa50b6e47dc0b2406a4","tarball":"https://registry.npmjs.org/tap/-/tap-0.0.10.tgz","integrity":"sha512-3YsX8JqE3l1wrNG6RN7cWafWXPajhNoI0fFjZXnPhaMK4aSh3fSjP7t3En3EjqEe3CTFyBw6yVxmaULc60xC2A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDP+E7HYJyArFo8YVWDL+VxJT2gBCQuAg2r4oASI2Q/ugIhANi0wZl6xiGFb3KLuub/1b8rlNiRQBEJ9Fda2WTnS9jE"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.0.11":{"name":"tap","version":"0.0.11","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"tap-global-harness":"0.x","tap-runner":"0.x >=0.0.6","tap-assert":"0.x","tap-test":"0.x","tap-harness":"0.x","tap-results":"0.x","tap-consumer":"0.x","tap-producer":"0.x","inherits":"*","yamlish":"*"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"tap@0.0.11","bundleDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"],"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.94","_nodeVersion":"v0.5.10-pre","_defaultsLoaded":true,"dist":{"shasum":"8a1e5a8e56a57cae969323684a3838d93d934830","tarball":"https://registry.npmjs.org/tap/-/tap-0.0.11.tgz","integrity":"sha512-AvCK5zV743VtMs1HjIAkACB8Iflr2H4LQM4b0LokZUidKbvXnuF0enB5afulC7qfRQdtW53a5pJqbxsPqgFNLg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF0MCSAYSi6gRqSxof+8ofiqbXz5OMzWouigK6AoUCWvAiA7gClLZ3YqRgezT90r4oD+p5HI9kfaByYNfTJ1S8fAfg=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.0.12":{"name":"tap","version":"0.0.12","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"tap-global-harness":"0.x","tap-runner":"0.x >=0.0.6","tap-assert":"0.x","tap-test":"0.x","tap-harness":"0.x","tap-results":"0.x","tap-consumer":"0.x","tap-producer":"0.x","inherits":"*","yamlish":"*"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"tap@0.0.12","bundleDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"],"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.101","_nodeVersion":"v0.5.11-pre","_defaultsLoaded":true,"dist":{"shasum":"9327c627ff14ee6a120c811e89536394f175dce7","tarball":"https://registry.npmjs.org/tap/-/tap-0.0.12.tgz","integrity":"sha512-faPRDIWghxudKppBe2Kn1gkhP8FTxq+gIfFm6PGyB7M2wPL9tzqlUuPSDBEho6nYFNanYEADrP9zKTeNfuftyQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCVk/LbYrTB+cNTfamxal3vZlGoJcg2a3fl/CBUXAWdTAIhANmIRJ9EQW+ykg48jXawkhSwPlpgqG72txsH8o6e1s96"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.0.13":{"name":"tap","version":"0.0.13","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"tap-global-harness":"0.x","tap-runner":"0.x >=0.0.6","tap-assert":"0.x","tap-test":"0.x","tap-harness":"0.x","tap-results":"0.x","tap-consumer":"0.x","tap-producer":"0.x","inherits":"*","yamlish":"*"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"tap@0.0.13","bundleDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"],"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.104","_nodeVersion":"v0.6.1-pre","_defaultsLoaded":true,"dist":{"shasum":"5eb641fc2ef3758cd2c8687236a17c27fe19f10e","tarball":"https://registry.npmjs.org/tap/-/tap-0.0.13.tgz","integrity":"sha512-o+FkDwyOdJIHt6X4Ckt3xvd6dYdZvy9t8MFeNCqFIliOGBfzZPV7mwK4JVTV8YatMGkCEpkwh6fQw5FYOnWXlA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHfzqzFaRn9xJy1uV4B4ckb6Aci89n4zbnEiPELMI8KXAiBRJsWKhfS+UpKVEXkXbfz/+YkbjaZxI5z86cwAJTf40g=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.0.14":{"name":"tap","version":"0.0.14","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"tap-global-harness":"0.x","tap-runner":"0.x >=0.0.6","tap-assert":"0.x","tap-test":"0.x","tap-harness":"0.x","tap-results":"0.x","tap-consumer":"0.x","tap-producer":"0.x","inherits":"*","yamlish":"*"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"tap@0.0.14","bundleDependencies":["inherits","tap-assert","tap-consumer","tap-global-harness","tap-harness","tap-producer","tap-results","tap-test","yamlish"],"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.0.105","_nodeVersion":"v0.6.1-pre","_defaultsLoaded":true,"dist":{"shasum":"a70180fde9b1dd99f66c6482fa975d18761c3e03","tarball":"https://registry.npmjs.org/tap/-/tap-0.0.14.tgz","integrity":"sha512-tS8fD6TqDunsY4Hzk3fDyui7NL2ZvK7k8FRhpXghzgemzLj4fxnftZFw8MYIeZB6vfQXa5nzn8Ypkx7bniOKSA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCANm3GyVBrCbBWz8VgiHKCm+rYFdIPRnw6Q6TLf6NBQwIhAOYVlnshW+C4lVcqSWO88LEdUtOqWck8enZgiLiLCfMG"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.1.0":{"name":"tap","version":"0.1.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"tap@0.1.0","bundleDependencies":["inherits","tap-consumer","yamlish"],"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.0-alpha","_nodeVersion":"v0.6.2-pre","_defaultsLoaded":true,"dist":{"shasum":"088f93d32a8731606665f5f2ec96aed4820e97e7","tarball":"https://registry.npmjs.org/tap/-/tap-0.1.0.tgz","integrity":"sha512-tUPuSvqCJVnHrDt/QZhGBxE0oq1D/J/gJpomySA/iAIFMASl7IRmxq8hNsWFFIp/U/wWf2zxmr4zrGaie/agPg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCmP7j5lemlZ7hW6bi1/f0STGpKy1K8+2/4z7eVVuxAxQIhAPPfe9xCEc1cIUfGs1cdH2HuDkD5LrYjE6dfdbLjmi6m"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.1.1":{"name":"tap","version":"0.1.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"0.0.1"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"tap@0.1.1","bundleDependencies":["inherits","tap-consumer","yamlish"],"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.0-alpha-6","_nodeVersion":"v0.6.6-pre","_defaultsLoaded":true,"dist":{"shasum":"949899f3f34bda1321b798ddf21a99a3393052bc","tarball":"https://registry.npmjs.org/tap/-/tap-0.1.1.tgz","integrity":"sha512-hLQW69+8gnUPgq5IO3WUKfeZb53Wj18WUQnhZKvx14hVXoVCdkVpns03bbuoY0sQBZLZHZHl/zLOatgsGvOVmg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBtJnB2nMObVPpRhjSe+XNL8k+pKai6n67m2CAFw7ABmAiEAp699Pap4TZuz7ScpnhYWQSikl6/1CGy7kQ2x1CEyC9g="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.1.2":{"name":"tap","version":"0.1.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"0.0.1"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"tap@0.1.2","bundleDependencies":["inherits","tap-consumer","yamlish"],"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.0-alpha-6","_nodeVersion":"v0.6.6-pre","_defaultsLoaded":true,"dist":{"shasum":"37a6a9bfd55fe8a8326e5aa5d2bdd32ca88813a2","tarball":"https://registry.npmjs.org/tap/-/tap-0.1.2.tgz","integrity":"sha512-M2Hrrx8SXmCMmoR4b+FbtBXqcw/QR9IOP/Hokp8QJ+zifNoOtGWur7jgavoPzUyQ63s7z4tJ1vvdu/+rMJn+1w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCc6hLB1LTWE03kFvZ9Demc8ggOtXdMDP6+da1QlEhaIQIgAZAHTDQrDouX2II8+F+iCqafRzzH9AnFyWOVHUxHvCY="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.1.3":{"name":"tap","version":"0.1.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"tap@0.1.3","bundleDependencies":["inherits","tap-consumer","yamlish"],"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.0-beta-0","_nodeVersion":"v0.6.6-pre","_defaultsLoaded":true,"dist":{"shasum":"a30186470e79eb09fa1c522177ebdde5a2f701d6","tarball":"https://registry.npmjs.org/tap/-/tap-0.1.3.tgz","integrity":"sha512-HiELzC+wwX7B+/Aup+uKhfYm4hWZy6IFy84T96XW4jlCAQ0vttmHjwinmN/nSyNSxwEVbQMaC5CQ2DfGULQCaQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAcuUJO+aopXv10BX1qDi/PBXWHTUcYG0BQ7o6Vn+Dq9AiEAxs9+blj7lahGGxWF93adocWzvlndssib4AIvWxsblvY="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.1.4":{"name":"tap","version":"0.1.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"tap@0.1.4","bundleDependencies":["inherits","tap-consumer","yamlish"],"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.0-beta-10","_nodeVersion":"v0.6.7-pre","_defaultsLoaded":true,"dist":{"shasum":"4c0ea8f5b6a768621c38e0de2d7f358bc454a8b8","tarball":"https://registry.npmjs.org/tap/-/tap-0.1.4.tgz","integrity":"sha512-VUUZqrApxvJa1He4Da5eq4Cu0BNQDSvmtEqv+8VLSD7cJvExIbgJgnI+sWA6U3sHWy0V7NwOTEDbh+ADExhBag==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDz0zDNKNoYEt3vsusPUE8MdVomXwaSTm0btVx/HDhMFQIgCRi1JfV1ZBVYhjA4hBpW6zh8m9XCVWj/IN6iFH3v1Pc="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.0":{"name":"tap","version":"0.2.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~1.0.10","mkdirp":"~0.2.2"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"tap@0.2.0","bundleDependencies":["inherits","tap-consumer","yamlish"],"devDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.0-beta-10","_nodeVersion":"v0.6.8-pre","_defaultsLoaded":true,"dist":{"shasum":"ed10e53a18dd89e1c530670eaf39ca79a4f54bdc","tarball":"https://registry.npmjs.org/tap/-/tap-0.2.0.tgz","integrity":"sha512-NYKEuAxR9EVTwNqwYJgZtVHTbFfAZSdTgL7aGevjZCBG0CkTDlWFTFn5NtRxzlOLWlLEgu6SUtTlZx7mfiAijA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCiicFb2jMrAbqDXqHzMLaeZiSRhSafBzlGGA+jbDIrKgIhAKU3BGHsn5rTu34q7w/wlyCyeZHEoWKsCTGcPhyU3J51"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.1":{"name":"tap","version":"0.2.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~1.0.10","mkdirp":"~0.2.2","difflet":"0.2.0"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"tap@0.2.1","bundleDependencies":["inherits","tap-consumer","yamlish"],"devDependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.1","_nodeVersion":"v0.7.5-pre","_defaultsLoaded":true,"dist":{"shasum":"feb2978390cda4b075a059a46b531b95c2d754dc","tarball":"https://registry.npmjs.org/tap/-/tap-0.2.1.tgz","integrity":"sha512-GhV4UnAE8bz1R6t2ROSlQec/Dwl6DwsnBschcBsTdTDxAio8l/HLEIwuWe6M0o8AaJ0wknlSv3gMRPdwq9XyIw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFGVGHRJ/+2qTXX393tRTfJx94LqRk7DvxKJ2855TW8lAiEAtK2R6t+DTlIgz5+dOlCky+ZJb/jBpGaSKDIYPvZKMdw="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.2":{"name":"tap","version":"0.2.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~1.0.10","mkdirp":"~0.2.2","difflet":"0.2.0","deep-equal":"~0.0.0"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"tap@0.2.2","bundleDependencies":["inherits","tap-consumer","yamlish"],"devDependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.0-3","_nodeVersion":"v0.6.9","_defaultsLoaded":true,"dist":{"shasum":"f2b44caed03b63028492e2ab3ac02852bf9cb6ef","tarball":"https://registry.npmjs.org/tap/-/tap-0.2.2.tgz","integrity":"sha512-oWiHQyC17r92HQsNuHHvjv0EuXo6rDrGpDawLYyo+uHO+v8ssyHsC1psgvfNsZoRsEaoLDoaOw6bILisf8H/DQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF0TLg48iOH5Er0rWFiPklj4MQGsAYnEYo/Q2stqmqQvAiEAuUGY9o8zBFE/53xnWFqJ//DPOSGQshDkBGqTkLXEoew="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.3":{"name":"tap","version":"0.2.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~1.0.10","mkdirp":"~0.2.2","difflet":"0.2.0","deep-equal":"~0.0.0"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"tap@0.2.3","bundleDependencies":["inherits","tap-consumer","yamlish"],"devDependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.1","_nodeVersion":"v0.7.5-pre","_defaultsLoaded":true,"dist":{"shasum":"35e278d349753752185d27fcb41e5915d78b3ed8","tarball":"https://registry.npmjs.org/tap/-/tap-0.2.3.tgz","integrity":"sha512-PMm0Wq+ymQsiHGWbaoJA57CkyI4BG8gThgtRtFjGPaKSNXmhu88J9EC3dC4a0F4ihFeYvgm0bSFLLRKFc1EqTw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBbQPnhBR+QR0XWUDjAa7qO0V+2GDg2jSwvIP19sxx5OAiEAxsanA/clStgs/pAPLOjPjXTyjMPqZoAX4ZygQjDFcR4="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.4":{"name":"tap","version":"0.2.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~1.0.10","mkdirp":"~0.3","difflet":"~0.2.0","deep-equal":"~0.0.0"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"tap@0.2.4","bundleDependencies":["inherits","tap-consumer","yamlish"],"devDependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.9","_nodeVersion":"v0.7.7-pre","_defaultsLoaded":true,"dist":{"shasum":"f0437d755b63f11153b549df91c7750edb307340","tarball":"https://registry.npmjs.org/tap/-/tap-0.2.4.tgz","integrity":"sha512-lDkvx3toJUuSkQCFpED4oriFYyJwqNOsBF5JJiIOeoFqpu1AW/ekuXiFvqjtlZTALa/lTOBm0v3c2G4Lj4jGUQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCXXRV+hlS71fTuhT61O3yJNGt3qSU0jnWooR0NJ1TLQQIhALm9PiSKPIQQDC6fdBNbPP1iJRVwxqjwFmU7bxg5sIwi"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.5":{"name":"tap","version":"0.2.5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~1.0.10","mkdirp":"~0.3","difflet":"~0.2.0","deep-equal":"~0.0.0","buffer-equal":"~0.0.0"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"_id":"tap@0.2.5","bundleDependencies":["inherits","tap-consumer","yamlish"],"devDependencies":{},"optionalDependencies":{},"engines":{"node":"*"},"_engineSupported":true,"_npmVersion":"1.1.21","_nodeVersion":"v0.7.9-pre","_defaultsLoaded":true,"dist":{"shasum":"9b305de28796bae25c4682fe496259c1184f9fe2","tarball":"https://registry.npmjs.org/tap/-/tap-0.2.5.tgz","integrity":"sha512-0Vb+GiG8OiOp0blxNGDm4+02Tny85vD3qS6ewOnGQJRacUBuMXy3YM4XWRdXGJuXyE79uJmSltiwv53Ou/GFdg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCABk0gObDKHsSZEIoMDdz71t4sGCmc5Mwmu1hd6FQabgIgAY8zR7APWVM3Im6RcG8kQQp06vR9YDOevlaU0L+qZBE="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.2.6":{"name":"tap","version":"0.2.6","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~2","mkdirp":"~0.3","difflet":"~0.2.0","deep-equal":"~0.0.0","buffer-equal":"~0.0.0"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test"},"_id":"tap@0.2.6","bundleDependencies":["inherits","tap-consumer","yamlish"],"dist":{"shasum":"efcf97ddfa58a57c9cad9c440938de9319613c2c","tarball":"https://registry.npmjs.org/tap/-/tap-0.2.6.tgz","integrity":"sha512-uLvaKbh3+A4nh+P3SrfX52kWGkVvP37UYI7LxKjRkd6Bjdqbyc7MARaPFGl7SdwyNwWtZHlUxQX3w9pVNf3FKQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAOPh0nk5onxY2o8+tgJ0noy6ZhmGIjWerrrMM/loEJDAiAXDQVEji6YYFMvp3WdG4juQ6SkgnK2w5McYIwMoC9CZA=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.3.0":{"name":"tap","version":"0.3.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~2","mkdirp":"~0.3","difflet":"~0.2.0","deep-equal":"~0.0.0","buffer-equal":"~0.0.0"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test/*.js"},"_id":"tap@0.3.0","bundleDependencies":["inherits","tap-consumer","yamlish"],"dist":{"shasum":"75c9eee607730e81a532b6ca8abc5b1e286b1c66","tarball":"https://registry.npmjs.org/tap/-/tap-0.3.0.tgz","integrity":"sha512-2qCKhincMtiEZjEjrBHqFLnO233P5lk73amuHkDVij3UQ9oVrNUrKnsr1eFZsBKU8kgZcp9YFBVs5lUJbyScAw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBPHI1/h2grwfba8TI1QnZ9JPgRb95eqyCG+yU6x88zmAiA/hFbpLnJfB13PReZ3KecOYyUJ2oVkwRo6BkZS/nzKwg=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.3.1":{"name":"tap","version":"0.3.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~2","mkdirp":"~0.3","difflet":"~0.2.0","deep-equal":"~0.0.0","buffer-equal":"~0.0.0"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test/*.js"},"_id":"tap@0.3.1","bundleDependencies":["inherits","tap-consumer","yamlish"],"dist":{"shasum":"8383247f18265a35a0772405747655df50c99332","tarball":"https://registry.npmjs.org/tap/-/tap-0.3.1.tgz","integrity":"sha512-lBZRBz8iKN13M5LFe605qYQrucQYNuHFBCBlBPenqMywJunw3YepBso+kGm1BFxosna98ymKY6hAA1Yy/q2u/Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAieJZ3Xl1pO2HL1eLoQg7yFXt3hdgyhaVccU7FPL/dBAiBGTA5UD2GAJcUpdU1Gkar8QTgSfSneLgFHQepiOqfpzw=="}]},"_npmVersion":"1.1.59","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.3.2":{"name":"tap","version":"0.3.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~2","mkdirp":"~0.3","difflet":"~0.2.0","deep-equal":"~0.0.0","buffer-equal":"~0.0.0"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test/*.js"},"_id":"tap@0.3.2","bundleDependencies":["inherits","tap-consumer","yamlish"],"dist":{"shasum":"1f7d6ef6f90369c40bdbd956ebb5bdad3c8cc8b7","tarball":"https://registry.npmjs.org/tap/-/tap-0.3.2.tgz","integrity":"sha512-6ublDdk0Vq9zvvJkTevppELiKrr1z96iJ1YgERUonvcG7e3ivVkTxYfs0DSrx1oOs9R8w+I367DilqpQ7SlJXw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC2vortfanbTJqdoYw3bxVRBIhT9uWZ8xikS9T1AJPWVAIhAPHPMzs3DkMLqxaWWvETZm1OPMv69o/RD7zhI4oN7QnS"}]},"_npmVersion":"1.1.65","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.3.3":{"name":"tap","version":"0.3.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~2","mkdirp":"~0.3","difflet":"~0.2.0","deep-equal":"~0.0.0","buffer-equal":"~0.0.0"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test/*.js"},"_id":"tap@0.3.3","bundleDependencies":["inherits","tap-consumer","yamlish"],"dist":{"shasum":"c862237af0a213f97fff46594bd1d44eca705d63","tarball":"https://registry.npmjs.org/tap/-/tap-0.3.3.tgz","integrity":"sha512-2gMeIwn6bFUtQz08MROzjmQIBkEn5Pmz0Z7J4UdBZ1gORoRQ00XCXpULdC2abl0M7iQuLOw652+gexthH8OZzw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDvIK0auP+5Pqle4188aUq+uDZzAJbOYs6Sl6K2gz6K7AIhALnngRS+6DBJBYyDWNKPXtPgUBKog8vPR8vYhjiGv61S"}]},"_npmVersion":"1.1.66","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.4.0":{"name":"tap","version":"0.4.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~2","mkdirp":"~0.3","difflet":"~0.2.0","deep-equal":"~0.0.0","buffer-equal":"~0.0.0","glob":"~3.1.14"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test/*.js"},"_id":"tap@0.4.0","bundleDependencies":["inherits","tap-consumer","yamlish"],"dist":{"shasum":"5cc04b5e3041fe13d1748f078a9d779e3a95f5bf","tarball":"https://registry.npmjs.org/tap/-/tap-0.4.0.tgz","integrity":"sha512-HN5zHfjcJroz9JpnH3hTbVK4PIDy6IlOo9QBCysJyln9F1/V90jgo1SRLDqovaNXjpVmqPKVWBOKSNZ23MiHUQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCdqBx1DbvAOh/6mKi9mL7n7Fa5WJOIFd7vbiGxQulv8gIgEcSgWW/jN2kTUMJb29s1xAPcyQVyy6CBjo74/7qZy/8="}]},"_from":".","_npmVersion":"1.2.2","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.4.1":{"name":"tap","version":"0.4.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~2","mkdirp":"~0.3","difflet":"~0.2.0","deep-equal":"~0.0.0","buffer-equal":"~0.0.0","glob":"~3.1.14"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test/*.js"},"_id":"tap@0.4.1","bundleDependencies":["inherits","tap-consumer","yamlish"],"dist":{"shasum":"03a5979da2b349395b11b6add17b06a7c438730b","tarball":"https://registry.npmjs.org/tap/-/tap-0.4.1.tgz","integrity":"sha512-ScnQYqBYJ1FNdA6hwi+2TzdLz4mRXBp5qikiBJAXkrND42o4wQ1q7fkR4hyf5tdE6zVDNhgNSlPzZbU5DkjlFA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCCnm3fif4L8fX8Oe/WiuIMzHpWWR8KSWVbU6jd8hk5HAIgZJNf7V6f47J+Tc+e913vFReUyQbXds0fxp1e3wRVH6c="}]},"_from":".","_npmVersion":"1.2.15","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.4.2":{"name":"tap","version":"0.4.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~2","mkdirp":"~0.3","difflet":"~0.2.0","deep-equal":"~0.0.0","buffer-equal":"~0.0.0","glob":"~3.2.1"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test/*.js"},"bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"bundleDependencies":["inherits","tap-consumer","yamlish"],"_id":"tap@0.4.2","dist":{"shasum":"4d9461266a0d7c6ea3d80d1d922b4f2ef6d4f997","tarball":"https://registry.npmjs.org/tap/-/tap-0.4.2.tgz","integrity":"sha512-SyYAzVK8XuSpjpw8L1Dt8LNbE+GftK4taFYYw4tkQxl/kDhgwrQp0WakO6OUYByj29elP55chUsVSmmgcR6aVw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDb1NFrtNnXwZ6wuO79PwwH1wS8olyB/pOROJ9MVPh/bQIhAO88U0jZdoYwiKHxx/aaBK+UN7HEkvT9YxLtXqCLcTEv"}]},"_from":".","_npmVersion":"1.2.18","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.4.3":{"name":"tap","version":"0.4.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~2","mkdirp":"~0.3","difflet":"~0.2.0","deep-equal":"~0.0.0","buffer-equal":"~0.0.0","glob":"~3.2.1"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test/*.js"},"bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"bundleDependencies":["inherits","tap-consumer","yamlish"],"_id":"tap@0.4.3","dist":{"shasum":"5ead7ede530658167fe28e3cdb9b0f96d3cf0c76","tarball":"https://registry.npmjs.org/tap/-/tap-0.4.3.tgz","integrity":"sha512-I+azlPbMMx/neLNUBun7K8Deaf3qt68RgXl2lN0LTTctUO7uF6RAyD/YjcvdJRc/kPVlggA0lbUelzayy0FhFA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFhAeA+43JvY+pIayzk/9TIcsClkrOZa//pP5SnEvLO/AiEAkXaqKVZBtcmbs8fKOlJhPhK5BWMkMkTpfqvuqyhuKd4="}]},"_from":".","_npmVersion":"1.2.21","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.4.4":{"name":"tap","version":"0.4.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~2","mkdirp":"~0.3","difflet":"~0.2.0","deep-equal":"~0.0.0","buffer-equal":"~0.0.0","glob":"~3.2.1"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test/*.js"},"bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"bundleDependencies":["inherits","tap-consumer","yamlish"],"_id":"tap@0.4.4","dist":{"shasum":"122ee7afee3fc7f327660a4fda1e5ac9db2b7714","tarball":"https://registry.npmjs.org/tap/-/tap-0.4.4.tgz","integrity":"sha512-FgIaD7pCSBhZWDQomOxjV4GqH/eyHmJvsS4CFeC+MQyyxDtaV58pFludHjCVJcCwej3eZvcA7+nIBLp9zKmOHA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICQoG8yCUwWjkwhtS6RAKkuHgfhORN91wZIHj5/P3j1rAiEAppjv/H7tBn+VvfsLCyRQudnoSOPvhHGBzuTLXbFMi38="}]},"_from":".","_npmVersion":"1.3.7","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.4.5":{"name":"tap","version":"0.4.5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~2","mkdirp":"~0.3","difflet":"~0.2.0","deep-equal":"~0.0.0","buffer-equal":"~0.0.0","glob":"~3.2.1"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test/*.js"},"bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap","bundleDependencies":["inherits","tap-consumer","yamlish"],"_id":"tap@0.4.5","dist":{"shasum":"71d4348fb6d523c66edef2cfc115bb0db2cb4b69","tarball":"https://registry.npmjs.org/tap/-/tap-0.4.5.tgz","integrity":"sha512-3rhxnSGZejTw2LYueq9jSsHG3xK4svSeDFRzudX1ovyfMTj/9kZXneJQ9FZSWEzeIba/ztd5ALIwGpmYj3/aLg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCQfSFDPKEQmXt0mK/Ru8cE7LROf19ey4bpu3SVfgWEyAIhAMG5rodxCgzQOb0KEA+4lUMtuZndzqYP0mZl/jbgsvkR"}]},"_from":".","_npmVersion":"1.3.14","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.4.6":{"name":"tap","version":"0.4.6","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","engines":{"node":">=0.8"},"dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~2","mkdirp":"~0.3","difflet":"~0.2.0","deep-equal":"~0.0.0","buffer-equal":"~0.0.0","glob":"~3.2.1"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test/*.js"},"bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap","bundleDependencies":["inherits","tap-consumer","yamlish"],"_id":"tap@0.4.6","dist":{"shasum":"64320ccef9af33907d20d58cb8cad4abdde63187","tarball":"https://registry.npmjs.org/tap/-/tap-0.4.6.tgz","integrity":"sha512-cbqLmVKr9rWO2uHAxj3utD/xI+QsTg6rE+DAD/dKuTnvwsnLRcgjzNzPEKVo+XL6Gtfc9wWVmwDREcrUJWOZHg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICud/REEBShCDquf6rlHl0Ql672f7ZZFR3+FcBiEd5pHAiEA7JCwQ5JGVpaga03jCuB8SpfSd8XmdvHZKaf3oJT4TRw="}]},"_from":".","_npmVersion":"1.3.14","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.4.7":{"name":"tap","version":"0.4.7","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","engines":{"node":">=0.8"},"dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~2","mkdirp":"~0.3","difflet":"~0.2.0","deep-equal":"~0.0.0","buffer-equal":"~0.0.0","glob":"~3.2.1"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test/*.js"},"bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap","bundleDependencies":["inherits","tap-consumer","yamlish"],"_id":"tap@0.4.7","dist":{"shasum":"0846b0740cc55b697a56bbf26d835f3a62913f71","tarball":"https://registry.npmjs.org/tap/-/tap-0.4.7.tgz","integrity":"sha512-gz6KHOuHSHLgf7ZuVIztlimCsojbM8nJd0i+377kCFL7T4V/mcPSyEvYN4pIURjd+T4ffbmF0zujFyZJaACvUQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQChE775kE4vP30LquXI5/QGfh2/teL8BzG+NxIcSGLU5QIhAKo7J6t17ite8bsnVIJOnw/jyKUTKTLSDALH40DIbHKP"}]},"_from":".","_npmVersion":"1.3.23","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.4.8":{"name":"tap","version":"0.4.8","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","engines":{"node":">=0.8"},"dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~2","mkdirp":"~0.3","difflet":"~0.2.0","deep-equal":"~0.0.0","buffer-equal":"~0.0.0","glob":"~3.2.1"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test/*.js"},"bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap","bundleDependencies":["inherits","tap-consumer","yamlish"],"_id":"tap@0.4.8","dist":{"shasum":"eb04f3f74ae0c4201bbf778e32a5cfb18d261ef0","tarball":"https://registry.npmjs.org/tap/-/tap-0.4.8.tgz","integrity":"sha512-PVntuFEO+vdznXrPsRA8yShbz/FzNSPEPVMeEohDywPgPvDjpfHbH6jOi4lkb6MM89nEiYnw1CIt06ib5Pj2jQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDLTT83wvucVkIuF7zXEoykxglyxsQpeBEZ50omTh6mZAIhAPQfiampeWckU4fb44vrvvJdfWppv2JD4Sy1jbbKw6L7"}]},"_from":".","_npmVersion":"1.3.23","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"0.4.9":{"name":"tap","version":"0.4.9","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","engines":{"node":">=0.8"},"dependencies":{"inherits":"*","yamlish":"*","slide":"*","runforcover":"~0.0.2","nopt":"~2","mkdirp":"~0.3","difflet":"~0.2.0","deep-equal":"~0.0.0","buffer-equal":"~0.0.0","glob":"~3.2.1"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test/*.js"},"bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap","bundleDependencies":["inherits","tap-consumer","yamlish"],"_id":"tap@0.4.9","_shasum":"8c264ea2936a923b1cbb342aeb8d4032fda202a5","_from":".","_npmVersion":"1.4.7","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"dist":{"shasum":"8c264ea2936a923b1cbb342aeb8d4032fda202a5","tarball":"https://registry.npmjs.org/tap/-/tap-0.4.9.tgz","integrity":"sha512-P2F/C5tJRSDnz4DFWnp9ds1PtQf5DJ8/2wGJ45JszSIiMBzdLMKleeDQ9mb2JVvUN04AsmSw5Q+ICQsZ/ofJ6w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCC/jGCOPym8diOs30MaMudoLxwVzLEXupY3f8MjRFFqQIgNOe+MJ0lNxkqmpuVZDj7P1DElA+BwVmIndwB3CEdqMk="}]},"directories":{}},"0.4.11":{"name":"tap","version":"0.4.11","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"~0.0.0","difflet":"~0.2.0","glob":"~3.2.1","inherits":"*","mkdirp":"~0.3","nopt":"~2","runforcover":"~0.0.2","slide":"*","yamlish":"*"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test/*.js"},"devDependencies":{},"gitHead":"1f89f6006f3f0ad485fa278a37870e355c4d9d2d","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap","bundleDependencies":["inherits","tap-consumer","yamlish"],"_id":"tap@0.4.11","_shasum":"458f386816927287da2d1ff996e3541750b0bf29","_from":".","_npmVersion":"1.4.14","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"dist":{"shasum":"458f386816927287da2d1ff996e3541750b0bf29","tarball":"https://registry.npmjs.org/tap/-/tap-0.4.11.tgz","integrity":"sha512-Hj9yUQFTmwllHsHW0qQW/goDH+R0B1Rf2kg/C5Cj2aVkRlx3Ky7fgf0+1X4i96qfs25724U1jh4q77gL/1LL1w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHzmK+pYK0W6iRMvfJybdy0+Vl498mrrUgTo1pMJW2PcAiEAh/YJRMSL4sDHBGCWqqVwOftCSCO1ldSASsAWq+/t62E="}]},"directories":{}},"0.4.12":{"name":"tap","version":"0.4.12","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"~0.0.0","difflet":"~0.2.0","glob":"~3.2.1","inherits":"*","mkdirp":"~0.3 || 0.4 || 0.5","nopt":"~2","runforcover":"~0.0.2","slide":"*","yamlish":"*"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test/*.js"},"devDependencies":{},"gitHead":"a444c755a981997d8934648b3e165a738b07780d","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap","bundleDependencies":["inherits","tap-consumer","yamlish"],"_id":"tap@0.4.12","_shasum":"e1a274aeec9e46680c59f10d0c51a6804054ebcb","_from":".","_npmVersion":"2.0.0-alpha-5","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"dist":{"shasum":"e1a274aeec9e46680c59f10d0c51a6804054ebcb","tarball":"https://registry.npmjs.org/tap/-/tap-0.4.12.tgz","integrity":"sha512-2T74ZjPaAk5p9PEjLB9itzrMLrwwoRHwfQi4s7+AE1Z+LEcDpln3z0kmUS74g89Lbxqyqk0x8LvTKC/k+vtnbw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCAmFTIekoPMOjXjaMRnLNyM9kpeVCHvCxq1yW72Jdl7wIgDBVqL8TyAFqTSLjj7jS63XmoI8/3fVW75puMdrx3gaU="}]},"directories":{}},"0.4.13":{"name":"tap","version":"0.4.13","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"~0.0.0","difflet":"~0.2.0","glob":"~3.2.1","inherits":"*","mkdirp":"~0.3 || 0.4 || 0.5","nopt":"~2","runforcover":"~0.0.2","slide":"*","yamlish":"*"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test/*.js"},"devDependencies":{},"gitHead":"6ae608ce80da71e96fe58fb56fd693854343e513","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap","_id":"tap@0.4.13","_shasum":"3986134d6759727fc2223e61126eeb87243accbc","_from":".","_npmVersion":"2.1.2","_nodeVersion":"0.10.31","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"dist":{"shasum":"3986134d6759727fc2223e61126eeb87243accbc","tarball":"https://registry.npmjs.org/tap/-/tap-0.4.13.tgz","integrity":"sha512-DRPT9T2qqeUQ9nC8nwnZPQQnKA+bVhzaNrIDoFETFqWLXGOvil/JMhuWj5uO6XeNzIdvvPKLqPHQzIkJnjNnDQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCuKACjvlogU2V1KwAoNelOfJatKbBvIzv0E/gVzJM6jAIhAOgjEpgPZK+UemHBpr1HZyF9Gua426ordiHGWjc8ghsO"}]},"directories":{}},"0.5.0":{"name":"tap","version":"0.5.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"~0.0.0","difflet":"~0.2.0","glob":"~3.2.1","inherits":"*","mkdirp":"~0.3 || 0.4 || 0.5","nopt":"~2","runforcover":"~0.0.2","slide":"*","yamlish":"*"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"bin/tap.js test/*.js"},"devDependencies":{},"gitHead":"3a56a2901e458128e36c069159d5713f0a8ef947","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap","_id":"tap@0.5.0","_shasum":"b116e82458027af355048a4212526e7be2f653b6","_from":".","_npmVersion":"2.2.0","_nodeVersion":"0.10.35","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"dist":{"shasum":"b116e82458027af355048a4212526e7be2f653b6","tarball":"https://registry.npmjs.org/tap/-/tap-0.5.0.tgz","integrity":"sha512-jKCoYL6bSXEA3+vLSieez8xTT3wA39tR2cWnzZYgQzzaWtb+wei6ZxAx6m2ipWygM2IiCOzIW/fC/n7NFIcIcg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDn+paddAxyTJmLyGhkpw89N+6S2DL5Mwy0TKeE1SRLDAiAjJalotaxILcmz20WVwf9k3SNiVzWgLIXNuIypk/X+wA=="}]},"directories":{}},"0.6.0":{"name":"tap","version":"0.6.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","difflet":"~0.2.0","glob":"^4.3.5","inherits":"*","mkdirp":"^0.5.0","nopt":"^3.0.1","runforcover":"~0.0.2","slide":"*","yamlish":"*"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git://github.com/isaacs/node-tap.git"},"scripts":{"test":"node --use_strict bin/tap.js test/*.*"},"devDependencies":{},"gitHead":"7893b00421a116541a12d04d0be9b8eabc56b1b1","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap","_id":"tap@0.6.0","_shasum":"75557d8285b87aef61902b68fb782fa4dc65edd4","_from":".","_npmVersion":"2.5.1","_nodeVersion":"1.1.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"dist":{"shasum":"75557d8285b87aef61902b68fb782fa4dc65edd4","tarball":"https://registry.npmjs.org/tap/-/tap-0.6.0.tgz","integrity":"sha512-KJlG1IkKcz6u8VccC41NrSLoFqMGXsGodA0LRfc68jRJyIFwt3qX8H6ihWSaO2FG0vCdIsTatbg5RR34X0svRQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICkwmITINuuhOxCRmRWUnP8shmQhGoNz7ngdgjgh+1GPAiEA+rncigNuX8zs0CM7EOF09ZSELFL2iW2XYwuxaxIhprE="}]},"directories":{}},"0.7.0":{"name":"tap","version":"0.7.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","difflet":"~0.2.0","glob":"^4.3.5","inherits":"*","mkdirp":"^0.5.0","nopt":"^3.0.1","runforcover":"~0.0.2","slide":"*","yamlish":"*"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node --use_strict bin/tap.js test/*.*"},"devDependencies":{},"gitHead":"b8ce801ece7ddd41bf0d14f8f70188e03bae68f8","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap","_id":"tap@0.7.0","_shasum":"c43729caa0aed824d6dd2bbbd7680b5c8454d60c","_from":".","_npmVersion":"2.6.0","_nodeVersion":"1.1.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"dist":{"shasum":"c43729caa0aed824d6dd2bbbd7680b5c8454d60c","tarball":"https://registry.npmjs.org/tap/-/tap-0.7.0.tgz","integrity":"sha512-Rp6VV4zEFUSW77Ec8gzQzqgYGg0HLcA1lZpEVMnQEORrjyj/FD8lRc4OjqUU4P/I3GWUyztCwfsfXcYOYDJNxA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD8LxFWdQmtR2DqPYE4YmIiyfHIo2xcGClIrzGOEnsO1AIhAMyJAGxiVvIsld5PDWyJxls18LJg7+Hu9w9CUDns3gkm"}]},"directories":{}},"0.7.1":{"name":"tap","version":"0.7.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/tap.js"},"main":"lib/main.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","difflet":"~0.2.0","glob":"^4.3.5","inherits":"*","mkdirp":"^0.5.0","nopt":"^3.0.1","runforcover":"~0.0.2","slide":"*","yamlish":"*"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node --use_strict bin/tap.js test/*.*"},"devDependencies":{},"gitHead":"276ac5972315a85963982900b42ffafcdeb60fb7","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap","_id":"tap@0.7.1","_shasum":"bead5136ceab8241e1b28cec663811c63b1f3e7d","_from":".","_npmVersion":"2.6.0","_nodeVersion":"1.1.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"dist":{"shasum":"bead5136ceab8241e1b28cec663811c63b1f3e7d","tarball":"https://registry.npmjs.org/tap/-/tap-0.7.1.tgz","integrity":"sha512-Dh7fyYFJzj9VZP/Oa79kFWeq2KxPwjCNHNWc0mXJTqUq7PKLrhg7d/mR748Bty9TKHsbMxpFLHn1YJZVjxJaug==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDQgHK9462AdOMhSPYl9ZMzv5qAVSCO1gLoPxdYKUGVPwIhAO2LlG76Cgk1kePX3GFgenqKBIGU5JsAtL5RTbTWNKLA"}]},"directories":{}},"1.0.0-beta.0":{"name":"tap","version":"1.0.0-beta.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","difflet":"~0.2.0","events-to-array":"^1.0.1","exit-code":"^1.0.1","glob":"^4.4.1","inherits":"*","js-yaml":"git://github.com/isaacs/js-yaml","mkdirp":"^0.5.0","nopt":"^3.0.1","runforcover":"~0.0.2","slide":"*","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","yamlish":"*"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node --use_strict bin/run.js test/*.*","lint":"standard lib/*.js"},"devDependencies":{"standard":"^2.10.0"},"gitHead":"ae82ddf2f832d29b3acd72831048126a8edb7fb7","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap","_id":"tap@1.0.0-beta.0","_shasum":"d955d0efc20ad452c06d7d9b8b182d6d37906dfe","_from":".","_npmVersion":"2.7.6","_nodeVersion":"1.7.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"d955d0efc20ad452c06d7d9b8b182d6d37906dfe","tarball":"https://registry.npmjs.org/tap/-/tap-1.0.0-beta.0.tgz","integrity":"sha512-Any42xX15wON/tsIw2QWmza2mpN3gObgXn6szMqIss4IgywOoxDjkwXmKTn7dylYb9XBXhM1SD8ywm0X90qPaA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHNacSYi2/yrpOF4lEQ/EyG63WazXkXSSf3dyIDpPnNAAiEAoKjCSLM1lylUSka/vpiqGGvCeBNDqqvnKSEk2jFg1xs="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.0.0-beta.1":{"name":"tap","version":"1.0.0-beta.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","difflet":"~0.2.0","events-to-array":"^1.0.1","exit-code":"^1.0.1","glob":"^4.4.1","inherits":"*","js-yaml":"git://github.com/isaacs/js-yaml","mkdirp":"^0.5.0","nopt":"^3.0.1","runforcover":"~0.0.2","slide":"*","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","yamlish":"*"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node --use_strict bin/run.js test/*.*","lint":"standard lib/*.js"},"devDependencies":{"standard":"^2.10.0"},"gitHead":"cf77e9922eb134124f82a868dd7cdba707bd7ddb","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap","_id":"tap@1.0.0-beta.1","_shasum":"8fd8c164a7987f806c3dacc684a614499745fedb","_from":".","_npmVersion":"2.7.6","_nodeVersion":"1.7.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"8fd8c164a7987f806c3dacc684a614499745fedb","tarball":"https://registry.npmjs.org/tap/-/tap-1.0.0-beta.1.tgz","integrity":"sha512-7ap5WfreD14tBsf0LZc9VH3+4/Qw9kPs9/LsXQm/tzcbh3+t5LN4C3vsXyeOE6+ZoEW+enukaKjiqGr80mzdvA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEKAYhYL5kec+ox37FoKxR5SJVtEsH6jO8PQd5pozZGhAiA9Vp2tSeVQtNPcpa515TDqPe3WJD9CKwaVB5ZM/6U6GA=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.0.0-beta.2":{"name":"tap","version":"1.0.0-beta.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","difflet":"~0.2.0","events-to-array":"^1.0.1","exit-code":"^1.0.1","glob":"^4.4.1","inherits":"*","js-yaml":"git://github.com/isaacs/js-yaml","mkdirp":"^0.5.0","nopt":"^3.0.1","runforcover":"~0.0.2","slide":"*","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","yamlish":"*"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node --use_strict bin/run.js test/*.*","lint":"standard lib/*.js"},"devDependencies":{"standard":"^2.10.0"},"gitHead":"c8a76cadeb9e0b517fb8cb41492cef3b64db8f9f","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap","_id":"tap@1.0.0-beta.2","_shasum":"f08f5764a24768d57a242a6cfa048d54961865b8","_from":".","_npmVersion":"2.7.6","_nodeVersion":"1.7.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"f08f5764a24768d57a242a6cfa048d54961865b8","tarball":"https://registry.npmjs.org/tap/-/tap-1.0.0-beta.2.tgz","integrity":"sha512-DA8B87lFH/VqLApXYHs6P851YyeBsV9EhrXKl+IGBUtlD3jyha9AgRGzH3ET6PQMiz+YSa+Ty85loMc1G8yjdA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHv69OcMWY5FZMVlNWxyU45jmg895fAhI4JEUgGztyxRAiA9MSNKmGSsAn7QUXr3CBAsJC4CdbdI3bVcCC1wtb8ktg=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.0.0-beta.3":{"name":"tap","version":"1.0.0-beta.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","difflet":"~0.2.0","events-to-array":"^1.0.1","exit-code":"^1.0.1","glob":"^4.4.1","inherits":"*","js-yaml":"git://github.com/isaacs/js-yaml.git","mkdirp":"^0.5.0","nopt":"^3.0.1","runforcover":"~0.0.2","slide":"*","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","yamlish":"*"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node --use_strict bin/run.js test/*.*","lint":"standard lib/*.js"},"devDependencies":{"standard":"^2.10.0"},"gitHead":"eda9a483b3b9655d1c8bade711d886929e6d501d","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.0.0-beta.3","_shasum":"be5046780a9503beca7d12e5d49e6e0fddfdbe1a","_from":".","_npmVersion":"2.9.1","_nodeVersion":"1.7.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"be5046780a9503beca7d12e5d49e6e0fddfdbe1a","tarball":"https://registry.npmjs.org/tap/-/tap-1.0.0-beta.3.tgz","integrity":"sha512-N5/XONMhT1ndLSrlUwgY9XJy/tY7+SHZQPy+86i+3C/X7RS7Vx9S5HwkCWcqO0ZQ4CXB8gNBkfHcLj5KF50uIA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB8+oCW90ZbcDPLvLi8wTJtedW8PhVKjcojvORAm7DuAAiEAosvuBVDgm+wA26xSJjK2bUrCnD/KjGMrvoGeOx3JkNk="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.0.0-beta.4":{"name":"tap","version":"1.0.0-beta.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","difflet":"~0.2.0","events-to-array":"^1.0.1","exit-code":"^1.0.1","glob":"^4.4.1","inherits":"*","js-yaml":"git://github.com/isaacs/js-yaml.git","mkdirp":"^0.5.0","nopt":"^3.0.1","runforcover":"~0.0.2","slide":"*","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","yamlish":"*"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node --use_strict bin/run.js test/*.*","lint":"standard lib/*.js"},"devDependencies":{"standard":"^2.10.0"},"gitHead":"0ecda35998a3ae747fff3386b68ed2f5214a497e","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.0.0-beta.4","_shasum":"e8311aa2a07e0bc49d3e466d3eb249307a1b292c","_from":".","_npmVersion":"2.9.1","_nodeVersion":"1.7.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"e8311aa2a07e0bc49d3e466d3eb249307a1b292c","tarball":"https://registry.npmjs.org/tap/-/tap-1.0.0-beta.4.tgz","integrity":"sha512-Sm3YXwLasM7d3tBYmH2BcHKCmCaMhUwbKwNduzi+7TP+u1x/Y0HAiCLzhq1p3hnz0ot5H5mLXXFYRGjKuUl7AA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCs/PBfJS/h8KXRNoJ7xU/YwMvg0iy7o6Ld48H4Pb2G8gIgQhwWgZUu8561y6asB6gOgWO880GGxlINlVzAdaFJ3XQ="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.0.0-beta.5":{"name":"tap","version":"1.0.0-beta.5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","difflet":"~0.2.0","events-to-array":"^1.0.1","exit-code":"^1.0.1","glob":"^4.4.1","inherits":"*","js-yaml":"git://github.com/isaacs/js-yaml.git","mkdirp":"^0.5.0","nopt":"^3.0.1","runforcover":"~0.0.2","slide":"*","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","yamlish":"*","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node --use_strict bin/run.js test/*.*","lint":"standard lib/*.js"},"devDependencies":{"standard":"^2.10.0"},"optionalDependencies":{"readable-stream":"^1.1.13"},"gitHead":"9c4a8302a2786a8fc8034b1990abf25fb38b13bf","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.0.0-beta.5","_shasum":"a30d8766fede8e9ba56c09e7ef28bd7bac37ebac","_from":".","_npmVersion":"2.9.1","_nodeVersion":"2.0.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"a30d8766fede8e9ba56c09e7ef28bd7bac37ebac","tarball":"https://registry.npmjs.org/tap/-/tap-1.0.0-beta.5.tgz","integrity":"sha512-ddiw+qIPhMzR1fuJyrLnimxGm4kW2wgjy4BGIJjA/yO6DYGVYtmLrMaOu7DbCAhBHVDupOyXZVu8P9e5ktF+2Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD8sqlMbcHr5jB77z64shD/pQpTgESYrTxuJdmQ0ZuCAAIgQstLr29iDk+Hf7OLgRTeHPndZcPL9VNEGIUFUvMMZz4="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.0.0":{"name":"tap","version":"1.0.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","difflet":"~0.2.0","events-to-array":"^1.0.1","exit-code":"^1.0.1","glob":"^4.4.1","inherits":"*","js-yaml":"git://github.com/isaacs/js-yaml.git","mkdirp":"^0.5.0","nopt":"^3.0.1","runforcover":"~0.0.2","slide":"*","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","yamlish":"*","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.*","lint":"standard lib/*.js"},"devDependencies":{"standard":"^2.10.0"},"optionalDependencies":{"readable-stream":"^1.1.13"},"gitHead":"a0ffb7f3b0502bb56f39953f9d8e0f42b91bdf3e","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.0.0","_shasum":"dd67f3a29be24333648c81f2c6f58702a3f01e7b","_from":".","_npmVersion":"2.9.1","_nodeVersion":"2.0.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"dd67f3a29be24333648c81f2c6f58702a3f01e7b","tarball":"https://registry.npmjs.org/tap/-/tap-1.0.0.tgz","integrity":"sha512-hlH6ATCkIFSbfeUGsZxUCin+WbdCRU7HOP9Xkr3dZMQ5pZHArpt+ONjtzuo/HnLwuHPdaCII3JHDAz7ogGbswg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDaTj8hKJCFaJHgNei79QmqEDR03+uJJ8kytMKcXBUfTgIhANyBMPp4tk8c6K5GnjSNcz61q0TgwdhG57MVb0+T+6+A"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.0.1":{"name":"tap","version":"1.0.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","difflet":"~0.2.0","events-to-array":"^1.0.1","exit-code":"^1.0.1","glob":"^4.4.1","inherits":"*","js-yaml":"git://github.com/isaacs/js-yaml.git","mkdirp":"^0.5.0","nopt":"^3.0.1","runforcover":"~0.0.2","slide":"*","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","yamlish":"*","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.*","lint":"standard lib/*.js"},"devDependencies":{"standard":"^2.10.0"},"optionalDependencies":{"readable-stream":"^1.1.13"},"gitHead":"75b5b6caa5e59b74bcffbaa067f906993bc4f1c5","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.0.1","_shasum":"16ec9795b5a7f3f8637af7b758133e37c7c97e6d","_from":".","_npmVersion":"2.9.1","_nodeVersion":"2.0.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"16ec9795b5a7f3f8637af7b758133e37c7c97e6d","tarball":"https://registry.npmjs.org/tap/-/tap-1.0.1.tgz","integrity":"sha512-ceBxZQVHHOU6qnrOxJKFBcBMRtWMNI8ycdR62KCVltMl2Z3z91pABF30pT/uEHeiFmY3U/NLts0GhjzJDVZC2Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDdbttHE0492TDPtay7NQh0ZJk+kjcZhJV9o7i3XeeXkAiEAkXVTH9QpMkWHN2msCz6NvsM2J0yhFYn9fIuUXnWWN38="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.0.2":{"name":"tap","version":"1.0.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","difflet":"~0.2.0","events-to-array":"^1.0.1","exit-code":"^1.0.1","glob":"^4.4.1","inherits":"*","js-yaml":"git://github.com/isaacs/js-yaml.git","mkdirp":"^0.5.0","nopt":"^3.0.1","runforcover":"~0.0.2","slide":"*","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","yamlish":"*","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.*","lint":"standard lib/*.js"},"devDependencies":{"standard":"^2.10.0"},"optionalDependencies":{"readable-stream":"^1.1.13"},"gitHead":"b8ba7bbb149f787619d99286f02405208873ce5a","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.0.2","_shasum":"ac1300e10b6f8d5c2c501238feb6148e788f215f","_from":".","_npmVersion":"2.9.1","_nodeVersion":"2.0.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"ac1300e10b6f8d5c2c501238feb6148e788f215f","tarball":"https://registry.npmjs.org/tap/-/tap-1.0.2.tgz","integrity":"sha512-jTJvV1s0quXk0kZc5hUA379trL6JY9SbFtIe1yx3+sVT6v9dg+KvbVscZU9UZRE+0DTj0755ewLbTKGqg5Ivuw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCiSK43WD/gbZGdyzHWLjcYGuBgY/0mo43Rn58bzmdbcwIhAL2Gen4uZE14aej/lZwbPKOrk42ME6pjCCIGsDYP6FTS"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.0.3":{"name":"tap","version":"1.0.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","difflet":"~0.2.0","events-to-array":"^1.0.1","exit-code":"^1.0.1","glob":"^4.4.1","inherits":"*","js-yaml":"git://github.com/isaacs/js-yaml.git","mkdirp":"^0.5.0","nopt":"^3.0.1","runforcover":"~0.0.2","slide":"*","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","yamlish":"*","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.*","lint":"standard lib/*.js"},"devDependencies":{"standard":"^2.10.0"},"optionalDependencies":{"readable-stream":"^1.1.13"},"gitHead":"418a7dcac6cc4abb478ee251a3c2cb23c125ebaa","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.0.3","_shasum":"92c3447ba57c8e5b760ebd154fdc86854e05465c","_from":".","_npmVersion":"2.9.1","_nodeVersion":"2.0.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"92c3447ba57c8e5b760ebd154fdc86854e05465c","tarball":"https://registry.npmjs.org/tap/-/tap-1.0.3.tgz","integrity":"sha512-trk1CgRFnhjxEYbqrmUhaGag6i0yrne+ATz0GyIMZJScAyr/V/m5Z0rtLb7Fmsvf5PQMVQ5d54CWakgmOydAQQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDcarw/foBwRRDI+2xRdzTb1+hTj6TMCiyAY0ux4iLvWwIhAInLcJI/NdV1fju7aO6dUgm/zVkgOrizbSV0Lx0ad4wR"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.0.4":{"name":"tap","version":"1.0.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","difflet":"~0.2.0","events-to-array":"^1.0.1","exit-code":"^1.0.1","glob":"^4.4.1","inherits":"*","js-yaml":"git://github.com/isaacs/js-yaml.git","mkdirp":"^0.5.0","nopt":"^3.0.1","runforcover":"~0.0.2","slide":"*","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","yamlish":"*","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.*","lint":"standard lib/*.js"},"devDependencies":{"standard":"^2.10.0"},"optionalDependencies":{"readable-stream":"^1.1.13"},"gitHead":"7d073bebfa31e4a4239d2d3f84d17ed8919f0624","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.0.4","_shasum":"33590f04a49aeb0b8bb117b790d903da5775e50a","_from":".","_npmVersion":"2.9.1","_nodeVersion":"2.0.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"33590f04a49aeb0b8bb117b790d903da5775e50a","tarball":"https://registry.npmjs.org/tap/-/tap-1.0.4.tgz","integrity":"sha512-9amimXrd5M6ig6xRuMUtDRErzKzzZcZBsxt+ZP5nErUU2XFg0q0X0NNMFpcm+aaNLsvPDfuwrsr0GEM0cSX92A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF0ZfVXO3DML4W+QNbsTGjbXs5DYAeX5WBLCw0GQJlk9AiAL6yF9d0fksHNrXn5hQMeIxbxTTQxei7uReA7HVKbqZg=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.0.5":{"name":"tap","version":"1.0.5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","difflet":"~0.2.0","events-to-array":"^1.0.1","exit-code":"^1.0.1","glob":"^4.4.1","inherits":"*","js-yaml":"git://github.com/isaacs/js-yaml.git","mkdirp":"^0.5.0","nopt":"^3.0.1","runforcover":"~0.0.2","slide":"*","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","yamlish":"*","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":{"type":"MIT","url":"https://github.com/isaacs/node-tap/raw/master/LICENSE"},"repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.*","lint":"standard lib/*.js"},"devDependencies":{"standard":"^2.10.0"},"optionalDependencies":{"readable-stream":"^1.1.13"},"gitHead":"30ca273dca51cd8ef8f88b7b7a893d7ef4638d90","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.0.5","_shasum":"fc2dee1adf318735fa2e00564bf34eff52afdd8c","_from":".","_npmVersion":"2.10.0","_nodeVersion":"2.0.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"fc2dee1adf318735fa2e00564bf34eff52afdd8c","tarball":"https://registry.npmjs.org/tap/-/tap-1.0.5.tgz","integrity":"sha512-ei50xGQXWOgbiNQc2aEIoDEmlGD1RMoQnGPtPJZncYHlzjd1VMa5UNJKtM+cxg3sRTqSeBoc7Z4RwntCr5lH4g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDkra543Tp7avqptZD8J/CO0y2SOu9W8A/GsQb1SKyUvAIhAPt+FhYc4A08sBqC/GPAbZj0MU3AxxcUHAPrlqbY8dXA"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.0.6":{"name":"tap","version":"1.0.6","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","difflet":"~0.2.0","events-to-array":"^1.0.1","exit-code":"^1.0.1","glob":"^4.4.1","inherits":"*","js-yaml":"git://github.com/isaacs/js-yaml.git","mkdirp":"^0.5.0","nopt":"^3.0.1","runforcover":"~0.0.2","slide":"*","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","yamlish":"*","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.*","lint":"standard lib/*.js"},"devDependencies":{"standard":"^2.10.0"},"optionalDependencies":{"readable-stream":"^1.1.13"},"gitHead":"c38c7e88c55e43837428715f711821c3ca3f6419","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.0.6","_shasum":"a0f66f12d1a39bd9cccac46d299c543f6b8fd377","_from":".","_npmVersion":"2.10.0","_nodeVersion":"2.0.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"a0f66f12d1a39bd9cccac46d299c543f6b8fd377","tarball":"https://registry.npmjs.org/tap/-/tap-1.0.6.tgz","integrity":"sha512-35KG432+A+ViK+hQkGiV3PNX3RD3xQ8TQml2hqBuPZwXxRE16a0Df3N8NIWMB1HG9vySMrQ8Kc7FH3kg0a+zEQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA3QZnZb9IK9qX0rhszOmhIWpjAuPgXxy3AsJvVwfIq8AiAqzEkiFE3sbuvlz7xnoJUgbw2Ofv4XxHKP74xm0ffH1A=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.0.7":{"name":"tap","version":"1.0.7","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","difflet":"~0.2.0","events-to-array":"^1.0.1","exit-code":"^1.0.1","glob":"^4.4.1","inherits":"*","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nopt":"^3.0.1","runforcover":"~0.0.2","slide":"*","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","yamlish":"*","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.*","lint":"standard lib/*.js"},"devDependencies":{"standard":"^2.10.0"},"optionalDependencies":{"readable-stream":"^1.1.13"},"gitHead":"9754119eeecedb1658f624cc93325aad792e513d","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.0.7","_shasum":"70e7c1c3bdd79e7051abcde32cf701f0a366d868","_from":".","_npmVersion":"2.10.0","_nodeVersion":"2.0.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"70e7c1c3bdd79e7051abcde32cf701f0a366d868","tarball":"https://registry.npmjs.org/tap/-/tap-1.0.7.tgz","integrity":"sha512-oveVSDq0wiXpVnFJbJwHSDMtmr6oJ5l68RtVR8l2vdKTaNx/Oqv2tPAPUINol8kkmeXROBv9SvaWSBp08H7BQQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC9hPimiqy5PrGbGW9W3SWmkg5a2tkcv655H52I+hn4aQIgT/VLPCgvEtqWW46PJbsEddo/Aw5/+7kDz1qJ98vDJNk="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.0.8":{"name":"tap","version":"1.0.8","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","exit-code":"^1.0.1","glob":"^5.0.6","js-yaml":"^3.3.1","mkdirp":"^0.5.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"}],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.*","lint":"standard lib/*.js"},"devDependencies":{"standard":"^2.10.0"},"optionalDependencies":{"readable-stream":"^1.1.13"},"gitHead":"963943ed289b0612fd529c97ad50f4048e468c42","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.0.8","_shasum":"33bdbc2d586a74554c566f599dc5ef1eb95ada66","_from":".","_npmVersion":"2.10.0","_nodeVersion":"2.0.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"33bdbc2d586a74554c566f599dc5ef1eb95ada66","tarball":"https://registry.npmjs.org/tap/-/tap-1.0.8.tgz","integrity":"sha512-ZIelwKWv0jsq720FBTM8RaQCKpnWuMR+zlI0dTvtJA0xMe4/RE/l5w0qUb/FZwDN0f5eKuPnOg8xqxQkyoB1nA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDkIo9hsfWpaQVtI+YKrqU2QNp7P/kOAz9xVY5rjAq5nAiEAgH5Lkqe7jI+XT5Ey6RaQ2AVHBOEs/c5yYWwIMOrQsLc="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.0.10":{"name":"tap","version":"1.0.10","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","deep-equal":"^1.0.0","exit-code":"^1.0.1","glob":"^5.0.6","js-yaml":"^3.3.1","mkdirp":"^0.5.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.*","lint":"standard lib/*.js","coverage":"nyc bin/run.js test/*.* -t240"},"devDependencies":{"nyc":"^2.0.4","standard":"^2.10.0"},"optionalDependencies":{"readable-stream":"^1.1.13"},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"}],"gitHead":"ad580c7af7e7d43fd1eb51a997336494cfa00a18","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.0.10","_shasum":"398e793f06445d6fe5f73ae58de31925f2440106","_from":".","_npmVersion":"2.10.0","_nodeVersion":"2.0.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"398e793f06445d6fe5f73ae58de31925f2440106","tarball":"https://registry.npmjs.org/tap/-/tap-1.0.10.tgz","integrity":"sha512-yXVDYRS0tm9HrcNyDA+3Q3hNdq1auH16l1E+uDuPi05YbeID5WkrbONFbrjF/TO24cf0ApbZkbHJ2Fr56XLoHA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD+g8eq+hPAuNXBjRRL8FSFp58aAAZ5j24HcG3E3FPFBQIgPvQah3OG0UgTcDKibW9yOyEggl22xrCfBCv92Few0lI="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.1.0":{"name":"tap","version":"1.1.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","coveralls":"^2.11.2","deep-equal":"^1.0.0","exit-code":"^1.0.1","foreground-child":"^1.1.0","glob":"^5.0.6","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^2.0.5","opener":"^1.4.1","signal-exit":"^1.3.1","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.* --coverage","lint":"standard lib/*.js"},"devDependencies":{"standard":"^2.10.0"},"optionalDependencies":{"readable-stream":"^1.1.13"},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"}],"gitHead":"71cbbbc1922146c2d93204d5e75a27543b00e34f","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.1.0","_shasum":"3e9d265458e7f4fdc0562b156a9fcb7673f48c9a","_from":".","_npmVersion":"2.10.0","_nodeVersion":"2.0.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"3e9d265458e7f4fdc0562b156a9fcb7673f48c9a","tarball":"https://registry.npmjs.org/tap/-/tap-1.1.0.tgz","integrity":"sha512-Ro21X7Or869w1WJHpRAFX9+98UpfCkWaZ3XGljNh/IClqAU0CJzktOMoDHMa48GRZVUYuQWmYYMhj8FVn4BRbw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDT1Omxzp1/CuU/XZuvvPZDEHOeh770TGVebjAIa0Ep4QIgVOd2jDABojE083bT/dKi1bgVzrglT553VmA1+Oj4ADw="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.1.3":{"name":"tap","version":"1.1.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","coveralls":"^2.11.2","deep-equal":"^1.0.0","exit-code":"^1.0.1","foreground-child":"^1.2.0","glob":"^5.0.6","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^2.1.0","opener":"^1.4.1","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"which":"^1.1.1"},"optionalDependencies":{"readable-stream":"^1.1.13"},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"}],"gitHead":"4d68f00208602ffc81bd72b5b94fe7f7be963cee","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.1.3","_shasum":"205ef0e8586e6fd66acd6fa07f4dfe61626f6a98","_from":".","_npmVersion":"2.10.1","_nodeVersion":"2.0.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"205ef0e8586e6fd66acd6fa07f4dfe61626f6a98","tarball":"https://registry.npmjs.org/tap/-/tap-1.1.3.tgz","integrity":"sha512-uG1HM0mvNM99znpHUdwUg8KisLulD7kKTdJqM9Tx3iekdp9AIiojuLEj6zsZ7HaeeVaEUubIkDtONAa9om3Lkg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIECVGU4cVQWNt4iJjCGDDoyMJAvhc6K57twv5VleamUSAiEAmZdUxIr8RPzJVUDDCVz8Byd+7zztDoHl5M5cqenNI84="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.1.4":{"name":"tap","version":"1.1.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","coveralls":"^2.11.2","deep-equal":"^1.0.0","exit-code":"^1.0.1","foreground-child":"^1.2.0","glob":"^5.0.6","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^2.1.0","opener":"^1.4.1","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"which":"^1.1.1"},"optionalDependencies":{"readable-stream":"^1.1.13"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"}],"gitHead":"8865b966c01fded8fa64bc266754b018c6766eec","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.1.4","_shasum":"863b4c41f373be86db63f68fcf1290ce47749a33","_from":".","_npmVersion":"2.10.1","_nodeVersion":"2.0.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"863b4c41f373be86db63f68fcf1290ce47749a33","tarball":"https://registry.npmjs.org/tap/-/tap-1.1.4.tgz","integrity":"sha512-7vblRQ00w+JeZmuYSIl0Qjfa/XMo/WkKkYystpnL68hff+zpSoeOg8Z/QeldaisFpNRSoSC2gFkDhk8mSb/Kkg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD1yJRBN+RwgLBuffZklJiBe/W5ti5ntun2BnY+pBVlvAIgQmcJkbG4i1ZX/lagjKSDyDrCHFzz/7CWBQgd3Jm+2Qg="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.2.0":{"name":"tap","version":"1.2.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","coveralls":"^2.11.2","deep-equal":"^1.0.0","foreground-child":"^1.2.0","glob":"^5.0.6","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^2.1.0","opener":"^1.4.1","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"which":"^1.1.1"},"optionalDependencies":{"readable-stream":"^1.1.13"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"}],"gitHead":"fc2c26a00b54256a36b100135e7f5807d8b68d1c","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.2.0","_shasum":"7d4dc3ffa70becce161957d2f4687451f8d21faa","_from":".","_npmVersion":"2.10.1","_nodeVersion":"2.0.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"7d4dc3ffa70becce161957d2f4687451f8d21faa","tarball":"https://registry.npmjs.org/tap/-/tap-1.2.0.tgz","integrity":"sha512-zkTrgVLaDmnfea3p9f3OP8BQMRYAgniVx62XB1L65sgDRe8FRXefL7WZMQFSR3tI4yu8qyL47s1EID79KpLa4w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDc/CBmsB+Qy1Pmr2/Rfm9IAdVKVA3k/NiKJKUfxucfnwIhAPR8YjlW+oVFggL0LbKgwSLH58REVgkW82uUqyJ5THgV"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.2.1":{"name":"tap","version":"1.2.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","coveralls":"^2.11.2","deep-equal":"^1.0.0","foreground-child":"^1.2.0","glob":"^5.0.6","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^2.1.0","opener":"^1.4.1","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"which":"^1.1.1"},"optionalDependencies":{"readable-stream":"^1.1.13"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"}],"gitHead":"aa672e94d710e4b19568d1feaa8fdb20b92d4e67","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.2.1","_shasum":"036e6e5865087a029a05f0c46c1dd11ebd0d4c4d","_from":".","_npmVersion":"2.11.0","_nodeVersion":"2.2.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"036e6e5865087a029a05f0c46c1dd11ebd0d4c4d","tarball":"https://registry.npmjs.org/tap/-/tap-1.2.1.tgz","integrity":"sha512-6dWjMycsWQUbgSg4Q+UcYg/A7qveYEps8VParMtHgiyLcqjChzKaU8LXS/04zySWhBW+kp1fE7gw7UkMNmvz1Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDnC8MjuJCwLG1qN0qC+2KdkRFdHPt38fknOXogbGBO/AIgLY7fnNmj6+5M8o3c1M8ajPbeurMAoozFyDruoa6CNGY="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.3.0":{"name":"tap","version":"1.3.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","coveralls":"^2.11.2","deep-equal":"^1.0.0","foreground-child":"^1.2.0","glob":"^5.0.6","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^2.1.0","opener":"^1.4.1","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"which":"^1.1.1"},"optionalDependencies":{"readable-stream":"^1.1.13"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"}],"gitHead":"d9b5a1e1e98baf2fde7f146dab173ee75948b676","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.3.0","_shasum":"f6fc9af92b0616f2e521c9cdce52f0c772586544","_from":".","_npmVersion":"2.12.0","_nodeVersion":"2.2.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"f6fc9af92b0616f2e521c9cdce52f0c772586544","tarball":"https://registry.npmjs.org/tap/-/tap-1.3.0.tgz","integrity":"sha512-A21Fa97t0RcLK1UhoPAsLTJw6JBaUlRwBpNuYCiumBL00PTH/zwXTRB+fM60o2T0sep+Sk/wkn8cB2ZjlLT2JA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCEpR+Le+o0UuNnmTDei7x2fCkl8e9Hyx44pr8/0rgSIwIhAInfsYuttDa5GpC4WLMbE/Nb/73Gt3xvUzn/5JLk/sM3"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.3.1":{"name":"tap","version":"1.3.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","coveralls":"^2.11.2","deep-equal":"^1.0.0","foreground-child":"^1.2.0","glob":"^5.0.6","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^2.1.0","opener":"^1.4.1","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"which":"^1.1.1"},"optionalDependencies":{"readable-stream":"^1.1.13"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"}],"gitHead":"cab0fd2d54d67b1fc029b2e6baf078ee78d6c2f3","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.3.1","_shasum":"7eeb7615c5a1ff457dc4342a2f6122f2cef666ac","_from":".","_npmVersion":"2.12.0","_nodeVersion":"2.2.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"7eeb7615c5a1ff457dc4342a2f6122f2cef666ac","tarball":"https://registry.npmjs.org/tap/-/tap-1.3.1.tgz","integrity":"sha512-4+9PwxO/LXafylXR6g6XXlUFNIwbcqBNuaAkFe8RsSzuFbUbDpcYVSDS+Z/i4J5bAR69Kp641Nk5QplitW3d/A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHVdWem/obNtw1IGkaG4vuyBfSC1MzXq13VitRRw87YiAiEAldVCo1CpYrwO85lfNfqEp/dnBJZKO5joEusNbUnie38="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.3.2":{"name":"tap","version":"1.3.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","coveralls":"^2.11.2","deep-equal":"^1.0.0","foreground-child":"^1.2.0","glob":"^5.0.6","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^2.1.0","opener":"^1.4.1","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","readable-stream":"^1.1.13"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"which":"^1.1.1"},"optionalDependencies":{"readable-stream":"^1.1.13"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"}],"gitHead":"515190650eccbb7474418340e87f40ece01317ec","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.3.2","_shasum":"1c577060b12910abbb26125e76375113ddb04964","_from":".","_npmVersion":"3.1.0","_nodeVersion":"2.2.1","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"1c577060b12910abbb26125e76375113ddb04964","tarball":"https://registry.npmjs.org/tap/-/tap-1.3.2.tgz","integrity":"sha512-W0urUj9NbEZ+x6unFfKI3Uu9BkhLHH8UkkWDXFgYqibvlbmLDJYSNUzZxjnNfVuAajfpRpKojScUVJMCbELXfA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCj5nF5xX8Ix8wPNdQDflk4X2A0/+H4qsvLQ7r0F3M6CQIgXOfnt0fRfTotoL25jjZU3imKdpJuo0nJPg4juNnteJU="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.3.3":{"name":"tap","version":"1.3.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"buffer-equal":"~0.0.0","coveralls":"^2.11.2","deep-equal":"1.0.99999","foreground-child":"^1.2.0","glob":"^5.0.6","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^2.1.0","opener":"^1.4.1","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","readable-stream":"^1.1.13"},"bundleDependencies":["deep-equal"],"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"which":"^1.1.1"},"optionalDependencies":{"readable-stream":"^1.1.13"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"}],"gitHead":"a6ce0a5c342a9baf72440fe9011894396ccc3707","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.3.3","_shasum":"3d3b537d9cca82e00abae40f68f9d1b393c61bc1","_from":".","_npmVersion":"3.3.1","_nodeVersion":"2.5.0","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"3d3b537d9cca82e00abae40f68f9d1b393c61bc1","tarball":"https://registry.npmjs.org/tap/-/tap-1.3.3.tgz","integrity":"sha512-eLPw+C5cu6ynFngGdeuH5+Bfd8zr0dGSvXSl5/X+N6C5Alk8fD3BC3/55PHrODg+4a+zOr5Atrcs9MpT7Y4xKw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCZMVcI8QTepANgDP/UczmrGrdNr7QX9Lg603etL2vQBAIgKkczSuBvcIEuw3nP+NU2lS8KpL6+7PQRqEVoeyGEFKA="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.3.4":{"name":"tap","version":"1.3.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"coveralls":"^2.11.2","deeper":"^2.0.0","foreground-child":"^1.2.0","glob":"^5.0.6","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^2.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","readable-stream":"^1.1.13","deep-equal":"*"},"bundleDependencies":["deep-equal"],"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"which":"^1.1.1"},"optionalDependencies":{"readable-stream":"^1.1.13"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"}],"gitHead":"006901b5c272c887f73f230eae48393f835feef9","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.3.4","_shasum":"d9a4ef86e8ece7272145e65210b4a3c4823d6fc6","_from":".","_npmVersion":"3.3.1","_nodeVersion":"2.5.0","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"d9a4ef86e8ece7272145e65210b4a3c4823d6fc6","tarball":"https://registry.npmjs.org/tap/-/tap-1.3.4.tgz","integrity":"sha512-z6iRuWGViPq4raRYPiC2wCmfs/JC2WPW02bOGaHIgXmAeImzW6nCIBoqeKDzaKRz+hkNYVsgwEBwPjmDTrg+Og==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpHXEMdtYWI8w/tLGeaAB4N99yo4aq0r9bwe3Zu8AeZgIhAK1FqKbUDNTATXaDaZYAaVZDvqmxpU1TPWZls6HaaqGj"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.4.0":{"name":"tap","version":"1.4.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.2.0","glob":"^5.0.6","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^3.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.0.1","deep-equal":"*"},"bundleDependencies":["deep-equal"],"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"}],"gitHead":"c05125c5215139f0d38e96a6ac3eb8ec013f3b53","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.4.0","_shasum":"ad52f8dc8b86a52e4e325441410ad07378cdfaba","_from":".","_npmVersion":"3.3.1","_nodeVersion":"2.5.0","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"ad52f8dc8b86a52e4e325441410ad07378cdfaba","tarball":"https://registry.npmjs.org/tap/-/tap-1.4.0.tgz","integrity":"sha512-1UMZpgGyVzYZ2iT8bbXDFpIXHpdxZfKraMnwQJjt5IKXb+jVUWSbGAj/UNmXu4yo1oGUNG4A0jNfVewEzwJOLA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDsIS6g6AQwouqqIrh1x5Z9iJ3T9AJQIqa4/NVjJUL/VgIgCecMww2A6Ua78/G5BTyWkHzKiMzVc7Rfq1PCPzw9N4Y="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"1.4.1":{"name":"tap","version":"1.4.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.2.0","glob":"^5.0.6","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^3.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","deep-equal":"*"},"bundleDependencies":["deep-equal"],"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"}],"gitHead":"93ee76e21211188c6d5606624c560bdaf2231d99","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@1.4.1","_shasum":"1fef098ecbfbea68128b9efd8efd9dd267608b43","_from":".","_npmVersion":"3.3.1","_nodeVersion":"2.5.0","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"1fef098ecbfbea68128b9efd8efd9dd267608b43","tarball":"https://registry.npmjs.org/tap/-/tap-1.4.1.tgz","integrity":"sha512-24vYZq5MP3Ei5Q3tHWrPj/9EbMhg970IS19E+EzdEdVBo8wrmz0W3NKJaZsNBibOg4KTAh6RLAfB4Anar2607A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICnybP0dBRE5BTqwQlw/aRsWmpIIslultKUO6p0dXg9tAiAVBssExvsvZAvSO1yU/O9PHdpPVyKD4d+IljWxMKWXfA=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"2.0.0":{"name":"tap","version":"2.0.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.2.0","glob":"^5.0.15","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^3.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2","deep-equal":"*"},"bundleDependencies":["deep-equal"],"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"}],"gitHead":"e734348831f0201f8b9c96c9a9746cf75e48bc06","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@2.0.0","_shasum":"9d9ba2429adb294226b1a459a7e2ca69d47563f7","_from":".","_npmVersion":"3.3.2","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"9d9ba2429adb294226b1a459a7e2ca69d47563f7","tarball":"https://registry.npmjs.org/tap/-/tap-2.0.0.tgz","integrity":"sha512-+ZwGeuf+8DGYX4uCyuAhReYASxaHWbH3Wh0omh2EiDSBFIHX2w1p8I0ZHlN5srLSSGBinvdZCB3ALL0rbOeDvg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC8mYj2gh2emOO8VkRwe9s1IoWoHHmme71EKq8qXxWk6gIgBggMNiN/RBaYcMiBQs3JKpgdOw0UHxtXyq8cCu89efM="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"2.0.1":{"name":"tap","version":"2.0.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.2.0","glob":"^5.0.15","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^3.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2","deep-equal":"*"},"bundleDependencies":["deep-equal"],"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"}],"gitHead":"77f6dd60f2df1cf7db7a5e0f979587f71c968bad","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@2.0.1","_shasum":"abc949ff1eedbb358615c223bc5decd83b3a8fe4","_from":".","_npmVersion":"3.3.2","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"abc949ff1eedbb358615c223bc5decd83b3a8fe4","tarball":"https://registry.npmjs.org/tap/-/tap-2.0.1.tgz","integrity":"sha512-Uu+sP6VCBJHrd/EWiGL6CVl9bLWTTJjtahvbU0aKV81iutx/1cSnPo/rYlrl9dG2Spu5nvRMlYar+uEFatS9MA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDe7Lykq+Zz1U2LajyvY8Eo1Ms9dcy+tfK34FvvjetS/wIgRSWCy0ChuqrcimCMad8H8UacXEoM83SNClH8Z1GA7Gs="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"2.1.0":{"name":"tap","version":"2.1.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.2.0","glob":"^5.0.15","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^3.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2","deep-equal":"*"},"bundleDependencies":["deep-equal"],"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"bluebird":"^2.9.34","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"}],"gitHead":"748a95cebddf7266e188b036e46241d2f74cc2bb","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@2.1.0","_shasum":"21d0001f85ad8d7ad9cc50d95977b79cb107a661","_from":".","_npmVersion":"3.3.2","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"21d0001f85ad8d7ad9cc50d95977b79cb107a661","tarball":"https://registry.npmjs.org/tap/-/tap-2.1.0.tgz","integrity":"sha512-3UaZ7k2o8kJtyxeb7Ko1kBDnC/VmAcdp4l7lP4gUn4obOoURL09cMdgwsCEpKm2ME7fFHFVaYs5ivRIDsTVQJg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC/JTr6UCc6+2TObaTh3RIwB99TbEwcGcj2pUbdBAqBcQIhANhfu22AMcMVoWHz9sXfmxi/mmOv4jsDUF63vuneDyYe"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"2.1.1":{"name":"tap","version":"2.1.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.2.0","glob":"^5.0.15","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^3.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2","deep-equal":"*"},"bundleDependencies":["deep-equal"],"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"bluebird":"^2.9.34","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"},{"name":"Ryan Graham","email":"r.m.graham@gmail.com"}],"gitHead":"8051a72eb3875014b37889f75baebd29a79e7c0c","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@2.1.1","_shasum":"46385b2a69f37a3bf897071879f08b7aaaa30323","_from":".","_npmVersion":"3.3.2","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"46385b2a69f37a3bf897071879f08b7aaaa30323","tarball":"https://registry.npmjs.org/tap/-/tap-2.1.1.tgz","integrity":"sha512-82eSIBheCC6hSbc6Ju3p6yaOP3nh4AI8ZyKceJx4Zm5V2VzxJ5yOSAJSZkM/RtziJS6cZ7B73/HNKM6JR/nGrA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDFqM/DZ6iB4g50saio56YNR22++Si6zUK6oLLlxfpR7AIhANx96yuUcoro+waeX5IIKThGMlZL1gg5/2d2o5sHBYO2"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"2.2.0":{"name":"tap","version":"2.2.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.2.0","glob":"^5.0.15","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^3.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2","deep-equal":"*"},"bundleDependencies":["deep-equal"],"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"bluebird":"^2.9.34","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"},{"name":"Ryan Graham","email":"r.m.graham@gmail.com"}],"gitHead":"5a61d166a0b39dba57e3db2048e341dd2535051b","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@2.2.0","_shasum":"468375e3c8340ee3f2be8d1c6e93350ce7f37cbd","_from":".","_npmVersion":"3.3.2","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"isaacs@npmjs.com"},"dist":{"shasum":"468375e3c8340ee3f2be8d1c6e93350ce7f37cbd","tarball":"https://registry.npmjs.org/tap/-/tap-2.2.0.tgz","integrity":"sha512-Q59biQcUHlQyla71PMIltkU0oJAuGZrDlw4mBvgO1e23Ev1No8oD/kATCLMrMXx06CzJLCv05kcV7LGQfBOlGg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFS7XjY0cMkMsYia+sGXqhnTNskfSZn+LHpVLtT01djAAiAeTI6yJ9KZj8ibyPnMRnA63Ae2pCvoX5DQYiHh5jgjtg=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"2.2.1":{"name":"tap","version":"2.2.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.2.0","glob":"^5.0.15","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^3.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2","deep-equal":"*"},"bundleDependencies":["deep-equal"],"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"bluebird":"^2.9.34","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"},{"name":"Ryan Graham","email":"r.m.graham@gmail.com"}],"gitHead":"5e96afd74a0ce803562274741dd9eb24a6404064","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@2.2.1","_shasum":"9e8b1a745ba63c1879cc64e42b1dadf818238af2","_from":".","_npmVersion":"3.3.2","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"9e8b1a745ba63c1879cc64e42b1dadf818238af2","tarball":"https://registry.npmjs.org/tap/-/tap-2.2.1.tgz","integrity":"sha512-5ad3XsJrq9U4vVr3EfpqMktYpXDaD9ALM8f4uIZN7DL/FRnsBzvWaAAjjWX+TlGn/RKtb/gZAuPaUuFxQvyFAw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDHfOdbRdbJ6cO/ShJcbZUW6MckKt7QmgFqsRmdg/76EwIgaRwEM5NsjCDa4Dua8w+WU0kB/M9r+6pcKdieX568wF0="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"2.3.0":{"name":"tap","version":"2.3.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.2.0","glob":"^5.0.15","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^3.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2","deep-equal":"*"},"bundleDependencies":["deep-equal"],"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"bluebird":"^2.9.34","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"},{"name":"Ryan Graham","email":"r.m.graham@gmail.com"}],"gitHead":"0f6928dacc68377a82590da5d2075c335332df16","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@2.3.0","_shasum":"9cec018d468e2ed399d8d9ffdbc57d18ad577d25","_from":".","_npmVersion":"3.3.2","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"9cec018d468e2ed399d8d9ffdbc57d18ad577d25","tarball":"https://registry.npmjs.org/tap/-/tap-2.3.0.tgz","integrity":"sha512-z5raW1rP/iSuyaDwD8WC/YKcUJD0WKs55ghmYT23nTBOqSMFV9X4/Eqi8zxFWlGX9tyDsI+2N4gbh23Bs1hg2A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCHNWikCLHF2k1yMccsGVGU1Ng8sdi+WXVVa2WnZqjqDwIgBcu1RmVknKzw+Aoxjm1yYarW0GRxGqom8fXkKf0uKwI="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"2.3.1":{"name":"tap","version":"2.3.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.2.0","glob":"^5.0.15","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^3.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"bluebird":"^2.9.34","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"},{"name":"Ryan Graham","email":"r.m.graham@gmail.com"}],"gitHead":"f45630bf61cecd8d51dd3ffbfbd22a0028c1ac3d","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@2.3.1","_shasum":"11992695dfbbc0be57d0f5f1a4dc58a25a0fbb97","_from":".","_npmVersion":"3.3.2","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"11992695dfbbc0be57d0f5f1a4dc58a25a0fbb97","tarball":"https://registry.npmjs.org/tap/-/tap-2.3.1.tgz","integrity":"sha512-9DBJMj85Bb4WIgnq0ALNPA6JazUWwmbdergQKPMaJIFxZ/2v5YeCd/uQ5c1v7gTkh7UZXuoNgTHKg4x1evXbCw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE5ruyN6Bg585T1h7XQvOJduXRTJl3KK8CP1Atc+FxlQAiBn35wcsVwoclOubih9jslrRYDML8NQqheZnk3gpo2wAg=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"2.3.2":{"name":"tap","version":"2.3.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.2.0","glob":"^5.0.15","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^3.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"bluebird":"^2.9.34","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"},{"name":"Ryan Graham","email":"r.m.graham@gmail.com"}],"gitHead":"c0679df6daa8a5604e6bd6fd8e21a27dd6504f7c","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@2.3.2","_shasum":"8a145da3ec4877a2b331ff9b78362120b16a7881","_from":".","_npmVersion":"3.3.2","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"8a145da3ec4877a2b331ff9b78362120b16a7881","tarball":"https://registry.npmjs.org/tap/-/tap-2.3.2.tgz","integrity":"sha512-muIvLxXICfp7ybua/g3+zoeqULvZNkKplKVpneSrNiLCdH4MSGVyqvC0wQPjTv8AJQk0i5cRkfKKEZWrfNvhoQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCcMUzA6aBvm3KBIrx3Z+CyLnxKrSBjdtIpg+BQmae+NgIgWTlLIU9OWrsT8Jno2BK/vmhfHcdrySu12DIKg+NZKEo="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"2.3.3":{"name":"tap","version":"2.3.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.2.0","glob":"^5.0.15","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^3.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"bluebird":"^2.9.34","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"},{"name":"Ryan Graham","email":"r.m.graham@gmail.com"}],"gitHead":"f491b5cac11511bcc262e0c3a15a90910925b695","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@2.3.3","_shasum":"0b5fd3bc5665b6d7d1bc0091b5a0eaadc74931a7","_from":".","_npmVersion":"3.3.2","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"0b5fd3bc5665b6d7d1bc0091b5a0eaadc74931a7","tarball":"https://registry.npmjs.org/tap/-/tap-2.3.3.tgz","integrity":"sha512-Q/75dnMCR6Rj4rbGKooGfFCek5hq8O1xKizOJ7ll9iDXAILFUWN0kSqGkRtPbvKwbDoR2P4ILBfqAy4ziw+TsQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGPVH1tcVLknj0GeJXzwn445v4O7Klai/xKlgiFnsgbhAiEA1eFAtTBIbI/jsQJVWpH6S61ECDHawzhfTsVdj475smI="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"2.3.4":{"name":"tap","version":"2.3.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.2.0","glob":"^6.0.1","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^3.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"bluebird":"^2.9.34","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["\\bnode_modules\\b","\\btest[\\/]"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"},{"name":"Ryan Graham","email":"r.m.graham@gmail.com"}],"gitHead":"0ba8a95ed4c5991b98754f42c1299c9f9520b2db","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@2.3.4","_shasum":"c7b6bd397ff1d9fbf93e58ebe58c7915fda880b4","_from":".","_npmVersion":"3.3.2","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"c7b6bd397ff1d9fbf93e58ebe58c7915fda880b4","tarball":"https://registry.npmjs.org/tap/-/tap-2.3.4.tgz","integrity":"sha512-2VkUALsp14eVNKeEpBcpcjuLevhtER+2ag4sTkWy7QnAub1WXC46AaY/NHnMtx1vTrZiL9nvk/fSYSKg3JFF5A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCH2sA+KbRoWF0hPUucgDl+4Zd30mT7PieVFJrVs0/xLgIhAMH0/0xiuWU2R0Efkg5pPDjFKFtFJu3KH/DsercYk2YD"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"3.0.0":{"name":"tap","version":"3.0.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.2.0","glob":"^6.0.1","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^5.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage"},"devDependencies":{"bluebird":"^2.9.34","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"},{"name":"Ryan Graham","email":"r.m.graham@gmail.com"}],"gitHead":"5e56aa0a08423bc250e4683fa6439a1e8ebf14ac","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@3.0.0","_shasum":"3e282b8e04a33713468e9d957d79883233d09402","_from":".","_npmVersion":"3.3.2","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"3e282b8e04a33713468e9d957d79883233d09402","tarball":"https://registry.npmjs.org/tap/-/tap-3.0.0.tgz","integrity":"sha512-U4JF7xhJtp6yRlUFuZWA3o5TDMEae72P1pg2M9Rff1+oYkSxKdZL63veLPMqdq3q6stFtyyGojnj7EXOaG7cCQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC+JPKX52zaj1AnXUwBs92DM14lIENiwhHuy76NKW43kwIhAOFsXhjfyPU8o6/dD4qxFKzqvsA4HghUJEw0PmvjKPhq"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"3.1.0":{"name":"tap","version":"3.1.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.2.0","glob":"^6.0.1","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^5.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","posttest":"standard"},"devDependencies":{"bluebird":"^2.9.34","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"},{"name":"Ryan Graham","email":"r.m.graham@gmail.com"}],"gitHead":"26b60bc1e97a295f250ed75695cd79af42fbf347","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@3.1.0","_shasum":"e29f02270b0548699004ed1ce6c9c4123f61a575","_from":".","_npmVersion":"3.3.2","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"e29f02270b0548699004ed1ce6c9c4123f61a575","tarball":"https://registry.npmjs.org/tap/-/tap-3.1.0.tgz","integrity":"sha512-p4RYpMrQEFrUvxKIyrnSxQsXjcnUIkfr4wKj+kBBJR9vJhiOLuG2P6XLwdjQQ37LbcbXvi03h+a0d5axT9IiTA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIENJgi1ZJ2oH7+bGs0YV4MRCmOatu/0AjpaWB2tK9jC0AiEAlU2rmZYtcwvDh4T5w+7lEHHS+RayHpkNaThW+Z4QbLM="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"3.1.1":{"name":"tap","version":"3.1.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.2.0","glob":"^6.0.1","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^5.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","posttest":"standard"},"devDependencies":{"bluebird":"^2.9.34","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"},{"name":"Ryan Graham","email":"r.m.graham@gmail.com"}],"gitHead":"68ef7ad6790a3f14260dc4326f10bf892d6a6ddb","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@3.1.1","_shasum":"44cc3bba0bf3229877bea91cd858991e66f7e66c","_from":".","_npmVersion":"3.3.2","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"44cc3bba0bf3229877bea91cd858991e66f7e66c","tarball":"https://registry.npmjs.org/tap/-/tap-3.1.1.tgz","integrity":"sha512-g6LF5cv6Da1sxWBGhji/YzEW1nO5K2JNypMRSwriLckFHUlOlG5ShyIIu6LBiNNNfFVmmrQyrlrsooXK9vuTMw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCMJ2YDgLhjrEknPtw1q/i6R+fjaoWZMtr9j+wZrWL+WQIhANvMExFswlhrfu1HWmJTcOp9HtbIlOtjAwFruIHi9/RF"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"3.1.2":{"name":"tap","version":"3.1.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.2.0","glob":"^6.0.1","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^5.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","posttest":"standard"},"devDependencies":{"bluebird":"^2.9.34","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"},{"name":"Ryan Graham","email":"r.m.graham@gmail.com"}],"gitHead":"90f4d38200ac472d7da677d67692755608ae8d3a","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@3.1.2","_shasum":"f94e74958d782f2eaecd8badb153aa3a33b0e3e1","_from":".","_npmVersion":"3.3.2","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"f94e74958d782f2eaecd8badb153aa3a33b0e3e1","tarball":"https://registry.npmjs.org/tap/-/tap-3.1.2.tgz","integrity":"sha512-CZJGpYI17iD7RTqOPBptA4XZEaQCphzo+Fv76OaBYh7xza8eJbhW1vakRtJAL9fGNIR9x7Q6pPpjpmwX8qxYJw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCaOF2ELpaWXarfYcMbI0sUAHVA8P2UfoJRvLHZonOrxAIhAKgj+Rg6dZ369Q0ZqCB6CncCgcCfuKIUSWPnG4+ad87v"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"4.0.0":{"name":"tap","version":"4.0.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.2.0","glob":"^6.0.1","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^5.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/isaacs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","posttest":"standard"},"devDependencies":{"bluebird":"^2.9.34","standard":"^5.4.1","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"contributors":[{"name":"Isaac Z. Schlueter","email":"i@izs.me"},{"name":"baudehlo","email":"helpme+github@gmail.com"},{"name":"James Halliday","email":"mail@substack.net"},{"name":"Jason Smith","email":"jhs@iriscouch.com","url":"air"},{"name":"Pedro P. Candel","email":"kusorbox@gmail.com"},{"name":"Stein Martin Hustad","email":"stein@hustad.com"},{"name":"Trent Mick","email":"trentm@gmail.com"},{"name":"Corey Richardson","email":"kb1pkl@aim.com"},{"name":"Raynos","email":"raynos2@gmail.com"},{"name":"Siddharth Mahendraker","email":"siddharth_mahen@me.com"},{"name":"Ryan Graham","email":"r.m.graham@gmail.com"}],"gitHead":"285ca4dc28c45cbe2ba500c559926794400a90e6","bugs":{"url":"https://github.com/isaacs/node-tap/issues"},"homepage":"https://github.com/isaacs/node-tap#readme","_id":"tap@4.0.0","_shasum":"6e3b9f27270c812b041ac2ac48c8cf4c39b09dcb","_from":".","_npmVersion":"3.3.2","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"6e3b9f27270c812b041ac2ac48c8cf4c39b09dcb","tarball":"https://registry.npmjs.org/tap/-/tap-4.0.0.tgz","integrity":"sha512-QuM94gH2FivOBau3vWDzplEn76LW1/8Xyir4AQMfC4Jwd64/hJx9/6bKRvIHySBWSRY1+g27dkpbjKsRt8B5lw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG1l69C7Z6IHg+ywmi6fPZO76ThJkDT2G2nAZU4ys9Y+AiEAv573AY/Vq28OWqI+Aaul94DkqVMxB2s2UoD5iAbkBJ0="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"5.0.0":{"name":"tap","version":"5.0.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^6.0.1","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^5.2.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","posttest":"standard"},"devDependencies":{"bluebird":"^2.9.34","standard":"^5.4.1","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"5183ec8ee8536fbad6f2f3edb8774bd8b456ecfa","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"homepage":"https://github.com/tapjs/node-tap#readme","_id":"tap@5.0.0","_shasum":"3a36287c3be4f5ef606cb49c0e3506dad84d0788","_from":".","_npmVersion":"3.3.2","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"3a36287c3be4f5ef606cb49c0e3506dad84d0788","tarball":"https://registry.npmjs.org/tap/-/tap-5.0.0.tgz","integrity":"sha512-//bETGjPCv+9fN6u+OqrWp0Gf0cmao28EHp2svJWhiKQLax4hPijZN/+E5r8G2IOhjBDOTKWpKjfw94OlY8FoA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFaV/LxY6KgJNci+1AKYLsHIzymRc3du239vX1ZggZcwAiEA4Z1Tf+A4e/jlglzU7+qpMFC3N982twf6pe9AbTh8wFY="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"5.0.1":{"name":"tap","version":"5.0.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^6.0.1","js-yaml":"^3.3.1","mkdirp":"^0.5.0","nyc":"^5.2.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.2.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","posttest":"standard"},"devDependencies":{"bluebird":"^2.9.34","standard":"^5.4.1","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"e038956e73ff7539f086e963c191f3f88824e75b","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"homepage":"https://github.com/tapjs/node-tap#readme","_id":"tap@5.0.1","_shasum":"ba5a7f67536821c12a5203b6d863eae684d0b5c2","_from":".","_npmVersion":"2.14.15","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"ba5a7f67536821c12a5203b6d863eae684d0b5c2","tarball":"https://registry.npmjs.org/tap/-/tap-5.0.1.tgz","integrity":"sha512-w6jabURmH/6CqFJvjatm8GWRkKMEeEz03s2GxpFhSQldvY0f0QhnM3VHnsJv93M+oIyjgRpQ9jIbPfEbHZfrIg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFOE9pZKb0k+o6T8z576ICRDvk3XSIjBY1cNQgqWzKXJAiEA/9l1JSgXR9qQ/NJoNgiT3F/BYHh/Sp4WL6SDX0c9f/k="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"5.1.0":{"name":"tap","version":"5.1.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^6.0.1","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"github:isaacs/nyc","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.3.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","posttest":"standard"},"devDependencies":{"bluebird":"^2.9.34","standard":"^5.4.1","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"6a4f6ff0c3ccf46ce37f5cfcce3fb5d2c9db156c","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"homepage":"https://github.com/tapjs/node-tap#readme","_id":"tap@5.1.0","_shasum":"fc9a22553af878acb79580029c1b2f915e4c4b69","_from":".","_npmVersion":"2.14.15","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"fc9a22553af878acb79580029c1b2f915e4c4b69","tarball":"https://registry.npmjs.org/tap/-/tap-5.1.0.tgz","integrity":"sha512-mwHUCZuKj6AmeEE1iAPprwYLm5wdw3adN19BsZlDFHZnJHHjf2SB74IKs0Lrgxv5A/qXlUshcbR7la2rCstNcg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHlAkZbIpJaBPXtnXeGKIyUiPQHC3lCW2ZT+Dqh+wju4AiAybY+9tDyNJ7QxjRh4vEHTaub46aw3g/Y2R5+E5kealw=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"5.1.1":{"name":"tap","version":"5.1.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^6.0.1","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"github:isaacs/nyc","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.3.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","posttest":"standard"},"devDependencies":{"bluebird":"^2.9.34","standard":"^5.4.1","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"feaecefe11bee0b1b05fcaff4d338021112f3e77","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"homepage":"https://github.com/tapjs/node-tap#readme","_id":"tap@5.1.1","_shasum":"7f7e5ae8e8a370e0de518b1baad84744acc892f5","_from":".","_npmVersion":"2.14.15","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"7f7e5ae8e8a370e0de518b1baad84744acc892f5","tarball":"https://registry.npmjs.org/tap/-/tap-5.1.1.tgz","integrity":"sha512-ylQClzdlu6CctlJAHWK3jT8mKrtEE/PWDNZTuOFUE4oDplvj3iI3v3VtXrGvAVVXiBmpgtyv3YP3uApwx9qN8A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCgSirVGELhxjNg5x7oJgGhkIB/MVIBqI3NxoeuRmI7igIhAO3OfeNyPQlkeAOFPT/Z1ggvJ3SrWxP4VeSmcjy8g8Bj"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"5.1.2":{"name":"tap","version":"5.1.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^6.0.1","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^5.5.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.3.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","posttest":"standard"},"devDependencies":{"bluebird":"^2.9.34","standard":"^5.4.1","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"e1f9f50e896cd90ff1c408cd9b2dbdf2bbde451c","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"homepage":"https://github.com/tapjs/node-tap#readme","_id":"tap@5.1.2","_shasum":"8c5c196ae283719e6cc4fa61d07c90b7c5cce0e0","_from":".","_npmVersion":"2.14.15","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"8c5c196ae283719e6cc4fa61d07c90b7c5cce0e0","tarball":"https://registry.npmjs.org/tap/-/tap-5.1.2.tgz","integrity":"sha512-5Dz27H1a8UG0eT+ZBjGS1VURlHh34TWWzSKXWYrzR3m8aFVhxUk3t6ENSRLhk46eVj3XyR6BHX26LKpZqCZF7w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCR3lJHDruv9EodyBTmEATu0GJwnRlK7jXEW+L/WW274wIgK3lCi7Aa1FISow8BGjBljewI4E3LP1YUWSFMG8qKXe0="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"5.2.0":{"name":"tap","version":"5.2.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"clean-yaml-object":"^0.1.0","codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^6.0.1","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^5.5.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.3.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","posttest":"standard lib test"},"devDependencies":{"bluebird":"^2.9.34","standard":"^5.4.1","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"f47157b00e511135785735abcb84ea7bab9b003b","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@5.2.0","_shasum":"2d3da0a4f6caf6cbbebf89e791104ac12fdd5f14","_from":".","_npmVersion":"2.14.15","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"2d3da0a4f6caf6cbbebf89e791104ac12fdd5f14","tarball":"https://registry.npmjs.org/tap/-/tap-5.2.0.tgz","integrity":"sha512-HhraP6/VelZ9nQIqmyUNb8CIBIvFXz6G4l1fXwQUPbtcVA8Ak+af9tDQnO71CRH5J0+3gRYTMVwK/yEU4EgRXA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDfPb35YmSjNavaTX2x8Hys+bL25dz6Q1Y7opvijvftKAiEA9OCOcH8XqTwjl4/OoDe960mBjYh2A8oL716K2To2ASY="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"5.3.0":{"name":"tap","version":"5.3.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^2.9.34","clean-yaml-object":"^0.1.0","codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^6.0.1","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^5.5.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.3.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","posttest":"standard lib test"},"devDependencies":{"standard":"^5.4.1","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"859a64fd60474f0deded218608d88d90e234ca4a","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@5.3.0","_shasum":"839771dab7357887a7fb1f7868c9fd711c8560b8","_from":".","_npmVersion":"2.14.15","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"839771dab7357887a7fb1f7868c9fd711c8560b8","tarball":"https://registry.npmjs.org/tap/-/tap-5.3.0.tgz","integrity":"sha512-Kzsp1h0w9TPZYQ9iKYVzPTbqiUTgnGABDpoPEAUt3Va0gxgciSSRsesMpLvsdcAzSy19Xj1eJUjnTxu+z6x0lQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDZcCKN6as/3Zn+oY+nmFliBLEb6hyy2MMxHnPxV6rQGAiA0pW9MB6EXt7elL++823WYU+oeGVS/BaSDfbarPyXdKQ=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"5.4.0":{"name":"tap","version":"5.4.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^2.9.34","clean-yaml-object":"^0.1.0","codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^6.0.1","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^5.5.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.3.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","posttest":"standard lib test"},"devDependencies":{"standard":"^5.4.1","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"ac574812eb4aa0af31610b86530345956960d6d1","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@5.4.0","_shasum":"ff6c03fc5c6f345d53ed2cc774a164711f7268f9","_from":".","_npmVersion":"2.14.15","_nodeVersion":"6.0.0-pre","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"ff6c03fc5c6f345d53ed2cc774a164711f7268f9","tarball":"https://registry.npmjs.org/tap/-/tap-5.4.0.tgz","integrity":"sha512-eXRV+ugQSlqokfArpwdlmkifWz/QBiDboC7hXn+o9kM0kRgpBT9g39GSI1qu2mlP5Nmz7yBSYbxJ0g4Xe3UfNQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGtBPPVDsr2pnUtjl7UY/NGbsdSCqdcNS6XVXonkxPzjAiB3AT0o/QjE++jl0PIS6vACWk8PNAOXSIN03nkXKlZhdA=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"5.4.1":{"name":"tap","version":"5.4.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^2.9.34","clean-yaml-object":"^0.1.0","codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^6.0.1","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^5.5.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.3.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","posttest":"standard lib test"},"devDependencies":{"standard":"^5.4.1","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"4559eaf6ce36f13e60134d1c649f52dec4e9b303","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@5.4.1","_shasum":"c980c2681f6d5dd4e667f3a9a1039254a23d00f2","_from":".","_npmVersion":"2.14.15","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"c980c2681f6d5dd4e667f3a9a1039254a23d00f2","tarball":"https://registry.npmjs.org/tap/-/tap-5.4.1.tgz","integrity":"sha512-ThYi7pMO0zIDJ/Yb9D77Nu6jFujfXSqrz8SQOcZvTkkIf9/1RXfSIK6U0vCEAQ1ybpbFMLJWD+IKWqEYx1Y4rA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEh2WcCPXE+n5vh83d6mAngTxowO4xA0gsMlUtVwGfG7AiBl9CK7ADllSkzAZY44m3hywKp+Cf6KO5XIOe0jouwgTg=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"5.4.2":{"name":"tap","version":"5.4.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^2.9.34","clean-yaml-object":"^0.1.0","codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^6.0.1","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^5.5.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.3.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","posttest":"standard lib test"},"devDependencies":{"standard":"^5.4.1","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"b119e1071a57b8cce24cf78a460a297e9eaddb73","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@5.4.2","_shasum":"b505f1163615b360bfab96daeb41aa8981216d9d","_from":".","_npmVersion":"2.14.15","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"b505f1163615b360bfab96daeb41aa8981216d9d","tarball":"https://registry.npmjs.org/tap/-/tap-5.4.2.tgz","integrity":"sha512-186/DPZAKomArdJSSF+TQl1ZSpii8iB1/5TDnZAGpFVKy+GA13THotYk62TkNdpD7vTuHE7MGJnrkH3zOnclbw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICNDZgC8hzvOmHZdQd9LtRLAogzdPxR057wn48xMUUFtAiAGM0/lQcVWaYsR+xefJc0Dss4Er7OsCIRWu1wkaPT3kA=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{}},"5.4.3":{"name":"tap","version":"5.4.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^2.9.34","clean-yaml-object":"^0.1.0","codecov":"^1.0.1","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^6.0.1","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^5.5.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.3.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","posttest":"standard lib test"},"devDependencies":{"standard":"^5.4.1","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"3951c457fa5f576e4c164e2fd309cf988d0e8763","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@5.4.3","_shasum":"933729b868b3f696efcafe70414dc54468e303c6","_from":".","_npmVersion":"3.7.0","_nodeVersion":"4.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"933729b868b3f696efcafe70414dc54468e303c6","tarball":"https://registry.npmjs.org/tap/-/tap-5.4.3.tgz","integrity":"sha512-4AnXnvnWbNtyiFgo/lU6tk3UfrFH9c7NWrz1Ky91KHMhHFCyiT+DW9uQ7bdOGsFH33hXKiAiFnIzy/qWOyrVcg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCmSF97Fvw9G3vzvoS76pk73J7Tzn+IvzXFuVEyCuljSwIhAKljup+qxgoeAEWHRNCf+e8j5cgXmkOCu5i3//MFnHTZ"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-6-west.internal.npmjs.com","tmp":"tmp/tap-5.4.3.tgz_1454980095118_0.8148323162458837"},"directories":{}},"5.4.4":{"name":"tap","version":"5.4.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^2.9.34","clean-yaml-object":"^0.1.0","codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^6.0.1","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^5.5.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.3.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","posttest":"standard lib test"},"devDependencies":{"standard":"^5.4.1","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"1cb66a53a141b12168dfb7d9163eeb561ac9b93e","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@5.4.4","_shasum":"567a776108d7d7b14010e720cd93fc62c043cbbb","_from":".","_npmVersion":"3.7.0","_nodeVersion":"5.6.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"567a776108d7d7b14010e720cd93fc62c043cbbb","tarball":"https://registry.npmjs.org/tap/-/tap-5.4.4.tgz","integrity":"sha512-9yCvaKwnylAorLQVMpOI4Q88EP3GS6YiOw9t0TRdV4PXFkdoqMerBrqpSznEQjoCyG8zCPD2wbKGEsXoOkzwTQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDss06GBq6PHQoYj6Lz1O2qdPOGFStOtSo2uYRRloXfRQIgAduVcA/wpYjQSRwLbjkid4QsvCOLxyp4b0ailttIpSo="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-6-west.internal.npmjs.com","tmp":"tmp/tap-5.4.4.tgz_1455344072152_0.6667323126457632"},"directories":{}},"5.4.5":{"name":"tap","version":"5.4.5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^2.9.34","clean-yaml-object":"^0.1.0","codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^6.0.1","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^5.5.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.3.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","posttest":"standard lib test"},"devDependencies":{"standard":"^5.4.1","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"dc56799ec4881d4da239757c16a3c8add683e431","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@5.4.5","_shasum":"90ba067940b2c4ddc1657bdf633d426b671ce846","_from":".","_npmVersion":"3.7.3","_nodeVersion":"5.6.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"90ba067940b2c4ddc1657bdf633d426b671ce846","tarball":"https://registry.npmjs.org/tap/-/tap-5.4.5.tgz","integrity":"sha512-JP3KYslD5VLNu3+1pdIlxdTMoHWvG8+bvs1mX6La/Xu5MJslZOqyvn2xSkVQYG8whdH9+VwioKROQzIxpvVCJg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF6TueqNmcVKwGRsJMHz0Gr2I+kShbeWDQR1bwklsv+SAiBNqPvSXyyzlRrU/S8xgrritH1rkBTrU1fJV38pMzkn/A=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-5-east.internal.npmjs.com","tmp":"tmp/tap-5.4.5.tgz_1455589285905_0.6782988396007568"},"directories":{}},"5.5.0":{"name":"tap","version":"5.5.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^6.0.1","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^5.5.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.4.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^1.0.2"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","smoke":"node test/test.js | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"standard":"^5.4.1","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"69bf93c10178728013d5388ba35e552df390f525","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@5.5.0","_shasum":"e9c663c729c46b810b500a5f948f56d30d6ad87b","_from":".","_npmVersion":"3.7.3","_nodeVersion":"5.6.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"e9c663c729c46b810b500a5f948f56d30d6ad87b","tarball":"https://registry.npmjs.org/tap/-/tap-5.5.0.tgz","integrity":"sha512-ErnjTxZVeGTD1UpaXRW7OyKcF9mzx6riipcC5uAgorjCgn7f+UlsMCNogyz1Ymx2q0xb3f16OV5fSwGmynquXA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF6c4P3CCi04HZGTNY3P3TdDWdYkIJa3otHkMWPb4uqZAiACsGp6rlZeUFPZoCEpYXXaVLK0ssKNSk2rbg48w1bfeg=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-6-west.internal.npmjs.com","tmp":"tmp/tap-5.5.0.tgz_1455604312321_0.00000620097853243351"},"directories":{}},"5.6.0":{"name":"tap","version":"5.6.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^6.0.1","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^5.5.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.4.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^2.0.1"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","smoke":"node test/test.js | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"standard":"^5.4.1","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"85a2e7c578d3db829a3c16aeaf78e472419c5fdf","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@5.6.0","_shasum":"5974cc19701c86aa4beb4d802f85ad515c8abffe","_from":".","_npmVersion":"3.7.3","_nodeVersion":"5.6.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"5974cc19701c86aa4beb4d802f85ad515c8abffe","tarball":"https://registry.npmjs.org/tap/-/tap-5.6.0.tgz","integrity":"sha512-13SpqnuT2AyD72q135mY+V1sSJ1TnDd7tq+GGXKhTnMtj1AvCJtPkcFlE4+Y/wPUJhsP8w78p4VACNky34fM3g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAMbABYXQd8Dvj1XsvMYuau2F1yzl5IkK53P+3h9pK4TAiAHse8UwwwguEx5zDqp6LB7cJ6NBTJvHVP9Dl+8LVngWA=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-6-west.internal.npmjs.com","tmp":"tmp/tap-5.6.0.tgz_1455777897499_0.38599789841100574"},"directories":{}},"5.7.0":{"name":"tap","version":"5.7.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^5.5.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.4.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^2.0.1"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","smoke":"node test/test.js | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"standard":"^5.4.1","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"8ebc428cd4e96428d4e6f28c16940402288fd397","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@5.7.0","_shasum":"ef22a997075defd6e6d056c7837f83fc4b2a8f52","_from":".","_npmVersion":"3.7.3","_nodeVersion":"5.6.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"ef22a997075defd6e6d056c7837f83fc4b2a8f52","tarball":"https://registry.npmjs.org/tap/-/tap-5.7.0.tgz","integrity":"sha512-imx6MejMv0sMRcDmvUlsckCGNfIvrtXG5sR2bkt8ydGO2otUXi0h2ISeep8WZyndBqqZ74klOeUgM7rnwFwnVg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGHsOeTT6fz0igraRxIGizhoKYf03HyeTUnGL6WGp0deAiEAnbuMjDnvwfbJUqAsaVwg/JLEAZ2GfG7/FyPVWQDjfUc="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-9-west.internal.npmjs.com","tmp":"tmp/tap-5.7.0.tgz_1456169008128_0.01596630597487092"},"directories":{}},"5.7.1":{"name":"tap","version":"5.7.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^5.5.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.4.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^2.0.1"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","smoke":"node test/test.js | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"standard":"^5.4.1","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"d5e11d0f660ac0a38b486adfb505b28a02e51fd3","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@5.7.1","_shasum":"1dcd578dcd0aba292e262525bb83f33db48eb549","_from":".","_npmVersion":"3.8.5","_nodeVersion":"5.6.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"1dcd578dcd0aba292e262525bb83f33db48eb549","tarball":"https://registry.npmjs.org/tap/-/tap-5.7.1.tgz","integrity":"sha512-xTJX8tq/m0CoV58KtKx7XrPZ8nUbF94uc2tsBTKYtHmdvYwWChv3KSP0s2zeZ+Ch3wq1dceZPHYTB8FUsefk6g==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDRSJkLqxH51zxrgrQGiK9n6EoiEMuRDyMj/aq9uKwPpQIgeOdi17GnWOmSvhh2d1/DpLnkW9ciL+FpSGBKWK/Vpsw="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-5.7.1.tgz_1460117932330_0.5307869822718203"},"directories":{}},"5.7.2":{"name":"tap","version":"5.7.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","codecov.io":"^0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^6.4.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.4.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^2.0.1"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","smoke":"node test/test.js | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"standard":"^7.1.0","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"6e5e2f10237325ca4fefdfaae56c138275e124e9","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@5.7.2","_shasum":"5bb849dc98b78ffd4d7c6e8373bd13afbd18f7aa","_from":".","_npmVersion":"3.9.1","_nodeVersion":"4.4.4","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"5bb849dc98b78ffd4d7c6e8373bd13afbd18f7aa","tarball":"https://registry.npmjs.org/tap/-/tap-5.7.2.tgz","integrity":"sha512-DRjzXW1SZynXgn0Nm7NuVi/77vxtwaOol/YB1z7EsJGodbT5WsL621/XStghC/xXmIGAppgx34OFOCOhS4OQDA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDh2ImoVZ8+vFanjjsLFMwM1YiFinOyH22c7of66vlmkAIgf56l3YVtlbANwoXtSwg8LlqoKEnNevMuJ7vQ61bPK5U="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/tap-5.7.2.tgz_1464042168250_0.2676007386762649"},"directories":{}},"5.7.3":{"name":"tap","version":"5.7.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","codecov.io":"0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^6.4.0","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.4.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^2.0.1"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","smoke":"node test/test.js | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"standard":"^7.1.0","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"e41b6737650a8d4559082ed608c591245a7fa49c","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@5.7.3","_shasum":"f275511f8fb07350cd38d2640e373d3f46541674","_from":".","_npmVersion":"3.9.1","_nodeVersion":"4.4.4","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"f275511f8fb07350cd38d2640e373d3f46541674","tarball":"https://registry.npmjs.org/tap/-/tap-5.7.3.tgz","integrity":"sha512-hwcUreweWUnPyuwrhlVKBQ2dwkfySbwMtTBr5cGw/aPUH2Euor2lOZ3ueL8BjH5tnjQsOt3YhhG/rsE7rsA2DQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAqdyROjQxQApp51KTgoiQZQBlKIl5IZWLp6zHOTiPdYAiEA1nRFIUNS7ED+w2aIiJpyO+1+VFdkMZeDkyNbFnqRmhw="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-5.7.3.tgz_1466467945015_0.08426140481606126"},"directories":{}},"5.8.0":{"name":"tap","version":"5.8.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","codecov.io":"0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^6.6.1","only-shallow":"^1.0.2","opener":"^1.4.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.4.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^2.0.1"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","smoke":"node test/test.js | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"standard":"^7.1.0","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"77727e60ed7e75ac44c805571b84fd6f86b0cb8b","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@5.8.0","_shasum":"cbd7164884cbc85566f9c937a2806b911f429adc","_from":".","_npmVersion":"3.10.2","_nodeVersion":"4.4.4","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"cbd7164884cbc85566f9c937a2806b911f429adc","tarball":"https://registry.npmjs.org/tap/-/tap-5.8.0.tgz","integrity":"sha512-nJ9VmIOJQ1XHJDpxU+d8EVVT8u9DkDQ8nfP/xLPCa03FF350IwTB1MWbNyhGmY+GG2c0R/S34uKb70Ihq1YfxQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFMwmDEIQ095oK5wro3gr4qKsi/uulG/RKjXYSdweNAdAiEAgj7vHEWPMg3HrlLgj4rGbTvnvE9p7SfniX9T/qLIOMc="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-5.8.0.tgz_1466790826252_0.5143817125353962"},"directories":{}},"6.0.0":{"name":"tap","version":"6.0.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","codecov.io":"0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^6.6.1","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.4.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^2.0.1"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","smoke":"node test/test.js | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"standard":"^7.1.0","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"a5d8cee3bf0a39db73b981f720917294064f1b65","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@6.0.0","_shasum":"95d59cc6b81926539dac9fc09c37a8b0ff6ebb2b","_from":".","_npmVersion":"3.10.2","_nodeVersion":"4.4.4","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"95d59cc6b81926539dac9fc09c37a8b0ff6ebb2b","tarball":"https://registry.npmjs.org/tap/-/tap-6.0.0.tgz","integrity":"sha512-e9KPfpzluqvKmYcDLvXGvxhPyLDOrrBIbjIosHRR3tUKiqqvlBRtfp8M0i35GSggBZnbbdWCVfF8H34aDhNltw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICR43KILjlCQzUJfX4aAopn+TsM3W2XOi6nURACHy7dUAiBN9KIvqx4KUcIFwYN+MLssbXXbddCprR62MGigBq/mBQ=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-6.0.0.tgz_1467338201368_0.9557346568908542"},"directories":{}},"6.1.0":{"name":"tap","version":"6.1.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","codecov.io":"0.1.6","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^6.6.1","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.4.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^2.0.1"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","smoke":"node test/test.js | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"standard":"^7.1.0","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"191eeed3d04dc428da609424bd1ffeb5e14744aa","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@6.1.0","_shasum":"f08cab05122cee291e62cf2ceb7b7ab76903c525","_from":".","_npmVersion":"3.10.2","_nodeVersion":"4.4.4","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"f08cab05122cee291e62cf2ceb7b7ab76903c525","tarball":"https://registry.npmjs.org/tap/-/tap-6.1.0.tgz","integrity":"sha512-fROj18tHK34+7z1u5wEtwAqDMMOsMpl4Gqwt8Yh5QPFgkqx0az83tftAA3ghPxZCIzBb8RK80Mh+DXR6kACbMQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGLnFBbBSsh6TRQX7np/RsndoSbe9mdY3m4WMnZateyaAiEAu6hCudpvSaDGSL1fgiBeMGx1cixHhEh5VmoTfnpexIc="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/tap-6.1.0.tgz_1467359530984_0.40993447438813746"},"directories":{}},"6.1.1":{"name":"tap","version":"6.1.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^6.6.1","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","readable-stream":"^2.0.2","signal-exit":"^2.0.0","stack-utils":"^0.4.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^2.0.1"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","smoke":"node test/test.js | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"standard":"^7.1.0","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"a976db2418d5957719dbc54afacc1bc811dcabce","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@6.1.1","_shasum":"6d61d582a3a3a7ba5409b6cd68b66bc2a4c52313","_from":".","_npmVersion":"3.10.2","_nodeVersion":"4.4.4","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"6d61d582a3a3a7ba5409b6cd68b66bc2a4c52313","tarball":"https://registry.npmjs.org/tap/-/tap-6.1.1.tgz","integrity":"sha512-Vj7hhV2+EOdyh6MvomMFXzkzErfSBavJt32gpb5sh6H0Yz/U6CnZv2J7G6EBaX/H/Ea/d1Wld9aYXkxsTPF41A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDBdmpD2Y2BY4uYQxQRxomquG6hMj8X1LA1H2brWdgFSwIhANKKTNxo2BkQgGKUVsl0m2ijWe0lUtp6/0wJdK2I+aUK"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-6.1.1.tgz_1467392924982_0.18406727025285363"},"directories":{}},"6.2.0":{"name":"tap","version":"6.2.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^6.6.1","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","readable-stream":"^2.0.2","signal-exit":"^3.0.0","stack-utils":"^0.4.0","supports-color":"^1.3.1","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^2.0.1"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","smoke":"node test/test.js | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"standard":"^7.1.0","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"8faa184621c4ea2ac9be7d18743f1e5160eeb971","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@6.2.0","_shasum":"c612b68a839c7e9006c9b0cad28d8f3f0269b475","_from":".","_npmVersion":"3.10.6","_nodeVersion":"4.4.4","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"c612b68a839c7e9006c9b0cad28d8f3f0269b475","tarball":"https://registry.npmjs.org/tap/-/tap-6.2.0.tgz","integrity":"sha512-2qUS7Wi6sK03j8hZKrpTWmJmVdCb0JarDPHCIokAi5OgG3LsnM0IsNTDn6mhp8oKYKHA9NYlFfu3d7kt/RFceQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDHJRMfs0pvW36J9uZibcbfoAS+KbQFzEjH8KgJWLa0xgIhAK+xs9SiK6TpaKjvKiqQ9FuvvnQlikbPShlBNwz5ALV+"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/tap-6.2.0.tgz_1468597961598_0.316455845721066"},"directories":{}},"6.3.0":{"name":"tap","version":"6.3.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^7.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","readable-stream":"^2.0.2","signal-exit":"^3.0.0","stack-utils":"^0.4.0","tap-mocha-reporter":"0.0 || 1","tap-parser":"^1.2.2","tmatch":"^2.0.1"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","smoke":"node test/test.js | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"standard":"^7.1.0","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"3cdc354d962955809aebfe9df27e230220b62f0e","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@6.3.0","_shasum":"322a5eb08c31a176ba96f01508639a2428d6a2f6","_from":".","_npmVersion":"3.10.6","_nodeVersion":"4.4.4","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"322a5eb08c31a176ba96f01508639a2428d6a2f6","tarball":"https://registry.npmjs.org/tap/-/tap-6.3.0.tgz","integrity":"sha512-2EoaRKdVE7D8gi/3iHU1lk6pAj+kjExpdW3MAZ7x6eja2ZwkjtBNHvr0iyy5owelhI90gHnaJoo+gRUcugmqlg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCgHjfs167LVeQgv9OPk11M0HP5JpuMxa92exUDdO2+QAIgc4BAKOfIDoA15v6zepOTfl3yDO5uJsz6Ku5Acgmms2U="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-6.3.0.tgz_1469923532837_0.9631237592548132"},"directories":{}},"6.3.2":{"name":"tap","version":"6.3.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^7.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","readable-stream":"^2.0.2","signal-exit":"^3.0.0","stack-utils":"^0.4.0","tap-mocha-reporter":"0.0 || 1","tap-parser":"1.2","tmatch":"^2.0.1"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","smoke":"node test/test.js | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"standard":"^7.1.0","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"758fe3faa3028dad8806710eee9d68199fd4a7c2","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@6.3.2","_shasum":"e114c89aaaaa1c0a777e25a71cb1314fd046a55e","_from":".","_npmVersion":"3.10.6","_nodeVersion":"4.4.4","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"e114c89aaaaa1c0a777e25a71cb1314fd046a55e","tarball":"https://registry.npmjs.org/tap/-/tap-6.3.2.tgz","integrity":"sha512-dRKtVNdDCCofwV1wygzgtnKX4cNXrV9iqJFkq7jxOLbU/zfYTluKyETd+MDXBuXHorDrz+2xxEDlmI+++AboGw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCgeBGddLaXWXiYt9011aJNgQtxEx78SxXfG/qd45Z1dQIgOYGUmmVkvjoR6R+U0SaL202QX/K45SqibBfRLHSWD5Y="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-6.3.2.tgz_1470938456574_0.6311449559871107"},"directories":{}},"7.0.0":{"name":"tap","version":"7.0.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^7.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","readable-stream":"^2.0.2","signal-exit":"^3.0.0","stack-utils":"^0.4.0","tap-mocha-reporter":"^2.0.0","tap-parser":"^2.0.0","tmatch":"^2.0.1"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","smoke":"node test/test.js | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"standard":"^7.1.0","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"05eb7369b74721fdf391c5f95beffcf17f4d0728","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@7.0.0","_shasum":"934e0c68293ecefba17a2399a66b32889369f90f","_from":".","_npmVersion":"3.10.7","_nodeVersion":"4.5.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"934e0c68293ecefba17a2399a66b32889369f90f","tarball":"https://registry.npmjs.org/tap/-/tap-7.0.0.tgz","integrity":"sha512-kXojS42TV89OuaKYUBzrmTyz2/8XVgcBvm3sANTk0LCQKvrahhtLHlac06DPUM7dcf81soNmPfP04DejksAnDA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD7ffMcOCnRYQNeO8+nB9l6plw5tPHsfTUGMejJEP8exAIgcXjJohRgg85vXf/SPy7a7DhzY8Zmxi+Av1UzH4q8yYY="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-7.0.0.tgz_1472283249813_0.5822663123253733"},"directories":{}},"7.0.1":{"name":"tap","version":"7.0.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^7.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","readable-stream":"^2.0.2","signal-exit":"^3.0.0","stack-utils":"^0.4.0","tap-mocha-reporter":"^2.0.0","tap-parser":"^2.2.0","tmatch":"^2.0.1"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage","smoke":"node test/test.js | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"standard":"^7.1.0","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"f495c6f8a7c6dba37c47c9ed4beec9f3df0fadb6","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@7.0.1","_shasum":"7d7f0ea8113fdccebed039d288349536df61a723","_from":".","_npmVersion":"3.10.7","_nodeVersion":"6.5.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"7d7f0ea8113fdccebed039d288349536df61a723","tarball":"https://registry.npmjs.org/tap/-/tap-7.0.1.tgz","integrity":"sha512-8ib60hGI/y9nnF/9CMqf7Cf/oMjmBkUSabkJfByHgB5cJG0kYUMB8IokIPcSI5tVUEgfu7d1+VXdHjgp480ICQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD8esB1gVrhV6p5NratilRxd/GHsL2HsJn0VrpaT7WJhwIgDe/jBBa5W6iLJzbEiTwbgYjUML9Ax/AdKolzZUyGIi0="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/tap-7.0.1.tgz_1473144562445_0.7662788170855492"},"directories":{}},"7.1.0":{"name":"tap","version":"7.1.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^7.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","readable-stream":"^2.0.2","signal-exit":"^3.0.0","stack-utils":"^0.4.0","tap-mocha-reporter":"^2.0.0","tap-parser":"^2.2.0","tmatch":"^2.0.1"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600","smoke":"node test/test.js \"*.js\" | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"14f12343b061ced16bc64711b137a56cdf40d380","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@7.1.0","_shasum":"f49579077031041ba20ca53357d280ac4048e41b","_from":".","_npmVersion":"3.10.7","_nodeVersion":"6.5.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"f49579077031041ba20ca53357d280ac4048e41b","tarball":"https://registry.npmjs.org/tap/-/tap-7.1.0.tgz","integrity":"sha512-lz+CVuYi2x/lJSJeNYWtHw53Fqh38tRwPmfpXn5Y5XO6KKm8MyQcj6OXe/kDIYWYRtXP6C3l0QllllSLdm5A4Q==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCMZWwgiDMTHItShwiLw1pzy2elZsUbP2z1JB0I/VQ0tQIgZqLG03jtjjTeKl2gTZfzwjuaLDf2Lps202lAzZw4VgY="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/tap-7.1.0.tgz_1473228946083_0.620738104917109"},"directories":{}},"7.1.1":{"name":"tap","version":"7.1.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^7.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","readable-stream":"^2.0.2","signal-exit":"^3.0.0","stack-utils":"^0.4.0","tap-mocha-reporter":"^2.0.0","tap-parser":"^2.2.0","tmatch":"^2.0.1"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600","smoke":"node test/test.js \"*.js\" | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"9847e19ff3db1ba8d312c757626a0b60ee697aa7","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@7.1.1","_shasum":"755f2705ff2a1b77e027e778579a1c721825159a","_from":".","_npmVersion":"3.10.7","_nodeVersion":"6.5.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"755f2705ff2a1b77e027e778579a1c721825159a","tarball":"https://registry.npmjs.org/tap/-/tap-7.1.1.tgz","integrity":"sha512-CyxhL6BScqIFDnIT1Wxz+G0Y4YuRoixZaEZYxbjXxdUAmM7TWoRcOIAvD228T3Krq0i4VPt7WDEV7U4JMaKZtQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDhvaCChXkDt0HnjmzmP7k8M2gMNPrxGzdTaldNvjLiyAiA9z9OoIVWIMjS2FXAR4UckwHA7i1P8IRCt229QCa6aEg=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-7.1.1.tgz_1473359699423_0.898304941598326"},"directories":{}},"7.1.2":{"name":"tap","version":"7.1.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^7.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","readable-stream":"^2.0.2","signal-exit":"^3.0.0","stack-utils":"^0.4.0","tap-mocha-reporter":"^2.0.0","tap-parser":"^2.2.0","tmatch":"^2.0.1"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600","smoke":"node test/test.js \"*.js\" | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js","bin/mochatap.js","bin/run.js","bin/usage.txt","bin/is-exe.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"58039b19eec09d82ffc7fdbda0e43ff7e15b7081","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@7.1.2","_shasum":"dfac3ecf14ac8547bbad25bbd16cf2c3743f65cf","_from":".","_npmVersion":"3.10.7","_nodeVersion":"6.5.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"dfac3ecf14ac8547bbad25bbd16cf2c3743f65cf","tarball":"https://registry.npmjs.org/tap/-/tap-7.1.2.tgz","integrity":"sha512-RI3Vf8yn0P2C5rgQYg8iI8XeMOrwkayxAMC4nXZcOSUANC4Tig4v9FO6BolSjq1WaLFaGRLPfUEaYdZo6tIJUA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHBrgSxswxkvM5KRjpzQEj2KRo61KeGONKmlHDk72HpPAiEA+0enOdJpp7G5LfluTYs0JBNhIxTcBaCUHMREyrWPBgU="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-7.1.2.tgz_1473460455987_0.7160738897509873"},"directories":{}},"8.0.0":{"name":"tap","version":"8.0.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^7.1.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","readable-stream":"^2.0.2","signal-exit":"^3.0.0","stack-utils":"^0.4.0","tap-mocha-reporter":"^2.0.0","tap-parser":"^2.2.0","tmatch":"^3.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600","smoke":"node test/test.js \"*.js\" | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/mochatap.js","bin/run.js","bin/usage.txt","lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"03daef1e36c344bba569d5b2e9f8580e1a4f0aab","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@8.0.0","_shasum":"b7df24b077e0b3b5168ee58cc76c26511976a546","_from":".","_npmVersion":"3.10.7","_nodeVersion":"6.5.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"b7df24b077e0b3b5168ee58cc76c26511976a546","tarball":"https://registry.npmjs.org/tap/-/tap-8.0.0.tgz","integrity":"sha512-eJUzDSiamtENEGuRQROWOX+Q8QQ5us90nj4KB79tgYFmAHISFzSnqdviUaM10FiUqG7Px7Ky3B0j0y69SsvmCg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCjmr52ukGujaGuJPRvjlrb31lpNqrge93Um+FA15AtjQIgaF2L15nZzYkCpG1TU8mLaNmgj0JFl+5NDJPkztj53bI="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-8.0.0.tgz_1477414920575_0.3436418119817972"},"directories":{}},"8.0.1":{"name":"tap","version":"8.0.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^9.0.1","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","readable-stream":"^2.0.2","signal-exit":"^3.0.0","stack-utils":"^0.4.0","tap-mocha-reporter":"^2.0.0","tap-parser":"^2.2.0","tmatch":"^3.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600","smoke":"node test/test.js \"*.js\" | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/mochatap.js","bin/run.js","bin/usage.txt","lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"81f08e3eebea1e3e59aa4e40b2a610e785e0c119","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@8.0.1","_shasum":"1b1bea643862013e8fcb714aeb08a03418d4fa2e","_from":".","_npmVersion":"3.10.9","_nodeVersion":"6.5.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"1b1bea643862013e8fcb714aeb08a03418d4fa2e","tarball":"https://registry.npmjs.org/tap/-/tap-8.0.1.tgz","integrity":"sha512-2kT/zZZdjxRkV+hnuuvpV+mUdXoMCYocsTA3EvHU01HkysfVZyqyvIcxRpF/SXrMHh39VL5+B5CXU3KQVL0XLQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDWvzWQXNAGBq7bEtfmAj0+CM8iO/IXT+KM+ZMRVFbQYAiBJU8PD9NkgsCCOhWGCrCaMU7gETJZmYrpZ26Yb0TW5Pw=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-8.0.1.tgz_1479423045770_0.365330443251878"},"directories":{}},"9.0.0":{"name":"tap","version":"9.0.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^10.0.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","readable-stream":"^2.0.2","signal-exit":"^3.0.0","stack-utils":"^0.4.0","tap-mocha-reporter":"^3.0.1","tap-parser":"^4.2.2","tmatch":"^3.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600","smoke":"node test/test.js \"*.js\" | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","tap-parser":"^4.2.3","which":"^1.1.1"},"files":["bin/mochatap.js","bin/run.js","bin/usage.txt","lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"aec8ece885a4998c41e30a07a243c5116fd94bc6","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@9.0.0","_shasum":"efb2096e9e8c502ba24f81b18a555fa7a3d1d076","_from":".","_npmVersion":"3.10.9","_nodeVersion":"8.0.0-pre","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"efb2096e9e8c502ba24f81b18a555fa7a3d1d076","tarball":"https://registry.npmjs.org/tap/-/tap-9.0.0.tgz","integrity":"sha512-SVgjz4Nmf1dnYouI4xGhJZs3JoaKd5vdW1aB99ClndxuV8Truam6rIiAEw83yfW/DlHvl3dBm+F3ro+ZcZx6Jw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDmXNJxR7SWmBN9KFvIuUlmIJpAeOot3OKtcy4bHwSWvAIgSp6lVzkyLca/C+CWmJ3gwMCoxKCMiZzob9hAIr6T0WQ="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/tap-9.0.0.tgz_1483859664560_0.5837878151796758"},"directories":{}},"9.0.1":{"name":"tap","version":"9.0.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^10.0.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","readable-stream":"^2.0.2","signal-exit":"^3.0.0","stack-utils":"^0.4.0","tap-mocha-reporter":"^3.0.1","tap-parser":"^4.2.2","tmatch":"^3.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600","smoke":"node test/test.js \"*.js\" | node bin/run.js -","posttest":"standard lib test"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","tap-parser":"^4.2.3","which":"^1.1.1"},"files":["bin/mochatap.js","bin/run.js","bin/usage.txt","lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"c82c752118c306edaca5213d2ed1374cf67550de","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@9.0.1","_shasum":"fe8d8e44fd1cc694dad9585369f7bbf0f05d4bc9","_from":".","_npmVersion":"3.10.9","_nodeVersion":"8.0.0-pre","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"fe8d8e44fd1cc694dad9585369f7bbf0f05d4bc9","tarball":"https://registry.npmjs.org/tap/-/tap-9.0.1.tgz","integrity":"sha512-lofFxhtSH8OR9YSxIYvY8fIxIAjYvmcPNe3aP7pcqFve4I/7MsOZdxC7x7h7jJn+Lc/VxgD75W0sn78xa88L0w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA+045hshj21CSXwTGz6BbiDmdPymwZ4KCCxFJOPj0eJAiEA0ZVkks/xgMdC2FRM+NP9aOD2dG5hPfPjB/97H7DqdjA="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-9.0.1.tgz_1483861516390_0.5170298204757273"},"directories":{}},"9.0.2":{"name":"tap","version":"9.0.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^10.0.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","readable-stream":"^2.0.2","signal-exit":"^3.0.0","stack-utils":"^0.4.0","tap-mocha-reporter":"^3.0.1","tap-parser":"^4.2.2","tmatch":"^3.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600","smoke":"node test/test.js \"*.js\" | node bin/run.js -","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","tap-parser":"^4.2.3","which":"^1.1.1"},"files":["bin/mochatap.js","bin/run.js","bin/usage.txt","lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"05b9d9c532949cad767ee4af228d7c2937d71c44","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@9.0.2","_shasum":"5e2577c340e13e0f6074b36b1a2252613e741954","_from":".","_npmVersion":"3.10.9","_nodeVersion":"8.0.0-pre","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"5e2577c340e13e0f6074b36b1a2252613e741954","tarball":"https://registry.npmjs.org/tap/-/tap-9.0.2.tgz","integrity":"sha512-S0uxX8sRu6WKTRIvPW55oFPzt9ngyGuZp/kIsOQXWmJ3NoNHA2+ichqWxv9eLRV5fEozjn1deHkYioYQXRJeXQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCAC47x1elxd/UncUVbk+HlPpdu+NmAE9j0rOECSKNLaAIhAL0Lzwh/aM4oel7as9ujLS9iXC9nc3NcrmaGBXU+DM1/"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/tap-9.0.2.tgz_1483948279511_0.5568227411713451"},"directories":{}},"9.0.3":{"name":"tap","version":"9.0.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/root.js","engines":{"node":">=0.8"},"dependencies":{"bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^10.0.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","readable-stream":"^2.0.2","signal-exit":"^3.0.0","stack-utils":"^0.4.0","tap-mocha-reporter":"^3.0.1","tap-parser":"^4.2.2","tmatch":"^3.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600","smoke":"node test/test.js \"*.js\" | node bin/run.js -","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","tap-parser":"^4.2.3","which":"^1.1.1"},"files":["bin/mochatap.js","bin/run.js","bin/usage.txt","lib/assert.js","lib/mocha.js","lib/root.js","lib/stack.js","lib/synonyms.js","lib/test.js"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"1a603cd45b443d1719c4adba64afb4906cdb9846","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@9.0.3","_shasum":"bd3deecb507f4e368486eeba8f10cd78f42f7283","_from":".","_npmVersion":"3.10.9","_nodeVersion":"8.0.0-pre","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"bd3deecb507f4e368486eeba8f10cd78f42f7283","tarball":"https://registry.npmjs.org/tap/-/tap-9.0.3.tgz","integrity":"sha512-k4lV0xvFo3OVWJHKcvUqeHPVeqcOXhfJmrPpV6hekr7ZR/CwuVCDOW7phkyTj9OGXMR21gDitQoaP/K31dztlg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCfHA/YCmyxANvOWdW0x9GleND5Em7j3NRS6SGcE6mxXQIgDoZ0h17pS7oT34WmH9Qal0VWKq2oHzFVCfm15pPhy0E="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/tap-9.0.3.tgz_1484003671954_0.8508661561645567"},"directories":{}},"10.0.0":{"name":"tap","version":"10.0.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^10.0.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.0.2","signal-exit":"^3.0.0","stack-utils":"^0.4.0","tap-mocha-reporter":"^3.0.1","tap-parser":"^5.3.1","tmatch":"^3.0.0","trivial-deferred":"^1.0.1","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"884e5c4eb31811cbb8b5e8a7e4a4af9cd96433a9","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.0.0","_shasum":"9d44cef0e38c0ce02e8875bb4ccef536cacced75","_from":".","_npmVersion":"3.10.9","_nodeVersion":"8.0.0-pre","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"9d44cef0e38c0ce02e8875bb4ccef536cacced75","tarball":"https://registry.npmjs.org/tap/-/tap-10.0.0.tgz","integrity":"sha512-ufXKTKvp9HO7RpM0DKyj7Z92iS+DSZiuQL126dcJab877B2CxWC+CESlKYp94Lw7WGR2ygXYpoS+rMfbtASDsg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDrGYC0UD78VOc9WjfcCukVh+qby/7+h4bldNdo3kjtMAIhAKxcnjHIOKHWhtpEN0j3+I+C4Wwx/xzpgzZfX6av5mP+"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/tap-10.0.0.tgz_1485596588052_0.6951458046678454"},"directories":{}},"10.0.1":{"name":"tap","version":"10.0.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^10.0.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.0.2","signal-exit":"^3.0.0","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.1","tap-parser":"^5.3.1","tmatch":"^3.0.0","trivial-deferred":"^1.0.1","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"d5f9eadd593886d38404eaaa07fdb97d1738144c","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.0.1","_shasum":"b42fbe4af3b89122c66f3e350d2d73fea9e99d0b","_from":".","_npmVersion":"3.10.9","_nodeVersion":"8.0.0-pre","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"b42fbe4af3b89122c66f3e350d2d73fea9e99d0b","tarball":"https://registry.npmjs.org/tap/-/tap-10.0.1.tgz","integrity":"sha512-Jr9XmLs/HdJopi+I/UubGXq36Zx0SDNkfFnCLcHckjrcZ3Jj2T/C8Mfmll08jUxIHcRZejwRkl+Flbsv80uGDA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH98W11lqxZfUZyKtYymD5tjr4XKTM4iA0tgeTpfMJgCAiEAzhkpF2F4fZYHokoKQ7widxfrxnNnZG0nyERjyo70weM="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/tap-10.0.1.tgz_1486016734157_0.7933798599988222"},"directories":{}},"10.0.2":{"name":"tap","version":"10.0.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^10.0.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.0.2","signal-exit":"^3.0.0","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.1","tap-parser":"^5.3.1","tmatch":"^3.0.0","trivial-deferred":"^1.0.1","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"200399066eb805e23e94b1c1036220a0e2d7e509","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.0.2","_shasum":"54a902269cc68416d9fba5cf6c571963ef992671","_from":".","_npmVersion":"3.10.9","_nodeVersion":"8.0.0-pre","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"54a902269cc68416d9fba5cf6c571963ef992671","tarball":"https://registry.npmjs.org/tap/-/tap-10.0.2.tgz","integrity":"sha512-MgHVDB7UvcaDBNLVz88V3AMmyFLZq5STXwHpqcXx0LDcT97q9hoz+HRAFoyiwMGeoO/56UcGnHbNy/IwKa4f1w==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCNx1Grb64ex0EFO6MnHOV0favSYx3notS5rwss9/h0dQIhALZOmEH29g9HuDifyE/PiGHxrOI2FKw8pu3bAhF/C+cH"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-10.0.2.tgz_1486078332962_0.8440232276916504"},"directories":{}},"10.1.0":{"name":"tap","version":"10.1.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^10.0.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.0.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.1","tap-parser":"^5.3.1","tmatch":"^3.0.0","trivial-deferred":"^1.0.1","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"dcce74295348a398879868e315351cea7eb9d6ff","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.1.0","_shasum":"95e2784dc131cee52c194a3b508a08fcb5bf78c3","_from":".","_npmVersion":"3.10.9","_nodeVersion":"8.0.0-pre","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"95e2784dc131cee52c194a3b508a08fcb5bf78c3","tarball":"https://registry.npmjs.org/tap/-/tap-10.1.0.tgz","integrity":"sha512-xmZg+3xDgkThUY56Gk8xklPWVfyZao4+nO4gm8AiK/F8wbwv9xK+PCdVl6dMjjW26pndEb+mbYGsJETNztY0mA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCflYKDaY+EDNcScqZsKT4p3pg0wvp1R87wP+aG6ns7DAIgD4v12dS83jGGJG6Ior2KCzZbWzx1bVdAp20WLjO1YJU="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-10.1.0.tgz_1486510438613_0.6670081641059369"},"directories":{}},"10.1.1":{"name":"tap","version":"10.1.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^10.0.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.0.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.1","tap-parser":"^5.3.1","tmatch":"^3.0.0","trivial-deferred":"^1.0.1","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"9f5568d79b288f998213e63ffdc84083c8a04b77","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.1.1","_shasum":"570d8b862a95c6d5d810b9d7a56525a98242f69a","_from":".","_npmVersion":"4.3.0","_nodeVersion":"8.0.0-pre","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"570d8b862a95c6d5d810b9d7a56525a98242f69a","tarball":"https://registry.npmjs.org/tap/-/tap-10.1.1.tgz","integrity":"sha512-2rSToycq2PrQONNWqXajil5gEGpAEaMfXNrotpVVjKLXwjSEg6WHKDjA7isigfJCSRtPTzVaB0tCRbDqquCqyQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDnb0r0Fld4T8dL/Tt+7FUxpoNxOfIyVsB44pSsGQ/QFAIhAJD10FFiMwKXBioK0Y3qL2huDHcnK5/D/zb+r0bcz3jT"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-10.1.1.tgz_1487100266051_0.65763053833507"},"directories":{}},"10.1.2":{"name":"tap","version":"10.1.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^10.0.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.0.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.1","tap-parser":"^5.3.1","tmatch":"^3.0.0","trivial-deferred":"^1.0.1","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"bf6f51ef8f4d30619ef855011ac6996295805320","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.1.2","_shasum":"d67fc16258df34607e0a8b531b0f811e8a64f0eb","_from":".","_npmVersion":"4.3.0","_nodeVersion":"8.0.0-pre","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"d67fc16258df34607e0a8b531b0f811e8a64f0eb","tarball":"https://registry.npmjs.org/tap/-/tap-10.1.2.tgz","integrity":"sha512-OPpXxHk+iIXOnK5mqnvEW92NLDpItn+2rFvttpithGBMqJm+R+r6Y+G9G+lSjXcLWb6jlzf+zi5s5qGNfiUjHg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCXvMAFmGMAm1uRixnr0A6f6YrlYBr6WDCn8NYxvfAbHgIgDSTzIZlnPjTb45OGUwZqFfQSAit2ZzinTi3Vac5wpRc="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/tap-10.1.2.tgz_1487383899214_0.35073132510297"},"directories":{}},"10.2.0":{"name":"tap","version":"10.2.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^10.0.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.0.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.1","tap-parser":"^5.3.1","tmatch":"^3.0.0","trivial-deferred":"^1.0.1","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"0c63268f180b148e6e4e91ab34ded42087248486","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.2.0","_shasum":"92c6aca64446024ac42fa1648cf38441cefc13ed","_from":".","_npmVersion":"4.3.0","_nodeVersion":"8.0.0-pre","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"92c6aca64446024ac42fa1648cf38441cefc13ed","tarball":"https://registry.npmjs.org/tap/-/tap-10.2.0.tgz","integrity":"sha512-BefaZmw+OFCk8ugBJDmI9IBGoO0yu6U6Qjk3naDEWTGkxTqAeZG/hv4NCQ/XCULtwUP1af3qQjVl1EYkkBaCgA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDAejDux1p46x06KeCqc5I4pDMkvVMld1mP0FhyWhL6YAIhAKrBiIhHcVw9+f6dOdaOvI5HYoWKO2ljmPTqaxP1vVYo"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/tap-10.2.0.tgz_1487467041284_0.02033399511128664"},"directories":{}},"10.2.1":{"name":"tap","version":"10.2.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^10.0.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.0.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.1","tap-parser":"^5.3.1","tmatch":"^3.0.0","trivial-deferred":"^1.0.1","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"0e16faed4c48f2906639d48e76c20a8fd3466fbf","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.2.1","_shasum":"cefa89ed99310e8a9cd88f913e21ead08b8310d7","_from":".","_npmVersion":"4.3.0","_nodeVersion":"8.0.0-pre","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"cefa89ed99310e8a9cd88f913e21ead08b8310d7","tarball":"https://registry.npmjs.org/tap/-/tap-10.2.1.tgz","integrity":"sha512-Teu1+Ymu1T221J4ENOYFr6yFOYCW0DcsC/gaYO5pYoPxTu60W8JTreR5cGL2qZYHZWB4rkzKo6CefmFyWPn4iA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDEcglO3x9YmgawlKIUKD24yGiXD4fcxW0IdXHB0Fc8kAiBouM3jXPTBtvnUcFATHga0OrXB+6UyIa9vbvihuH8Hcg=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-10.2.1.tgz_1487822734020_0.3437213054858148"},"directories":{}},"10.2.2":{"name":"tap","version":"10.2.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^10.0.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.0.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.1","tap-parser":"^5.3.1","tmatch":"^3.0.0","trivial-deferred":"^1.0.1","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"a75fe1ac8e7943fa5689ba5f20ca7d9cded178c4","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.2.2","_shasum":"c9dfa9c51ed8e673a1c4647b3b720d765aff2eac","_from":".","_npmVersion":"4.3.0","_nodeVersion":"8.0.0-pre","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"c9dfa9c51ed8e673a1c4647b3b720d765aff2eac","tarball":"https://registry.npmjs.org/tap/-/tap-10.2.2.tgz","integrity":"sha512-iGe4vSLU3i+VEmJqUlm0DfEGvFmGGNBW1SjHIHGULTDKUJtbptpDEER9zmUs+nimhERo9qpnK9wnCq8Dgn6PtQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCTb0ulHpetC+x1tI/1jtB8SRN35CWnhOnADw4YeONr4AIgWSCRPzOurVmJjZjI/Rz0bzn9/rDjFC8++68sWp9so0c="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-10.2.2.tgz_1488182396589_0.17833135975524783"},"directories":{}},"10.3.0":{"name":"tap","version":"10.3.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^10.0.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.0.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.1","tap-parser":"^5.3.1","tmatch":"^3.0.0","trivial-deferred":"^1.0.1","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"a9c4b623deb2776124f0f804e7284fd2807e9e4a","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.3.0","_shasum":"7454c3ab3da89e5450ff0b90d0d9bacc2ee25a9a","_from":".","_npmVersion":"4.3.0","_nodeVersion":"8.0.0-pre","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"7454c3ab3da89e5450ff0b90d0d9bacc2ee25a9a","tarball":"https://registry.npmjs.org/tap/-/tap-10.3.0.tgz","integrity":"sha512-QVHLpFYtOYffEk014gMQETT1dx4Jo1qFROy9lDdrnN4fqRfY8BVtiBdXcUYTZ02JVmS82AxBdNjlhB0oh1O/lQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCe3B4yYmetjloxLyIYsbsVPpKjqnbUVaWWyNOnfx7BXwIhAPc/C9VVf/ZInriR2KU2x4kNFOr9j92seQYXM7RdJVin"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-10.3.0.tgz_1488426477269_0.5762235845904797"},"directories":{}},"10.3.1":{"name":"tap","version":"10.3.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^10.0.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.0.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.1","tap-parser":"^5.3.1","tmatch":"^3.0.0","trivial-deferred":"^1.0.1","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"98106c5533b94c48a949eddc427ea2080bc55dbe","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.3.1","_shasum":"3262fe43b6123cce7eab362420a2f3e70cee8b1c","_from":".","_npmVersion":"4.5.0","_nodeVersion":"8.0.0-pre","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"3262fe43b6123cce7eab362420a2f3e70cee8b1c","tarball":"https://registry.npmjs.org/tap/-/tap-10.3.1.tgz","integrity":"sha512-sNGbH3OVggFFOcSSv/ibwLItm282g7mzM1AhOHgAFwnNoyaV3yBuehkhFTBHAcvsk4qixJEVEgksknFhc+2SaA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCYAqV/q4TBsIPh2o2A2p9zY2LbOqC2EMUUc3hVr4TcQwIhAOyOtnNJa3o83zz76siuAQZTpr8vncztYNtbIu44Oj2/"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/tap-10.3.1.tgz_1490810561859_0.4479123642668128"},"directories":{}},"10.3.2":{"name":"tap","version":"10.3.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^10.0.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.0.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.1","tap-parser":"^5.3.1","tmatch":"^3.0.0","trivial-deferred":"^1.0.1","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"fa3da919ec08dd4b88655f6089b2873f77b745c7","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.3.2","_shasum":"77982f08368d8b1803a3b0ab5fc300e1817f31e7","_from":".","_npmVersion":"4.5.0","_nodeVersion":"8.0.0-pre","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"shasum":"77982f08368d8b1803a3b0ab5fc300e1817f31e7","tarball":"https://registry.npmjs.org/tap/-/tap-10.3.2.tgz","integrity":"sha512-sex3RkIx/TUF54qCZlDrsxkmqaHx/4OpwofX1EFMy6jDkMcxu4nDrAFQQZW/SwCisilO/pUAHjMWItRbCb5ewg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBd5gytiKjOlw4bHNmKJvPOn9zfvkYy6TdC16eXp1MymAiEArodnDbnw0SqlLSbRzysOOmxWO0ujc0Q2Hba0uHhSxiY="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/tap-10.3.2.tgz_1491720320295_0.20640921662561595"},"directories":{}},"10.3.3":{"name":"tap","version":"10.3.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^11.0.2-candidate.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.0.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.1","tap-parser":"^5.3.1","tmatch":"^3.0.0","trivial-deferred":"^1.0.1","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"ec47ea59985cb4113011d5fed049850b080bd1d2","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.3.3","_npmVersion":"5.0.1","_nodeVersion":"8.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-ELPgkGOlrS4fj2iX7CFg9oJ4kGcA8xYurvtJhRN+O/CI52X+vSpHdahjx71ABX3Y774XcPKouU+DYB9lqrR2uQ==","shasum":"2b4398895f7e88490eeea22a5feb4dbddbfbfa6b","tarball":"https://registry.npmjs.org/tap/-/tap-10.3.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDxbkfLdMr0mXlQf2cFGR9L8YctGrzPtt23tiVc9B29BAIhAOvn48py+Qd35N6ZThvKZQlTIDgezqeg0df35raZpyPG"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap-10.3.3.tgz_1496446619317_0.38638592744246125"},"directories":{}},"10.3.4":{"name":"tap","version":"10.3.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^11.0.2-candidate.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.0.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.1","tap-parser":"^5.3.1","tmatch":"^3.0.0","trivial-deferred":"^1.0.1","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"60ae3b95942e8c422ec5381c29cd00a37ebb4c7e","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.3.4","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-6VvrmdikQVh+Mth7NMnGmfIMpugjvnsnLm/oBxvvxaue1g1N5PL+xb3KLoJBni7lCa7yuWIFCDn2X48J2T4LgA==","shasum":"13f844b5e98ad8ce72b31b9068711cdb6c2e18bc","tarball":"https://registry.npmjs.org/tap/-/tap-10.3.4.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDatoQSzlZpH68T9HFrtspofD5dkHNOrMloZRZEsZYC+QIhAL16qAo3UEjdKwJ8NgLvUNLeNTW2/5lNpAMWbKmQov24"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap-10.3.4.tgz_1497632514567_0.6494438138324767"},"directories":{}},"10.4.0":{"name":"tap","version":"10.4.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","deeper":"^2.1.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^11.0.2-candidate.0","only-shallow":"^1.0.2","opener":"^1.4.1","os-homedir":"1.0.1","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.0.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.5","tap-parser":"^5.3.1","tmatch":"^3.0.0","trivial-deferred":"^1.0.1","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"9b786248f82a668fa68b2dda40a9972cce3b5d4a","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.4.0","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-Di3Z3EHD9rC6mt56VcKKRo0KG+j+lq0EfLm3Yu6pjgSwcSeJ22sjZYzqv0I8bG67pSkeOLg+G+cfAvAywaiBvA==","shasum":"334d5014e00a801259426cf05fa296d8d4420c84","tarball":"https://registry.npmjs.org/tap/-/tap-10.4.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDs+kEbdBfpD3+agL6fGY3DBVnUqXe2HmCQfAJbGGpF6AiB8StogQwHzExCY98dmuhmEIS6wuEo/z3yWTuc8FGDSpg=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap-10.4.0.tgz_1497798425903_0.881203701486811"},"directories":{}},"10.5.0":{"name":"tap","version":"10.5.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^11.0.2-candidate.0","opener":"^1.4.1","os-homedir":"1.0.1","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.0.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.5","tap-parser":"^5.3.1","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.1","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"2de6ad97c8abd22713ea187b5f5c9b048fa5855a","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.5.0","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-cl4qC9UV2MAa2SYcmk0rIjtUnjxXaXocc9PHdAJuamPN/ELm9n93ilpCjNyge/YCVh7ZucmChW1J6uikzoTX0w==","shasum":"fb674cfb789d328694af4907be56079bdc8e5638","tarball":"https://registry.npmjs.org/tap/-/tap-10.5.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCl6EslVfVirkiqFD5m5lU1FEg6HDwcc9eKNxcR27cTMQIgYJWKP6ivoy6P+zJi4nnHJ4Dxzv3ZtZ7P6lfUJpxAgkY="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap-10.5.0.tgz_1497975659209_0.5115935180801898"},"directories":{}},"10.5.1":{"name":"tap","version":"10.5.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^1.0.0","js-yaml":"^3.3.1","nyc":"^11.0.2-candidate.0","opener":"^1.4.1","os-homedir":"1.0.1","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.0.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.5","tap-parser":"^5.3.1","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.0","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"37bbd480c09efd8eb32b40e19c3f8aa6c4a804d7","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.5.1","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-1wfxVaE8y6JhVvZRJCn2HzC3ShiF5T17/kZynd2+tkszAWaOJ7ADzWcBKmxtTkXZ/6h4rZgt5qgw2OgQ02ehsw==","shasum":"11db5aa2e888f85cf631080fc24e41a0560f1497","tarball":"https://registry.npmjs.org/tap/-/tap-10.5.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCnjstxw1Dxxlx7ILG6okrmw4JFvkKtKfV4OJvE+4/+JAIgXH9jTNarmDLEXjNrZcQouuyZzUD3YG9w2XFxJYdjrwA="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap-10.5.1.tgz_1497978803734_0.24515400361269712"},"directories":{}},"10.5.2":{"name":"tap","version":"10.5.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.3.1","nyc":"^11.0.2-candidate.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.3.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.5","tap-parser":"^5.3.1","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.2","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"e3c17e4fcaab6e2fc776e32e5adae904940a72df","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.5.2","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-yFqbJmHlIbzsw0fFfLN4IXQHVtuFdQvSJuUh8WSZRe0Cef7U5lxqd2r/YpHvzpC7SrVm/C9s0G47gPHp5BS0zw==","shasum":"68d9a0172f1161d79aa7bc8efbdadaa03f5839a4","tarball":"https://registry.npmjs.org/tap/-/tap-10.5.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDXk73DoQQQiwo+shAWXz6S5x+8C4+nFb8tgA4tc6watgIgRcO0WbdWunF8QlV9HbZXdhcNgialF/uoCddCZfKiN/4="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap-10.5.2.tgz_1498154590025_0.6654398434329778"},"directories":{}},"10.6.0":{"name":"tap","version":"10.6.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.3.1","nyc":"^11.0.2-candidate.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.3.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.5","tap-parser":"^5.3.1","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.2","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"090a8eec49c2f8d3be417fbb73ca68d1912cae09","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.6.0","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-mA7e7zsHiHhOU6lWU+fD2QHTnnbmVHzSQv5uiQ0dGMtOhUV+OA4V7AQCU4VOPsnuN3kGlNVggXkSIYa+Jqb+6g==","shasum":"199180fcd93d73a1483d1040041353536d1ba6a9","tarball":"https://registry.npmjs.org/tap/-/tap-10.6.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDbOQANJ7yMmtom2dzAc0beWQ/si93p4BzOlHe4e7T9BQIhAJ2gRr2LJePNOrdoLjJEzRVM1F3p6zJmVY5S2BCkN8la"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap-10.6.0.tgz_1498262470559_0.738470048410818"},"directories":{}},"10.7.0":{"name":"tap","version":"10.7.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.3.1","nyc":"^11.0.2-candidate.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.3.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.6","tap-parser":"^5.3.1","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.2","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"c41742440869f06ee1eac39d9fc80a3fc3af3f53","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.7.0","_npmVersion":"5.0.3","_nodeVersion":"8.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-rIKS3HvtA+/6weSQW8zgA8bKHt//Srucp6P1pugHUVZ+SexZcPw6N3n8LCAoH2okp/js+honhxwBl7bomZ9+7w==","shasum":"ecde1ebd2b86981f741ae089f1448c9f294ac548","tarball":"https://registry.npmjs.org/tap/-/tap-10.7.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC1k4LV5qSZachFvCH9PKo0YoHByfTflZLbPmBMhY+5SgIgRMtMZK7SZWGJdY8+g8yq97VdCXrwdSHdC9MEFKardT0="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap-10.7.0.tgz_1498373563339_0.45568893500603735"},"directories":{}},"10.7.1":{"name":"tap","version":"10.7.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.3.1","nyc":"^11.1.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.3.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.6","tap-parser":"^5.3.1","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.2","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"716414a6a8543e7971b70f214c7cee392cffc794","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.7.1","_npmVersion":"5.3.0","_nodeVersion":"8.2.1","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-Byis/0NCf3CrHZDFoUR4Xia77NiiuPaEXfc4RxPyyRJjTP++jFs9EX6RbcOL1Hmw0y4OLasA/8vLHmvQbp0/DA==","shasum":"f2d20f38a4f6b77717521ef852bf446a7fb79e4e","tarball":"https://registry.npmjs.org/tap/-/tap-10.7.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCkj8gYzIJzaAxyoqjlC+4O9MTzQDTfI1reAN4e/1aReQIgXNnGQGfeGokPjaDN5yWQLTzJwhcOmyldCd+E/sfby+8="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap-10.7.1.tgz_1501611053869_0.12989780865609646"},"directories":{}},"10.7.2":{"name":"tap","version":"10.7.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.3.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.11.2","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.3.1","nyc":"^11.1.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.3.2","signal-exit":"^3.0.0","source-map-support":"^0.4.3","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.6","tap-parser":"^5.3.1","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.5.4","standard":"^7.1.2","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"9e516112897108dc002d5e6ce25d4d52e6bf8c49","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.7.2","_npmVersion":"5.3.0","_nodeVersion":"8.2.1","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-N7z+tqiEvMT+wd79c17FqtL5h/AOObtffVTSfWUogrmFkJ37OfHLl8WuQYpd/YiOzS3k74acPF1F9bX0LzHOKw==","shasum":"7661b3e8455eddcee3743e2e8ee159a0833e5ab4","tarball":"https://registry.npmjs.org/tap/-/tap-10.7.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDdcmaacDDgavs1MGdnTOvXzPAC+gkUm39fdJSjyZN3lgIgblPmUUWPgYCsFx2SBk6OfcpU4qbTtMyZgxGSE6PGPVU="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap-10.7.2.tgz_1502568547277_0.134020802564919"},"directories":{}},"10.7.3":{"name":"tap","version":"10.7.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=0.8"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.5.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.13.3","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.10.0","nyc":"^11.3.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.0","readable-stream":"^2.3.2","signal-exit":"^3.0.0","source-map-support":"^0.4.18","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.6","tap-parser":"^5.3.1","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","yapool":"^1.0.0"},"keywords":["assert","test","tap"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test/test/*.js","test":"node bin/run.js test/*.* --coverage -t3600 -sfails","smoke":"node bin/run.js --node-arg=test/test.js test/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"mkdirp":"^0.5.1","rimraf":"^2.6.2","standard":"^7.1.2","which":"^1.1.1"},"files":["bin/*","lib/*"],"config":{"nyc":{"exclude":["node_modules/**","test/**"]}},"gitHead":"104728e2d1651375ff3b385e993327bebae7f293","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@10.7.3","_npmVersion":"5.5.1","_nodeVersion":"8.7.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-oS/FIq+tcmxVgYn5usKtLsX+sOHNEj+G7JIQE9SBjO5mVYB1rbaEJJiDbnYp8k0ZqY2Pe4HbYEpkvzm9jfLDyw==","shasum":"f5c20c072151a8b6877e78112714a07007b97e4f","tarball":"https://registry.npmjs.org/tap/-/tap-10.7.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDtdHeMX9Y0AQrWvCnYFPG5rgLCGdBSJ1qftrACZrcvcwIhAOByJ6U3Hf+NtQIYPo7vQKiiA0u79yClMhNUdbP4E0aK"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap-10.7.3.tgz_1510087092245_0.9131903175730258"},"directories":{}},"11.0.0-rc.0":{"name":"tap","version":"11.0.0-rc.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.5.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.13.3","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.10.0","minipass":"^2.2.1","mkdirp":"^0.5.1","nyc":"^11.3.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.0","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.4.18","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.6","tap-parser":"^7.0.0","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin}","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin}","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"standard":"^7.1.2","which":"^1.1.1"},"files":["bin/*","lib/*"],"gitHead":"f03d27837b01c0d8bd2ada4b59de7e18517d5f78","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@11.0.0-rc.0","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-/19+WjC37ufyldIgU27LpTMph1utJzqda8MpguULf9AFTCdAimwdjvtNkzAIAc6Ja2ORzfzGXVCJTpTPV4EpEA==","shasum":"ed908d5ada5472c0058093a910894398d24b67a5","tarball":"https://registry.npmjs.org/tap/-/tap-11.0.0-rc.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICbQuIxWA4vwQxHqLpUB8oSqrc8ZDfaSD7ogQijq1pfwAiEA5zNf9zCA2RFxE2mCkNlYBf513gV7PYJwh0ap0OLFQUc="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap-11.0.0-rc.0.tgz_1511188372072_0.011566889239475131"},"directories":{}},"11.0.0-rc.1":{"name":"tap","version":"11.0.0-rc.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.5.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.13.3","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.10.0","minipass":"^2.2.1","mkdirp":"^0.5.1","nyc":"^11.3.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.0","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.4.18","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.6","tap-parser":"^7.0.0","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin}","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin}","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"standard":"^7.1.2","which":"^1.1.1"},"files":["bin/*","lib/*"],"gitHead":"039e1a5eff01e696b68dcfaf534a6003f38f4419","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@11.0.0-rc.1","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-YZotDlkFOF7C/iSmFuh7HHFd+C/RiZxeSpaVKXylo+CnFligTJ2B2nLMnrlaOwgwHfQkSCuMHvvGWyP7hmeaFw==","shasum":"07ac79011b69046eaf3c04496583194fa8e4af0a","tarball":"https://registry.npmjs.org/tap/-/tap-11.0.0-rc.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH2z/5g5gBCQRn/25L4Js4zvaIFWVIhK3Gwm+WpviV9dAiBQ1IbTwadH7C/TQtL1Gew7XXuGyJSBtcAyxB6e5bLkcA=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap-11.0.0-rc.1.tgz_1511189075796_0.0001664753071963787"},"directories":{}},"11.0.0-rc.2":{"name":"tap","version":"11.0.0-rc.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.5.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.13.3","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.10.0","minipass":"^2.2.1","mkdirp":"^0.5.1","nyc":"^11.3.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.0","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.4.18","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.6","tap-parser":"^7.0.0","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin}","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"standard":"^7.1.2","which":"^1.1.1"},"files":["bin/*","lib/*"],"gitHead":"2a817d96a190bb0ee203d3fd868054c9f63425e5","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@11.0.0-rc.2","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-Fx1/PSOiJRs5plhq5TED2ChQr8mQ7wI2SKpTmgO69Yn0vPJnvPq6DbutNqGdfqVwV4vgPvXss719+IjzbKOueg==","shasum":"308ab39db3757b7b2c0e6d7576a736ea7a67d388","tarball":"https://registry.npmjs.org/tap/-/tap-11.0.0-rc.2.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCuCz/z5G5N14kF7fH1ZXzLlPLnzK6uFJ7weHA5S97VHgIhAIRuaFOL+wLyY3b82UJh1kvEoOMFnTzrHEF33dNcKQO8"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap-11.0.0-rc.2.tgz_1511216643788_0.938524869736284"},"directories":{}},"11.0.0-rc.3":{"name":"tap","version":"11.0.0-rc.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.5.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.13.3","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.10.0","minipass":"^2.2.1","mkdirp":"^0.5.1","nyc":"^11.3.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.0","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.4.18","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.6","tap-parser":"^7.0.0","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin}","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"standard":"^7.1.2","which":"^1.1.1"},"files":["bin/*","lib/*"],"gitHead":"e4ed45bffc9a8ae06bb892fbe5a5db21b785e0dd","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@11.0.0-rc.3","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-yjutE1sz2GiAAn5S2V0dFqv7173mJLw/bXwFBACXi7eGg6LQKrKvvEVvdKSiwaWQNCN/HSfBYg8lPW/FcDjhhg==","shasum":"48721e9d0d33a10f5f6a4d5cb0936afdc4fb3af5","tarball":"https://registry.npmjs.org/tap/-/tap-11.0.0-rc.3.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDsgVFSM0lS4+HoYbwjchErxS2dA61RGVNlbeKoxXJB9AIgQFL1cwrvK4q5lWrGssSxqJaX/pcUZsqm70aWAJc2CnA="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap-11.0.0-rc.3.tgz_1511224674449_0.08260472537949681"},"directories":{}},"11.0.0":{"name":"tap","version":"11.0.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.5.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.13.3","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.10.0","minipass":"^2.2.1","mkdirp":"^0.5.1","nyc":"^11.3.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.0","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.4.18","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.6","tap-parser":"^7.0.0","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin}","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"standard":"^7.1.2","which":"^1.1.1"},"files":["bin/*","lib/*"],"gitHead":"f189c50e9b0767fe0de7513dbfc1bd93d36f0ead","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@11.0.0","_npmVersion":"5.5.1","_nodeVersion":"8.9.1","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-Zi0jvdyN/2o2BgK3oKyApmyt/taAcGiChnXJtoEpOKiU/99+NwWJCyvVBRdQ3+30yFz5TE/ImVX3/GqDvndZ3g==","shasum":"98096dd8a706b961c779f868be1908a06374a70c","tarball":"https://registry.npmjs.org/tap/-/tap-11.0.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB2lox0tav4jRq1qCE16KS1efcmB/V1WDwNOfubTmMzaAiApA2z0xL1ITyC1jsvLKI5LbfZuQk7AG/w4ROq6I59b3g=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap-11.0.0.tgz_1511656646476_0.6222088320646435"},"directories":{}},"11.0.1":{"name":"tap","version":"11.0.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.5.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.13.3","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.10.0","minipass":"^2.2.1","mkdirp":"^0.5.1","nyc":"^11.3.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.0","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.4.18","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.6","tap-parser":"^7.0.0","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin}","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"standard":"^7.1.2","which":"^1.1.1"},"files":["bin/*","lib/*"],"gitHead":"94be0a7002195a3df82555977dcfb5ac601844e3","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@11.0.1","_npmVersion":"5.6.0","_nodeVersion":"8.9.1","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-YfrPp7FFxASC4tK4DEAKnnTxyg+J7T8kh8NiOmICNhiGvSojPAV34Ir4DDElFvnIiDEMzDP7233lw3WacFvIFQ==","shasum":"b7390be64c22bb15a9a4944b3e4691d60862e7f3","tarball":"https://registry.npmjs.org/tap/-/tap-11.0.1.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDYQL2jT+hcnHhAAZA0dmi+vp2mpFmnxffXfxoTIyVs0QIhANIgfkYh1+b8koVaWj3FyK3meqWHYRHMSdLGVvnEu/au"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap-11.0.1.tgz_1513893638794_0.19574093562550843"},"directories":{}},"11.1.0":{"name":"tap","version":"11.1.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.5.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.13.3","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.10.0","minipass":"^2.2.1","mkdirp":"^0.5.1","nyc":"^11.3.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.0","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.4.18","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.6","tap-parser":"^7.0.0","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin}","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"standard":"^7.1.2","which":"^1.1.1"},"files":["bin/*","lib/*"],"gitHead":"b95ee222090503d7a408653053b1e1360cb5b83b","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@11.1.0","_npmVersion":"5.6.0-canary.7","_nodeVersion":"8.9.1","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-ya7vl9gx+XFQn5K+Va/4AFz5U8ISAG22k6o+UoZAnX3Bx6uCwNtrsEzVvXjhOK2J+VybFHaReOF0TITDoCKSTQ==","shasum":"ef7a02961fc18a09e9ae08580f6007cdbc7bc2dc","tarball":"https://registry.npmjs.org/tap/-/tap-11.1.0.tgz","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGwJSd/ux6NVTvFJH6B7SMOuyg4RMTuYR7GPf/IvRqqMAiBsnEkYwH5hxOYMiNU/pE7wsQGFbrsMoNqC1CfKB1wxPg=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap-11.1.0.tgz_1517335463978_0.43523180624470115"},"directories":{}},"11.1.1":{"name":"tap","version":"11.1.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.5.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.13.3","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.10.0","minipass":"^2.2.1","mkdirp":"^0.5.1","nyc":"^11.3.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.0","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.4.18","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.6","tap-parser":"^7.0.0","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin}","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"standard":"^7.1.2","which":"^1.1.1"},"files":["bin/*","lib/*"],"gitHead":"95faf6c33c514618b85e887460426c14afaa73d6","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@11.1.1","_npmVersion":"5.6.0-canary.11","_nodeVersion":"8.9.1","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-XpXmLJlDpPrGsaEJlpSV7u16kR/jaPUf5XyzdL59l8KsLNFSmQKH4qCEBKy9y+OCku9ee77NvobCsZLpK8ruZg==","shasum":"6dbd23c487127f621a95c793f7a247fa7e2c053a","tarball":"https://registry.npmjs.org/tap/-/tap-11.1.1.tgz","fileCount":23,"unpackedSize":134594,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDCHHIUjA4AOPcG1/Qjsxa/fMs0ZDISu9RuESmAsDh/AQIgLk8+KnTevyNeK95nL9QqgvBSMCkg52FrYaDRcAIUmnU="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_11.1.1_1519082464243_0.08912903049286469"},"_hasShrinkwrap":false},"11.1.2":{"name":"tap","version":"11.1.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^1.0.0","bluebird":"^3.5.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^2.13.3","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.10.0","minipass":"^2.2.1","mkdirp":"^0.5.1","nyc":"^11.3.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.0","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.4.18","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.6","tap-parser":"^7.0.0","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin}","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"standard":"^7.1.2","which":"^1.1.1"},"files":["bin/*.js","bin/*.txt","lib/*.js"],"gitHead":"3cdf1c7c0d1c6abdc31b1c81736096e47f36149d","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@11.1.2","_npmVersion":"5.7.0","_nodeVersion":"8.9.1","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-uQ4OJ+/2+KJU2Jotozsb35wQVhOweqKb14lz3Md6AZcsOhZ9kYkvxn6h+f1WusBnG/Uk5vBLWvQRb7lgr4Z7Wg==","shasum":"93d3c89b78b67ac659b58dd3f5db2df0445bfe2a","tarball":"https://registry.npmjs.org/tap/-/tap-11.1.2.tgz","fileCount":22,"unpackedSize":110041,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCct+4fNuAOdAU32ffmIPCRcHPA35ANtbyzKBi4CpgqIAIgNJCKVI+dEdw3FGuEto3CJouvHy1FKEUu2pUcBxcMcZ8="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_11.1.2_1520457251015_0.321906296226002"},"_hasShrinkwrap":false},"11.1.3":{"name":"tap","version":"11.1.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","bluebird":"^3.5.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.11.0","minipass":"^2.2.1","mkdirp":"^0.5.1","nyc":"^11.6.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.5.4","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin}","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"standard":"^11.0.1","which":"^1.1.1"},"files":["bin/*.js","bin/*.txt","lib/*.js"],"gitHead":"fe8158e57a382d17b45e03c4ea954700e2f9d31a","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@11.1.3","_npmVersion":"5.7.1","_nodeVersion":"8.9.1","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-DwiAZiQWzALkGEbhhbdi+DqT2nqmqFAJZRvVSnHBpA8khjf7+6kcO76Bx39JA7kclIfQ9Uro1rO4dgP1AWUovw==","shasum":"ebf8dbeb7befd53f9f16e214dfa263b58224fcd8","tarball":"https://registry.npmjs.org/tap/-/tap-11.1.3.tgz","fileCount":22,"unpackedSize":110040,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCcE4jcLQmGzsGb9zQDOOMtkNrWBFWz6KQIezvWcpkWdAIgPn1zTodApfIJPgF3k71Bz4AyIb19K1tBjGsLeTE3egQ="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_11.1.3_1521562895777_0.3672961588558119"},"_hasShrinkwrap":false},"11.1.4":{"name":"tap","version":"11.1.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","bluebird":"^3.5.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.11.0","minipass":"^2.2.1","mkdirp":"^0.5.1","nyc":"^11.6.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.5.4","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin}","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"standard":"^11.0.1","which":"^1.1.1"},"files":["bin/*.js","bin/*.txt","lib/*.js"],"gitHead":"8635bfb083da8f29a8f54f4bef331a01e5ad6b1a","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@11.1.4","_npmVersion":"5.8.0","_nodeVersion":"8.9.1","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-oE5fSWSKKHWi+pxdRMJbET1/zdBGZGQ1iriZRzw5gtNDX9vKobZ9T0MrO8riYN4zy3IGmKat4V1HwYI6EO8LMQ==","shasum":"bea90823ad86d8564e0a35dc2ef9e917bd5f153e","tarball":"https://registry.npmjs.org/tap/-/tap-11.1.4.tgz","fileCount":22,"unpackedSize":110065,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa0S6ACRA9TVsSAnZWagAAAXkP/ijE/IOHtLXk3EGx9ZL+\nn1YPzmF4GagZJVTzQwqMrPeqjBgyT+/l2PA2t2Fc1RWR+iE95W8nPLAYeG3q\nW5xlJnEiRkjZYSnX4eX6al16xNrWdM5Tj7Fc60krlKjfRcCEsKL0pAMfwH6y\nussbkiKA9BDcg/MpqyG9Psb1SDT2XEqbBwc11ADEW1ZftWkKJ3uBJdtZppAB\nUQNlW/cCc7Shyp2hsV3gqnChrimI++NRbRM3vNRK7iX+QfCuG/OjRyDWCfVg\n0VDyDGOJQtv65uWOpzpsfChYh/305u94HU5pRh47xzZavU++3do7SAqwVtph\nzXuFeCnmMHgzpNo7DBC7EAnpR2dHCQd2bZvKkcOQB7G0FKEQE/hBenRWbOE7\nh2dq2RSXMBZAeIJuaBOyPDuA6r/2qh8mlCpXiEEDNtoiVoyAybIzrNE3uwFO\n9CXyLgfz5jK9/bGmeObEh+qw9zhAtOoIWBOfyzeVXmPcWnc6LL1ouRmU+80N\nDw/5Daev4gJaiq3yTbejXvXkimvtUQK4bbtsAd9XBXrfeZKi6mfUGZ8FAcjw\n0H8xZW8iLU79DYGT4UioCS7tCyL3hwQxF1vlC1d5AApy7YWY0GhDZGMBF/pc\nEC0zzz9rwzMIctvf/IMJ65pnieE4z37OXpKu/+uwz6KU06nQqSaHiWHF22po\nX6x4\r\n=W5/W\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC1DmG3tRDsejPv3yDHTa4pfny4ulr5Iz/x7hPcMkUmMAiBa24sWOyrx3DC6iq5M3WgWceYBlHA83TgC1mQILG7heA=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_11.1.4_1523658366984_0.6039149862373199"},"_hasShrinkwrap":false},"11.1.5":{"name":"tap","version":"11.1.5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","bluebird":"^3.5.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.1","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.11.0","minipass":"^2.3.0","mkdirp":"^0.5.1","nyc":"^11.7.2","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.5.5","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^3.1.0","trivial-deferred":"^1.0.1","tsame":"^1.1.2","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin}","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"standard":"^11.0.1","which":"^1.1.1"},"files":["bin/*.js","bin/*.txt","lib/*.js"],"gitHead":"a62dfcf23d8f06e87e737e20ba82d6368478a529","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@11.1.5","_npmVersion":"6.0.0","_nodeVersion":"10.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-rOmL7+8U5v7E8ADxFF9SYbGIrqdYPeJy8d6eFMStEXIasJ85tjv8F9M4SSry314eIvqRv/aKf/0YVrkoMj/byQ==","shasum":"31bbef84c7a2ca78b2f811edf5fabd336c0ec846","tarball":"https://registry.npmjs.org/tap/-/tap-11.1.5.tgz","fileCount":22,"unpackedSize":110144,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa8jreCRA9TVsSAnZWagAAoHcP/2+iATLlt9YVUdyCf1bu\nD8B3+ys7eslg+EprMIgGqsuCXtS8osxlFC58gcwxDULI+tAQWBZyOdbcXxbG\naemPrz/MZ0PBGgqZFf0SZ2HQKQZbOJPnah0b1ckGUasdR2Va3SFR0tydxzBY\nkr/Dw2r3hQL/tzM9T3iDTe8FVx6++QpuKvMJCwpwBODzAImMllj/snRSpBR2\naM+Iv2agYBl1ugMz0IcC+TeLIcz/X9SJbvUJjIN6wKQCIMMWWlExi6JzphSM\nKwRdwDpAhlHN995ZL3iF83Z2eDnovUxXRr4Om8BisaoSbcLPzctoJFO2qXs4\n0oDd5w/AzVK2IqoTBfwM+KFeRshSLqQX34n0h0JDTgn8KNSvL/+CR2pnMJjy\nB4XwoKgbMogMfFZARp+m6BHKTOcAQ1bvFHzBe8Snf3NoJG0GqgnXRR96Gw/r\nHPuj3+y2KLsimHJUi936o2SUcjTfRKHaPxwWebhAW1ikptBNKUn2RYtpXJH3\n/WSyrxuTWKaTJWDOEui7fqHhbUqO8UQqX0LZ/zFnF2ASLP0S3KbSUOEAeTsV\n33ElzP/j1LP3t24yDvq+Vp1SKbXs2h/YpXNiE1Uh4/Bbssr03bW5bScjJDFb\n7Dgb+uZMxT6O6tjWLd7Cx2sNN0xbpGNu7Mme+vxmqiD7aVWDpvrGzwEhxkxl\n6JSa\r\n=s1RS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFUtmMglKvHzzUnalhFf2rExFv6i/auFJYWqDdS5tXaQAiA/Dgch9ka1hqT/rMVUpxnV0S47ypAVv8Lo5yB+Qwb3Aw=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_11.1.5_1525824220532_0.6220228710987541"},"_hasShrinkwrap":false},"12.0.0":{"name":"tap","version":"12.0.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","bluebird":"^3.5.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.1","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.11.0","minipass":"^2.3.0","mkdirp":"^0.5.1","nyc":"^11.8.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.5.6","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","tsame":"^2.0.0","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin}","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"standard":"^11.0.1","which":"^1.1.1"},"files":["bin/*.js","bin/*.txt","lib/*.js"],"gitHead":"d5f7b12d913289d5dd346eefc28ae840111d02de","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.0.0","_npmVersion":"6.0.1","_nodeVersion":"10.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-4RIiFJwRwe1oDJM6WdMgVrICpm0aaWjAjMen7/pUWL3yctZfmuFJotqPHMEaS4qISMGk4R4adHw93hLHbxZzcg==","shasum":"3a3afd294efeefc45937eacb756700bcbc9e037d","tarball":"https://registry.npmjs.org/tap/-/tap-12.0.0.tgz","fileCount":22,"unpackedSize":110144,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa/bM3CRA9TVsSAnZWagAAQ0YP/3uA3NxG9hJ1EfJQmn1P\n1Sh7ILw8gXIMixz7t/LNHZZd+etOoyZYVrgoiC+FplXd49qf/YhfENP7L0Pm\nZ5AT+NgsIKm3qjUiYcGu1MSC55F+XEi+DP8jPmlGLezaWRQbofU4Ggp2QB71\nZ+1zxg+WKok75Kw6q7Ift8XNO++VlXQzZTzI2MQPTeybEgEbJYhKU1uTFmBX\nobb0TVV3uePvZPDKIU2d4dHj5/v2DxexKG0HFN161T0wzhrx98Whge129qz5\nL9bQUYLTD630JaDxOM+LJIMQiq6Yae4coNVdh0tdEDlXKqgVehHchkkKR+vB\n2+GYSAcvBWdZEW5axk6fErBH7CT7AD+UDjdB+2F77YmLlo3+a7Acl/Lvzcko\n6FWYCoJEGZLCy/luuwAT8GYzRX6mE+W2IQN5ta0EB1b51W+6mAy4iTOxDsDu\ntEmLrqO/k+yTZAq9hoe9F593fUXtl9JhnVVUUHKzBWyWHYdM5OkHaVah7p06\nyJINOQ2acm49smXSjgJqSZd8At0rjpuFqojcaiBn5Jr6as23GeJzy69El/Am\n216AzhQ9qpFsU0khmiv7Gp5IA5X3mV0aSgckRAEfpjgBgeyutWR1dYBscCeR\nHczlHU+HAQOyRDIa1GsZZc0yjlrXL0dpeU9gviqeTHT2aPZP0jMFB48qmhiH\nfr8U\r\n=ojy5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDi9AGclTtvqT/HaukN3qfsjLhVep26i3tOcCyCj90QjgIgGjz7L/ioZFwd31gH51XSfhoTqLI0P9Hp7iLEWDyRWHI="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.0.0_1526575925483_0.03764912814448773"},"_hasShrinkwrap":false},"12.0.1":{"name":"tap","version":"12.0.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","bluebird":"^3.5.1","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.1","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.0.0","isexe":"^2.0.0","js-yaml":"^3.11.0","minipass":"^2.3.0","mkdirp":"^0.5.1","nyc":"^11.8.0","opener":"^1.4.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.5.6","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","tsame":"^2.0.0","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin}","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"standard":"^11.0.1","which":"^1.1.1"},"files":["bin/*.js","bin/*.txt","lib/*.js"],"gitHead":"f323cdca28cc0a286e29585d8081e04b08704143","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.0.1","_npmVersion":"6.0.1","_nodeVersion":"10.0.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-iEJytWaZy8risvfRjuV4+ST+Lrrui/MW2ZCWn01ZaMn0NKFej4+PpBy6bXGOg9+cEGNmI7d3Sdka/zTUZUGidA==","shasum":"748f103d3ae84dce21e555b7112ec5a19adeb6d0","tarball":"https://registry.npmjs.org/tap/-/tap-12.0.1.tgz","fileCount":22,"unpackedSize":110144,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJa/fHcCRA9TVsSAnZWagAAbM8P/2BVoCCXD5A+hMPm6WSh\nrvtyG2HUgV7NR3pDfKhn/UBid2rso+YPc9Nfg9MMvSH5LBYCMiczGWFhNDmL\nCSf+rzj9lKsKwCPalwNzCd5nx3yFfKOG192uw6hf8GcC6e2U27Tdp+qtt5oQ\nAkmLB7kxTMoH7Jnp36usQcgCGFfJxs/MRmViJC4FTJMMRQ44NpMpyyjFe6Dt\n0nghtPc/ftAsZPnrVPPkgtd2yVhs83FMcM2kUvrOyv+YMhuwiacea/AEMhAY\n7kQXH85YjAT5E11Uji3uAuYg6ZBUKTVzYahSXfLgTuglaDYkitQTx/WUg1Ht\nbDazRMqXR8ri/qi//PVUnkg1qFUH4vBm5v5OyyRQTFtjLW/E8u+e9RYLbLMP\nBwutecsOT8aEjINXd8WjtWR+87LTPsS6+2iuELEDrnqAfG40CLatrOHFFbhS\nNSMCzytAi68e2EIdDxE8zH8VuWdceU9QmdPNnTSmjDVxP4LTO7sYtYTnVRDf\nEiVRvDA7GAGMDX2KJ/X6jE8IFOUp4uMX+KTtNFEJmPwL+/FiVLgVKTB14jnq\nng2GMSXTDXsfhIGmTXjOcbgoTULZjGxYjSCiKv5KdsoBLsNmzY0F8fnaV4YR\nyisQAzcGAkGJrXdJfp79D2icSzmVV68P2YtB3MNUz5LuPBEs8HMueB37Bjpr\nvCiy\r\n=/wkF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDjfBec9QUxcGUmW44ytfrnpTFO2DRGrPJF4NR9CojOOQIgAU0TRJ9WuzWy9dJoVzFcu81OwgR52C/uqYU5q3l62m0="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.0.1_1526591963721_0.812387417555626"},"_hasShrinkwrap":false},"12.0.2":{"name":"tap","version":"12.0.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","bluebird":"^3.5.3","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.12.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.1.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.5.9","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","tsame":"^2.0.1","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin}","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"standard":"^12.0.1","which":"^1.3.1"},"gitHead":"7a20037c7a4161378af7aafdde165a1c2d0cac39","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.0.2","_npmVersion":"6.4.1","_nodeVersion":"10.12.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-JN3/RnUY4LbRw3cNpe+t0/SdazfObkpciLT5Qr2SsmiJukaCV5t6CLzBLAUC1TYvwMQPKqyAGYJ+fdkzptYExw==","shasum":"76b8fae53f550058f504cd7782a31a143d49a0c2","tarball":"https://registry.npmjs.org/tap/-/tap-12.0.2.tgz","fileCount":22,"unpackedSize":110144,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb6d8VCRA9TVsSAnZWagAAqygQAIlaB7cyaX+/ruOzki5b\nxHEzLdnhFoQC1IEgxOgqv5gqgRPq6QY/L9jN471X+GHZw0HQbqKrB4/OF90d\no7PsNKfK0KdLam7xY7ZGzukjZwUEniqVBPBL6iSV+qt5nkK+tAdPv1Zdsa+h\nBloMDz/qhoJeS7JBkAFNlMVYu63NlptAX6QCyhHaCk0wAZyJSxlA89Uo/3dK\nQ+rs0F360XYOAl1ySAZiPzjYR+coIcNPMJSdwEqXXZtEZ+4PNHJKBFCg+pdN\nEx9g1z/PkZj3CATEz3eZrpNQFLGyzk6E9bZwtQ6yR7rKhufqP5K0fkvLwaXv\nAPWPbUtYmFuO0+QopEEosGIHYv7sycDCg30Btv2lULl0omvOroV6RDOfpMWJ\n4wj3/k3jNInWqRCOv9d1i04eZhLm1LZGbLmDN5vYhYXDZj/o6uROnpeqKex6\n6U9+ZH2xvrMV55+xKD6AzVrn1BNMleMk2FEaWcUu4yCuvJ6N/m0ESW96vK1N\nWZtHi1K3goCysG1cMuQKR9TOngGD9NqPAou30olte40qE4gFONitXTXQaM+B\nKWtmkkRf762vZi6mYFWCh2ur0ca+qWQ19e0joii51DR72jnI+UgegmwR7wLq\n1GkPVwr0TtKPFDokg4f1QDQBGgGvy1ik8sjbyXvWX7J6wmRYXTXElf8Nigkq\nBaSB\r\n=KIei\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCTXjBmp4vm/Ogpp4FqU7zEfpaunQLQeuXCkH1Jq4HIDQIhAO271VU7ClOtbZSHY+DipZULvE5BIA/ubY2ILPFSlL7c"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.0.2_1542053649675_0.8213801063945836"},"_hasShrinkwrap":false},"12.1.0":{"name":"tap","version":"12.1.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","bluebird":"^3.5.3","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.12.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.1.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.5.9","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","tsame":"^2.0.1","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"karma start karma.conf.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^3.1.1","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","which":"^1.3.1"},"gitHead":"34f67630e9ea018217930037a5fae5169461e8a0","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.1.0","_npmVersion":"6.4.1","_nodeVersion":"10.12.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-sfN9XqRzG9NIC8qDxVLg2/RQbknBqVoeZ8G/g4e4PVpuCT6iqNuuK+ISF1gpXgUT8gY3kSrKcrwBbo3sEV5+YQ==","shasum":"e5f8e951878d7e0b1a36701f3dcce0ba723d7af4","tarball":"https://registry.npmjs.org/tap/-/tap-12.1.0.tgz","fileCount":23,"unpackedSize":111651,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJb6hxOCRA9TVsSAnZWagAAdfkP/A2kjb7gbJLsihpmR3Hr\nYq+x6XLrA63TlJeIBRiycl3evpnT6i2k3WHkq1VpArjguj8Y08S1/sCawHRM\n01o8ilQ3m0MUxcDOF17ePV8/IJzKfNkKdcdhkpqQgyfSoN3150hykIT5TV+q\nGxuuDEF3stSkQuz9lu25ukLDmXk4FoC/SdUPtu/u/No2AoqVuroQg06c94sN\nLHG+8GHqYvQ2RDOk3Iv6O/rCQtFOHjNPUGr4NEvm/A+at2mp8iq1+flKVBn8\ncGpAfCx8CiTMWEouFXOnUgJ2779+WvCHLW5f7EUIe5cQ0tMPfBLawHfDip/l\n5vI/u1EpxKoHD+5uM6yuLbK559Lo8j8ysz/CA+VqYKcG2kFYRFS7iZG3D8zQ\ngiDQKEdjMOw23JL7F7BMORJVjXdqF2fBTvYzVM1BBhe7AtMpq6w1G1m3AeHM\nQi+RsZ1/xl1uvu7nREvj+1Ie/SYUnxheHxoCGrkAK7MpDGBeYNZ/TUFJ/VqD\nHx8S6ahIWoSVr/96ZYo1FvTiImoVV/kU2ZPjNVDAEw+RtPoWXDn5hoIeDfnB\nsMjHxsX/Q5UIRaxN8/8u6I6T4soNbviuV4+LFjzc3VVhCxd/A7tfUv2RG2GJ\nLvVL1ij+NC+/0i5DTEIUMNd5fw6IulaGiJQZjEeGPRWmqua3pDa/U8Y8Sqdc\nshdy\r\n=MDuR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCqUCEZAyBIrP/jPQz2yEQqUFHUBC9/VAbnZhMyBqPVYwIhAPMUnZzpdKlIuQRy4XaL9kZHyL1GnumjAzVVm3pmSfKx"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.1.0_1542069325549_0.7516449190382277"},"_hasShrinkwrap":false},"12.1.1":{"name":"tap","version":"12.1.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","bluebird":"^3.5.3","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.12.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^11.9.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.5.9","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","tsame":"^2.0.1","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^3.1.1","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","which":"^1.3.1"},"gitHead":"92c3940650300cbdd9d62fab73e1296ffa3168de","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.1.1","_npmVersion":"6.5.0","_nodeVersion":"10.12.0","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-YPxCIzgrjCjdVt1F71snGLyebbAcbCs5uh74f5GPBkXFbcMgLjuDnopva+vgs9cqVv4mtSYBuxRS1/8C2ed7MQ==","shasum":"e362237b78ac446027038b7326fee1e561519fa2","tarball":"https://registry.npmjs.org/tap/-/tap-12.1.1.tgz","fileCount":23,"unpackedSize":111713,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcELo1CRA9TVsSAnZWagAAAaoQAIxB3BPgwuk1RQBlHKFu\nVdwlbsCsRcuKuoBAObRnM3nSj0KLtSnCHwEjCehwz1gRFNorfGLJRVDdqn/i\nEGz6jkrg+VR5X6Iqx3jQWKGdIi1EOXmpV6mzUXryaBg06cdNUclGHAASznqu\n6q6PvCXS9LDzLKlXRf/E8gx2eDJWRCfFQLLe0LJ9zX+gjsgUs5XqQYbI6+Ap\nPc5sWPsPoGSHHS8Mrdf3de9ckEls41vJUf8r2BOdpThaD1YS253NSTj2/vS4\nnjHWSRVnQNqa0FaDVKailGqaTQJjQSDkVuHMNKSxHiYKLv6uxhHhCGlOh4WU\nksh84oL2zecVTA4NDsopp5uGGsiaEiQ2Xv+sP6C0O9B2C9zeqR4rGDm1q3Hk\nO9X+a5SCRnUo0Jt7BO3yeu+QiPbWvNOehMPzb5bPelAqggjpI8UdOV0AyfR+\nrNZRGv+uJKwev6IqlbHxh/LG8UvRO7tSx1C7HPdc5cTKersMi69CizENDG0z\nM0MermuHWHK6nWafC4cqFfLUge8yPzNptWFhO6Kua6KA6fw8bp/0B86Yf0tp\n79RrtMo+kPY2W5RotO30n7q7qVQ3pLmPfCEO3EOQN1Ls8zzKdsAK9L+zGeq/\n7y4GSLH0tVwMvEsxA0sIm/PGk39yPV/pVCOsDmeRVKKILheDaQlaorsVuard\nWUhw\r\n=k917\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICzW/57QQMkC9tP+zJwCsFXxXGxjVWcUXK5aaC/83Sh6AiEA3D40v141ITubg5iOru284tyvppajqh/RLKkx0IiGPis="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.1.1_1544600116582_0.7303488130420317"},"_hasShrinkwrap":false},"12.1.2":{"name":"tap","version":"12.1.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","bluebird":"^3.5.3","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.12.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^11.9.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.5.9","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","tsame":"^2.0.1","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js -J","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^3.1.1","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","which":"^1.3.1"},"gitHead":"cf8a2e1b0abe4ed27b78ddfcbbeaf447ab744a0f","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.1.2","_nodeVersion":"11.7.0","_npmVersion":"6.6.0","dist":{"integrity":"sha512-bSxKjA6Pchgt7Ho1V/hbRvU9aoJgCTD9Gwxl1D4gw5NiV093Kbi+eXsOXpY8dNaXkLeE+YiMU142cOj2DojHUA==","shasum":"b6e6af4ded7be65813ceeb4d451c405b34fdfa53","tarball":"https://registry.npmjs.org/tap/-/tap-12.1.2.tgz","fileCount":23,"unpackedSize":112073,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcRXZcCRA9TVsSAnZWagAAENsQAIHqq1NSxrPofFO9wlJM\nwmi6eM18XWLGdALncRg/iFIunuCShNvjEi0onwez1vB60cHVgki/Wsnuw3zn\nz11GG7aB7plXsXFZTQHiETQ9qL7dXs4ZsICMP6ptPqDqQGLjP+m1cFPl4xUq\nhZqyZDLGWgZUay+c/i+ZHH022wc8eoG6wc1pN5qI3WQSebOqUeryuLL4Zd5+\n6nkoXvWNquxcK5hVnXQQ/P192y5rw9ggNxNaqn+cqFEPstCE1hxXvoTMC7Ns\nIIgtE/kSYKNlKhqXUtfNESYr9faf9xWRFgMZ7nXSYeViKrTwCIK8gVbRvw05\nL/W8m8lBoJhmHWoJoYcwkQ1ZD+bS+QrQI7deb8HhpbthsXvgtWVTlUmWLpLq\n65OL2bQEbaJq/5zbyZlaicXrE/EfVYmGJoIECZtVv6FgQ06HNN8YOFfNX+zU\nTsfr3oGhccXTOpHUSIdc52WHgTPHNsJYZodzGc2gs5WUUC8lySN0PtuUDGMI\nXdA4HW3XETJVWNSQeAIffgsKN8bC3EZf0uoz3MIv0NmxTHSLYipZt/y4eRSR\nzUXB2PElX/4udcAxyV2y5GnW2rZTzYZ/iZxV/uzoGw5hD+cAsbe9VwqkdgU0\nucjo26wucFNxbeAPn5Ly1cTAoOGxYaTyghHNtfDVYE3UFi7ZeQWh5pnaQ7nI\n8n+4\r\n=ldIh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCRa5pvkeIh4FTb2qepiRDCY9zzJCeB4yskV1dUh/ODZAIgc51n0eVX8Rh2KZtY+rX37r/FVp6k2b74NS/DBzQhOd8="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.1.2_1548056155752_0.9844590183186193"},"_hasShrinkwrap":false},"12.1.3":{"name":"tap","version":"12.1.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","bluebird":"^3.5.3","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.12.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^11.9.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.2","signal-exit":"^3.0.0","source-map-support":"^0.5.9","stack-utils":"^1.0.0","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","tsame":"^2.0.1","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js -J","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^3.1.1","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","which":"^1.3.1"},"gitHead":"07867c1ac20df083283c71f0ba385d2db411d4af","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.1.3","_nodeVersion":"11.7.0","_npmVersion":"6.6.0","dist":{"integrity":"sha512-KWFaJ6ZDOF5xkIG1bmhkfbf6gGPLHHIyZ2FQRWsxB3QR/YFSTOUvnNUTPTCXL9/DDiCXkERomowQsQi6rDXS9A==","shasum":"e73d99a2349fbad4ea360d33183a50674d5a8cd0","tarball":"https://registry.npmjs.org/tap/-/tap-12.1.3.tgz","fileCount":23,"unpackedSize":112083,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcR2sECRA9TVsSAnZWagAAJ2oP/jhHZDDqIzW0MvIpUgaa\nV+Mizhc4oeeAQD1eKUcqPTOCB1cuE8vZOFTG49o7B1BJx9QKr7rpDkd1Jgtk\n0JAS/g4JtbXXCcsM0XJtUh3PghfUEOCnzTrtKFPiOsUQWdTYhd5Zl4lUeboi\nmvew/WVtXoEtZBsiflUe1UqeBUeX6jVDfx5AqWo4jRjujAomRoZAsa4ONHb/\n2NgAx/XvBloa25oQWcRxMg3GebapHKyFTp2GZMEvq4/HHb8DAHUGng5+d2q2\nufZ7IcnwZXLaIJiDExGQacnccJuOcqV/6ieiM6hA50UJDDSnCxfvBeHbJQzX\nQoJBITHILH1qATdPcUgyL5UULRpHDf25MJPcEbZopm3JVB312WsMIOcjw/Xs\n8WKkq7B0UA5feEeqT+tWEwurcwNYa6tbbEw0z8GbyiVblH5okWlLKyKIUwEB\n9Yxbf3cSWNY0KOKofNVW01gcvL0QpOcFr0nKdZnXpcEKDY2sHSiPtdD2N1xH\nBesgkbud7el328OOrEJx2pTGPuNUfkyTnVQ/V2stu/50INvyJBpS+ziZDhbl\n7n5BP1V6T1qZ5G9e+Hhlcu/rgKMWg0LGmVjF9Ajy9aPcEdAiqZP5i4LByi8B\nRkLp41WYMt1Hv4CQmfycpN91mCzEZFmbEfiWthhzO/dbQYmOlLZjNW8o6A4F\nUtgT\r\n=hS/1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHJwaquesD8KvJ7irbB+S+PL8UHp1ndzbdnzXnGees5iAiEA+D7Su8Giqvsl0rpKsL2UX0XXSKHU0ByZIy9b6g5VzIc="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.1.3_1548184323711_0.14779631968671492"},"_hasShrinkwrap":false},"12.1.4":{"name":"tap","version":"12.1.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","bluebird":"^3.5.3","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.12.1","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^11.9.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","tsame":"^2.0.1","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js -J","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^3.1.4","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","which":"^1.3.1"},"gitHead":"8de48815f89c6404ac079b076022870ea215a825","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.1.4","_nodeVersion":"11.7.0","_npmVersion":"6.6.0","dist":{"integrity":"sha512-TlDcEQmdAia0uTHUDXHEFuuuir6CuO6I+BgwawdGRYaTGquiSY4j0uhFqU0rKkmuPSHUICIniJWWCawKfFCEPw==","shasum":"39864d3adb2b5ba8c7675597df74080f85214688","tarball":"https://registry.npmjs.org/tap/-/tap-12.1.4.tgz","fileCount":23,"unpackedSize":112316,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcR65vCRA9TVsSAnZWagAAj4YQAICAgJzA59sMXaxi/m9a\nKmN6lLTGieqU0PVNyE790UfAWpGZhwVsm8R1z3JTRM4vLP8wjDusG5yNhgXm\nJlhDN/3O9gKsnOnVl5QxGcpeuHeQTUEYa7chU4h6aunFOBaBOnvUUSjLfxdv\ngmR8sQQEas8fZ7Z6VmMD04F1I13AW3JYUg8aBM2nQ9Vuv+ngRqxuF7V9MCCh\nHzH6aBxiKq6DyqfZeMlJgq7smw9fvcp3f1w5u59JS3FOQdZKsoKwhX6SuK6O\nlI0sQB/uARWDjJAEv5vCwvF1mnZpfS3jh1vh0EzEkY/ROi/HohGFxTJAQlT4\nXRqs0h1cWxUupyc7sMESAaCMIonj/7JpkNxHVurFpxCe6hfDM3Lr3phQXIdr\nHmaQfkD5cO+HsY/8qg2aalJECIWvucpxtcqImF+l8bHJrGazJwAcwn2JaDO9\nxuodcIgE9KJJtSRUz1DvhhAxwWChz+B8mBgnGiH75doLN/9GWC+njOkQa3nX\nJ0JPi3CyPeaChiPwhKk/zDxFmQJ01KF/NTa/N2zTQgR4bMDFPyF/MpD8WEXO\nNhmAv2PtQlo3zj30zO0WDpk629mTjsPWyG54DS6+M0KNbJ8RQ9NQOV6RFeue\nbrLPnWPj5cW6ZZ5Qj0uvCXeD06yutJHXyxj+TpR8zqmppqcPVzcYWhz9P1uH\npOrI\r\n=4ve9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCwn708/NwIvmGa9PMqZaNWxtd0bx5kyV8OsjNmCzhV/QIhAI8daqowqGWiAzp89uw0ozfk9JwgiBPwKQPiui9FSWqu"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.1.4_1548201582820_0.5580023699481094"},"_hasShrinkwrap":false},"12.2.0":{"name":"tap","version":"12.2.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","bluebird":"^3.5.3","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.12.1","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^11.9.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","tsame":"^2.0.1","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js -J","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^3.1.4","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","which":"^1.3.1"},"gitHead":"8b251a4d1c47e77512a79b4d2894074c6a737d24","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.2.0","_nodeVersion":"11.7.0","_npmVersion":"6.6.0","dist":{"integrity":"sha512-VQHRGJFZirucm4fOcqMsPJ6hTfg6qK0q69Ktpj4YyruxMJ0/RvB84DUv+SS2nCX1+sDC8JOUUNvYXxPVBxEwlg==","shasum":"1741c84a2745e8e434c9e54cb082e5b9ea2c3f92","tarball":"https://registry.npmjs.org/tap/-/tap-12.2.0.tgz","fileCount":23,"unpackedSize":113242,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcSALpCRA9TVsSAnZWagAAP/gQAIOxAn770kSRtSz5EC0E\nTT5SYq1VePXobl3H+EjdAxxvQ1pC2GYu5IcBH95kk7y/hfgX1aAB6+/B1Xud\nFLUAyPWlEzj6FA5aUvHzyF3XR/sZxomMgb2TSSv4x1+0GKU1jFUFyODlTGH6\n41KLRuYAkFeukp8dPG8Ks9R84F4zf4sW2NdPGhIS3eoBd1sgqXrAjxNnSIQA\nsvn12L+qnVIAUnVYFl7o5+zKzExuktyJOvpeHFAqEEfEhZSRvJXPzjBPCjPQ\nptTAm/FBTw+d1auTV6Xq1XqKNAT2W3PLN6FrkORJJ7yViJzchlL0sdtYK1UY\nQRuzanZ4097dwQrIQ2WhaIJNx8+FU7Ax3CN5INuValD9zD2vEjMPK/tyXc8h\nnYIYI/FwXtJwlem5AYt2F+BvZJelJancW2fEsjTmkWE5TLmm/c2HrPEAorg/\nHh/hKbFy8WBHUvLnNjuX8pbX/iLn6loUDNO7A2BEuwHrmoDA/vIol4pipfmc\nkM3F0JKeB0PML7RItVwJ8OxBiAM1l/ZJIe7krZgXHoCbxFPSTwEQNiQE7igF\n6vfB5BJQmJ6PTJge5lfzidYAUCNXR4QUhl/vmuYSpT3/IRjJr2808tX1qCAT\nqTgscD08mexOWnMPaeRznuxtg3tQTNFKocd9HYpM7lEhT0PwBzPjlsm9xc3S\n1c9D\r\n=nLOo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDkGx/w+6EnFrJmlKABqFcIpkJdFGoA0t6zl/wAiyN7MAiEA9EBylacsi+GukBBtQrvaxXz8XCPiYmT7VriIULxRfn0="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.2.0_1548223208695_0.8538285801710275"},"_hasShrinkwrap":false},"12.2.1":{"name":"tap","version":"12.2.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","bluebird":"^3.5.3","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.12.1","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^11.9.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","tsame":"^2.0.1","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js -J","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^3.1.4","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","which":"^1.3.1"},"gitHead":"fe8f67988f31811ccef1c2a3c98c567b5903546b","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.2.1","_nodeVersion":"11.7.0","_npmVersion":"6.6.0","dist":{"integrity":"sha512-IAZO9pXIrdXS06XkFpIFn4vuXGmxrfDqywTcrrERoc6no9+tE8qqCIAuXTPJfC9ZD+j92vc0cuMpgPLAZ8SUfQ==","shasum":"5c81be28669f80fcc94a63e512018295495930cf","tarball":"https://registry.npmjs.org/tap/-/tap-12.2.1.tgz","fileCount":23,"unpackedSize":113599,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcSAZoCRA9TVsSAnZWagAAMz8QAITcrbWirdN8m0dRcAxP\nUVi0lnX/nAxbaBVQQn4P2VjXQ346eSEegtshjv5Yng/oJ0vYrSyEU02+f6Kk\n7yDZ2pYd2pJ7hy+K0TsZjWDutQFAwerXr7fjuLsQGoCzrL657MX5aRBgeih9\nUtwz6beAB1ZhQrAuARFEgHDHsEVJLDE21Hi1EAtZJYSi54WRb8Da6bgM/d9T\n2vCq6yUExe3oFe+Ep+UeveUti0D50dCEdfptBBUegQbF+0Ozrs8ljQYmCDKx\ncZzlHUD2dtDMnv8vPZh0ShihTfrnVra/RjSxM4zG6GlZN6WVveXK5qDeYEy/\nZ5zcf64l4JINR7pkz1KcYuWOgMqpPW+TSg9VXZA/hqviFuTbcY/zqkxnwEik\nxVVMx/1fAbTYnGVya4AGS5Wik5beJNDcppx37k6wo5R0WgAfhdxwI0LMUpUY\nCroRazRb2WtP+JCgDGJIatlDnq4R2z5sNLfN+Fowqo4CKn89zHdnJHzgG49p\nT0n4QijK4mYDf5xUKz+aLpIP6rBEFqCc7blpLgsseGvaZ7vLIOC2tOb2Ydi6\n0iUFekz9xVFGEcVj802Y9DTwRhTdyRPbRv66ydCCTLyAmj7IJhGUQnBoYtAT\na77Y7u0l2nq/Pwa6n5vRVl55cC6qBSslyybht+CukzFc4aSjmbLGP/taoSQW\nn4CF\r\n=3XFp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCrgMUJU4AIPMGQbqP7y9jLKhLwsqCmhkT/ZXl4agN9fwIgesdDyIuauT1Sur941jRrM0QZjUUsUcyOzww4RA5dLSU="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.2.1_1548224103803_0.4909593287130962"},"_hasShrinkwrap":false},"12.3.0":{"name":"tap","version":"12.3.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","bluebird":"^3.5.3","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.12.1","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^11.9.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","tsame":"^2.0.1","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js -J","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^3.1.4","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","which":"^1.3.1"},"gitHead":"d572850ff7541a51b48186b304ebf9fb5e7be81e","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.3.0","_nodeVersion":"11.7.0","_npmVersion":"6.6.0","dist":{"integrity":"sha512-CZdfRRXbJZwoO10xm0vpm14EYpNk3duGJRRPR46Op3FsOagmybjPMy66hVZ2H/b/SuAeD3PjnMz+72FA7SCesQ==","shasum":"cdc2851bf619eecf041c1d825b14478f9ff0f054","tarball":"https://registry.npmjs.org/tap/-/tap-12.3.0.tgz","fileCount":23,"unpackedSize":113823,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcSBqYCRA9TVsSAnZWagAAKAcP/Rej6n2VzEnWvaD+xbaW\n1dJe5TYAT6NqKLKQjrkA+KVGWAdt71/L5DE9ooUEpJ7R4eQdgYuB01eFvQCS\n4yxqfRnbumyBlQ4ROBWCgfmXHGPwoE4jm8Mvu0VrZOfh0FZ9F7MWwKiijMSm\nAgeO1v7wKFOmIMD05c/Cp+0EeINhwju2ycpWhiQ7m3lKwL0QrGxkDBNpar6S\n/xSJv8rfTQ+cUINnwjRUjkzi+LT5LyIxf3GlSaNEFAjJeAuDbf6ZMCgmlUSw\nELp9Pv6LBpH5mR3fgfWDLX9zHDfnPnA6JC2HXXobVy49rMKmIHKnCN9cSWWd\n7XA3x1Ye363amO0X+SAVmTMgmqWWtFxTmfDR+4tjKBG+i6oEMhk8+sgHX6Gz\nWNWj6okdZOYPngjw5YkBoYtNcSGvIMGJxau7WmYlytUyaXQhBf2b5jDjghl5\nb1mekgA62+uOigFlVgPX1ZLDSHWzRBynLMa+QvjkxGORkZ0A0pCbftqeCUFs\nXmucCc6Yku1+3jCK6nd6dhPE4bRaFhSm98ppGoiU1YBEDRrh7CccbLZ2i9VV\nNY6Cogp6X1Y97tElaHD6jgjgRhHoG2eNLpxV8S7APx+hbT87bpkQvbCfEzO8\n1wfjv7tEpjZ0W0dVxAKF6pSquaBzrJIlq56d3Sjgc6jD63zplV8jDjy0dO4d\nCKR7\r\n=ZiAJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCMVvEuViOD6DmK9vYlV6UZygXGjiA2E7lXqeK05cYw7AIgAVfKi3h8RVZZ/HUvJxnkVd1F4S09FtQ40EmC/O4OCdE="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.3.0_1548229271347_0.24499710008168196"},"_hasShrinkwrap":false},"12.4.0":{"name":"tap","version":"12.4.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","bluebird":"^3.5.3","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.12.1","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^11.9.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.1","tsame":"^2.0.1","typescript":"^3.2.4","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js -J","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^3.1.4","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","watchify":"^3.11.0","which":"^1.3.1"},"gitHead":"a766107fbc236f5bd4458209e5d0e2d6aae1d914","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.4.0","_nodeVersion":"11.7.0","_npmVersion":"6.6.0","dist":{"integrity":"sha512-f8/C/hmObTJb5QZZxEBHa06A+lizBl8Wed28IAGAcoP4D1hCf6bu/rNrFKvic2x1ug4i6I+ZwrkSmu0ru+33IA==","shasum":"d700636f65ee258e18f1f65a8a5c18be3d137ac0","tarball":"https://registry.npmjs.org/tap/-/tap-12.4.0.tgz","fileCount":23,"unpackedSize":114158,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcSCEDCRA9TVsSAnZWagAAlXQP/3ZXWW0Tos9zbuMGrAhn\nizQa8a8pfCKVJqlqQd0wZuWdjAmZyTpvOC5fzdUfg42tcXo+JyswjpZgqsyN\nRZGZGT5IEs/CF1ymY8QDp0sw3vbE/OCdcqpv07u848ZEkhsMme14/7LK2ncR\nRweZPm34QYTpKqmhveb/PnsnNdPJTHowFPIro+wW8qjX1Co23K14YJtp1zGx\nLlGUp3JWUBZHtN/SyBbT+NIYBCQE6cug8N7YXrRE55ibAgCWXqT6ugI71xQd\n9cOFEhw2eotDMsiY3EBFH+mqR7g+D6lTcoVaEo+8Z7KZpHJ/qAxsA+fNBmvc\n9h622CzzYjwmIFkwS1QLYxWVpvIFbW1g2Ci2zwb0WUAB0xuNwjXMegriqjlN\noOzHkfKmNAg9iLxKvglnEs/Z41rDsh33ijE4ZoqymfMrieb4iqY7kDMdb2/Z\n90KyLVOeHizP60RP+VW+HSqplVsJ1VPhiZMPkmZUGe7hHjuZkHosMaedMD6Y\nqDCiWFhPbXtlTj/XfZRp+zaIyB0awYPJvobd2kkFjHTlL/ynETD7A8PguMfq\n0Nf1hHq+ydYDo4QGq0CZJgngr8844CS3Zvj0LrnctU5qvQpaWavxPUTEBY6E\nQLLkRZnvs+JEHfuxdISDttV4/DTS/DvqI4pCbLZNN1DJXqbGTGe3qSUS055e\nPlzX\r\n=7OJz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDgckHDB9aNr4kWLQYD36xRzpvK+qlRTpMMXZs1OZmn+gIhAKqi1ALeVfroeEHGbmRyqQ5gP8SPg9CeM6Pyr91VhDKR"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.4.0_1548230915358_0.8779981357534374"},"_hasShrinkwrap":false},"12.4.1":{"name":"tap","version":"12.4.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.12.1","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.1.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.1","tsame":"^2.0.1","typescript":"^3.2.4","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js -J","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^3.1.4","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","watchify":"^3.11.0","which":"^1.3.1"},"gitHead":"c17e6dbcac9cca850491673fe457fad6a4728699","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.4.1","_nodeVersion":"11.8.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-hWh6V5cIIHwvXwmNb3fL/3athC9NyZuL4ZoiyHUHXqRAJJ6/SBmGX7IOfzj/Pf7EzFy9JwDCw/64eOyKx8XikA==","shasum":"0c50480291c8bfffe889e448a847b66a8f2fd809","tarball":"https://registry.npmjs.org/tap/-/tap-12.4.1.tgz","fileCount":23,"unpackedSize":113855,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcUTgmCRA9TVsSAnZWagAAnrIP/igmB6F6LEnO9mphMt54\n+V67iBoGVekOKQsIgJWNUM3dVaYIkEO52yu2gB9y1SAYWz+jMf7SN06Xg1ZD\njSZ8c2SEXlHQHlT5jhY9ELM/GniXtUs9gK9EEKgR5+S8sHjARSr97YgE4Rof\n5WsHEUEN0AKcgIvsYeVxbr0xQwjx8mkoYSWjrI+tOAPuSUSSk9HkJkAO+mTV\nWRWc0jwdYHl0ksxXZk9HU718GokBdqnqMKFyrwdDn7ysfWCgsNkowPmraT2/\nHMua3khwspV5umeazHkyUdq9xaJCF7r2uTOG6nLUCGT9XrYSd9ar9mHzG9wB\nGpFn2Z0LsJdICr5R5D0E0goj/6gwbTh8wpMuttaqqJ+tW9nWHIIBioyhnxK6\n+ET6Xh15EbGB/I2yZjI4t6g8Kw2pNogzy1gM/X4Y6BvRP3Q3dPr2EDpq5nWR\nAC+cNBjdEuSaFQXKxeQPmKuj7NZJkAlGeZhqXVIuekcirrMDkPdsg3ws8dfT\nR8KpIhFZWJ2tl2f9mYzgQGBSQa1Zm56wppuxyJU9nAN5IfexWvLF34RSo9Ra\n1TCVv0q2xH/ZzidmjOHE/W6OU5hdbyJds1pM0wtLy0WnYtO4vXci7fKcWHBC\n6EKQfuXGe8qem1eUxCwLXTXae9UPQiUTpB6TJRsP++RdELbnHUJeHW3ATodX\n5AMI\r\n=IO7M\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICeI7EeKe3y7dw2kryVxv+Qc1zgZ9kgJXNszikRJnTOjAiEAx8eDLLqQB9l+UWUe/V2chv4+HBotikS7se8xi+7F8pw="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.4.1_1548826662142_0.8749820999850768"},"_hasShrinkwrap":false},"12.5.0":{"name":"tap","version":"12.5.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","esm":"^3.1.4","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.12.1","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.1.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.1","tsame":"^2.0.1","typescript":"^3.2.4","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js -J","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^3.1.4","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","watchify":"^3.11.0","which":"^1.3.1"},"gitHead":"3d9cc9ac3e9021ed8b15d55f060b01c2bf7766c6","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.5.0","_nodeVersion":"11.8.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-/QjrHGHIpxYBlojgl0mjj5lPA3+JSTWpHVvxtS8c0Gz3tv8mQ07nTV58WyzlqnLqSp03a9A5nP92hXCOTuiflg==","shasum":"6e4474863969d4fa5763e98e5f4212c26a18c1d5","tarball":"https://registry.npmjs.org/tap/-/tap-12.5.0.tgz","fileCount":23,"unpackedSize":113706,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcUTpGCRA9TVsSAnZWagAAPZ0P+QGNrI7YyvgjUaNCUX4b\nc4mtcu+xspUKgTJSx1EYjBw0oNSTCvuiq1Bveq1pSBzllNHjsZxxuXefG9mL\njloHJ7JaA+bCUd5IHwpLPy5eAwE6owmwC5B61XJsEBMs4ctSeOmIYfJOywf2\n9+iUp6lSp6+wZyIbaLnW7cI5kIYB1vfmJ9GJi3Czz3gax2alK8+i2M+2Cqbj\nhGu15KRYIJS4i1Bh1V8RrjoEoy+UJDEJrEFkvAnipNM68EKdLTEosclJg9OY\n4nV8YYwjZvgDVVjVQrJe1DEWgw3afa8ZgqindAwkF/JMWSJcO91nZM+rkolU\nBp5/CQ9EHx+HH864OSMcY4cVj0fgIwKXevATNDRUco3YbU/5kscX/FWi6tt5\n4Z3SbMu3sSKaU4zUmOULN0nSUcJM1+O/R92nDzIp/a6eo10dMrTWyJtkoCFW\nZBIS30F5DjRpyqEoc/7PR4jxXSi+m9HlgNYW8KOTGcLAYwWm7ieAv4sawWjS\n70XWJgRZmc0NKvBRU1l5xk9aHt03XDe2SJn2h2o0oyLIk9bKloyG70+2IiO2\nVxDYUxIqZ3t48+bl7c36UxDYaA+OGDCJSKPGqyxJTbOT9PNEuvcfpw3FAedI\nqjNUVWORszT86gHdSGQOfb/sUQ/+YjIwHMMC3M4NfxqhLjR86wMMDtawYb3h\nnZOg\r\n=s8kb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGKfYms4ZBpDHbLndJ7lxFORXvCZsP6loEz8TUvP4tmDAiAnpzMYs247NmW52GhL+N5G5EQs2ClDNj/rD4Y1CY5feQ=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.5.0_1548827205792_0.744110080611855"},"_hasShrinkwrap":false},"12.5.1":{"name":"tap","version":"12.5.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","esm":"^3.1.4","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.12.1","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.1.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.1","tsame":"^2.0.1","typescript":"^3.2.4","write-file-atomic":"^2.3.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js -J","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^3.1.4","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","watchify":"^3.11.0","which":"^1.3.1"},"gitHead":"d03f38375d71ca73aa3566fbeb3eb5316ebc163b","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.5.1","_nodeVersion":"11.8.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-FiZtRwt169oq0pmaZwC4Bw/leqdzmG7paqKA0PYk7+yGq2m3q35U9yh9Hh8x/Z+iue8V2/cFwS8x9mSZnM51cQ==","shasum":"e0507f8dfa9ad6380e58febebca3c275532bdca6","tarball":"https://registry.npmjs.org/tap/-/tap-12.5.1.tgz","fileCount":23,"unpackedSize":113756,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcU9L0CRA9TVsSAnZWagAA0cMP/2h0UjsYgAAbMCE+HgSX\nK6lv2lnY5q+bKe1py1qZwF7QgVusHaoMvI4bzoUfUIQlv528n6LQAoN3el+u\nIMPVMemqCd38LKvzf5lwM0bTPNqiNjr6/lZTx3NBMY5oSLHUCMYeUB6oK24m\nRTcvvhZgUmZuFxXhsljc98ucQ5uzHYQa8Rd7RoiH6Lchl012E1HDOoYKraNu\n9anoBaqfpaaT68AMVoAsmkIGYacUvKv831sDhrYoesPFr7/zuO5003zDCGTs\nYDzlAlx9Hec2zFhcbpz9xcxQ+Ik6rTfd/gxwIqqgWXOCDc4of8kMA/QMHC5t\nHrY0QudOdGGZQ3WnK8qhimGQ61LxincuhfzbcdOWH5INO/FddUCZS9dFoVzr\neOVjE+wQOn3IQXY8i8As8r+NZSOmiqZ3yhIjtYq4Ofs9LPavA41eDfYDc3Q6\ng5YxFG9xvc0QWS8XRkIS0lhk6XaoYpzFTVf1x0uzjCvxkGDD5R2NWmaXNyBe\n+aQyPiIubLsQrALH9UV4SMmu6A9lVKMQdevWaDPOhbAT02gjApSpS5OtgZi0\nToogQS+6zxSCvl1HchlMe+y36LuMaz+k72zVoVOF7V9KaZJ+wMsDdIM7JwpU\n0ERB/mWmKWIqkDaC+9hjmlQG3TuqJetx3/egrV11++T3pfZCaZOMSKcE6LrB\nJ6Jv\r\n=G574\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC70Z41gi60LrEy/Srz5UdeE88GZ5uQs9OZ/FeWwNH78gIgVaTbU/9bC52Zk2udb6yf9QsiifoClMrk+/7yzISisJ4="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.5.1_1548997363919_0.2921034799347706"},"_hasShrinkwrap":false},"12.5.2":{"name":"tap","version":"12.5.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","esm":"^3.2.3","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.12.1","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.2.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.2","tsame":"^2.0.1","typescript":"^3.3.3","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js -J","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^3.1.4","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","watchify":"^3.11.0","which":"^1.3.1"},"gitHead":"611ced813b2f68040d5363ec67caa245a27f1145","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.5.2","_nodeVersion":"11.8.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-r1uXuQ39+EnnR4hqWDTKw854+2ZSGR6QUEZwVRfabqcnhoNmkPQfiJCaVyhw+DILuMcJyT2/VRTVzn6puxkJ6w==","shasum":"b4848b8f166180f5534dc7fb9f4e6a934569323c","tarball":"https://registry.npmjs.org/tap/-/tap-12.5.2.tgz","fileCount":24,"unpackedSize":135211,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcXRL+CRA9TVsSAnZWagAAUosP/2CCf+N0ojvDXPP9IJO4\nTSUQLNmu3OEH4RUHXkESyJN5cW6EjkCm4+X3BrPdwp5awzGwtncBJvWEJPb2\npkANEsrwrpOnTyfFhVEGprbc6pCbm5nBjd5NwLNNLI1XqVs9oMZf80IG390Q\nCVe8Y/A0rGg3M1fLMDoU7M5O+56LaXrmboOtF14X9nHNYD0tPNZlqBOCFLUq\nI+q4R07pxIelWr720jd7LqgZU78vHMF6CcltjALuTmsw11KMhDfB/0ztCbXx\nlH1ujkxlm5HGakXBDbAgbBwXBPDld/K1yleYz2T9Gl9A0uA61RqNv30pHdUO\no73acJ7nGf70+cYfRv7kWoh2t/bI4F/PzDzIdY+4Q9T2ENV+fbhViUa57MlI\nGGx9lnbOF0Zvy21oVei9UzAkb7LUClx1/v9r7+Ro0ZrvBVFvlwDZgbJP+Xk/\ni6S4sjU9lxWLxr8eUidewzTJfrSXFHN5pmwlkj3Y6oVIStX/cd2BN9C7Btv1\nlDJ+TSRr+AdgQ2JN1ctkTrm23y4A6DeDwqG+BOCYhAiwP/TQ1wZ/LklrG5l/\nQ/j6/nmOT6Ekm1IqA0ftHfj90V1++tf7JDAY7wHJgxHmJ+ZeJTwWSISH0/7m\nSCJuYTOZdpMQ4lF783GhfPs6eEoIVhZRfdKdcfGvNct8GgAU/lspcHZYie5G\nxyXU\r\n=cQqN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCxyPAemOqSdkGfCPoR0Jy7EoMmI7ZnrloBgd93xn/8lQIgNOq6QYEJ/YEagIqJj8uxbjahmlfwtkR1eZ/+G1via7I="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.5.2_1549603581157_0.09663924297992321"},"_hasShrinkwrap":false},"12.5.3":{"name":"tap","version":"12.5.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","esm":"^3.2.3","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.12.1","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^3.0.7","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.2","tsame":"^2.0.1","typescript":"^3.3.3","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js test/*.js -J","test":"node bin/run.js test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^4.0.0","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","watchify":"^3.11.0","which":"^1.3.1"},"gitHead":"223337652f146c546a27ee404ed68c24289b527c","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.5.3","_nodeVersion":"11.8.0","_npmVersion":"6.8.0","dist":{"integrity":"sha512-st6Tkj4iL2dqucFngl82IK+mUrY/FQETNCWMN2Kfred38vznzjDTUXrpivE1RegzwwyXetJLCHgdycpSVTiMsw==","shasum":"a0ba504befa8aad607b5ea05927069ddc90f12ff","tarball":"https://registry.npmjs.org/tap/-/tap-12.5.3.tgz","fileCount":24,"unpackedSize":135211,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcZzsECRA9TVsSAnZWagAAuF8P/Rr4eykSLL7g1Wg5ZcSu\nUJ9VRWLG5ZiDaSMgPMLj2GRluW6n5LsXlH49wSI7TYH9lnEfgDh8TBHMGlni\nt1kxtUS/Y7dK06+i1l0XmVpbCZsDDKxCgnK6wJVMQ4bF7mzZRAGN9L5PrN3Y\nkH20jQVIPSjE6r0KvYRiA2nNjGdpUwL5K8d6WdrhEDZeZ1HPZnFOEvjSgWxW\nlqAbbF0ZtheO24ZKgT0hc3a2TetesECLHwwY+JVZfQDWc7mUTvy6BD6Jzz5t\nPSZHhmPK4R7uMi4RV2MbgZCv9HccEknZvICVrAMg49xFPDYrIWGzGKqXwZcA\nfgsXl+Q64IpoJpT/3Yj8xTaITA2kLsFxXjYtzVksCpJcOEDBzN2j1W4Sv4lM\n/xefU62R1AZ0J1cRYLvYGgqjIMz67wJ7llLY96QEwmLCc9dR7SELZMW5HTgE\nScgNBrz9fA5+h4FHF9IpJwmzE0d26NJzrzcSxSvefHVWiGsO4p4B3V6HQptA\nlszHG7nGiphA74IrXpGjX7Gi0mqJQKupcPls6roliqS5rtnkXJ40xKsFXOYj\ntZlVLaJrd1ZjpUmCMrKH2tb4xlYo1CpdqDpNm39gvfxkaY7XDsIYASrzk57f\nFB4cBCw3/3HXlAHVqTtaaldL9TLndJ7s97Gv6PUNbfJsisI8rcPwfyJN5yNB\napeH\r\n=Jz7t\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCPobv74y1zZwme4lOzMTd2sUWUOmM1cnlSEV3jvce0cQIhALULqZg6E8N0TNkndmgShgoC6vHEc8vBB33BOT4diuc/"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.5.3_1550269187358_0.13797686359699401"},"_hasShrinkwrap":false},"12.6.0":{"name":"tap","version":"12.6.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","esm":"^3.2.5","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.12.1","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^3.0.9","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.2","tsame":"^2.0.1","typescript":"^3.3.3","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js --no-esm test/*.js -J","test":"node bin/run.js --no-esm test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^4.0.0","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","watchify":"^3.11.1","which":"^1.3.1"},"gitHead":"63ff608c954988531f97ccf65ca86f006b854e80","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.6.0","_nodeVersion":"11.8.0","_npmVersion":"6.9.0-next.0","dist":{"integrity":"sha512-HsU8Djx7WhkP8SZbtdtb1P/g74QdMYgLtge9/MiNZ2uKXa1KV36nHgWIFI0BlrhnzcS9n3WfqmLY2tIBTjl+ew==","shasum":"3adf588da6fb1ca1c598bb36be53e612d1146b99","tarball":"https://registry.npmjs.org/tap/-/tap-12.6.0.tgz","fileCount":23,"unpackedSize":114639,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcgHTYCRA9TVsSAnZWagAAYmcP/3ZG+MO+I89i4kDCjmxo\nYSZPnW4MWqYCyNbhNe1KUxWxOT7j7msg5t58MJF4LuwCd4QTknLAO2Hel9Mm\nhvqQthVSf5YkCZmFmP5KNEUx/v5pPMn5BckMOih5gM1we1/JcaRPMBcRIOgx\n9lR7ZWd5DYphgtoj0BEAy1RoSUywFJP3s6Az4z+3DD3w+bwo3ZtNhTqWpBPZ\nsGceoqMSsLF8jmSuVUJqNXb2re72zoXFXvPdH7Aj2HVAQ8s1sLlP8e6MuqLw\nL8WPAbLEyEe9CaUetg+ycD/z8h7E8gA7XLAlhv/4eFg24A40CwljVbPEDLpT\nF4V3DBhGAqX9dv64XHLRyinYcr5I7VaRbU1en5ey6QNUXcksVddk/hq1ps9k\n+OFQ0vj0oJjEp/GjXAbVRmfWJbdc88OPS4VZzCzxTuoOZ3MvQ2wuvDEHTjNy\nZKbb5woQxDiNVHBxOT4nUNsunuAiDg3VbkwzMs5YUCiAr90wVG8b3kt0keRl\nDN2JynXd02Lu5VBtKxiIHo+laGfY09/e5rhPzgmiVJiOjxPofximnvLn6LY6\naQk6IcGBstoCce7SG4dSVqJhz5H2ka0mSJ9Y88BBf3Ayc6Yrr18v+4KczlXn\nAG3qaJt/30RJrHzV2+zdc3tGxIkbAZaZZbkJDvz74zJ78NPI/0Ll5ek/5EJJ\ng5Gz\r\n=JHcT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDYaymNZ/lvpAKlcxs951chEKHkcnO99lxOrXE+1mGLhQIgNG/VCYhM4lGS7277T2onrwqI/pLMHjI2oo4ileh2MxM="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.6.0_1551922391400_0.21393702245938928"},"_hasShrinkwrap":false},"13.0.0-rc.0":{"name":"tap","version":"13.0.0-rc.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","esm":"^3.2.5","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"^1.3.2","isexe":"^2.0.0","jackspeak":"^1.3.4","js-yaml":"^3.12.1","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.0.0","tap-yaml":"0.0.2","tcompare":"^2.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.2","typescript":"^3.3.3","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js --snapshot","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)(cli-tests-[0-9]+|tap-snapshots|node_modules)/"},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.4"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"d8755e1a5ef0c0a0a5c3710eeeb43816a4e0d0d5","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.0","_nodeVersion":"11.8.0","_npmVersion":"6.9.0-next.0","dist":{"integrity":"sha512-b8SymX/MVIDTa590di1CZVuUfg5dR4XwiUCm+ACYSvW+JLDUweKMOnNwYlxykTLZDVhJ7uz/b0tRI10ADKSpYg==","shasum":"16223aee7f4a489420392d01b79efe88f6a2d12e","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.0.tgz","fileCount":23,"unpackedSize":115015,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJchet2CRA9TVsSAnZWagAAO6UP/2OWMS4DrCNROpaPzk/D\n4qRg+tlLZUzkU1vGBkQ6SxPWX//CfSlf/jBhlB2uy61Ld1ReIG10PNzPuivW\nNhuXGhN56CwZsGz+TBo7ZmyaTPojyVsfZQHEf6C/3xCPnYj1B3LW0lwAuwmw\ncWNa7XCifE6QtskwevRedaAFcm2lIUQbtJFIUldjPjWJlEU+oOnQmtp9UJdx\n6t8DmZG0l7mJaEMxi9IZsz33SveJOGYHzZeZetqoBDHHo6Yhx2jLjHrAJJTC\n5EaDCPxVLa2Ms0BAeLq7cWEDf/pgnWe65zbO8+4hDRyeTy1fDST4BIalSK2Y\nnyxEPgq0w48KPz37fT9CSs4bdmIp7r+njQtjGKB+CnjyvAJIQ+GBMklF1epc\nv5+G6pENe067Pm32G8oZYSXty4oRMGEfnkt5JTyVIvA3d4CBsyZG4G+JrusM\nW2aevNXRq5nDSCefVyF7z8ZXlbDBATMHGCr7tT8MtEU1lXUbiye9SHCt+NTw\nlVizDenIiQuwbA4CIjxINEfjREAasMSIjRQt6pTFk8w/eWPeq6neYWOQoCNp\nuylKK/NE7wWr2WjJ1XcNRq70c/ttcFWsTQzblaRncEbOeyo74EbVj81Mwh/J\nmkWV4749X7aD25XIQ6Kr8C6YJW0i57YtkihNmTYzoAVrdx1f9AMhfh/aayUp\nd1n2\r\n=m3Y+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB/qIMtGnorBGVkGX1tN3CdcBNa/NqHyChYaMaBS0IbMAiBrdJ1Cab0Z1tTJ4kTO0Laolxbces8ksiQGUxILemhqWw=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.0_1552280437853_0.21730247810811476"},"_hasShrinkwrap":false},"13.0.0-rc.1":{"name":"tap","version":"13.0.0-rc.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","esm":"^3.2.14","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"^1.3.2","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.0.0","tap-yaml":"0.0.2","tcompare":"^2.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.2","typescript":"^3.3.3","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/"},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.4"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"70fd9b55d1dce2f42ba15d5f1a363610afb07f0b","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.1","_nodeVersion":"11.8.0","_npmVersion":"6.9.0-next.0","dist":{"integrity":"sha512-JbY9Q4D3LYqwM+jT9n0GznaCmS9K51SCEpl3HSzBfPq3H3bUTMzuFhs+xQYGb0La2+KRVlEFe1zMF2bF/vmKDg==","shasum":"81542b997d86c5b354ff66d125ab27939e00645a","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.1.tgz","fileCount":23,"unpackedSize":115948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJchfnlCRA9TVsSAnZWagAA64IP/1bIZ+cmRp3L3G3qwHPg\nWOMYzwCvSz2/it2cizp9PR0UuD9nNKHDOjZhHx8e2TNaTTB4zcSXzLLC8Jsp\n0bmgi6F58qD6bIVlB/bZTgt18EZiDA5uyXtYairJesv5f/84O2hh4cOYFKh8\nyCw+a1O0RXrO5gO/Srv6mEfbFa6eQMboVc7Q2J3gIdGNSrQCnPNEPTZ3qhze\nO5G/qHkAqxkDjPeId50MlumcaAyv5hVp0j9ze2bhzzBVGE+QARjmxluulTau\nmRzUJFkMTZWSfwYH2UlXeGZaaaYBbsxT4BlKaQroymprgtB3ItSPx5tB7sZk\nIBX9sGEpZMN6JAK/EPfkXEqtqQscT6jl9bnYyPn3gw8Wehqw9KgyeUFyTzm7\nzW1v6cOWJuHDbJNIFvKFspJ19veK7Dui4H8cE8knTVPxa3DJtNiKOsqchSX6\nwp+23HyVoNeQmUW1+edBpx2zOOZqOMggZ1vsLmHORVoZOwnuJ7Hr3VreiFXL\nLr7oGwnl2oChQWi9Aa8QO5Lt6uGpZhgT/B/NgjyKfNYRHLB+iiOVky13pGT2\nfP3qJz9etumRwqWJhbt4arOMhj+OL8irVv5prnWQU1HO/KupyMyOmW/A90NY\ncQxo4cXc4Hp5IVxn1D9cGYKBXe3d3oGSifPphpB1dPjtOqhSAfDuBck0Nfid\nbS9k\r\n=FX/Q\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCMB/FbR4QkZGHEeEr51M6JA1D66MleZWcD6MlAKeUw1AIgbAMX6bstP5tPudIR2Lp/AEaL9nl8RrNCVFPvz3rvRBQ="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.1_1552284132377_0.27096492293918595"},"_hasShrinkwrap":false},"13.0.0-rc.2":{"name":"tap","version":"13.0.0-rc.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","esm":"^3.2.14","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"github:isaacs/import-jsx","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.0.0","tap-yaml":"0.0.2","tcompare":"^2.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.2","typescript":"^3.3.3","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/"},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.4"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"e524c5e1e23baf390f517560e30a03cd15153693","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.2","_nodeVersion":"11.11.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-FrETl4Nvc6R+xg2jG5H6GMf/UBriurar1Fz0oOLgL+2IpT4r9RQ+twxBkeDaqMS1K9j5d21CzA8PjwWoxqMwNw==","shasum":"b382cb8bc8e5f6ed473d499a6e98baab06438525","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.2.tgz","fileCount":23,"unpackedSize":115945,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJciKTqCRA9TVsSAnZWagAAM3QQAI1gaIkYcw5yheYml07N\n2Yus0ImIxPs3uow8NX/H3SqwJ+2zD1Sx/fj8q+y1DvFuJwPgpL8N4mfTcbov\n6AWgfKwsvY6daMrH6Wqy5s1jWyJUvGHUMoqX1jWmAJMAhQQrInVfynddvI36\nFtovaBmewIWBK6xMWzQViTMPzamWvuBBCYVxXGamB9FiYjtEVPpxXIWHhPkc\nNwHeBoMG9pWYLceKnZhKa9QbWYfyHUe6UuCX9P0cquEWbKw/SE5Hb4yH8FoW\n9OV8LXw9Cdfd4zz3SpAu06DuFL51P1BwrcWqhXisR8tnt0FGM/6nMBCme7Ho\n9skD8WXSTwFEVispaE72B7zDAFLWRtr2JeQWL/4zGSQ8fMFDZqU/Wa4sljzO\nM7ROMvKbv2Ya3r5slHo+QUUnOzJZj88yhBjIwN/Y/0CguUIGEcZ6AtWwif97\n7WIwFoJ2lre0MkatIVtqXBRZLdQpbIVPYcXsEc2xPMkfAVnFRvHoLxErBrN3\nCOC4wlAllj3qo5XWn0PhU69X5Se+wfJt667510uh6ExtM1+oPV4HJgAvDAqX\nrD4Mo1t6qkxJO98kZq9wxnAE/2wSUZ27bUCoIGhEzJ/D/v18BMnm2zaG4qxy\nHtdD8SR0ucw9SkHQWgPd2hQGdaJ/FQXIDGsgeGaeaKvFFbzgoHLkpqAKdE7k\nKTLk\r\n=TDtc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCd1Y+/0nWSOfXczx5YdWJuhDqhIwIkOrITFlkOJwM1vgIhAIgQsq2bm4dLRsGMve58yYKsAGcL5NSS6Cvata1XZv0y"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.2_1552458985469_0.7811122788808267"},"_hasShrinkwrap":false},"13.0.0-rc.3":{"name":"tap","version":"13.0.0-rc.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.16","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"github:isaacs/import-jsx","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.0.0","tap-yaml":"0 || 1","tcompare":"^2.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.3.3333","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/"},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.4"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"5dafd179c7fbb5f315cb19068dc7da6840a9780d","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.3","_nodeVersion":"11.11.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-djRcdqmTab6RRu+1pfKas5EZTjNlqambJA9HiKNwv0cgpF/I/chVJ7kK8gREOEZSClRgCCcrUWoFSD4yhO8CNg==","shasum":"bc30917c3a428aa556fff72bed102c67595bacc6","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.3.tgz","fileCount":23,"unpackedSize":116074,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJciWqPCRA9TVsSAnZWagAAphgQAKGmoGLntgZDrdgTFKqQ\nLfpEhy8pbXOl/il16FJ0vpcg3SjKTbvKVnlpxdwLk0+t+gI80hxZedLd4UdG\nmOtaBvs8A4TWeAor3LsL/+q8LqtLEnaCy+5coShax5/S0GE0iroRqWZzDw+s\nF+eP561mpIIG2vQBGizJSmmd/1afec9J9x9dCZpFALK3OSH3iMb6sfIWDG29\nJzV8Gs2nXhuKFkT+9Kqr1puwPxtSnhpvmzcbnui+JMOPTZjNumbRN3E+UVI2\nYvdPkEvXeeVCfER5ReNzPMauREiKx/8NBUxP/UdAI/lS87n85UtJg09UEe7Y\nha0jPW9vl075eRygC2XCGdIlcX75yfXOC+ym5zCyQzX7a6xdd02SGg3ch5Rd\nRuPmolerQHFau+PiCctfUZXXGBhoksL3q6A9vXzWxRMqfrUmu0c3imyLObH3\nFfaQV4pXvHVMsiTBV7xgQSML1WuJaba26Ef7oyJWSPALZKpWzQFlhBuXKJEH\nfIaCvUi5fzN6lTFtHJE/Ztdne92b4FxM0d8edfDyiX9PWnHmI78nEW41crNe\n1BOGJXxYUZKNrkzgU6WAFAp5K9fJYyn+4xFkigLtvhZU2B0DGtm5JPTUdWZW\nqzHsl6/Rb+661edqeVtuT33wx5CUwKo3TmaR7BGLOMrmcF3Y5tOkEq18hqK5\n4sTA\r\n=n1Mo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCmtv27ILWhEn50BwUmHqU7Kjp1IZlzayLOKd1FOxAfLQIgVEON1CrBu/Tg2za4qM26KLTkb1Yn8zHvlRJhUc5N+RA="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.3_1552509582607_0.056666538475068196"},"_hasShrinkwrap":false},"13.0.0-rc.4":{"name":"tap","version":"13.0.0-rc.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.16","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"github:isaacs/import-jsx","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.0","tap-yaml":"0 || 1","tcompare":"^2.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.3.3333","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/"},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.4"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"cf3712f0525a0215c5ba5b78f8508cf9b654dcb8","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.4","_nodeVersion":"11.11.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-szrutYtnf0mPlqW3oYM+Ge/k+QPfsLVbOns3ledUWeotXl41bfTUmWo6nX8J1FpgYDYu2ip/VGqebd4My1R48w==","shasum":"21a1d2621730f712693476b1e3f0f420e2cb1b34","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.4.tgz","fileCount":23,"unpackedSize":118811,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcjUiCCRA9TVsSAnZWagAAgIAQAJ41s36N6rAZRU4nXWRB\nwgbAgW7NVEbBgu7QdSYZBuPRcXQyUxrzVe4HqG1xiQStNp9vhzl1pUV3e8a6\nL0et819cbQKbcpM871U5HFqtxp28sJKWBQFQ6jjeUaO6/MDjW7/N98QATBpf\n++K9fsrv83Fr5d3gECafx6YQLnOP6v0fobBV/aAhcwbApqlVf/+mD0GyNb9U\nt40waUDlSJbgVzf7zNztnsCkOY7Om1EWh58+hlXPHUa0kYTupgB9UCSn6mkI\np11nJ7mGiFvuVUCgWzc/uzEVQC0E9lQsEHMK4Ym+BGWB25wg2XbluPV92+zX\noqKaER72b+C0w0hzBHcfkf3mAO/iyMPZcbzOHAY/BTyPVTN++S+HFz5Bl3JH\n9V6WzykQxP6XYSjIxn/K+Kvpc0cLRJeByuKWH1PMgtzNg95Vnnm83WuPI59V\n2smYxM55Z+/N1tm7pHdQd9pCACIDCUfGv0ZGZ/uR7cmZ+SAjSNv+YDtk17dt\n/QBt3XWmJ3Z1ppekBPgJ0/nTTNu5AUINFTzJSPLGw/yoWBb//Z8tN1yc329y\nhA9xHtOauIDXKxiEU2LLCfXFTaxlb5aQ/I1QMiIsAiy/2NZiVeBpUwbaOHTJ\nb1+tH8uViecpj8vEAY2L73ZLRI+JdCHzGIZT0pxIk+raPgRkoK37X96PAB2u\nErtK\r\n=rf81\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCT/GGeBbCZ5FTp83rtvaNUCCoMjzX7usZxF/utdm1iaQIhAMcTcuOM0/JfxlOHnmV8sm8o6oMb+lxo++YBCEYemNkE"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.4_1552763009938_0.8760805801813654"},"_hasShrinkwrap":false},"13.0.0-rc.5":{"name":"tap","version":"13.0.0-rc.5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.16","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"github:isaacs/import-jsx","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.0","tap-yaml":"0 || 1","tcompare":"^2.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.3.3333","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/"},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.4"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"8f449ae64874344043deffb0f441b409fc51af48","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.5","_nodeVersion":"11.11.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-C9aJ2ClCVgJneiq/rQLPcQaxVxZkG/cqAAx93G7tktWT4lzOO+QZzpK9Z2EtU9a+OPwj2SNYy9d47UZq+fxe7A==","shasum":"a137df15baa19ba6e1a0b62f1429bf17c45e3843","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.5.tgz","fileCount":23,"unpackedSize":118828,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcjVXICRA9TVsSAnZWagAA7f8P/0Qfo2STVNRsM+Jr6iXk\nQ6XZlIl+/twE/b4p4AI1Yk4Jtwiqoq3fjIStVAFqb3zTpbtFmhA/atWbVKJ6\nETdMIsz3ey50Cpsgdj9AhzMOUvF6Gt+8RmE2fuFRMXeScdUU4/U32Oe5HGqO\n5So0+PrHquxXDwso3r0eG+D9aS0dFPGY/fAIK6u17JH+cH5kZndmLngNEaVc\n8LNTq/EqePPa56wlyebLKRMP2qCLDr+dnILVF9q+oFwH9q7pmdldobe1agoi\nANH6DH6oqd4OAymkbWmt5KOTWQxzb9XMonf/n2lU1gWNI5tkZ6cLUXuRFUya\np+F/+QOsKSI6pxuquqpA8Ab9qIodw1PKFUhWV4aTnjPUINlRffPmA3bsloUR\nIDLb4rbRCFJiwDPLo/2khxDmUJS7Xhly+TqJEr5PyDFSpZ9gIlUs3qJTCkUK\no8Pzip5cfGfbD/c+Brf7NwgiF9rMJzJ3ZVFOeq3fQ0y4EOtYDmY+qwEpOFo/\nZg/FDGVhbQde9vnAuc189x3w6Qa6Be5/zAEm5F6DtQ2utrk0/6cJLe+5snqc\n7HAvmCyb91tppuuj8aNfeh+JVcJuQBVhM9T2azTbCrq289AbPiiyn4+Y5aXv\neBKIevS3OzY1SMhNdb4FkiwDyhMBzX1tixuteIDyOGz87rabOC2PD/MSe9hE\nZMN6\r\n=X2+U\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID4ybu1/2iPja9dlC+LehWuWcC7lZMdtOJ1IM7iAy+xGAiBayMIAfqpH+M2ji+8F+Kk1VpaMli2O1266znQcXMMtNw=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.5_1552766407889_0.2777374238619206"},"_hasShrinkwrap":false},"13.0.0-rc.6":{"name":"tap","version":"13.0.0-rc.6","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.16","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"github:isaacs/import-jsx","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.0","tap-yaml":"0 || 1","tcompare":"^2.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.3.3333","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/"},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.4"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"b74ed5a7e40cced55105c43f866730432173f1af","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.6","_nodeVersion":"11.11.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-Q1cUy+1EtSN3GeiirDFLbUO3qDLjgUEg9hm7qlRhzdoDFRu1/luKg9R3QRo5EMLzEewkOt2GFhy/vp0h42JWsQ==","shasum":"7d32292a57392b31a1edaee5b1bd6bbb97ccc813","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.6.tgz","fileCount":23,"unpackedSize":118855,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcjs/nCRA9TVsSAnZWagAA/hoQAJ685BuhnVu2A/NbuT/Z\nxstnfKih4O48doFWw24UKdGY0+t+EBteShlb/xaGcCSkIQ2zMPJWbiw9jL4i\n/HrGaAELP7Vf51KA5GI6i8yMqocDAB52cY0vk5wK+NYZgHSd+aePRf12F5Gr\nKz4l60zi5ht8dhXQKk/K0/N7tkcLsCx/5HmYRSekeh+c3zpa3uoqUfB8y7lY\nVab6MqpSxfnG05bkcCQepWL6Y1DflBvyUwiPNeDEmZYKCxEZA5BC8HTizsjO\nttzgW9DbbdX6lK+E6afCLWbm+LhFSZQjd/FIyywRm09UIQU8viH/lVJtjZNr\nLg9Cgwh88itkyVuJKH9EF3YsJiBzOY8AwK2641zTL21oFoOXLnjuezi5NgSi\nxsWV3Kx2USNPtzh9dwwevnR5rgZiufG7oZ8P7CuljKXh4LOmDdzgbdP7IVfI\nEn/M3tf8pMHyamjecL3ng5Si75lYntXxd4WLdHddxSV2VVDm300zTfFE0ub8\nhfHFKTSlphQA4mCzRPV/NyzYQclFCSMer6B2zTsRcMd7cEV4g10rIAcZ8ePJ\n+oWyEVVoX+fiTB/lBgfiWv9BilNYfkn9JiVCEd6O+0VuV2JZ/oRYWVg1FRBh\n7+99Sr81xnIWbCen3ngLeat/EZH9X9EgHd50RLU4PeYJ+yiuxIMftaXXq47L\nsr3O\r\n=CWGl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFgF0EZdrBW10MIukAJ6n+uB8DbxHjM+edSvwp1DQKsfAiEArJJO0azop6iYUiL7V5iEcXvxVs92+FwT37aC3x4d0T0="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.6_1552863206615_0.11125909279228696"},"_hasShrinkwrap":false},"13.0.0-rc.7":{"name":"tap","version":"13.0.0-rc.7","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.16","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"github:isaacs/import-jsx","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.1","tap-yaml":"0 || 1","tcompare":"^2.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.3.3333","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/"},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.4"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"2368ee55e2e5b07c75da93e082c9576be9f60cab","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.7","_nodeVersion":"11.11.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-JcpoTodO9E1N2Fuw0jXBXc1X90FKwFGVL0pSif064eTbx8EUq2n6sK0dQVdoNpnTvSmwQYqNXma0lmMeLPMevQ==","shasum":"05362b201334aa13554ff6ac0681f676fbdf6cd5","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.7.tgz","fileCount":23,"unpackedSize":118893,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcjtNvCRA9TVsSAnZWagAAZBoP/0eTO1e9jGLHSpACHtdp\noqIIHZy7D1FFRKP5V15rBGHJDpcnVMXgL+oKQlPmTlCT/dCovp6JNJumxbng\nXcKGzv9Lt3i0min5QIZpIT9MhfA1bMZWVdIT9HYC6zUmSxaBMIUq+1+JjVa/\nyfBjUkaoK7GQLO05GM9cHw3IS6u0ARiXU3EwvWg9snPqFCD66tQCQnrg0KzS\n2zs8eZGnobCRhZx5xJhMtAjPM0T3whnUsZ5cGRPpOh2DDCPHYsr9LSTBXM3+\nSJ7LE0jhNyiyc2bDdzQJ2SsyIU09eyxrxbNmLuuW6CGfQNGER01SYdJtvs18\nIp67qErywboxC0eVzvaa/8aAyr0OiFWGaOnU3t2nPK2eSgHiO+S7bsVg1RGV\nMXWYM94rJiHVvDim6NVenaOX6WL/BjN3IHGLRGHV0DGKQn/LklqZwW2m/sHs\n88fjb+Rj/Lt845+JoxBY+QJ2TAcft3FWN+qa7rTrH8XRTHKHmg+XMCk4qVDP\noXTwCVmPfmZJa9k4fkhv99ttkOEYyWd19lfVtvAza5J6g1ITzw3Ate7KLEKm\nyIbQB0VcjqDZoodQmga1kTPLbXh9ut/cTlxwATeV66rpYbNqM5nQZZIilILW\nRtoSJtRXtP3oQDTVidRe1GYMXix0slDg6Tn9r74SLL4RZC8aM2kP5U6CVPt1\na2tz\r\n=AXU7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDRowIFKgkMxoRASiRgt399FGyuSqUH+Y1Y9WOgTilyIQIgGVPohaP9yUEQ39UBadO6M199VS2nqvw+T0kz84SW1LM="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.7_1552864110639_0.6022303112178524"},"_hasShrinkwrap":false},"13.0.0-rc.8":{"name":"tap","version":"13.0.0-rc.8","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.16","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"github:isaacs/import-jsx","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.1","tap-yaml":"0 || 1","tcompare":"^2.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.3.3333","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/"},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.4"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"433b52616c8514b76ddcb85e647a177e4ffff747","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.8","_nodeVersion":"11.11.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-MrD69s/kMAzAz4XJ6vkYpEu5o2C7e1vb9GSJr/5n8tn6zKIN/mtuTOAfsYpGZK0vHCN17Pg9Q07X+J3gIJ/V/g==","shasum":"26b6cde518d674ae291cc80129c48c5c84673158","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.8.tgz","fileCount":23,"unpackedSize":119213,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcju1XCRA9TVsSAnZWagAA5rEP/0OmciTpV9ES2gUJXPF4\nL8f9XwWFoVETUBi0yyUkIkXgLnHSQOdRLOZa773WVkRzWpJHBAjypqUgORus\nQCNhi03DCbHi2JSnqXDrGj62pJ6iCj5blu/HcMeBuFHdYEVmV+FVaK2ruyOg\nKZnuAwipthoyV4mkkSyZN6JiIXOTbJBbnfGbg2XqP2opaodolVdcJiU8dube\nDh5iBE3OIDbBhCO90UdSYNb0VTJRzguukj5SEitqI4dKQaW5ipLPM2sFIABc\nfygiuWn+2bPapMlb9Ivj7ZGOMyd9QLJ9hj7fv+rvVXllyGX9UsALo+mFFTxb\nHU6DsYV9QJOwHA6E4Z7uddxcR1UiQITpa4t+AsMbTK4XmhlMIqv6c9LCCIPH\n4BJe6IClOWI0wyt3ehWymK6jNsicGSrORXgpKO9K1V6a+Fu/ycIAH1QhWbjx\nvgdtOW1w7qBuWshPeqFGvPeI0E5Y7rDB7GcpkEAwI04UMqtNeLTapG+KofFW\nLk7TIf4asxGvSIuagqGQE+FushsX38isfFOtOo+fAiXKcLcRuZrlPS3ue41W\nv5aWGAfvv0FVPPTe/BmzrKyWUHJvroKr1a8yBoO3OUvw1u9/WB2oAZ0IfR4+\nCTg/c/Dw1OZ43WFvzGxogOrdf3XSRWTT2KGnP1IevBKybtaYAJNMVIEH7+xP\n/cBf\r\n=7zMn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHjk9sBX5z0n8F76DfykYRIrp1tR2hBbj44W49eHHz7CAiEA/Jg9dudlqRvPR8vf1lwoJzFufSIxfVBTg3+uSJmyrsw="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.8_1552870742751_0.3627278327875567"},"_hasShrinkwrap":false},"13.0.0-rc.9":{"name":"tap","version":"13.0.0-rc.9","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.16","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"github:isaacs/import-jsx","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.1","tap-yaml":"0 || 1","tcompare":"^2.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.3.3333","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.4"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"b4742c9f8c19930572f2d09543c0d10e14bb5273","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.9","_nodeVersion":"11.11.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-zWONZbBEvz3kt8i0uilpU1WgtBSbVobBg+Ue5cOznTAqeZPl/8RCMXITUjKPBsjcHHjIbsApk9D34UTK0roZcQ==","shasum":"3c35391e9eb97bc8ef9388a79210248daa47efe1","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.9.tgz","fileCount":23,"unpackedSize":119190,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcjxCgCRA9TVsSAnZWagAA9ycQAIqy+WS8QmmbslPVWFog\npqPkF1Be7H/VGO9DlTEWqbTHkmcJLwP9J0IxP94QqXhHUKzVRIq8umLn+STU\n2RyRPje6w79Pd95AypRcX5Z/hEf46NZ2gGWZuvmgxzHz5N+bkSqm5wzGgNbt\nxMWq2EMgJFA/cLPzFgnVbgv15AH83qW+yBipJXTeC5eci/Eur/RAEhKORDoD\nIIxTGWTkiSaojvBlRagIh0DwUmAAUPuQJl8pcbyNQdkVF5efGfvEc4vBf9/F\n9OJGW4aPinp8HRwv/xwIT6Tkx0TT0VXdOawbRqtjA893S+X6K9gLbMFBEAnv\no+FAqmyjZLWXg3Tdt62xmDjduCQFwm0ICpVfDHHurOFE80MgM8Dgj1PHykQt\noz7giH6Ejy68jVJ9vQ1q9y4X3ty28lZwLaBOuTTPDslnYPslTa2nKCk6HDuc\nmLv6dvvvMwe3UyaW5pPR32kzszSnxSteNMoIbPvboUkeAAd3VxF6M7RyQ+5M\n4+pgH/4jApx0cJh/kcV6EHpREza/wzfeFt/81dFIJAenfVQKwvCJtYZp3rGs\nDTPM8GThdWRkT7GN/6SpY5Q1qsmTdEDqIYM2LQJJ5EesqCARcxko5pTwS4I7\nDDPw/krVBx7wKqOHOlc0wTnLm879oJOQydZ0H53gRt4k0bbwu9eXXfwK3THC\n2Is6\r\n=AJDZ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD4KqfDtFdT56JwMjCkRWehG1Qr8PvNqCrba4TzZ8Mu2QIgF7T0FqsbVTLM5bJ2KLHL1IsqZ7CuGDbWMAls5/ZIH4g="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.9_1552879775469_0.21273569895619815"},"_hasShrinkwrap":false},"13.0.0-rc.10":{"name":"tap","version":"13.0.0-rc.10","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.16","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"github:isaacs/import-jsx","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.1","tap-yaml":"0 || 1","tcompare":"^2.0.0","treport":"0.0.1","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.3.3333","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.4"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"47d1bb8dd23c948ae80cb6563c8b5489c2959753","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.10","_nodeVersion":"11.11.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-j2q6LDMincSYOnHX9xzD5H7qYyzox2Gd2NXEPSNIPsjCsS0lWrRee4x28lRfIh28sJBFyYR6yek/lO5I36nctQ==","shasum":"217c36b531e8eb685b8bc176a6df3db30f2f9b5b","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.10.tgz","fileCount":23,"unpackedSize":119817,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcjzSMCRA9TVsSAnZWagAAgZEP/2bietuoz43Sk1lROiNG\nB978TZuz6zkaqm3QbSbKh/dhDFQNRrGDnWUXBBbBfpGupDMzfHA+NdYoDh5t\neep4FRRHjq52GuOZJIdDUNPZJTFF2AWQl5rn2fSIn9zw8f7mlY/Ve1tVaK3y\nJmwQ2O8TbrKerZjIbainSm9lqIJx/ybhHlaUdC5I30urgCSKe839h0eHDPD2\nwsrduHRFzlenwQREuSrTT4WpBAs6bSpZ7bQxV3f7sLJE561CRDDsXXTaxoeq\nWnImr9aX1kZurPTMPKQP4vIdDyJd+G/hFnn0RTVfjkUHRduEswQtsJryc/BS\n3HEkKUfL9PhmW2JFtKkmp3J/vIbkFatYu7RhvshDB/vkopOVRy6X1bGLE33A\ncU2bhsGR+4UqjGBn1OQwEqamh0yfSMYnz30jmurDd0lusteZtgWASJy+xgwb\n3NW6WcoLAocuTRjYiYzcXrtcMQnnzBV7LrATsNeDAarmKZMln4rwwjcFjP5f\nrEmYwlu+++LiRu1VwqEDB03u7aMdOo/IZ++/1MkTkTNVQSu7xc9JVyePt2R2\nNIViF4YWwJ/Nk3T2Ogo83YMV32l1gS4Ue2QuL0ieHQh9+xI+Kdruu7fJyYit\nnzTcQ20rWIzTkwlisxGVJo7bBLKx6OvZ7M3i6a0XAlPJA/ncRx3GqcD1iS3k\nWiah\r\n=WqFy\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCacUxvFLnFUAUGABKpn4713r/iKDRlbwds6DxjH5BmoQIhANbgciOSMYUNy/fkVrAAbcu8xlezRXJa3iVmKvYY8Whg"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.10_1552888971686_0.10925838316155456"},"_hasShrinkwrap":false},"13.0.0-rc.11":{"name":"tap","version":"13.0.0-rc.11","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.16","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.1","tap-yaml":"0 || 1","tcompare":"^2.1.0","treport":"0.0.3","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.3.3333","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.4"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"c23859a060027bd75a8234a8505f7903e9cae53a","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.11","_nodeVersion":"11.11.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-Nc/U6AYGsI7JjrU+vDXOd5w7BK+PV8x+6Q4NLqv9F6iPPAZlRt5tWwW9vKyj/QXcZuZqlVHDnzf+bGtu7w/N7g==","shasum":"26ad73a8e31e84d6141946c6014160f6518f8b30","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.11.tgz","fileCount":23,"unpackedSize":120010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJckcyPCRA9TVsSAnZWagAA7WkP/0j6fp25qgTT3EodWGi2\nbAbXyFPc7xcOxyGdbuckydAMsv2EqUkoeMWwuRRCzx4IMurjxgx/5je52Q7i\nd934LI8iuiuxWq+oWBpyk+PrhJuAB+C+F5F2pH0MSKHVEK5tMuR4P2Auajml\nNsCjgXtRLNwSxopX0fKezGUfDgkVgvRlA2eUkW59dn8XOkAy3fu6a39QSJQG\n3LC3U/a+nSTf4f0f2at1+oX9YpeAmUextxCd6qyn8V228Q95Aa/2ctDQG0bE\nQp7bT5obX+sJ3LWBKgcmxWbwTDxVGHvJCu0f4CWazTuwnF6OVOky7KdIAiRd\n5IAzx2F/PKNBvB8cScNF9QmM6f4PUUrElvJNctxrEP+CCNpLrSfJHhjxx+LA\nIyF8TgbQ7BiExI9n2J3zAlGoM7FZfM/H4Twm6auoIVuEqSV5SpJ3phs7XKW0\n/90ivQK2Lo3MnUhycAKFQR1f7otZid6kEjesA3JX9hyWpFdS6eN0NEJyo6Jr\nIp9EVY7W2CM0FU0p3Abpnlj+n3cWms/ns1m1319oubuD5x1u7aKUBRrAnLZA\nmmvHmqCvYw7CtCY+BIvy3F65XW6RQoz9r6YVpOLobCJH82ync4bu1ds5XXQB\ndP+Hb2E0lhw0zZd7PrsJvI4QJ3LqPXdC0wpkaBATRqibodyxeEZqpegW3nTC\n7XD4\r\n=Ke+C\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF0FzfPCsHS8E9kpjXnp7PJ527ViXEqzf8TBIgSzQFURAiAacifwzR0UwPNlqLGIBj+tzMUT4l7Qft4zw+9wLrcFCw=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.11_1553058958741_0.34828960533554953"},"_hasShrinkwrap":false},"13.0.0-rc.12":{"name":"tap","version":"13.0.0-rc.12","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.16","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.1","tap-yaml":"0 || 1","tcompare":"^2.1.0","treport":"0.0.3","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.3.3333","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.4"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"f3131f5bb068d36fe73944f2e5057eb2e638e949","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.12","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-BzKFry02vkUA4AhkCEffe1PAW2FBEmDPJI50SxuP2v0Rn+WGIb4/l2dEhCcWGRArWTKAnjF9BN+1siKfoCnsNQ==","shasum":"f1e9fdd3e7343ad795a058ddd8b902e6777d7b2e","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.12.tgz","fileCount":23,"unpackedSize":120380,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJckywsCRA9TVsSAnZWagAA/OIQAI9ad2xWbHRqL/qdZG8J\nYWIrM5JrwRrWsfYCAXscLnWOWWBeHWMYLWKtJR69CrJO781L1sdWvPgGDuUi\nSFKddkysPmgRT8REE9kNYlBOQw+rIRx6movdQrlYdP1B1YvdYWfOWn6ovqDp\nkr5fwaZ9FAZ92zevPQXeL5Vw3kntRK0IK2Dkh6LcWny5bbwBmhmCGKiFC4Gm\nydQwYuj9sjgM9aO37N2gY+9ahdS/LnXHc6AKHXGtjAWwvudOfEshVApD71b6\n/2EZf1CY6YvirgW3xpjczPIrLxap0oveQ9KbTMUiW3yMnvZXU+m31pQTscG9\n29pzT57OAmk2hWbTwDsxKiee+ASu6qkKk69QSHJWtbSg3ppqjBm4ZdoZ8hnP\nMv4aEjM9KtdGbDC+zpWlsRdN3nlqztezh384UdxQ0oE6MWbsCscsHBBlHSc0\n1VNgm1q7xsxOQ6+4qcZq+bMPUqG6JuY4Dn5gzzxtIF6o8YdK1h7om6bbKWPO\nGU1aQAWkHBu4Ax9SC2dhVarYpgEQ03Q6X9U8Ns5IAOaZ/m10QwUZvWpQqkFX\nNNgVXvTmrAAlXgiIcsaD2ONz1N9NClOxlnL94CqANwDfxHNhvzdnZA69EBew\nN21O9O5TMQf7vuk3FMTSyqmvU735hRCRGTEXGUAZF4UgNxW81cP5JCnudLou\ngHPR\r\n=1JUj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD/efQKIF6GB0nZshJZ7JtQDu8g5XFmJ6f2YVUo6Fq2QwIgNFEudJWH78U7B3GxHga5dg/PniL2GEQteNltpkypgb4="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.12_1553148971686_0.368603021435824"},"_hasShrinkwrap":false},"13.0.0-rc.13":{"name":"tap","version":"13.0.0-rc.13","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.20","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.1","tap-yaml":"0 || 1","tcompare":"^2.1.0","treport":"0.0.3","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.3.4000","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.5"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"4296b16285e4db363605f22af351d419213b89ef","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.13","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-K/szBXXaWsnTYeo/ISNEWdFHf3iKhaHBe8o/g9fOZmW+Dhr8av3+bc80S/GOuZOiih35euT8tzFtar0sGbHCLA==","shasum":"9769608ced5b681df62588caeeea437fe9a4027f","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.13.tgz","fileCount":23,"unpackedSize":120303,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJclTp/CRA9TVsSAnZWagAArtwP/1ZNMvdaa7jfKeU0JUwW\nEsZXN05J8sQuh0Ac1hLJ/UeoGm+P4RLpgIfadfiKwb6f/I5RqJj/T8YyRqWj\n75/ePALvUQ0R0iDKCLO4s/2pZmfSqFRgjw/NEp4I3BT8AA84tAXvyggk8fPv\n2x+a3LPM3dfKHKdUf1Dp72RjDSpZ7Ucfs0fz/Ei8FCKNtdBunnFo5mmag0AP\n1a16AylabJbGMjZxuUASocB0NrrwLQuDu76/fDdIxHmJPPZU2ogA3vY7yzme\nPnVW+dtXCCqLXm/r1ydxh+4QwrHhff9RxC7Vyi4p4vxGmhvZpmEhDtH5Sgks\nhRVpM7Gnfjh/VZR778msEkwN10N4FOlw+gGBG2n/gOnwF3zOc/kWKS6dbA6J\nMbxn952wim7O0KdA7wgTLcgYledD2G//+66HKMn1j/jV0/bnMCXnvqdHrPJ7\nLRbes4peWzl3A0a3Y4HyodOV2Xf9cZeEmkCAHU5/ISwvucD560UY/l//K336\nrp2XPzhTRTm8z0XmPEubR/QB7P/6ktCBv6OFx3WonsQRGUSBq6PokoivPR/y\nuhHlnmwqmwBLivQUuYWnxVANz4kWE1sx0D25QMIDE08iTLELteO6l83UoLF9\n0EZxlsoBZZFoeUK1q5qAkjP5BOCK+LQlgdOwqmddVU91eDe19j7ancUMEkQb\nMMEk\r\n=qxHC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCD95fXkm592HmbfqnycDoU0oiWHI5cjm3u8vcQky1WsAIhAMgHwG4AN18DQfbCi06ueSP1COiM5AIgH9lxSqaTHMTb"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.13_1553283710568_0.9286558812178225"},"_hasShrinkwrap":false},"12.6.1":{"name":"tap","version":"12.6.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","esm":"^3.2.5","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.13.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^3.0.9","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.2","tsame":"^2.0.1","typescript":"^3.3.3","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js --no-esm test/*.js -J","test":"node bin/run.js --no-esm test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^4.0.1","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","watchify":"^3.11.1","which":"^1.3.1"},"gitHead":"1871736bfaf39dd7b1be8de4b9359e2eeaa1e4ef","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.6.1","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-av4rQscF4IspCJ16BM+/G6LKcKwkB6HBtixf0x0PTZQCW3KlicBy9F4SwkazbMSGMrecVWvFQFeabiy5YPhAhw==","shasum":"1e86839f2fb92612f6f2bdc5838e37f9327dd763","tarball":"https://registry.npmjs.org/tap/-/tap-12.6.1.tgz","fileCount":23,"unpackedSize":114615,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJclUTFCRA9TVsSAnZWagAAQCEP/i+4IITSOn7LniXEvpXT\nMTWlDCRNuyo2NYqWUo8UBoPbjfCRQjbJNpdyZXonaEogGcHIwxL2OJTONUCq\ne9Ga6mU1aZVKYJe3O4WKqSrMNHrbPHt7/s5fHfhqMRAmbUHR4oHKqCdgXs3s\ndcUGIjiZNeyTobMA5VxUCsOC/GvaXCmPGCmjIFfW0Fti+AqJRyz1KxE2SmaV\nrLSdX/o79HTjI0do1ozHODYMtBWO7v1vE48b6sg2/GhdTmO0A8SLT9jZnY3O\nhhTfZoAZ6BT1HJeaG2Wtw3RKhsAPV/5WAt0z28swVajWZR91WCR1e70Oo8hC\nyYNPfvbubGKDsLM8wGz3w0Ahlyi4BsYXwetZVPObPB2NMynpQv+gwaYXWW9W\npTPN9roKfWaFX3DBUpqimMN8Pq5EZ72DPssIiaCiTlbccuA8p76oRAmGXpDF\nM3SfIlZrBe4xaehNprdVurVMZrWB3r4EYFM3sJn/PuKhbHDW9W4M1KoqRA4A\nCFN2QajV8pjgJ7Zo8X87wQSJJ+XSOIVhLSgt4DYuMqzaWz1R50qUk27jopk1\nbUyM13GfJZ3nIL5ys5jI9SCsBbXbQ7jbbAvFmGkrW2BvPq9p7NfFLMjdyYtV\n9DaukFc7GsLNCW9iljtzg2PMLUXpZOLGW7DQuJjyn97gK6HYyE3ZT8PsfAeZ\n0uS0\r\n=Vudj\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC0l5ebFJV4jbaSS1aBHWvoqvKmFNDBGZZbelcizXQn+AIgSjoHcD6WI5+PDvA+O5QZhK1iseoCxcHRkx36JuFch7k="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.6.1_1553286341063_0.08639386462179788"},"_hasShrinkwrap":false},"13.0.0-rc.14":{"name":"tap","version":"13.0.0-rc.14","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.20","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.1","tap-yaml":"0 || 1","tcompare":"^2.1.0","treport":"0.0.3","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.3.4000","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.5"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"6148b9cbef3e5b6e61ae1a2566790cde03fc1932","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.14","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-cFS4EXgDHkhn99ARI9Igfkm6UvuFQu9YY9+HnTrsZm/O52fhIy17Vi01sOfVOmHu/z5dOL6ZWCDwpJSqtrbJbg==","shasum":"c1793b5cec691f239106258039c4e3419da3a349","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.14.tgz","fileCount":23,"unpackedSize":120303,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJclUxgCRA9TVsSAnZWagAAGygP/02BxKyt9QgXf8KBdJc1\nFU3y4GW3uoDVYpEODUn63vP3a2g5mubQEg69pI5Z0aSrcIs1DX97wdGsfJBm\nfUwlXKGmy33YBvFfJh2dCBiKmCl0NE1LYJaZoMQGOqFFQ0FxK496RFW6UlCS\ni/o3OaCpURb+bSa8tNSYmmsF96FHVG+WBk+CHpQNvqonJywGO0C1Thwe1UFD\nj/WpYGF2C/3qGZG/VQZC/mj3r2nXgR0Fwzozm0G8L9bPTzzQp7SqfDX47UqO\ndomuSar3bxCAsrrQvtc5jkgB2ZEZWoILZIlpr76lXV8KMtNUow/nhaml01Ag\nCFFapTtLHIJlDMsva0LH40Q8Q1OcGRWqbh52XY9p6pcSt6kCyTMUaz4hGmhs\njQ3Z/tmgdYfQDlgjNA4axdGS3jayDY12QcML8dXKq4kHY9H+fSTyqQibq0TM\nwm5XDl8/f/uxw+PkFBcijOMzusE37AxB2W74tsGLeopFKn0dcKlA+rLm0v0U\nmOkfjGWyM0IO880HmFYwXGNxmAu5RO+szjUSCso7j2QMdG9oigdCC10eNmKJ\nn+wFgA6pAqmNeXG8Hh6RekjCAQmnLMgRTcCsVT2gjDZk+LBgAiIRYrLy7UQO\nm2ot4U8YxJ9zJGeBXNWfhxWtMxsyI2YtRY+jDg++3uNVTwQAdX8TUWGxcmlf\naeTk\r\n=pjy0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCMCykJULTgyZMZmewBJFTwGEt5X+Dw72VZIywlbrjL1QIgTJ9yULxWqYRB0AKR0CDFP0WJ6gS6/xgPwRE37Q8jJAc="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.14_1553288288026_0.268920746568895"},"_hasShrinkwrap":false},"13.0.0-rc.15":{"name":"tap","version":"13.0.0-rc.15","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.20","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.1","tap-yaml":"0 || 1","tcompare":"^2.1.0","treport":"0.0.3","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.3.4000","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.5"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"8fa44daded577ae94a732690041d172cbf6fd479","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.15","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-WZUoslQMS4WmLwc3zVVDBIkAZlPc1Ku3amW0s6/xtWxXh5iKSe8dnhU6ogJV/lqbMjLyq9yTHPGSf/qYXNP+0A==","shasum":"f5296f0f18aad23f598eac9aa9192dad965b8f7a","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.15.tgz","fileCount":23,"unpackedSize":121064,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcmIWhCRA9TVsSAnZWagAA5dgP/2Z5t8ajwJXrRen0FFMb\n15vftyA4sBrfqGYolTE9blm5cl+GC2o+paaAnGg86+RIxtEIRuslu8EGlr1D\nJjJ1sC6NUJ4v6SId3OFid5acUUrLxFAnIUbbDmY6FxGjfV/q3ci4ZL/HcNxu\nczH65o/dFYxPWTTIIWw0/CKkZX8X0yB0+Pcu3e4HQzxwl4iRon3Z1y/Zu4HE\nAB+Ua9XYjax4YLkgUdOCJGNqBBHgVgn8epxHv/YU4Yfay4oRmvpYqfOhsgR+\n2I8zWgw1ISEqTrWz5Ym3IIjDTc/mnt3mFGtCUGeF1XxeM9cSnVk7RNzMC/dD\nBxEX10vRd/yW/H1Mdzh7ilQrRoxEfw3mbp7MwwWzdIUxA4LcVXsF9lYR1+0+\nJ5yZ1Y1qt4R1PtkDPo2HdGn6m6Psxb00XYv39x7C9A7f44JJ2UdlJZ9I8B0a\nFgWMoI0PXgg+jW/ImEBk8EDykHdhrkUaxSNyCEQBCX6QBU8REdFvQy8IhmPQ\nof/crMh2N/rBH3k4CoA1Y1ix+jguh1rKWxsorfMtL6CIprn0O+U8kSRav5A2\nQhrm+9wSTRbNtq2/loLIOPlt2AbOq3WCa8LTFy60b3k1AY4lw7BMo2h4TCNV\n+FaKfJ3CYfWfmSTxnZsm8DT5eFS7O394zoOforlr/uH9yyd/gfR+TIyHzGSc\n1yRg\r\n=4eoP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC+NXwxpXKXEAX/cn+iLa3wS5PotbSw8HPn4RpyB63cYgIhAPNaaGb84LdE/4e3GQHhZpqLcLUHVu5Zto1HcZ1jYr8J"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.15_1553499553163_0.042786597182748354"},"_hasShrinkwrap":false},"13.0.0-rc.16":{"name":"tap","version":"13.0.0-rc.16","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.20","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.1","tap-yaml":"0 || 1","tcompare":"^2.1.0","treport":"0.0.3","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.3.4000","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.5"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"88e27d13e301c6b7c1fe42c4fe9cd3d228947942","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.16","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-qRwTELuUXUQr2fPz1qRXsTn0RzIc6Zday09crhWLGcsoa1kDKO1B0C0vTbp7ibNfVUOjTyPWggbRJpO1B/Y2MQ==","shasum":"f7006b373da3798183606f5c637672d4d6a3a780","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.16.tgz","fileCount":23,"unpackedSize":121526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcmQczCRA9TVsSAnZWagAA6UYP/2tutcvm+NQmHC7vLWpE\nRfBUTOVqENzJbr0UBnEzjTFR7iO/oobaprkXbBbwftst0PCSOPSSk9AviTHP\nG3PoiJznbB5v95cn2JgjflljOhIr9Z+PFqgxPVJm1yP8DYr4o7Fy3P1wFsgf\njPc8minKopZ//zYzdc6+lMRYnhdsskVy340k0t1bq76RFaOFDKz0z7dv9LsG\ndwjLFg9wKsI1T1jf9ZcQlov1KZqho5ljXTGT1x/oBJjOnur9cJQH8NKRyXAk\nKbav05A0Lu7fYNrA3Qg7pOOorZNI+WDggFEvNSa0Rj+f9/kc/tDoLBJyxlT9\nukUWrD9VsXB7XrIibaqa+0ObnZ2cPbvf2ILIUzCBQMXQCxhf2ey+FIDRd0Lk\nTP0wcxbQawJi5UVAcjTALcXe3AhqdHjanJa8ajH73ZtamarP+CpyJdjb1zVf\nPPAZ6Dz7/ghszyqPagKBIo5++aIvPa1+V8rOnCKSZVE4hKrSlGcqfDv/mvxh\nuXwXBGKAyscWRqzduDd9WxwdFV/1PsxTDxxOz+m0eK1BPCnIwJdSUE2TeZQM\nampJip1YrQ9PPXYdxphBTcPzkByT30w1njIJRFssdpruGByqtEdWzwkq/aEr\nlvszzFYawbTvQt5jwdHLG3nqwxx0KfGpeaZNHVnskr3Ig+yDOblTxqavHdZQ\nm2+t\r\n=zK6b\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD9J9nfU7QpDZROiTpsY5sSgyS5IYxgQ4x9rimL+c+ksgIgH7wUTqMc/1DcngwWdYPO8iYuTXwgA5RntnAFDeDsXmE="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.16_1553532722840_0.8853086998330899"},"_hasShrinkwrap":false},"13.0.0-rc.17":{"name":"tap","version":"13.0.0-rc.17","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.20","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.1","tap-yaml":"0 || 1","tcompare":"^2.1.0","treport":"0.0.3","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.3.4000","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.5"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"a7212fa29f722ff081f86087d04f9d65a45f1332","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.17","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-aJe/Jm0SEsLTdCQ+hxOqDzxOKXnkQkWZVr/JulhjbnzYnteptKlo4OP2HXhoSWbfihA/QLVXvPkpqVTPfa4CFA==","shasum":"af96671c38c68071e45690d33cb0538dbad9b94d","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.17.tgz","fileCount":23,"unpackedSize":122458,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcmW75CRA9TVsSAnZWagAApf0P/1A/gaR8w33SmlwZFejg\nLfpRf2/zMys0TmGoSQxFJfOv7gnFGUBX/gvSa6FI8tB9g02S4x2Numz7CFza\nMc+ry5eaKAsZiu+PIirp61m/E5Ktw+bzymfAlMzdiJNVmlMiQ4kKBvKQwKG7\nnmAnCPSMgof1+9JE71S8mgFKs8JDxeSexU7mDaZkEme1S3pTDdnqBtfOP0j6\n4zEKqg3E49wGCq5lR55rwUUaLUwXBvrHtGI3+9YqFAngACBEY16TQuWRX/4R\nkrHx6ofs2PT3a6uDfMsTDHq2s6X5zFMVbXIelTjrHCUnA13iBOxVoNwZha1X\nGihJ9S2CiyDnojm0JrJ8T15ozcqwPnmf0qRzAaeaexgusmlVFS5xaFsMC38D\ntKOftWI42/Bs68T9vOBH1GBhxJcv8mZevX62jQGB6Sx4EvYAzcSwRAi/NZP1\nC+ICen8JY1gCxApttt6wIgJL44wnXAW2jvOSFi0VMxaO/PYE02nma+Gv9oN2\n33B8l6IeKT5WeTyougAOeNkvOr6gD1Gf5SU7DkHzz1O9AI0GvnCTVHYNfmQB\nVEp+8jktO4eBy3paH7TSt0t4ZJNUtUx21jHjzN6A9wk2wYRb/R2OSPszzaH3\nWXrvpGdgQImrzh3qh4/5vmBK++BTXb6rchB+Zf9NQP7w9KHeMNnfNTKRU5aE\nx4CD\r\n=7HsT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBNFr/KCjl2o3+++PmIRYxWMwjuClE8xkTpDSzK+ucBNAiEA0ycKb9VrSwVC8zj9XtkfrX2tda8BgcPmW+B9nV9hQuQ="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.17_1553559288325_0.877438250252182"},"_hasShrinkwrap":false},"13.0.0-rc.18":{"name":"tap","version":"13.0.0-rc.18","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.20","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.1","tap-yaml":"0 || 1","tcompare":"^2.1.0","treport":"0.0.3","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.3.4000","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.5"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"a18bca6b4f9ed1670ccf79b1a199c7af5aa57abf","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.18","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-wW2O0oJYAbebAkncPdam25j6256enAAljRs7o2qiNs4C49srHZ/gz8Ge+hnrUrCqxGNHIf7oWhP8NFrQEBv6Sg==","shasum":"43fb286e49d540a86451b049c02cf5770ed12117","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.18.tgz","fileCount":23,"unpackedSize":122458,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcmXJNCRA9TVsSAnZWagAAq2wP/0Xn+2ARyyGDMjmEm1al\nKDXOkI5wDDbEmt/JKtp87tZ8t7qNaOdmhlV7DXOfELbGh37dBPGsDPW9bJFV\nOpES1De7jBmIonzSs+OfA/14fFYOcYsMi+ivZBZzvBCXTmvsxuEV+nK2H7GG\nlpYzIGan0d//fODYag1w49dgUInuj0byPtm1W5r354PcdyCNxDmAUUsFlv3z\nKV1xHZPGKOaKz3wBKv5W1+PvbuT/Sv46nO3F1Zhw2v0ne6mA3LbFb2SrdkBj\nP3niU3FktLr3vjPYXAznUd2CBBpheigxcJAl5EmI6WpF6VVQO7oMxk1PA0Np\n52J+/+u7/TVe57ZLAyuRtjdX0dcukmKOSuVYw7gl8sux2DxjIGbym18dBKGk\n1Dh+5EN1viH6XTICCGrNhELH21W/PiXCBaONknZRe1yKbKw3Rl9V/NGdLIQK\n/0QN13IC5xgplgUe+trZLWZ5NWkW7qAbxRODEb/pX+UlxRYZUs8Z5Z0xXyyN\niXfxaWUrBvwnF111OvBTcpl95EbXUMCqk3bCv0d8eUzPBtj6L7YGzXCHjtIY\n5vu5MJGZj6Sr0XINbUMOSCC00T6IjyBk4PGvaLvdYYs8ODWS6Wu68IAq1ptZ\njd1SIv4/fnGyU7Ih5OSlwou9XN/cvxcV5zJXSOsQeFI/jh518rZP6praA7Sz\nsVBZ\r\n=zKjo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEYpN1z5p/SEuYUHzLjNvlmD+YFVKxHikuLXG+863FcDAiAKXjiS7m1c5JAlS5IfZWbQtQUFgcJXberwk01rGnTzuA=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.18_1553560141296_0.25592348840702694"},"_hasShrinkwrap":false},"13.0.0-rc.19":{"name":"tap","version":"13.0.0-rc.19","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.20","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.1","tap-yaml":"0 || 1","tcompare":"^2.1.0","treport":"0.0.9","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.3.4000","which":"^1.3.1","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.5"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"da4368695027ed40ba48cdb05729e8e0beada5b6","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.19","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-O8Av2fETYlGYMMXIHEcLK4J8N9/KWxMJQjvjUMxWeTflkirOIimIgCUi4FQ4dXJmwevh+ylo1aGY5XlxCZpyJw==","shasum":"935f819e57c894c40c463ea0d4cddc45012931a6","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.19.tgz","fileCount":23,"unpackedSize":125530,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcnocbCRA9TVsSAnZWagAAr1MP/18etN8WSyicD1N9xkT8\nSYsm4245tRNvvBhNZh8LWPyUOgl0zn/uAStwYquoA3plV80HAsLfDu/3+ZGy\n3ANQRLnhKneZ0Q5KVWGt+9bhKi3FxSrx9K9WvP+YR5C09Rdrj0axleZiGNhY\nVkj1VbDxY2f9ZACcshmccnNDty7H4Sx+2LHH8MnNAGZ9wXS3e9W2rOoSnfP2\neqaUPAzGsMjzodInURPOConayfCzHhOYci70DdscDVqD5DG9p9HDdPhobU4c\nxyRiPWdCW+f18sfkvJaACSR6drsXZ9kegzL6H9BBg2hKdLdnDSyK6QPR46gP\n07WbsgeEb+JjDsC0pf80LhJ+9dpp/SPb41RG5n9ZCpbpYbwdZl4WeJDlfR2p\nB9exsERaV0aTeeMmiyskTEoSvQ2Jp89eHlBjuy598V98/pAnnQZ4Oe3o+G9q\nXfzIgUxlDkP6pwz85AVbyZBPKWU8SY1IdunbNhfcWIvoPy4VuWCLq7v17I9J\nIMTr3hF4JWTQvGBfx4yF+AKsix5JKCsWad+/AyD2wglPgkT7Ifg2PxWadWB8\nrrbCRua8PrkSW9s5n43IJL4FZgqVQUHOF9hgzfA1O7ABtKym2gKnMJBxRQnH\nBzM6YUbAqZ+A9vavQKkPEi+1GWoOtsW43Ina2QJzeeT6xMDoGzKhDic2JPj9\ntTZK\r\n=r7x2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID1+xOoFQzEBQQbUH8Xnk5EzWzvjYZj9OvS7MLSc8Rv2AiEA60XjXWi+fVGYrBh7HyvV2Uqrv9DIJsLVJEASiyS9N6k="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.19_1553893146754_0.11941256877244477"},"_hasShrinkwrap":false},"13.0.0-rc.20":{"name":"tap","version":"13.0.0-rc.20","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.20","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.1","tap-yaml":"0 || 1","tcompare":"^2.1.0","treport":"0.0.9","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.3.4000","which":"^1.3.1","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.5"},"gitHead":"97bd5781cb4e2797150c3223e19ea8c9e990228d","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.20","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-ech0MBVoxV2ZLH1H3nw/C7eVkqgH9O+w6Ki6F/dGsti5zA953lC+LugL3l2IbJW4Y9827DaM/2N8tKKzGGwO5g==","shasum":"977c88b61c95fa0aadc03d7056d54e2b51ff8d5f","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.20.tgz","fileCount":23,"unpackedSize":126903,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcoHMMCRA9TVsSAnZWagAAyKQP/Rzv/X+TDAAop65DNGi7\nf0eYSFV0nH6Nuq3iJ9+a//+RtUcC61GRkn/RC9/b6SWRLqJoSXBbZulXMzgr\nydGx/17BgaSeCGMIM2RnhcWyA+nBHlK84//aU4voGf616RhOgckpLjQxKFpL\nsUro8f4gUUWFizjEWS97yiH659zeIOh/QqQ+FEWw9gAxIxRSa0BQ53bpOflh\nGJfM2bLkZkECRKZ5KAKc5GEmDPuYg15jo0muWD/Fi2HMr4WPLyO7tBfq56O0\ngdPvr/bJxZSzEyjccmToLaxJjU5jFBWyL1V9zw6JHLhf0OCIdOVRn1ng5r6F\nPokgsXBbV/dGmoq0xNG6ry0fE6E0+QIO9NAMATiZrypjjTAYfYHVDG25IJKO\nz6qbLs/Ta050QDb4wgmEGuL68KrG1W9ZJnf/ukbZGIJtlnjn0o5k1FyGAw0a\n1l6ftXOrq9jGsBhuk928KkjErKJt2HowQbRBiIM1f/uHzVE/PwspiK7Du1vG\n39ZrvRPdAFJotDim3MEDGGnO2jkjxj767S/yJ9dXz2sqs8+N2KKbbk5QIQcW\nTenk73PdMppmNrmJtfNwAdb4jPCeaj7U2PbYu76cv+i5BJ0Ckt8uAcaBfFUE\n2hZT52pa701GrkMRenRoiCI1PQU7zDavdZr+VZQnSFWWtTQ9LZYBtKsm+lmK\nRr+e\r\n=BbOK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBI4SQPFbgQH1OruUhIZUPnBpz47ZXkvp0F1HoOe4b+oAiEAsNGh+rkQgfG4UgFei87Kuolr9cjbPvyNyJxl2oaedqc="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.20_1554019084000_0.8674589415555622"},"_hasShrinkwrap":false},"13.0.0-rc.21":{"name":"tap","version":"13.0.0-rc.21","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.1","tap-yaml":"^0.4.0","tcompare":"^2.2.0","treport":"^0.2.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.4.2","which":"^1.3.1","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"ed1b3726477ea75e8b887bbe2154aa87bc1aa669","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.21","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-X7ToXsG3zz4rzZS7QPDI4+W+HbEjcA859uUL5ZqskjmAJzkYIdhWqfvpoaRfv3plJZNEVnpTunlr2XIq08B7iQ==","shasum":"840db46a67011e369f0e1ba46f9bd3acf883e3b6","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.21.tgz","fileCount":23,"unpackedSize":127469,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcqFDhCRA9TVsSAnZWagAACAkP/Agohk/QPdl/pBoxud7h\nYvRq2khLFm8vobShBZ7uwtkG0LFAU1KIadapfhlDW2vJjo5uZSRmUx8ajoDU\n0uoEtjjTFix1SIaccC5t41PdiO1JBAv04vMJgdt/e+6JYFXMzwNutAwJX+pu\n5rYxpGHZ/6iyLS//hZ7UWqXsmicbKAgoCHUTDYtq0N8znii8XuL2QjHkI+E4\nSrQomKtmsMpIO+0YLo9E6GMCCXlwQ3FXlY1ocxs32n+cyZWDsUapeTxPxJwN\n9ujxV/WlkhdiDyV8CiwVw58Ppc6kUX0oDYXjGJBgeUdxt2QLnDDSffN9OeWV\nhlrqMJj+wXfsfnYuGT7sdHDVkPwKWa7sEVGydigLbtIWHJiLjzrLo/Agj/Nq\nPyoiY6HOaXYw1xfJcfZVkG2pzBdGMlfpM/CqNNlqSbtfelxRncfpjGXVbcQH\nAb/XTs0z1m7YwyzTf+gGxlFVfjjJAEYGKI2uYhERCBQF+4bXuX63F9Xb8gk6\nc05wlxZHsih4kym9Z5OW66ysYHzFkcYAorgd8HB0rMaiE4CIv7z6LhFswR2p\nLYdH+FOanvudoHqJ/nOcy6ILTH+adFIPaC0YDc5I5OAWjtNg6z6go4kY+DUM\nqEwR5i2JjHh6l8A9aeTKF+VZ5JCrrrJiJ+TteZSSoc5qWnXF6HGa7xs1yuh1\n6E9k\r\n=+wIi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDSc8FfUzsXtOof23dNT5xbclmIjcRUY3YWoldSzrotrQIgW/2Tg3j02N29G/oR/A/ZOXiQTLQOXBMTalMCVL/pT1s="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.21_1554534624611_0.8061336929339389"},"_hasShrinkwrap":false},"13.0.0-rc.22":{"name":"tap","version":"13.0.0-rc.22","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.1","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.2.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.4.2","which":"^1.3.1","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"d23444d03f64c4e2e5267d03fd56d3c1b81d4a27","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.22","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-0oq3BUC/6WIhnUFY8mFbxQuP3BP3GyVmLqx6diy6Eld602R2zFsL8ghfGhFnFSFj9QMYbZbPHjU/CbOV6I0kHg==","shasum":"a3b3d2f57b38bbdd4f97ff04db617b1d83ff86b8","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.22.tgz","fileCount":23,"unpackedSize":127469,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcqPxVCRA9TVsSAnZWagAAV/0QAJ/eyIR13/e+I+h+EYw9\nrUpWdQIBYrXSC+lDmanD4BgOHwExp+HKAa6FZ+quK96rOkIa7Tp0St/c0sp7\nCYUunRFeEkXi2tONNWDniPqdHY5wljdOpxFHl/PFyleVu59pEd16k2rR4oOW\nFUQcKniS9eTF13zovszzsj9/CS8j+SJRAtQLOyiwoR/8dkBk66lU2NZuiDbG\nqijHvK/aVXnwOm971kHw1f0Zd7RHpRKqZT8oTG+iCczOCM4l61l1dE3SYpg0\nqUaUzKGD/FNPj0PhsAdl3+bUYoxrltN+ecwQUQWBsDZxo6yqnXYuCMFGmmTd\no9GUceB7/GHsFz9XlXyHUvtLkgv+123uDL9t3I41iDJoB8FASKittJavYeyg\nlGMnGhAHm+jiowxBT66MB9njEeqL6gjqZjrsmD0FkUhgQvaIVi8SNzcVq2ph\nn58e4LuGKo9CTQdSpAWkvGf9BmPoyYphBuuG6ZjFqvLbaxKScEQrJ4I/TTfz\nj8cE3Y9128AOl2GqQotfcgz+94bC2TJrT63CbQoenMH95TCiiFePfBzs4qXs\n62wjdAbJLbwqM2K/DYpZyaDZ0jQE+7rAPymC1Uc/SC8qL5ZbwwOlSa61tlwi\noal8SVfed9mtkgy9mXeYEXvcpNSvn6Li08pHhcwJ748GHsD/K97J2ZwZcFEy\nUEKY\r\n=k3Pr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpKVzIBVicwnUWC5NSXZTFsTmfp5nZ5T90G9Jgk3Fd0QIhAPPbpzyUGQz7M1Jbb2J7ajkI8gWykCd6+CfdxdHBQy2d"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.22_1554578516615_0.21044224940000467"},"_hasShrinkwrap":false},"13.0.0-rc.23":{"name":"tap","version":"13.0.0-rc.23","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^13.3.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.11","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.2.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.3","typescript":"^3.4.2","which":"^1.3.1","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"b7d113db0818364a6bed9b7a35594248a342479d","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.23","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-BdPRm/UH5RX05pBQb5/bqFQidd1z9quHSW030SiwSIozyAIGL9LZoTXDoVOa9ZYoAsJvsdI62pyp19GcXhVPKg==","shasum":"96813d56a377b9f06930d0f7213b1548c48dfe71","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.23.tgz","fileCount":23,"unpackedSize":128409,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcqR6KCRA9TVsSAnZWagAANgUP+wdmh44axrUYEL7l7aM7\n4M20YMm3SiRhlkWrv4fHZruajqIV4iS2MWY0Cma3QWNYDD8Pz8yARZFUAF5P\nnOdB8WQItETD3ezZ3VAnpJjhGzL4w9+lz3k8kxBkkKm/WnOo1Bh/IsfaD2GZ\nx9H8ELkk70fPFgaGfqPah1qA6siBzljQHUAu+tJO3tpZEaCs2HZuXgQHjLBl\n/eUN/kWSyPtZrP0qDWiuSLhAezaxjd8F1/Njpu6AdukF/7PcLyAzAGesXKQO\ndBOYmdkhInJY8vGJXGLltT6JoT/jFZiTwOvmETrB5Z6VG0qppIXNL+PGPrMr\n5bonPSbcXeQ88UYDf6VwUqrco5azLzfYbjADVnMuKzeKAiSMlCd6nmBJvrmo\nawYu4DSIOrEFEYED1HB2gS5UTNWZdBalCwzsZ2n0CON9qmHLrjyNLF/2Q0av\nAxKWkl0BxzUUgVzFO3egLv4T/HAldoXlIA2/SvasTAvlIQBI84fT8svbbh7T\nrT30f/WEJvRFb6INRbwD3VrN9kQecDVV4Mios+7ak1zPZItjRynjp2ZFLPku\nSSvilEabociMh9ffvMV6Fjy4hS8qty9MiHpvjpXI+VGY5mWAd6jlvqT3pc+8\n2T6NR+RRo+V8L6D1ub0BQOYrSCQaOq88o5GkpbywpxAwbUZpaKna0cyEBwZv\nW2vy\r\n=QfBc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBvmaoABvT1VidMJVQuH5Nq9xQLReP/a2BMB0aVrhdltAiAyvmGFXU6X/qV5NLkoN/I3yI5/Pw9qRLwha9E9KewrKA=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.23_1554587273866_0.201836753958208"},"_hasShrinkwrap":false},"13.0.0-rc.24":{"name":"tap","version":"13.0.0-rc.24","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.4","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.0.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.3","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"0938bf2a13099848dfc41193b55b4208acd13f7b","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.24","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-uijjJhyB43JRYGukM7u5QUhbkwKeH0RKPSzJ6Metudms8IiGXXZkMD4INA85CosO+vWWgOs8XlGL/Jg7T3uMVA==","shasum":"fb93c1ee630985f29302f2fa1b171c483ad808bd","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.24.tgz","fileCount":23,"unpackedSize":129035,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcttBaCRA9TVsSAnZWagAAiowP/RnTlxfuRXXFMZHwBTCh\nO+9HO8U8WWyZYkKM2KWAmeZtf7autSiHWWLZYnSi5lL4I5lQgMgyQekmsyif\n6L1DSHTxoivYMuRiLwjXc4HP2DFFn7pURlTrPgy9mwfyQ40tbKxMu3Uk5eHm\nUebBM4M82CTUZZFK30ftxk2vMNi/yJPXFOe4mjj7laQXLQd49UInrScBJDRY\nCPp5WN8mElkgtGR0cgMq2j/77r3anuzHCZAEq2HU8z+IzuVt0PxMZnoF6FDo\nIG57ncg7oXO+LFdX5Ns+4mPP3PXff3HlUQEf6HVQXzKXaYQ4ktPa2MJ0ZQsD\nuTgsGFMDq5EnwIyExbi+BWA7pztGSa9UGrADsHyHFzwac42TWq1za9RTWX3T\ncY2rIgitzkA1yvXoGpJKWLtuWPTPJq3/uYBVjs2NiChyxSJtRfw2EffZ8JNt\nx1iCGSFJQ6QqobiOQZPWfZyJZQweT3ULBE5CuUwMb05+9DAIPudwLYws/oRR\nAT8B5LSPb40zuaqupbbvQUgbjwoZOElKym/9JCsTHcLAVVim/tDRJ69SBQLX\nrsganhmjkwBrQYnE2wJvTqSDydt8mumMgyMGm+J7udC12j38dhQWgQwlj0hl\nKzMZ0PXSk0RvuRnDXWbGWx41QX0OqKCcbOjEpe2N6ZCpfz5O6b350K7P+Yiz\nnzho\r\n=bhN7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCcQJ+RJ1FbbgJPAGIdXTUhX85SUmqadA7hSNhmnsn2XAIgDWB5B+2j52dsEvqwSiqJjayqvyGOoMXIqEnCnjem5Dc="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.24_1555484761658_0.5756938109836205"},"_hasShrinkwrap":false},"12.6.2":{"name":"tap","version":"12.6.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","esm":"^3.2.5","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.13.1","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.0.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^3.0.9","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.2","tsame":"^2.0.1","typescript":"^3.3.3","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js --no-esm test/*.js -J","test":"node bin/run.js --no-esm test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^4.0.1","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","watchify":"^3.11.1","which":"^1.3.1"},"gitHead":"fa3f6e28d15ad98c6926281d54f2d3bc49e62d2c","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.6.2","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-aZzkmzzlmgGjG0GouacDJoeMHz85u7bSGhmPqLCmseM47ealw9KGHI6722lGKcyPu1Kktq7GOUdcy03+etgw8A==","shasum":"8233d5d360ed47eca0ca8b1c073219a855596978","tarball":"https://registry.npmjs.org/tap/-/tap-12.6.2.tgz","fileCount":23,"unpackedSize":114615,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcttHkCRA9TVsSAnZWagAA/f8P/2vnCTwBl6hWsy2rkqQN\nQ9nW6adZwm34r2wPYtIWO2bKmpFjZ5aW6DVpoVVS4LWu/8Hj0GEFc55Ok3sK\n4c+tJb2WnJlIyVO7n7cB0TvsCH7WAaxs+xHcOOvduMCA/KrrvRJujOBqm8GC\ngaOxbHiPMffGCtP/CH50N8dcQLZRDFSryQQfwVi9FNrtfn+7P5v49/uuMGUQ\ny9Hrp1ilprtnSDCoTb0yLHc0U8h15n2SatbupEa+OsBkMRpgioYikSZ/zFdi\nqqZy6HRSYfAV0Y2aw0Us5P1m8tp2Je/yfS1EsXd7d6Pg9hVX2iZ3aLHfER50\nt5b2OTVGfXAjUXFiGfzHql1eQAGbUjg0p8sFnRVDp63STpk5LaUYezSm1Y0Y\n6s4xqjmnEib5z8K9FER6JuDuFGPZwi6nnKjGuQlY5bSnjyo+r9zJ0HymJRTe\nLxTt6zrmwkBOmMvLnlsd7+IH0VVicn51NT3lQRTEZLYIKPEdnXOAJ+qmsJ+l\nV9S4H8QHTH308YdbUV6HdnlLmCNBYS6VIKoJGbsh78hifLoVcRpL85ksXsYc\nakzoi2P4R79OI4Bod37siY/MYCqIGkfJDYESnK7Os9KfVhvRLs0+Zwi0LF3A\nIGuaL60CsWFaT4Fqb6MP5sOAsBjalCJLHtsGqv0v9d3TIwDadJzGK5efeSAA\n3XJB\r\n=hj+r\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCRXvuFxe31WTNpxUjElZ9pza9A7Uzs3URbIWecOzr91AIhANLte3u/JTA9WoRDF37+ki3CXAMhGvR+sPg7WJfkQIk0"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.6.2_1555485156279_0.4172158423327492"},"_hasShrinkwrap":false},"13.0.0-rc.25":{"name":"tap","version":"13.0.0-rc.25","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.5","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"github:isaacs/nyc#conf-override","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.3","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"b82e48a8ea80d0aea28051e9e2b9b530aef3dc47","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.25","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-3L1EWtSoj8Pr8uYTcSDiMpxWzw2bde1aFuzYWx2cigwXlkOC2XsTQKTUJb0nGMhpAMBl6FifXRSEQ5HUQrBy+Q==","shasum":"2fb9ff61a0fb1a5fc472019f21287e7a7feef796","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.25.tgz","fileCount":23,"unpackedSize":132930,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcu69WCRA9TVsSAnZWagAAtg4QAKN1tF919phd6a19Ccp9\nUSF/5o+SypQGbtAF/3C8i3Vc4Mpwdn3abHWRGi2xknpS3GGlJ08A84x8vQSG\nVY2uzJt3CoYzKNBgTax7mxOEbyUWUDbkUqZYzpHxC+x61XqwA9G8hOlV7o9u\ndNMDXE361mDG0UWY1Z6aGQM/xoH4x120TeVX7cUqb1a6FOqfhGHIEM6NiRIj\n/viG6fq805M1qc2DmFFyUSzmopokKkjpbPr+ugV2p2Lrf8dP5di8ZSYf+gES\nSvOtePz+STLFCPaJqI//Ienflojuz0nOt/5b2NvrcE1CHgQwUOgnPgKMkjsO\nwG+Q3GmLRuASTLch57Jaw0ETHmtyOnaBnFsb6LfiInxFNHE675J6iHB7OwHT\nrWUS7jEAdx3PGLIeAuniR8obXKrBQJ7euT18GJhyNoEd/BjBGDycmMOn3qL7\na1wxBE9XN4MkLyPVkZwrqMQtWY5BSIjZx8L1Vg97sOKSOnpRYnph5K8RqQwA\nQxSJLupmU7ILYyZyuYI1rPbFzWs9ZibM0ABpDI8fNCaGfhKgTwk5YdVXUF5y\n+I1aO/jwiosH+kFjlHE/GiUlQ7WtEjCmi+5dTm50HI7QN3du+QkLEODSCs0r\nbmqmWGAWP8kbwrPqBH2cN7srfwaT+3BYatO1YV+iWskhTOFWrx8wJ0GfD5v5\nCc/M\r\n=8OJ6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFWeKuq4ZSGxIYWmaHXqseQ5XRQo7FOXUertJ8Ikvuf2AiEAhpE+bBTb31JUxhVw6U/+t+UwEATPkMLVHy2haz7fjDg="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.25_1555803989703_0.590737034643597"},"_hasShrinkwrap":false},"12.6.3":{"name":"tap","version":"12.6.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","esm":"^3.2.5","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.13.1","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.0.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^3.0.9","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.2","tsame":"^2.0.1","typescript":"^3.3.3","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js --no-esm test/*.js -J","test":"node bin/run.js --no-esm test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^4.0.1","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","watchify":"^3.11.1","which":"^1.3.1"},"gitHead":"610f670ab6e64552716492b4772bc8277843ebfa","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.6.3","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-Fza8p7ga8e/F7Z8w4Ynjei0iyPfG6BGRQdnZY8yR3L6uAz9lQ3k1DWMv4DAnGM0Rim/EEDGBZPgixOYiFGyJbw==","shasum":"1a34800c16ad9d89c531d84fe6a05788f01dc6c0","tarball":"https://registry.npmjs.org/tap/-/tap-12.6.3.tgz","fileCount":23,"unpackedSize":114622,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcvg3vCRA9TVsSAnZWagAAQOUQAJfjaqGAqppkVuxfOSoZ\ngfzAGcdBMSdpYezuhAO6NCF2roMxWpDuE/LqnOpzVXXlMj48grdbS5jevCG5\n9U7CipeNCAV9MVjJDib3TPzcLZbIwykWkJkTGemJjIq36kWbOqAhN6Gno1s+\n8cCYHRlzlSDRqRgFK6CiZjhcn/spmYRpm9c0Odwyji7g7xHsK2aLAfeznNC+\nQvIjOT6OUZhKKIzupKo6XJylFPfWeE4w5naVLmslT8C1DSDqPyTsMwV5ha4G\n368jTe6llFZ17CK42TfQkQvQlf1qpev2U6NAWxt+6IP+4mh8/H14UWHItW54\nQVngkXrBef2CA2QLqmQgJnGff2afQh5h2RPQG3nPl2DMEXneDYh/p8owFwCI\n4kIIxz5rrkLjoHZCE9Whmm7q9TI2Ec548oRT01a4egdRG49AtSpj9EouzgG5\n3gJkXFsge5NemqJFnV9TceqGlsBicVL1zjR6sOf9Cqlj+R5yTuOuz1aBoJ1B\nMrcVplVq+RWPqnKfn40LxPL4euftn/r+TGei+SWOvq+4FWSqqyp0ivdUdYOE\nrEiGpQhFBZNiJORDdSuIIKBy1e/+OJ6U4lscG2vacFo8WGo+IIjcLqup83zp\nglLt9mIVZGJ4WqzkQ9jAMMYQa0mWd8JQ0QpSnVI3dLjNgSOXzm8Z8wa+AIK5\nQrtO\r\n=3TKF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCHcvZWGJ8rO1pJwx3lxzFQuVPRitBF4KXr4rtP03uo1QIgOkCSX5AggUB9ekAIbunKHlSUKLJtbhMW8hAlWXYaY+Y="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.6.3_1555959278383_0.3375828010660249"},"_hasShrinkwrap":false},"13.0.0-rc.26":{"name":"tap","version":"13.0.0-rc.26","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^2.1.5","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"github:isaacs/nyc#conf-override","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.3","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"b1daa88ad95269b27ce17f9d59428950c4847f0b","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.26","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-mg5oSblyPhudkYcr5mHAY6qpfaAJOYQz+eQDVukT4iSKdPtSxrbmNed73oE5yb/ny/7URGRfFY40A9/kGs/kjQ==","shasum":"2d33fa2a62eb3b6b70eb52263d3f4746e98b6f13","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.26.tgz","fileCount":23,"unpackedSize":136371,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcv/E0CRA9TVsSAnZWagAAcXsP/iQAWtgJtSiAZdS42H2z\nht2cmmlX4WNxSvWHH5o71zVlocaX1L/BDMiXL4/tYMLh2LzPg6C1ZgM9cEr2\nVG/84f/YUxg1h//uo8HlmkGMW8144l9GPM2RfdJcPPjaulcivFbGDUCEXd05\n5+ejrKU2TQqOsa2X+0t7z087gT0LSYUfb5V/M3tUukCWatkbQCMMBLF26Bku\nqcRa5mUt4VEICc8bYb5jxb1i27PJh8w0CEAR4J33ot1oqxS8rse3QhkigjId\nEce7p4e5rGXR9vCFW8sz/GNpLnQ82BMKpAXBXXbnm5M1FjM36GKb25CUM1YD\nWA7r9LLvy6okjivIOKTKWQh2LXgs4aC5/eYTGN0bvCXzbpr1cQdRD/clTqtl\nDhkgtRbD18YDb5Bb55SMsXNQ1NlARuwxUV3zvN40cvMeZNr6y00h9OR+ljZh\nwWMuSNLM/qoBEWdPpE6OEsmhqVoIxGhxguYhIwxYb5YohiMKQbc6MvsYtqcc\nqFPR9yDXlMGtkZ3kw9GNoAP498meSsjy/DJ4FZMeMiH4RL26wj80z0zarfCu\ndYME49foxEmACMtAFVA6q167DuQfIgJPFRp7Sbwr4U/rSij0RmSItfZlwXwC\nUBkXWpajYLQyQ3yoQEi7ZffSi+/s/+9hZxefU3ePmCfNhNXz+G9oGij3h4xv\nRWt2\r\n=OToA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC/1aNYiMTij18ULFFjFAAV1PWJm36ErC9KfjhVjnhfvAiAx5odh8u0y07okmPshWWS6xW1XGsA0he39erQ9gVKU6Q=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.26_1556082996134_0.967553602857838"},"_hasShrinkwrap":false},"13.0.0-rc.27":{"name":"tap","version":"13.0.0-rc.27","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^2.1.5","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"github:isaacs/nyc#conf-override","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.3","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"5e1d363d69b5d538e3ed2cfb922be263630ff666","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.27","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-lKLIyk4mP672P6DABcKwue9XyY0zLjCNfuc0qkYIiFLtu2gqEk/rHF/bL/lWyxtAbHoSJStvCCjwKYk92BiczA==","shasum":"3e034ed250462e7dafae0f6deb0409da4600684b","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.27.tgz","fileCount":23,"unpackedSize":136661,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcv/uMCRA9TVsSAnZWagAAy0kP/0XCLCcE1cLFWjc+zuGC\n4hV6J4NbDL+B79IRPIp/FkZpRqw7QY0FUU+Ao7LF3tL9hDCaiFj5U7wl9Y/S\nS99g6Hvjzj9u1vEJCgnZhZibMc1u7kWpCqm1rZ9PGnNX4ofg8EaHlneBGQtZ\n9SEsfT3r+Ragybygj6h8WHWyANbLulVQPh9dGjvSXEK6W7BJgTjTzm1eZtsI\nWat4DsNzoUMDsnGSrP0pSPn7mIZY6ZtUxqZOYJJ+ggvA21CBiuCOr1O2rf97\n6QfqAEpD63gGaL4bYXIi9RmzSu3c1/iN/HbSS/iZ3D9WLAWLkSXYgk0CevXd\njuct6P4SA5aS2PQV49gyIYcEVd2lB0t2wS6XxM4yuCrM4ipqjdlUOmV/9/Wz\nmX5VOF3DhgbaSl+xuaqLK8o1EDssfG4oaeQwGhJJPAyxAHLHu7otkU6SbJ3k\nulfVLFewIsQuWi3ovCOFjMoH5zAo+cuunyPVZMu245lPGK8XYJHJ1tkWw2Vu\nW+pRwVXLScxbfgaLe9xzBAY639qv8RAcvM5ywcV/MZFxNJbsZi+iYzhoxXIZ\nZL/AnC6wk1fTwq1ntTB0lHXbBRoFX0GFW8XnUvyIbAoO3Aq743K+hy2M0vSc\nhT18qP0jIC/52MwbBiu/daJZwrNbsGHodiOBo1+oO2AfFXtdV/BvXza83Gv6\n7Ctf\r\n=Xn/K\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDFnndnXXvH9sUyugxammtq2EaEKCfjD7LYZFHgn1p7aAIge85kySaAHEup7eDQ1JKaY4hc/Od7X47p12VI07B4DOc="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.27_1556085643421_0.21541034999417819"},"_hasShrinkwrap":false},"13.0.0-rc.28":{"name":"tap","version":"13.0.0-rc.28","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^2.1.5","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"github:isaacs/nyc#conf-override","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.3","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"b917a438848c597c8c24e9e18e1827255610d490","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.28","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-/2f3qpEVPkx3nMqkjY+Xg1Gj5yAir5t8euS0u6l3qJC+utTQNOljV6wSgJaoBxhQ2vl2J4zjtYxyNkwPke3iwg==","shasum":"3ebb2e417c4f7e467f88d848fa5f9411700da7b3","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.28.tgz","fileCount":23,"unpackedSize":136785,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwBGqCRA9TVsSAnZWagAAsKIP/0QpWpasJ81xyMJXf9qc\nzh7kwg3C3NEywfoFG47qMV7JvmfrfGECSu3jGTWHBOVtoAQCqqSj+jBBYDPv\nrKd0r4jff6Z2IA9Q+17WzN0bVuiltlejnQkXYEW9Rlx6i43MMMGmUxYnzfwM\n8SSg6uR9MBmlJSoyFqhVjGJ7sH4Ze8/jprrUA9LbyPHiwv+wqzczs4Evf2QV\ndSd6hjZ2C0631vmuVTx9GCUpV4wYjCK6Stlo3OwhsL+7Tvy0frfyrkp/CuBW\nBr/9DweulYzev+s15dAp9bafKU219JmJQRb2Sv01NWL56PX0tVIn9kxQQLAq\nX/XdNGyfN159IWnTpgUCBT+cG/GxQJLCbV5HvEyd1CHLOXtSDDb2MOJd+9fr\nJslznFzJV/XAjtn8yR9KLeLy0gJ/2ftoBjA7uJTJSnOnrU6EwyK11mXaLWR5\ngS/5s+jvObEZARuFRNRaUAgnbrelr6qm5PF+vnUtKH0f9vO5hSd+5OpQ9iT5\nVs4SVTD8dKr0f6hTNGB6tVw8KQiWbu05LIlQS+CbrYQ19ghMmpR6UhJ981Ae\nxtsIhCMX/mJSlCmtOW02LaH+k+aQC0PVX8ly3k7/g8uERavE/tDYrY1wMc+9\nA/RXJzPnbAKl7WlUWnlIcmKZkNAZpWGaIZomVeHSMwzD2vUeU1hUJRI3nkIe\nv1CU\r\n=DRaN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIErjXJojDzhu0Mj9dBtLn8gif1kaL2OSiU7cSuDvyE/KAiBeqDFONN2c0Y+n5ryBYwbLNh5zPWj7tpFNh02/xafr3A=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.28_1556091305487_0.33671717274944046"},"_hasShrinkwrap":false},"12.6.4":{"name":"tap","version":"12.6.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","esm":"^3.2.5","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.13.1","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.0.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^3.0.9","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.2","tsame":"^2.0.1","typescript":"^3.3.3","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js --no-esm test/*.js -J","test":"node bin/run.js --no-esm test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^4.0.1","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","watchify":"^3.11.1","which":"^1.3.1"},"gitHead":"ee528d389deefa90cc06446abe284baac1eef317","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.6.4","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-4bz9Y5iy/fbq/My3dUX19bXAOKQ9s2RVYwtmQoWiHgU3/7dR+4KUnV+xw06q4IbxlB232Vo0bUuBQblfbqjxMw==","shasum":"c5932be3acda6cd996c6500375a0329bf52165cf","tarball":"https://registry.npmjs.org/tap/-/tap-12.6.4.tgz","fileCount":23,"unpackedSize":114745,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwKDKCRA9TVsSAnZWagAACSMP/i4u0kwwXGSRLnVIk0cm\njcE53iFWQjBcP3D5bkMcF2AkTWT1xPwo3FyGPSwXY4cq0h5gBTP8vTpsxCru\nl36iIrMhSZcHyAZEztebmInAC7zm6V25hdkO/EQ5SE27Y4L4g69XbA5tX71J\nwL3qKalJERZyIGedvg70//vM6t6hyc/AYV2PK8ydlGOeXx2TmQmhxS+y+IeW\nj9MBRNIZaEHIgxW47CFiDeHBvfAbww1t195gYbEroFm2xWTfMBP24eYDlrQV\n754OktnJMzDkhGdKRRbqrytW5RtJg4DGwtGcbnzlJSIn5VburAlItQT78J2q\n7XiIVp8o5ee4h0pGycNiJrGGO60YYaXlWgo7cxgw401hNeZTHVygs47Q60rX\nqQBNPHDEtkIVwFspX+PiWApRSGY2wEhc1w9Bt2XwQsE/8T8gsxbkXVGONSug\n4bzLh/ntNBFocL8Uhw+dTr7SbvAB+ADvFJnfnkwr9eoeGppw3PqdSQuucnAN\nOF9LNvcRhfTGL/v9j9JZf0FCj5tH08qwPW9QPljG3/dIKvJnHqcVYQhDTHu3\nlIdNVl6exc3Z1ZXvcRd8xa9Y0LqlZeP6+xwKMeHUUOny4cqXFEsqaTjfvFsO\ncFSeJgd7KgppR2UhLmerTDW06bJmX4AddRZmUQ1PZzwpINkajVeVyqz//3qy\nFyya\r\n=/xfc\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFYap1QGLjhR3A9RYInKYYLRcK4flwY0IG807rkNdYMBAiB8alQ6t7+5ZU1KbgpDbWtkf02uaxJgFk2WTFCcspKJlw=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.6.4_1556127945529_0.9025846083012783"},"_hasShrinkwrap":false},"13.0.0-rc.29":{"name":"tap","version":"13.0.0-rc.29","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^2.1.5","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"github:isaacs/nyc#conf-override","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.3","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"2bccb8ca770f47d10c911d113cda09b2ef05a94d","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.29","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-PRpHh0AORFC8cpmN1w0PdSkUo2P3OGRTxtnuw6+DUmr9AvY6TeXHies86FVTt6+58Nwk1rlq/RGfXqAQEoSOYA==","shasum":"a3ec20d36dea177ad5b0818d53bf567359a460ec","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.29.tgz","fileCount":23,"unpackedSize":136908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwKEaCRA9TVsSAnZWagAARtwP/3yijoI8fsJAbQjbF440\nix1NHGs7PXiECs15MrXhkeXnAEB8MxTUv3y5vtzxa5SvXP7oeVvDq6Dnjv5U\n6uxHO6ot/GU5O60vr1TP20SNBIIh+LYSuxaApKnHDs0G4gcZlGtvxbxvB70t\ns+ecvWd2V7c4XhAZpCxf3JgEc3OwQs5JYlqeFuDuD6uWmBj8PjxBiGJFPUnX\nJA5xBG4g5YdysjqaIcHoLiJUJ3V/4BAYZsZwS932DOzGoXartMGluIUO8bsI\nKh0DZC/CXJ4kqGByCHG4HAo9g7NnfhAzcDbZYdcRBRTpnkbuDD132D/UOggl\nU9oG1Xh4uUVpdFiQwnxsAnMO1KOhiK+ZPwQtsobDBWqoRhippKIXhm9OVqtH\nyOdxruVv9LqgHKjWmufrG8NANojRLIcUL97tl0iGHcdS82kZ7iZ8mdsS7f8X\niLhswvtl/RFNHAbJIaLRkA18J0sqtCXq3PY0DDBHsBxW+SAxgI8M1b8EmK5O\nFLZnaxmziSQy9urwEvGOs8iIe0voLy16E42kwwK27H6i8eciHHzVH3I10jP5\n97ijRC8WRntWiGs65LDm6ggsJU6kC7HHks4DDtvTegJ/HM7+OGOygteXmYtu\naOELDR0aqJt5zolpxB6ZRWL+TfkIYQs/ZFCrceHqdZblMHKrnKUccj/tP7Or\nJ8Ww\r\n=MZGB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBzV9/yDOAt3afumFrexhL534FwoLNWScw/9L104E7jTAiBvaDCxG4W4cFHUx+MQ7P1fsWT38NHWy9kgBfeW/5zbBg=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.29_1556128025885_0.9660019995341491"},"_hasShrinkwrap":false},"13.0.0-rc.30":{"name":"tap","version":"13.0.0-rc.30","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^2.1.5","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"github:isaacs/nyc#conf-override","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.3","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=next","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"4e8ec35ea29c0ab4760ae34f2ec3887d6b76238d","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0-rc.30","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-X6P+r2wjaEKSZFDxNIQ2NmM3+7iel+oc4w0emCO1uYUyCPWGtvQFwc10gb5mg7LuvTYp2i5lFS4Oue9IORDh0Q==","shasum":"085e7fb88da3c1fc4245f961282739ddcb72c93f","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0-rc.30.tgz","fileCount":23,"unpackedSize":136903,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwKJzCRA9TVsSAnZWagAAhzIP/i8FBqzfbbsZ8hk05Fzy\nrJVnxd1h2aItgE84IR/EHUjOiF/f/BVtEpD2AkmmxLmcBYqnnqonQSZY13lS\n5ZEYtF9OpxiuC7odaFZiyOTQQ3n+8JjZOpXQ9Io6dU9XQYg5CS/KkRsRXb4f\npOWP0NHAuczCkd+cJHM3MPiAgJY+tIczBNrxBoqWUWnOKQKmOGumc/eeaPEQ\nSbiHeIaIBusX/zpDGGlMsnjN+u0CITrD1mR3BByVFjJNOwkmBkAr5uFbfn95\ngyVW5WVr/to/jrO+QUo3DEnhfHZ55u5flC+yLKjge95m6b2YEzp/jC7qgy9T\nEONZRGxl5R0JjaCNzEt9NHfVXXOkGrFY5hFbp07i8FyKC/SLi3wGTPze89p9\nOdIYTzTKzoePbnseNdKOOiX/WNqInCvU/Vd8DayKoOJQRBnDIZEz2N2nH+5A\nNKecTOLiDUI+446WTn7ltYnK36oXjwexvYURgq+OPODxCQo9BOwjuP/bHvC+\nx9e++ddnet9GqDFrIZ8poUlQqQAfCTt/5KIipVqFSV7qjAnaNKBY59YuZOyR\nPFx/A9uyaxji0ZoXKCLyy1JwxpyHvaiuHPR3Q54wFfgHsxI8aO+dgM+dJerP\nBjPALltF8mvPQ513D9WM9LUc/BaJWmNX6/G6x2lnE00XTjbVjpLCzQ7KrFMj\nJmZi\r\n=xKN9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD3NXanzQesLVWp0I1s+EYYlkjYgiHiZzmlhPEJD3XriwIhAO4vJ+HXj88e+UcKmQmVpo90v8YHGggsrakYFb9q5xqC"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0-rc.30_1556128370921_0.5835887600615566"},"_hasShrinkwrap":false},"12.6.5":{"name":"tap","version":"12.6.5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","esm":"^3.2.5","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.13.1","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.0.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^3.0.9","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.2","tsame":"^2.0.1","typescript":"^3.3.3","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js --no-esm test/*.js -J","test":"node bin/run.js --no-esm test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^4.0.1","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","watchify":"^3.11.1","which":"^1.3.1"},"gitHead":"a871c8f8d3ca122114e2aec426de05a3b40799ce","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.6.5","_nodeVersion":"11.11.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-3/RBi1m3cHcBQihlczSrV+uDSpcfkgNGMdaQVoGxUBNGdGoxvf8/BmXYat6zV9S6hjtcNbvZJ6K0OstWKauejA==","shasum":"c7ed078a31c07893b9228df3a3508508be33e04f","tarball":"https://registry.npmjs.org/tap/-/tap-12.6.5.tgz","fileCount":23,"unpackedSize":114740,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwKL7CRA9TVsSAnZWagAAZA8QAIcg/ZRQjKTlSp9HRivX\nTWxcDsVXlBm6fKM6+cklF4YKK9LS+Lr+ycmIb5YCeWndhWfF130r1fcibjmS\nz8eBL7EbKAqppdgeuZMOOZlFP8bbmZc4sajmoI+G7cLW2BAlNkYGZXs8/GgZ\nRsGjcAo4bup9wESH89e36mtqmJMRFdpcMnqsT+Y+Ldderbf7L4rttKpHtuXo\n7itxwp0O/L2/1NV8eZQniafo2ZXjGvPkJyu33SVbT3SEjOkI524rbO4agdCB\nfz+X7Xtu1D9nTorpr+fe+tIKiHR5xO7bB3ViATgtWl763pXI4GHHyHOKpg/2\nLcAE+WEV6siNzaZwj3yUFYU1DQvdOLBbjrs+FxHxeEOu/ZaqcXvwFisnrMFh\n/wcPwc4JnKNYdSy5sdNfnCOqVVfeihdvCrwQyp5lrJw8HgzpZ/HSv4rurCj1\nLrFCyvpKFSlBRTS+8OyQZGBUndhlykdbnYr8gCyDHdE1Uq0Y/OazW7dn6VXM\nf7JLJys7ZIBkrR3GDb07LahFWmqZDmqjqpjVRaYVdL95Fib35J6ynuUzOGj8\nmmbLrAUEmWyLnR6mLaCOyX+jVPiWsRiLeNGNTbx/Key3F6Q3VLZUOxHRPPTI\nHyDJMEBXlZ9q5Sjg5MZ5cfH+z3AF3JY7IrcaSIpQ/VTRM1P4VYk7z0C0+XGq\nQdRA\r\n=XKvO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIERGqVG5/kSN05o4kNxXHD+mNJY12RshofGC11aZYJ7OAiEAghYjiYUS9j76H800dz0f5kO5fR8w0zTniXGPxB8Ygmo="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.6.5_1556128507162_0.4846990207859283"},"_hasShrinkwrap":false},"13.0.0":{"name":"tap","version":"13.0.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^2.1.5","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"github:isaacs/nyc#conf-override","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.3","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"de757e20e8b6e54bf08b4e79c9f669cefc025811","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.0","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-+G2ksiNpDtO4IbaBP/aBkoJ0e8ba+B5hT266C5yW9v60458j410p2xsSKxFVUK9JM2+KqF41ln+x55D7sJoYxg==","shasum":"4fbfa53da7c5fe4b1f7a40141a6903a44f4636ff","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.0.tgz","fileCount":23,"unpackedSize":136886,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwlAFCRA9TVsSAnZWagAAP1cP/3IZhkV6EBBy7TNSEpXg\nImSFPsC6yZloPp8pfmI7CSLdqk8QufBPm3f+LdkS0ox/XCohoGViWSwMF/vZ\n3W2Njc4j44PbF7jso3PS9MwiTheMPwCoLt86IRAtaReowTj8uxcm1FfJdz+9\nBgCtLDYPgVkZCIghyDV5EJlRG1kazy3UDEbn961Qmqzs8LM+l4ilhu5YZirn\nBVy+YgJInMpWIqK2VgMavvXokeyhxwkSQqpCRk1DN3N1SeUYBouRA78nE4/Z\nmehtULVarAEy3+WMVttYCiFfvACxoZ5FhPQkgHmju8H1ORXPCu2pNUgvMUuJ\nLkOAhxHiVgBMcXtSVBhbskxhcxPtKJM2eGOuWsGch0JQ+2vy7C9wJEFKNMMQ\nTLecScf5c+EEAQM6mQKZnC/6EWJ8Soi7DXkXLjqLsSKDkStVvXXopo6Q4TCB\n0udkFf004YZDFv5zD/hEnAMVEGv2XupwMzDgix162oeLzCPQu2laCs1Y1NNL\nyKYeBUO1EZUvBHkUrNyxhpmjWUhVB6qSLELreb5caNdR5S0kj4YTi3qu3fFs\neGiFtd8xOfs4vEelScRRcAKac6qL1k/DjeG129jwXa1RD207KKUDuDbA+OdX\nSFm1KHmMDcHS6da+T9lHeHLZw6/SwvNo74tUmkgtw4gNIetMFxtqCsm2+3pw\nTGdb\r\n=gGM9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDcreFHDFq+11t65a8zWIWwPBJsG0ULHu4y3FxQNodVOgIgIVvuoxiqsbMOYXqre8lo9ep+ayepC0trPShhSdOJYpQ="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.0_1556238340614_0.27493893897163946"},"_hasShrinkwrap":false},"13.0.1":{"name":"tap","version":"13.0.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^2.1.5","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.3","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"f6261498f8859ca1583fd9ef2ed3c918812c7cc4","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.1","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-iGKtpY3Msq8B1RhWn20wfzssqukmapPh2e7mFxbsdczdL7kiw8uNfMX+ZuzUTgij+fRcrQP8c4ZZyTp4+obnig==","shasum":"006dc4aee251b81466c08371e35cee6642654289","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.1.tgz","fileCount":23,"unpackedSize":136862,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwwmDCRA9TVsSAnZWagAA1WoP/AkKfa996dJfkSQAeIvb\nIYj72xT09roy8KvHAlRwPf0UqLWyjglpvHpmrzyLT6MHvEnBwWJ691OKGJfB\ndv0IZ0VHdpwfNHvQSegpCZMfUDs1T3IhZWhg1J8+PKlhx82U3q9Gogo27124\nnpVGvpzafopDOVqys+jMljQ8l1cqOury5zAZvEEYCPRAbSLktj2PDwl5QFwb\nHoIow8JPrz3tiLQ8fUXmpjJ+zEZVZWD6XHZqY5yZKeDONy6flHujUbxEvQR3\npYh6YBpoKWtEzV6ID13iwFa9LvJzWdjtMSI7vm5qAFYCyRx4HUHm2DnSRRUg\nhB6O1IJGktneLdYJGsbFBcK3ljhTmdN52b+6et/cliw0ewTwSaCmd9R6Ycdk\n1Vq9JY8d1v7+VD9oQcDfreMHgjItWaxGU258prqsGhh4j0rTB8vsuW2Je4ac\nwHW2u9GvmWh7egWsilhX4X1vr/Cn7yXomzB3RU2HTt39kf629aYLab+07rWF\n9jFk6YuClqvC9TOjWY1Bso8zeq+FdPedBt6BKGmln643e6oWUBmQkh8HFmcV\n1wsxnQPTJRDKM17+sdvLJldF/Fkahkk3kFQw6pSHmv76WYdPGMfCepEUVUic\noF0cOo9jzE5fSzHXo6sYIWcBGkrHUYpy5OMGs3oGHgShT/aAHkxHznHOiSiz\nF4ny\r\n=RHsb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFY5ftfJfpluDdJulOzye1nbzEL/y2aDgJVu3jaeWUDPAiEAoBldvV+wUxAcUtDwc75prrHYnN8tle/JKGCr5I4yT+I="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.1_1556285826280_0.9749813408220471"},"_hasShrinkwrap":false},"12.6.6":{"name":"tap","version":"12.6.6","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","esm":"^3.2.5","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.13.1","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.0.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^3.0.9","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.2","tsame":"^2.0.1","typescript":"^3.3.3","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js --no-esm test/*.js -J","test":"node bin/run.js --no-esm test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=legacy","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^4.0.1","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","watchify":"^3.11.1","which":"^1.3.1"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"d62f2f21df3dbd4c29ff6ec2ef0f9c4c87813220","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.6.6","_npmVersion":"6.4.1","_nodeVersion":"10.15.3","_npmUser":{"name":"isaacs","email":"i@izs.me"},"dist":{"integrity":"sha512-qj4y7lINGk1p37lzOuo0VNXEED7gcunCxnbaTSNdCLsw5xLKdUpLzmKDuG012xs9qKUuS7NPLTqFfjJdeqyqMw==","shasum":"a1c4770ee7cd076cb27af1631e277fc5fd16acba","tarball":"https://registry.npmjs.org/tap/-/tap-12.6.6.tgz","fileCount":23,"unpackedSize":115109,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcwyrqCRA9TVsSAnZWagAANwEP/0wfY//mxJzmIBhWVBuv\nCq4q4ZEIczLxPrtX5fJFodhOPj7JQALVzTMyX7FpXUcU0NK9l3U4TzMwz3Dp\nDcnFwsH8Q2aSJOy04rVYAZDDos+p5CDxHYfP20eMK7O4o5cGKKmHTB6nc1bw\nCXkfqqTj6ZqZy9f6k4l4TEufFcKaIlRX2Nmt2KHbmqNvOLVbSBsbQxRxDUiZ\nf9oXMZ5R2AHQFUFjU98buA5RrHggHNh5F0T96N7CulHTIISv7R5CpR5q/YMM\ndcBCt+3JPj5IUda2fU/4ek6xyoWtpT47i97AgQdU0TO58Qrh1GTMMMv7Nekr\n6GbxtR3E6nz+Zlv2Vf/ugUYXI++RrFy7KyW9flfqoB6lkGTZnwMPHOTY45Eo\nAirJNFtdDAI1vf0vWmfepeWNLB5th/0Bi4T5ohksfoxdc2o5VqsbDNaHPa4s\njofrh1GtjQkbfUgvIsXHEX5Qgk8XAOmT2/idkxx9FP+r16u3EoSid63GYIfA\nmWr2tz/UVATvdy1db2/3ZUyavxvRbaXH4ZgiypWXkl3jBo7debt+5vlLOhfp\n43vN7B8Y5tovjMh0U5wSwPNEEUrpTw7uIJjfaqXBpjQAZqh5QwEayqK822wP\naRiqlvJk4Obi+BApOwXcf6xkELLkgHigDMuseBilyDvBk8e27DqVlMlyCN9s\nc4iS\r\n=cAAU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC9SIHhtoq6NUhlOpzmj5eknq49+62UgSfvOy2D2MB9lgIhAMGs7EM3kj317rDmaOBcmVKciYAOTU0YydVX0cF7cxDi"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.6.6_1556294377392_0.07491460186618726"},"_hasShrinkwrap":false},"13.0.3":{"name":"tap","version":"13.0.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^2.1.5","color-support":"^1.1.0","coveralls":"^3.0.3","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.3","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"9200cb119a56088f553b83ec252d9e84f48eda07","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.3","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-G9S2OUsE97gdHk9iRGZkPKBh/+to7P1Tqi5kTUtKDrVA2sE2cmUMpmp0izlVtqxMRTVjiVmhLVpMdHitwoHEHQ==","shasum":"0f62fc3fb3f8ffe30a3428d39d2d45413e756615","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.3.tgz","fileCount":23,"unpackedSize":137278,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcw1BQCRA9TVsSAnZWagAAj4sQAIhcwqKu4nH/RXcDhk7C\n52ru1Ulqgzmo1OX8PMer3bh2S91J3p5+HIuagfo2sjoB7mCGuVNGLNVX1yR8\n6xE+Uo51w08TvpWZVmG4pFuMZbJIPXUcXnsZQ327wNp6ZcM6Z3c1yc60KC9T\ntWKwOsdu0k1fWDbfjV+BJtFaDeI8znY/POr257OtgtJ/iNpreXgS41oif8HN\nk3e86lZsMFomdMG35g4dvN5JvE6vlenkiYWXMLJHezY2OjHhrGfU+eKC+MyM\n7ytXaJhcM8i/dcMx9ewmGTg1fA1j7BF/vj/9xwoKw7jBX0RlsB0ozK6CO9ko\nLFa50iNwaiefJCHu2ixjsDDIwdQJOuJubAK8DAh40PCmXM5fFKlyUJSTh8Pj\n15Nk5y051tIfjq0P7W0kD1W6/w30JRIChHqFshCYUKboUdqV7KO3JrcVEO8T\nZ7PYRcD4cdAoCFXmBDBDyU3WZPIPCbYSpb8DvqPHo3vmw/2Ju26y4UnMC4Qm\nMzLwSyUCe3XPZCZAX+jPll4IRN8yJDrjwTiLolmV+Hy7s5aElIbHRwss73wp\nDIqEhSJ9K+9J2Kt2RWMr/DqgNdHRNz9128nKBAFOCiZrZNUEKoM3Bw0R6b7Y\nTjTOmUjcQYkA6WFkDQ7P596XYEk2JRBNjj6KxcVFlPC00ynOd6yN7z1tpNWa\neYTb\r\n=JXbl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCzN0SUpoJLLmiKRzSZLWQmwFLljWshQ77g/t7hh7g0LgIhALbR99uY3wxWt7X2O+guuSyIQr1a0CVotXhLmUxilplH"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.3_1556303952207_0.3061314915265745"},"_hasShrinkwrap":false},"13.0.4":{"name":"tap","version":"13.0.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^2.1.5","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.3","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"b255ef71b4127e7e8074b9bd1293bbdbb4822ef7","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.0.4","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-2H21sVgseIpwXfCaFb+2BNPmrdbQkSzNFRUbaIxYLGTFDMhVhwnoUKDMnmBnw+V7F3JPsCU0iqvt5F5X4MRO7w==","shasum":"0918fd5e5f914d2dccc8c26d53ea161d60ee7a5f","tarball":"https://registry.npmjs.org/tap/-/tap-13.0.4.tgz","fileCount":24,"unpackedSize":138645,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcxIkWCRA9TVsSAnZWagAAH2cP/3oxsjVp6kKU+7gAIrbl\nw6Nof/4BggB0B0zZo8riHuIfRHhe2UkISOQJe984hsphpj1C0dn/KDGUUas4\n7bgA470Rednv8EBYe9Yx2KnrmFccAWclLM2yaRdRKArjC+FeHUScSMla/vPp\nbJX2VwtTsr+Uzn0wRGHbpgCJssMsq2suTKSTX0rzzosX38q5KuPt0tCraPbA\nl8Nf86qdv4SdmebF/7Vv6qs3Ln3Kvf+ozH2ul0pgf7eOh4HjD+9GRBTKAA1i\nwgFJ2kLvnFcnX8NVzvQ91dXx8DTfX0lp+GUZaNyWcQlYwe34Kjk5XmCxiYWC\nFbX5oQvwcM3DrBBwYVxbadmT1h4Fbvom4llszAqGEpQ9ukDh34Aol7yfDDnn\nfIZR3qiPLIQe9QdGu+rcQY1AGfxSJecGOilfa5/q6SERvjm9BuO60xrzGCti\npfLqo04AhDchwdfwq/nPITLk5q4tgjiYXyq8nFF8ts4KPZKlo5bIMe3X5TON\nHdZPRPP8VcnNEW5DsZsst045oL1mqHeaAjSHGXxEOYV1nk0EPqYJQimbLiFL\namWpSzngZEEu0BUGKhAbhY5X9oxcBOi+MLaUow6+Xd6kIVMmhhk2fKpbEKLL\nkGfxU6QPGAk+pXpfEtm1jmCU8G6O1vBYqx0wKZmk8+2xcLagOuKMBrK5t6XE\nWes3\r\n=B37Y\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFJLmuZdFSVOAvb42VkqCJJMJJ5fq3Epxlyb62UcSYKGAiEAmd8DCqOSvc5PMIop3kGd40g4QrdFKJR6m3AM0ZmUtcU="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.0.4_1556384021526_0.9312373291872618"},"_hasShrinkwrap":false},"13.1.0":{"name":"tap","version":"13.1.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^2.1.5","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.3","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"38e4643039d23c2b3ba14ef043fabe67fc33b590","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.1.0","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-EPCYlkEg4V0rk2fiG8A/WH4FrXEfoWkoiwuGidT3THhOpM4uzgyyrFnYjLj8h26LvmM7OtRh7N+5FIeRGoAJ/Q==","shasum":"d33db5cd95f9016541b84c753e35a8cb38e7e713","tarball":"https://registry.npmjs.org/tap/-/tap-13.1.0.tgz","fileCount":25,"unpackedSize":144803,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcxddXCRA9TVsSAnZWagAA0FoQAJ72wKIaEU+rWrkAT+Vo\nGVkGYq7BKuacwS8rzqjSwC+6Gp9VeoglgQHRwOw9TmxCCn0wWaUWJVE1v0M7\n9rNZfwRneN2N6c9cAKaeMb2Y84NPOyIUKVvQi6tV/KBnL6elQRxI3BFfLNTK\nIPyeMrGKu4JAymEiQBJIDHMVJomzVLZa11XNGFmhG3AdIXLlIyScolY330LR\ntOFPRfRwRDEkIjrU70VOU7fcAJeN9xKSUHMUZEbb9tB8DMl3vGrOpz7KKbr6\nCa1sfOefNTVxeJKwwHSnfWjatS9maPp7ffjzjyJ86X82dyYziEFDLe5Uovhj\nscEXusmrCwqHKIZ/m8yQ/hEZ027zUzx6X7HJ92QuGGUwYj7sGsUwbwyY6Hc8\n/SYkogotRJ5cL3Clok/esMg6YHHEcUKojFqo07or7SzIyRolOAUEU3NaA08V\n//B3Axbd9TSbCVOcVOqRz3uKGqjs2/sPSu9X9eV18wFEuK6TbRUOwq3SGDkH\nCBHi49hQuFUFjj+b6bjS+w5war85eftC4Fjl5nR0soKkpJ2VIHYP5h8V3oM6\nrxWoo1ETj8JMuPoHzktjVn/CIJmgZRJ7NFmFrp4JY2wbf2g/6y8LnsH/mjSu\nXj2QMJkD6kE16ZvnG/v9QJ4I8sTa1x7TiqGM9ELKgnjHgBLE84Eg9XplKvez\nqhzM\r\n=U4Xl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICGGIBonKAwA2iNW3ahyRqZUDo9wZjYDLmfzOrnZqO2WAiEA8X52/mWKwMHX8MBYGt7KJmfchawGtAHfJjNllbn6D/s="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.1.0_1556469590423_0.9447143604107546"},"_hasShrinkwrap":false},"12.7.0":{"name":"tap","version":"12.7.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=4"},"dependencies":{"bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","clean-yaml-object":"^0.1.0","color-support":"^1.1.0","coveralls":"^3.0.2","domain-browser":"^1.2.0","esm":"^3.2.5","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.1","glob":"^7.1.3","isexe":"^2.0.0","js-yaml":"^3.13.1","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.0.0","opener":"^1.5.1","os-homedir":"^1.0.2","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.10","stack-utils":"^1.0.2","tap-mocha-reporter":"^3.0.9","tap-parser":"^7.0.0","tmatch":"^4.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.0.2","tsame":"^2.0.1","typescript":"^3.3.3","write-file-atomic":"^2.4.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"regen-fixtures":"node scripts/generate-test-test.js test-legacy/test/*.js","snap":"TAP_SNAPSHOT=1 node bin/run.js --no-esm test/*.js -J","test":"node bin/run.js --no-esm test/*.js --100 -J --nyc-arg=--include={lib,bin} -c","test-all":"node bin/run.js test/*.js test-legacy/*.js --100 -J --nyc-arg=--include={lib,bin} && npm run test-browser","test-browser":"node browser-test.js","unit":"bash scripts/unit.sh","test-legacy":"node bin/run.js test-legacy/*.* --coverage -t3600 --nyc-arg=--include={lib,bin}","smoke":"node bin/run.js --node-arg=test-legacy/test.js test-legacy/test/*.js -j2","posttest":"standard lib test","t":"node bin/run.js test/*.* -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=legacy","postpublish":"git push origin --all; git push origin --tags"},"devDependencies":{"browserify":"^16.2.3","karma":"^4.0.1","karma-browserify":"^5.2.0","karma-chrome-launcher":"^2.2.0","karma-firefox-launcher":"^1.1.0","karma-mocha":"^1.3.0","karma-spec-reporter":"0.0.32","mocha":"^5.0.1","standard":"^12.0.1","watchify":"^3.11.1","which":"^1.3.1"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating\ntest scripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running\n tests (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates, or just get\nstarted with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over\nto [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why\nthey're the greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge\nthat balances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have\nany opinion about whether or not you share those opinions. If you do\nshare them, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run\n directly.**\n\n That means that it can't require a special runner that\n puts magic functions into a global space. `node test.js` is a\n perfectly ok way to run a test, and it ought to function\n exactly the same as when it's run by the fancy runner with\n reporting and such. JavaScript tests should be JavaScript\n programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the\n test file that is easy to determine.**\n\n That means not unnecessarily deferring test functions\n until `nextTick`, because that would shift the order of\n `console.log` output. Synchronous tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the\n test as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to\n doing `test-runner test/*.js`. This prevents tests from becoming\n implicitly dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of\n assertions based on some list of test cases. If the first failure\n throws, then I don't know if I've failed 100 tests or 1, without\n wrapping everything in a try-catch. Furthermore, I usually want to\n see some kind of output or reporting to verify that each one\n actually ran.\n\n Basically, it should be your decision whether you want to throw or\n not. The test framework shouldn't force that on you, and should\n make either case easy.\n\n5. **Test reporting should be separate from the test process, included\n in the framework, and enabled by default for humans.**\n\n The [raw test output](http://www.node-tap.org/tap-format/) should\n be machine-parseable and human-intelligible, and a separate process\n should consume test output and turn it into a [pretty summarized\n report](http://www.node-tap.org/reporting/). This means that test\n data can be stored and parsed later, dug into for additional\n details, and so on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more\n tests get written. That means that there should be a relatively\n small vocabulary of actions that I need to remember as a test\n author. There is no benefit to having a distinction between a\n \"suite\" and a \"subtest\". Fancy DSLs are pretty, but more to\n remember.\n\n That being said, if you return a Promise, or use a DSL that\n throws a decorated error, then the test framework should Just Work\n in a way that helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no\n more or less.**\n\n Stack traces pointing at JS internals or the guts of the test\n framework itself are not helpful. A test framework is a serious UX\n challenge, and should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about\n your programs, and provides much deeper insight. Node-tap bundles\n [nyc](https://istanbul.js.org/) for this.\n\n It's not enabled by default only because it _does_ necessarily\n change the nature of the environment a little bit. But I strongly\n encourage [enabling coverage](http://www.node-tap.org/coverage/).\n\n9. **Tests should be output in a predictable order.**\n\n Even if they are run in parallel, the test _output_ should be\n consistent.\n\n As of version 10, tap supports [parallel\n tests](http://www.node-tap.org/parallel/), which\n can make your tests run significantly faster if they are I/O bound\n or if you have multiple cores on your machine. However, even when\n run in parallel, the output is still serialized.\n\n10. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't\n require compilation, then I think your tests shouldn't either.\n Tap is extremely\n [promise-aware](http://www.node-tap.org/promises/), but works on\n any version of Node.js back to v4.x.\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](http://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"bb8a3b5199285716c6abebcd3f9ef8b5aadbdd39","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@12.7.0","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-SjglJmRv0pqrQQ7d5ZBEY8ZOqv3nYDBXEX51oyycOH7piuhn82JKT/yDNewwmOsodTD/RZL9MccA96EjDgK+Eg==","shasum":"6e0c40eb7ec1347a9311aa3ce9dee098dc41b566","tarball":"https://registry.npmjs.org/tap/-/tap-12.7.0.tgz","fileCount":23,"unpackedSize":115414,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcxi0LCRA9TVsSAnZWagAAXEsP/ib187NXzHus8Pib3S/3\nAo6L/qkMQ4LfyGZVh75ePBC8i48YCnIwa3tfqOnMZgN84ak3jpjtsjT6Cj4z\nJIrjZAMoET9eclBlq6adHj+5enEdxMQjpiQJXvrGbIodV3Mny3NoTJpPlRrr\ns0akT+vRtBQsECPp76Cjdby2cHEUd5QAeD6kkQjimXxpvSa0GvjawblRLH/R\nwnVPqJaCyJGLeXfrTpRK5R9+aesGQgQyKJ8H3LsDOedXxIVb4APHR7h0x9ST\n8cYuFYkGu3izd40alTf6aW1qDwhi+aimlCtIeTVs3MONdDLgpj+quDC3jzQP\nGYgYw2QrB96IuIu3C0BOGMUnWPOE+v1jGwakHbu4UkkEAFOdzvDYcEN2tIee\nSg89pIvf5t+kMiTo6CxcO9P2vVD+4ZxL6m0P/Il8QoOfqE2a8eHt8vHwihTg\nX8GQZHbzPqZ29AbZBRk4QeuOaURVro5RPPv4+yl0H1CWCArwjNydg8o9GIiD\n/8EtFnVOfIwkoYMe25G+LHXknqUvf921V3hRe/XTLEAgtAxWz3KbHtjXr2Sa\nFpDlMtgfEgR6IGqHPbYBfxwGxVtX6TUWGlu9siqOd99ImfjytK4V5ivV6oss\nWrGPjaJ4zy7IiNM1h3e5os6P8xkm+psVLdy5qC/B4hLa42OFQ8EKvGsprx1B\ngEFK\r\n=UihN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHyeMIX7+Q7wlyqqFY70ReERLEl4DFTmaxOVszRPmA3sAiEA/OfNUIv+nnlRHk8sQ3ZLhPW+KoT7PaYkC1fxKqWWYb0="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_12.7.0_1556491531124_0.6865092805941311"},"_hasShrinkwrap":false},"13.1.1":{"name":"tap","version":"13.1.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^2.1.5","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.3","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"d5c80d7347eda1bcf1adb9bf9dd10c8493aec64b","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.1.1","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-uhxYlsIUC/OlAts+6lAcv7iQC7kWN3XfSkPtUywJjR+K5BkxXY1R1BjY/4RkKBMFvFLatr5wt3+uP6A4/kbCmA==","shasum":"87d4fbf731c1aff2e2fd1dd10af5003583dc0548","tarball":"https://registry.npmjs.org/tap/-/tap-13.1.1.tgz","fileCount":25,"unpackedSize":144838,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcxymsCRA9TVsSAnZWagAAhZ4QAIiiTpXVyodNUlMqX+NO\nl8d52xW/7JjpVzQi1BLDW7zb9KiBNrzj5wiDAk1gT7B1g94e7wrLiZ7zCoR/\np3yxd8JbumXWDqWQjCSOvZAuWFbxlCLRUpNDF2+b+B/4QsZlXKj4N9F8Nkpt\nJ3Sp8/Uk4EHgmQyzyriBHcMNOZg6s7jko/zZG23MXXNXuG0CfciZBfOYs9Et\ndgyLh/wh3lbBbVV5d8e29/yvL52rIJAPN9/Ff/l7A1avu/lOxfdJOfPgyMYX\n2jNcscJzkqeOe5TsKy8F2NQlExH+oGFf5vilVQwgbXrQTWWuio3tE2+UQ/a0\n8GURBD2ha2rHslSKxNwBB+gsfeYaJ22cgB6PmtzbMDVFEs9XSZ6w4WKH0xN4\n9sV7dgLxGNFeDdHCj6Z0qP+1o6XA0SHqD7ILWo2cH79Vzf8W39hNjOkR/mcv\nYmoESqY3kfGUi5hZgc7F2PBeMziYAf+UHFyIRMKK5jDx/xeQnKPLNqko30M6\njZ5ak++nEA7zTK3MT43p5rCeYHGWyKXaEFROzhABjVV33hbeD8lDU5d8Q2vl\nh5iUNGLmP9ShVJJTklGSTxx9QcqDX1nZPmuFCYwDioTC/3m8b4ECEjLHZZ6T\nJQcuutEiKKE7pu/xUDKusDMhGkG8OlAsljVIniTRXHN4l6W44uWFgxM5l9fz\nX55j\r\n=l7RI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD3gj8DL/RtYg6HTKdBnG2oKUT9DoGhiJ4u2KZzbirHPAIgOXw25QitTI3L4A8O+hZsVZBx8kBTpzOHSxw9cOa7LNk="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.1.1_1556556203368_0.04719476358313379"},"_hasShrinkwrap":false},"13.1.2":{"name":"tap","version":"13.1.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^2.1.5","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.3","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"261edb55c604b68a3c001b088a02723cf40fda44","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.1.2","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-ALs3MbwHvq1BfFwE74Tfi4ypCPvg4+C6Ix4BnUDXh8N3wGGzVqBER5j4zY7NloPUUWlS8Td0OdgZU5Am5DJH8A==","shasum":"ce273a596b0ff822ba24fe96f9f037cfce3e2f98","tarball":"https://registry.npmjs.org/tap/-/tap-13.1.2.tgz","fileCount":25,"unpackedSize":144918,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJcyewpCRA9TVsSAnZWagAALFoP/A/fM6qmmitXPrgnc88Q\n+AJIHHKqHV2/A1quKBzkboZQrKK5IPA5txliq/qQ7GkU5F2QSEPZIB6grqda\nmMiXB0dHafYjkPX9r1Ek77XiXeVadFr4XoFK5zo0yq55v/r/TtQ20lzE6Vsf\n2pCDxkcegexfQmGUJRm7c7NAU+0A/o09eBjHGJbiacc37pmaTba2yGiQf+3W\n9B4He62osl1O132tyl0OB33ani1puqkJ7zEUIH1FVPHb4LhpUhbvY+QjaTh8\nLQHXH06k3JS+mgm823CAfp6Q5ruRQiAdBEA3F0jOXy4lVDFfPIofaE7wJnqC\nQFsPtmLTXiZAiILFK16m2QkQtPh2ckymTPGgzQMG+GPrSKHSmkF88v+BnYFQ\nFJiiSAZuA+ToBDpljgtJcIh8dpqQyNQFhGWz0WUJ1KHh0WQL/MTIkB74FZ6R\nZtrJXM5V1KsX9caSk82zEwFi1hr3aVQ+ZAlVaiirbf89PZE/y4H9AX7/Kfv9\nRqktVXWKQMJaQqgjQdaAIdA6bI2QXjcUnu2ovfM1SH4FuOcU4FkTouMwSBqB\n9RBNQMzqdTtJUszcHklvPDU1lFKfOGjP9yn+vaCUhgui+0P0GmwxLal6B4YA\n62vWofh6JPGdFq/u9NtRCW9xIR+zxA1//K1uFJ4v7hTCXUCJQQmAPlpMWgBF\nq0Oj\r\n=vydm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCefmLeTXNCdxnpb/XjLeUslGz0cWV8n3p5Ukqce9ahjAIhALm/af3nhp17rl84lORogDNoEOPeXLQ5cGWgwI5Y2GQx"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.1.2_1556737065000_0.5643374687516878"},"_hasShrinkwrap":false},"13.1.3":{"name":"tap","version":"13.1.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^2.1.5","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.3","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"6f014d0e875338e105dc01859a178c72cc5b1bde","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.1.3","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-wk2xj02PscQ7HoInQplUk+jZZ0C7M8aPJmugQR8kFjjzfR7R20W342P8QvUq9hx5tBOcBWEqDySzQqSPuLb90w==","shasum":"c0237c3e36a63b370dc6b7304471bb9312025b83","tarball":"https://registry.npmjs.org/tap/-/tap-13.1.3.tgz","fileCount":25,"unpackedSize":144930,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc0h7iCRA9TVsSAnZWagAAEQAP/34hTd7nD4WNg2Kvvvkw\nRIeRfm9M3nAZ74O8nmaHjEtydVAVxHg35iy3ngJExJ6AWM1MBQ/P9dXGLjUF\neEpd6GqwU0Wcg9fojjORNNdsuQaBbc1Bw4VdQkVjPcKR6Ce/wA5wabvVvqpf\n+9yOoJY8p8WXli5XX5qPJtQMqVuuMX3QXzvlyImcRkGOBRWEA7FbYtRoFA6e\nUPjm39dR7GASmgoAAm9j8tfCOGXhDdoTE7Mp4O1EyV5z/DKl/JO3/ir36OAj\nKmZjPdGArZc65eUI+fxxNRiPE35WluTmj0sR9a//WlabB9BBX2M8yMaWCJFo\nUTINfWVaWHR9RAkLfT0aSPyR49lV27MHb1PYV9/22SqWWvG2PxG9AuH2Rus8\nS1s3aPTMCLHa7ck4dhjQUARY4KCGzQQKNuZpuSfbk8iuv3PggyU+w+RrFhCu\n4ip4VkH79sZVIe2vFB8Xi4ueMH0d95/4PljVBkTCvs8bBJtaH9N79zUeBLW+\nehh3XqQJq9e/7d/TdPbpuA8r+wDks8sHD1FX43N1Lev5Kd1MKiF33g4JoP3J\nTAVHnfj2YxuoCIpHs4i41wmnX5QcuWERnn57KtEuyAnaBUHY6liO6rbMtyrb\n3sYoxmRHm6dI6gN/vyz51qzI1sIXR/YQ53pAy/mx7NeqKoR5O+zioJhiaIL9\nI7yH\r\n=Keet\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDnP6KeLA0s4cLKARvi8gwjFKNM/Rgype+HYCWp9velNgIgHXLTxywrBgqJpJ34WBRWksBJMOtBzNbkeY1z0ZeOeFY="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.1.3_1557274337918_0.5248227320890615"},"_hasShrinkwrap":false},"13.1.4":{"name":"tap","version":"13.1.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^2.1.5","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.3","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.3","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"013470110639d5878f251917373b4b04b9a91e73","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.1.4","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-etYohXbexS9hIDOzAfVfTq24DggA/QOCq2pezmkssyoee54/LmmdL+BVNNCcdbKCOKft5BkkO9q48EKQvlkuxA==","shasum":"0d278d1db957d3bae3afe1c8f9b643071350d48b","tarball":"https://registry.npmjs.org/tap/-/tap-13.1.4.tgz","fileCount":25,"unpackedSize":145487,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc02YcCRA9TVsSAnZWagAAI5MQAIPNtbR0qwk6g/k2084H\n1+7jNwDTyyoM+IvNorDy4ClSeWPGMD90FCJQDzdkzB6HTqVzHeIBwF62ecT0\nsTRPyU84u2VJr/TQazxeiD4SS9P2ikYUy8mRhrG2166SaMABJSVHFIHkjjPy\nylWJsduCpkGURK+waksGkpeUbWG1VJ4tnqX/dszzf9Puj2s60u15ePXNojqa\nkyzJBvMSW8lEVfWkwcnMMNDY3pT4DBfZAo75onzXDsCLMledeLg0MfC4Q2lt\nIea8iEZ3WUFhChMWWvWpsqzg9zXQmpMGTzQimj3EUcRXXIrmRXcCi6zG3tvZ\nIqcpRbE1yMNc68rHkI9giC08fybJ+PRtHR7pYNVy/2tq4TXQwnOO4LNrRLP8\n2sTzPsmODNnyBYDWGNJ+DNN9bpkpkkxIdLA1A8eNM9J/+z3JeyLQ84V/wxPT\n9OzEbaiakkCdIieqJL0g56XjJJXOtVl3kIwkEahYr0jYlxFQKKel6ZV9joQB\nItHtZpnnqVh9v05RntCielPE+Wnxk8rC2AbXr+CTxlmyghY4tdZKIf8+xD5w\n5anbIlNvwty9ab6H2G0NYtVClEAcD1gmEM2YY7/0owWv6XJdNYUJiZzx5GVf\nsCEvENrWMG8iE10jIWTcq/hYxfwKo5/Uc9WX4dNdmD/6yX7N1L2srfhChePM\nh2ZP\r\n=Dw0X\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDAZ21hQ5RMk9weZkxF7dz2Z7VpSy0wwyRaeMpTiYJxqwIhAOCnYQmeNq8VVghlUzChKv1fjwXd3hCKaiH4iQ5OHFCu"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.1.4_1557358107368_0.6225222136768656"},"_hasShrinkwrap":false},"13.1.5":{"name":"tap","version":"13.1.5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.1","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"f5882bbae54b969347b516883e2ac36587c98c34","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.1.5","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-MZBjvgnLDJK8TCQJVEznNvaw1D6HQ47ZbbxnkL7088hv5szLSacDNHOS+mOOrzRPZvk+ey4KXSDW4lq5QJkMCA==","shasum":"1785e46e274f8ecbbe0443bc838bd5823149b3ed","tarball":"https://registry.npmjs.org/tap/-/tap-13.1.5.tgz","fileCount":25,"unpackedSize":145487,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc02c8CRA9TVsSAnZWagAAkTwP/2/TuHambYpeLapW790A\nEdjStQbt93sTFCOXpH6ePFcRr+/Yw1CpS2JBXmHokv037Ic9aBnEJcO9W7Hm\nKnQ+OdVeIsIUnbSeO9MgM+81k3hwwHBN/QRAspgV1CNafKE5991dT0A1bF/r\nziELvmIfUly9fnLD+KWHzk2u3bB76w6US7Rx7NgMRBd9lm5If6XGIUKcIdOp\n/953gZLR4m91LNbwE8MWkNthP1M9Vrgl60hWfmKDGcPSsr3RcifmoZaTgeXx\nKfMmig/uAEtdzuO/x5GN2WjWpnluqkIX+NxoOSOJfdklQujY3hID29VHjkOe\n4nKwEy7sYLcw53gOE63iV9RyzWh9/r7QSdJ/gZ7ZnrP2srzQBYulkmcu1prC\nZJC+E5l8N87VtYG/RtDImxMd2YWmDLf6tdtFuju/8AkPJASaQSrJWf5pUWxs\nqTeLguNy55KGW8dQJgmF1UIU2dXTyi8QMtvPfuSalHRWjc9Aj+FRao7FpvWC\nd1y3AIeTpmuPEt4McogBN9p26eMNJxKHciAlzhlOxJRskaW4+B5nL7zOvE/G\n3/cOuEY7qAQDsUgyIMPocrSuH48KYNeTWPfM2OMjE1/zrOJmzUX2WOarVo5T\npWOqqNxOFQYfm29ii4igmgENSZeDBZ5QGy6nM+6BHxKYcfWRnUv6GOuEj9Fw\n3Hr1\r\n=J95h\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID6HjLi0uCqvlF1awVoTtMHol43kNBkAkRmiOY90124CAiAbqzwYtBrNWPR85pxkFUHWJn1STOWYnads3Rdzfy96Rw=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.1.5_1557358395733_0.591882156217481"},"_hasShrinkwrap":false},"13.1.6":{"name":"tap","version":"13.1.6","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.1","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"f42487634e9a2f7d9d56f5354023b098d890dea9","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.1.6","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-pgFbhB3dzw+3mR/8kfytoAxxD8Qkdn8OiwEccjn6RnbhQrxOrgMWaRVwtMLD6AT5bD4AWye1fnGHP2L5d4hzVw==","shasum":"fdd2c2f3eef02575b78b58fc56403ff0c1059430","tarball":"https://registry.npmjs.org/tap/-/tap-13.1.6.tgz","fileCount":25,"unpackedSize":145534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc025RCRA9TVsSAnZWagAA3UsQAItgXFm2hiP4QJ9vZR0+\n4A73IIcfYwRKPLA7RNZi+f5En0zv0A6McsVxrtugAXfrg/vluxjFbzBGNO9c\nGFnPJakn59eVhajMi6f+N1tqQ5fLuNlyOrS6AMFSCAD/C0E/V0r9o63x6teL\nBHAhas7VgqNgqIj16Pw+TRPNlpXur+OZ8bdZ+gm9nCNnHm2xTX1MuwqjJhxa\n/Gae81jVVSSTG0hl+w9zJstKFqRj386hZrRorhPg0D8tUqSk1f5kS44aczdT\nc+yGhnmFU4/BWD87uESjGE7dm00G69fH1rjWo1+v5tJeXrIB90VM/v+MfZok\nTNLv8zuLHk0iIG6UzmgyyObaXjFmdjF4ONFnkgJOSOvSaVuclxdxm3urKX6S\nIyIFUuFHB2IaIIGBtS9BazuuGF3vH8roAk4y0SzwFxdElZ2qlkXhZWRNcNN1\n/0M6Djf55+qQn946Wvy3WGR7kSmMXcSHH/CMHhcbpjCbF6nLQiMtb/M3/WcQ\nHY7LLxt3I6Prno0rXFaiRMX2HfFVXVyxhR43mTU9wCfkiVN+ucgqY93UcSa4\nxPIQGX8zTOcitum321mXG9elXpciH1xkMqRHbJbeklOxZNEK6svzgAYTW1xg\n0I2a7X+IK9hYzSzHaRe2mk/RjpSXc8sq7Aytm1k70VGtHZa9ibVyP2LWqjnR\n0q4m\r\n=reYl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD+UBDmitS7txSnXFVmzX3OHXO4fDanD2Kw2w+3Oy/PaQIhAM51+SOOltDqnlm4RYCUJMtgMrcdzgSWyImHlRm6Cqvp"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.1.6_1557360208463_0.33397286901922985"},"_hasShrinkwrap":false},"13.1.7":{"name":"tap","version":"13.1.7","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.2.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.1","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"db17ba936fe40633ef7cc3cfc959e97ef6c0032e","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.1.7","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-l88+x1waTk4fInsC52Kty4l7tIaOGjsUzpXphSPMQlnyaI2IeQy7mH0xHu8dTq7HgxXf6GR75nOqmur9Yrh1NA==","shasum":"4ebc7c5b921937d61205c6753720a320b7cc9f2e","tarball":"https://registry.npmjs.org/tap/-/tap-13.1.7.tgz","fileCount":25,"unpackedSize":145538,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc1bjiCRA9TVsSAnZWagAAbi0P/AoGIQ/o3OmrTkIrVLYK\n6cBi1w/Cq5yo+GJB2i0AKv8rJfB1V1O6aUtw13DPhKi8fqpUSPV3smpjfwem\ncdO5KfYnlueDWFHmZA5rTbGrUuMWfNhhvYxY8hZsMMBERfbYu0zH5yBhyppj\nA3Jvp1NaY33LynrDF2QKA/Uhx16aRV0W6Gz9XZaLBLFDfQ4Qae5Q781LANM5\nDejBf7mIyJ55q1kHJi2OX0G8woU+6w3m/46e1f+wm8NK7S3nE/mOhMXykOGD\ndTsWBEmS8qfQST52YdHTysI6qzuytEbDRAp2NneYJDyyosJx80rTUyWEMgUW\nns8iCETPbF8pcInqhdbpD1+vv1zc+N4BdkvRjT7sPkgzu1rkeimqBrfaP56F\nEUJ5+wmxpSfuGHtJ8NcrDD5Vb8rf0HzuFXTx0x7yPxx0Mmvf07j/yJkha+ig\n4Zq3lxtXxpE5cRyax15hluY7kKAwRzyal7pGaIkpoUFd55EJ+D48SGjf/KAT\ntI7+wVHXY6B+m6748lONCLRcCEXnlologZf+a2+TJu7Y8PABts4tSHchs2Lu\n/z9m0GIdpG1Kv3IjXzCDWpspHbL+wgo30cSp/zCFHNkgo8ftrnWAknt2/P9o\ne8eufO4vxg460kZHuqqcZnyaOMwELT+cRvoI7u7Ulwgwf0x9H/dWPxoEBZ/O\nlSJv\r\n=/WU0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDpcpgdODQLeW/eNFHsqASLTyIMlyD6sZ2AgmTpbCzh/AiEAuvq5ueXxIdCrlx8sVkQvFTkAzRcClsMMi3CYXYxo9iM="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.1.7_1557510369357_0.40936496289444024"},"_hasShrinkwrap":false},"13.1.8":{"name":"tap","version":"13.1.8","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.1","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"d5d3985142da6f40b9e64a884084cd364b8fb919","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.1.8","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-WimjKgEZPOxSufS6Vfo/ACQmfMdLGmrIi9ZL6Q1mZpHcbdnBP4DgdIJWM+PKrLS4sbrIN2trKKlNO0QkziE1EQ==","shasum":"497ad2fd5d1f25fb88bae02a373830b75729e554","tarball":"https://registry.npmjs.org/tap/-/tap-13.1.8.tgz","fileCount":25,"unpackedSize":145618,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc1mAKCRA9TVsSAnZWagAA1jgP/3IoE3/vW5pkpfXYIcRg\niXi+/xz3YbaBXGxpg7P2UcZAyq5frGA2UCYZmPEUfe/X/4Got3HIb7T3xvQi\ncq5Wwr+nfv2yKTuS/R5e0d4uw5YFMz5vNfWO2WNhZ1bx2SkTGfEB1F6MASP+\nYKh+JirjO7IO3+LlUeMUVFlc6dd1tIs4Em38eRh4HgFHiFfmrVb56v0Flh/3\nyyXg8Xv+I8dFbcKI8xxgeY8mRQZIgbGtfD8FqykPeGeUlFxhWfoXtSj5eM6c\nbxqyba2zozQN9stQUpKdbGFd9sZj1+m68Js6OxrbqpvkIOV2JxXPuHFntZLv\nTW/RLCzd+xKCL7K+ADZEOv8XqvkLu0IxFJj6hpNxgm2TYE+L7erWX8R9K9ZI\nu9IugmzjjsVFkAkWeqoUJNzC3e2EyDJZJ9tSqxpR/PXnHWTwpckZk4SdJhOE\nQNYMvsuOBW5l0igsHGknkq6KWfjQ2sCcmMUqHZe9hFkYWw7a0GpYOJX4jLrf\nCMToEPTg9S8NY1XDgaG0iMbXK0i6j9w22L2QM7GqnwkYVH2LqbCTaWzVVFJQ\nrxfT/yVakpfMfTnayx4DexOuJ+ReF3fxuqmWs7Xf4DSijhebzg3QojpXnlW5\nxoUU8VWQpFR6wwKkDimX6qL76l0BHjxm5gW34jWAeObIxaN0vqZljK7WcbCY\nCmqe\r\n=BhW0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDZg5j/qDlUDSgyCAhzEHhtBKapxDxO2+oKf4Jhz5eC+QIgDNACV8+qQwCbBMa9NEfjUR1vgDNVFTYJY8c/EHCZ3iQ="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.1.8_1557553161328_0.7239504940347352"},"_hasShrinkwrap":false},"13.1.9":{"name":"tap","version":"13.1.9","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.1","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --all; git push origin --tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"0e25e6b696b8925e98bf5ec436dc20f783835e0a","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.1.9","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-phlSd1Y8ZelPd1yN09kqXwDfYzHPkE/dC/4+whvO/N9818R/1y4YkjqiIPxrw7eaPjr/tAkIAAZRYw76eYVMkw==","shasum":"af131986fa225a3292308935c401fec3b516cc57","tarball":"https://registry.npmjs.org/tap/-/tap-13.1.9.tgz","fileCount":25,"unpackedSize":145695,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc2vfwCRA9TVsSAnZWagAA1kkQAJAwlLQGU2AKNfApAnDC\nil7PlXfnCccbJkukl1IjWupERqiMrzTFGc0NaLRLvPGsxlUShxBhtnfP5G+6\nLriq4O07bAde45R6JYWlupwKVA93OvBZtjCQ/A9ihMpmvt1hEgyFGq+XRqcA\nXuMERoS4I2n1TTdm+FL2GkKYofgqyN4PJBP6InSslzR+sObkcrReTP3GAeUP\nRS8lcAZJPNugC4UFGmjsqYKjJjq9efMUdugn4AVQnaRCVXBTwGVVJqU8CRby\nxV+PBZY/XyiZ6URjYDMKdYHh0eBF2Hz0YIiPXtWEKu1NLp1K2ysvW45fkKrw\nuux5P+lQNQYbg7aX47oclGZW98+A8benZPUOQOl7de4IQghylWUeW65wE8Vn\n/f0h/RpoG5T44a3HqFR+HHmOlnQShBo77IwGt5tm2uOy9tBLz6ckI0XCWFXW\nQfRVtPjQxI87bsdz4pIV5MOt2HePk6zJyDKo08yuIRrILwNeAWhfNUs6Q746\nkTPieFLuoeb+3D4gYm+va7ZJioC9KpXCk/RF5XbY8nRbH9MoHAqYHScKlzfd\nwqBuQ/a9cPzVeu9vzACUu9cF/NYgBDLzwBp7cBlFz1yc8aeGu3MQwY4hroYT\ndF3jyrkEjj+pvze3LaYw682fY0ULw+yy/pBbmpjxt/ESVyVK1IeAw/lpzkFk\nu8Tq\r\n=qFxW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDSymJGUdz8E1D6mGFnNjbN5yBYS5AFY8HCBkNDyXR0BAIhAJM7tMW5Q0N4drdvT4+BRmAo7LwU2bZ3utUqnkC1KxR7"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.1.9_1557854191658_0.7554674258781273"},"_hasShrinkwrap":false},"13.1.10":{"name":"tap","version":"13.1.10","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.22","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.1","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --follow-tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"6dc593a267ea0a6c5795e71d7091a723e5354aa8","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.1.10","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-2TpQzzKsAViFR7V6QoSB3U3PeMzdliTczxQaTPZsEb8fbpSjp9vf3lajdHeLpHyqQEiU8v05Lf8o9lfg5n6VUw==","shasum":"427b0a9ea72ca30180d9682d4cf7463eb30e9b37","tarball":"https://registry.npmjs.org/tap/-/tap-13.1.10.tgz","fileCount":25,"unpackedSize":145706,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc3f+dCRA9TVsSAnZWagAAeRcP/R1UmfTR6FgQR7T9f1no\nb6wEK8BQPHPvJwagngAEp3tSpFPGDoE7tADcaj+Lx+Kywp/jMf8o1g7V4uhN\nPZwdPKnFhShuBD/LAG5RhGkyeXqcZ/vV2q+f81fF/ZgIv1T+NFiEZO3Z8pRI\nc00h+nTxM+lUgn9QMLvsZWab90oysBpGbHYr4i6D8ZHIWBTepui+9lHKBLoF\nfAELuvlcnJrHHAFzT9/zU6xKgdeUcbvBYqmvAjVt5WKwmxNVTb7i5Rsppaeb\nMd59UjffDb3Em6uHiYloBSUpmYzivsfrxmITfRhlnZuUTtXIxUhzyGB59GjP\n1RzsHZ5BQO7KwCeR55M7FgkAf48cJDm3NGpo0cCqbiv5/5n7uX8/Xh0MxGbL\nK8oKlHk/sh6dMhGSF01E9Dq6y3C+U2Xlv4jUPmA8O2ffYlvknPqv2AvdV6/D\nwbUWwQuiLBXHHpVGhtDpWhNj5mgcZOieTDcSIZnSKV3LGg4Ao0NUyAMjj+/7\nJF8EduemDi7AQpgI+2FXGAqpNzMH11Kre4ydQ1H5ATdmzmi6VESJIyxy3szV\n8HBx7pZwk5pK846ZfQm1pSOCw+0PPDgjWPCd3vSbuGL7DQPQA7vvL6VboEhu\nNOobI8V7vRg0aTaOdTZm+q/xFgnw/tpsOtzc/2fPBTBMpqwDZzVrvhGe2WG2\nNZnA\r\n=G2gF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDNSCbjlsHB5Ddi3Yj+N8B1yBDRB38x10K2UKGuMa+4RwIhAK+RceSA+yC92SmcMAcTpAYrWmQOX/WJWp4vkDtKTEu5"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.1.10_1558052764335_0.4788094232870377"},"_hasShrinkwrap":false},"13.1.11":{"name":"tap","version":"13.1.11","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.25","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.7","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.1","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --follow-tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"c902175059f8f96d6c4d8e8161bbc5e5b2e180f7","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@13.1.11","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-SgI0T/Na31XswviNA8tw0d71qOAZ1qjVMxpPO3XSW6372bVbz8pOR8ll2S4EnA+3yRfDSKN/rtj7gD+QjHJ2ow==","shasum":"1a42923f1365143b18b264f40fceceafb3e4e8b4","tarball":"https://registry.npmjs.org/tap/-/tap-13.1.11.tgz","fileCount":25,"unpackedSize":146942,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc3wJcCRA9TVsSAnZWagAA1a4P/2QNsGRCuWtFmbnCf2DO\nqSOei6BILzkxq3jjpR51yavzwYuIRcqXvS2NwZdXqMAQpH8x1+DxpU3I7hSN\nRzLdtMRlJbo/DqUpL4m1DSbdfVUXw94iq9GGi4bSW2rSksWxdLHSK86XWZVg\nqylaPIc+GzS8galxpSJovQ/smJiLDgITccAu3HWh7lqOG5CSJURb8sVlSLO6\neQk0SmBlo3Y1N8riclI9EaMCkmNfgpCYsjAF4dARrbWJ6GK/sNbzoE22/mtl\nZJZ1XhnDVSj4/u/vck2IDeylS0egY52uWW3GSaAiHKfjiHzi/R6mov8QMyKB\n3dttLu0NDUZz4SZfLXdGfBkBQHBVOfcFiiC/lXxPY0gbQpsK2f/K7DsEu751\nzzlGhxuShOu8TDAu9hRwlZU419eiAD65XfK604anuj6KM7BW5cClS8IIi72K\nKO7W0W8uc3gwTdE5Tcqo31tlF3H4yWyHL+G/P2j/GACysm+kmUrmUCmV3Xbw\nV6lPhf9+8Io0+5Y0ikYHgMvTPj72rC8u/6z6q7RiAExLKUHg/amsyKNwkQBI\nclsl45HjksROkO1Nd/rru1BTrQHNosFyMTHfxp4vXLpEh2SiKfvoiRf3PrXt\n4lXzeqXtDk6cHMyCHkkfJpTuZvZInn7vScHBZui4Kw/BvcZ1DTVrGsJV+Yhw\nKppx\r\n=p4mR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCJxpgNtoVooqxcTrEp+loWxoh2IMd2OKqEOKdz4kuhnQIhAPRLioOD0T/dw4Be3lZI5+nxJVmQcr8XffWDqPRxIJ1G"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_13.1.11_1558119003598_0.3594844325478308"},"_hasShrinkwrap":false},"14.0.0":{"name":"tap","version":"14.0.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.25","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.3.8","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.1","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --follow-tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"1228e0675a80d3f7403fc9be351b6c3dcad8f980","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.0.0","_nodeVersion":"12.0.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-4690TGCbBTwyIhJWH918o/1zLoWUqc+8o0/zQtLjFLzQ76vlurNtMfVLkVS9dNztjuv01fgol+YhNJbzg/dfUA==","shasum":"ac8915ac9206d2c326738240ed268856e9f0b716","tarball":"https://registry.npmjs.org/tap/-/tap-14.0.0.tgz","fileCount":25,"unpackedSize":147443,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc31KiCRA9TVsSAnZWagAAzL8QAJO7y9IxpYavHCEdpNLb\nulC0pjSRyiuQRD7ibMRYY4K7NUZSInlf6b5zjs/Ue3SNsnvmn7U1J7LvbtX8\n9WfOvaQ0BeNdO2HAYBL+HmBWZGNN7E1MARrUbbQvUm0pSSgmXzSs88PHg2xG\nxuLxTDbhkXpGEwi9LBCngbkwxHbsanW+C9oBG7URRP+IaaZMsp/HGySI8xqB\nLHw0Pkj4JX7DvE3okWAAJkrI3riLLfw+BOX+wRCLSaKMxU9vLSB33R28E5gl\nKyyNEAiPLxgNS4w+LUTNUCWJeDr9pNh48XxjQyEESY7TJeNrabxv9UCJATlP\ncU7beK6G4GpmXHOiKU40Vk5wUXVxV1n6CgZMmB85UYO4dfB5W2qHNd5Lemuu\nnOUmM2uEs1Qzhy17KhSYMj3As5PF4zfoqIUxqs0paPir930yhlKlLgIgfUYK\n6g4u250ULEwpJLiRt3OgmOorlsYDyL7RTh+lITF4Nakwk/oaJLyGzyOyTsol\na10yycXwQWfOICKTJBUwrZ7M+WX3GvR0ySNkHk2h2r3pffTpCMY529syOL00\nlRVSmkhgss3pd8MJAHiutfWVDUCJobqYiKhl+fcJfPG0LW3LuT+GNZq5mtyB\nLGnelprbQCkZaKSL14/Sr7nUSrhcoj/tDK18tzPqDqnN/ud/OebdLsAV4Zc4\nEtG1\r\n=Q52A\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD4jmMuymErDTjcWFTu+v2hqlmHQYwBTjXi4lmg/LqcUwIgSPzT15T3Z0jUY0WYQbk8yrcvpMDymaGhirozAA2A4vE="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.0.0_1558139553587_0.5614479790014477"},"_hasShrinkwrap":false},"14.1.0":{"name":"tap","version":"14.1.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.25","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.1","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --follow-tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"b0ab4067fd032f34f17d9002aea7f437615fdadc","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.1.0","_nodeVersion":"12.2.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-5+aeZUf8eSiZNBqG6Qcv0augyOSKY5neTWrEs9UtUEMqJVjCJquuGoeZ72t/HOzsLJ4ilSiZ7QABD+cLFNUgiw==","shasum":"5853c3f5be33cceb2f7ce2e52afe941cae753843","tarball":"https://registry.npmjs.org/tap/-/tap-14.1.0.tgz","fileCount":25,"unpackedSize":147315,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc4vNjCRA9TVsSAnZWagAA9TUP/i//K0LeLa1eEqbVDzgk\nwtUMt11sAXumdjZYg9CEbqopa5uCl/y85s20tD2nhP7JOD6Xm1BEI6+t8kqT\nbMP7oVLwrFcdkPPKp4fg4CQWVYpa42qlResWPRljav7KuFrI+gdYSAKz6teR\n7QN/0Uim6kUhGfRZO1vaFdxV94tjUvys1l11qYS2b7OXFKu/4KDAzf8erG2B\nG2e553Gi0Q2/iduFb5AM3c0nGR8NPERrv4TFLPplJntf9SMQ3N1FjiJj7OHY\nUWGPWsJx+IUzNezGxlk5yOHlgXTNsmYwCa+SL+Fz/1vAWOIl8jr5lkGFl+/w\n8Hs1UKtSNfTmpwHGK4khAGGYvfUUoSAgd/XI9NdJf9HmRmDxgYhHIO7HLetk\nl2lQVJXKZxqgeso+T4na5V6fHVcT2i9aF/YV67E1cq6AGmBbB935MYMFxjFP\n+oW1XPmOLH1v6BFlrZ57FTLNFWx+tXTaVqf3advA6VjtkGl8DRql/2l8Kgkq\n58/BIo//HpORvR6+4/BvOI3Tb1WiSp4YNLpwS9DRonPBHQfvKcLMkukV8xhS\nBgtbpHdCxAIWXrozsw4cUGTC+Qir8SPz1hlOswJf6af2H5KFgCxUH1kj6SXX\nQahDNN4z675EBgIdXVRIPmE8WJ5L2ViMS1gfvePuibyuob9sS3WcW1uWmHrH\nt5gY\r\n=6mjt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDjkGvZTnsF+7RadUOYOuO/iDtlrPiZ/aJznxsRxXrHZgIgES9RpBn1vqlDWl1+y2B6s6AQMXJQhz6bk+jJbaee118="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.1.0_1558377314149_0.29163517817150564"},"_hasShrinkwrap":false},"14.1.1":{"name":"tap","version":"14.1.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library","homepage":"http://node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.25","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.1","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --follow-tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"14da88566a94729da380fa902c1916735017bb23","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.1.1","_nodeVersion":"12.2.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-f5mYE55IpXpEToNSVp0CUtcLYs8p62ddM6j4TK/NPECu/dSyQiqwIRKLA3eCqD0+JevMXH4Y+DT92o4JRXtWiA==","shasum":"44b38c818f0ed7fa0ed4b49840ca0e88d7fac133","tarball":"https://registry.npmjs.org/tap/-/tap-14.1.1.tgz","fileCount":25,"unpackedSize":147525,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc4zfvCRA9TVsSAnZWagAAhogP+gK9/Hdpu9UFdxvbTNra\nH21H+WnVW6ge5eLKBNpC5WEB8cq+8gKPuCzxl6lXDoZ68F7UONNJORDgl3jw\nLFyPLfBEXr9D31AaaeanVYNXyCaybsRoHiHRIaBFRaXyGkrDaspmWQ0uciVu\n8vC9JtLlWhmxYP04DqZ1DPQulZC46kARXRdutpw26yF8hAlCIyKN2A7ykAEX\n71gA+9JCVnRor1Xpm4M+PTTnhOYxayk0PO7lLOjViz7+E/IQnRhSOwTLrXpr\nEe1+GheHq0PU1/CmEJ+KrWhBoTyj4Wx0EOS2d/0YhHEm7qS5ik3B1APO3JSh\n8sHUvTvMkVgpGloxYQUyTBf8YCCZ0FTRAneeYaBzdMfuGqlrHZVvz43rXyLB\nW7QBp/1pTpAD+ofPhvttt8aNszy77e/ec6h5kbihU+5mf6WC6V6av1rt7tss\noE05jF8WutV/Wmi+5c3eabHMSi+soP7A+u1eekBeSsfkQ7C8iWss9RI/UbDu\nZCAoxp5EAn7XuogtR6uoJmVuzOXa1CwLhnUnM6b012lkeGVwymF2cUmCm/mS\n8r4IeobEYiF/zoD7tbRr4+xfKG7H5j0xN7HBWp42qq46p+d1KciXNYACxdi7\n8Ax34IvGQOz3IIgN4/jvuGgQPpw9+79Wz81uy4in3ARVydCYACuNcaad36g0\ngem/\r\n=hjw2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBBbKDHPMSxghyf0A753ODBHyF0dUOgovKmtAES5gpA+AiBg63X/9LItV9/N3ae/rVzGSA8rJVDKAL/gaZq5FEGrhA=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.1.1_1558394862587_0.20322697000654455"},"_hasShrinkwrap":false},"14.1.2":{"name":"tap","version":"14.1.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.25","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.1","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --follow-tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"107221be692a472eefdea4b7461136162528ae8a","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.1.2","_nodeVersion":"12.2.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-QlxivZQGhWhkEMhmymCavGX6QSpzN/Fw2OISSPFobrZRvfcUMkSgBoHp7H8gzmIzLdXUMdQ+3EKXo5H845cUuQ==","shasum":"41e8bb521281300254ba71b67a8f2d69d8260b46","tarball":"https://registry.npmjs.org/tap/-/tap-14.1.2.tgz","fileCount":25,"unpackedSize":147634,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc5FPpCRA9TVsSAnZWagAArC4P/AnNYYbK5q8fUdWe2Mt4\nRFQq6ITDGZap+DWDFHGySQRhULY8URpcuK+Ed7C2zuEIWkPRg7VYsILmCbnI\ne+lT/mkVvTdp+UbgBzKdzPW1hawBPjh8jCxi/WQdvejRJlhAep/AXDk3ByUY\n07wciyGGXHFDfEm2KmSHwl3ItfxCRcBbZWvKOFwUx/FpI5feY0KrPy4l+aMN\nX0RASUKGQ6abFswdTBqHybJQkA2ABHrV4UdMkvdU2GOabI+3ydSE4wn1J5Qj\nMJZtQLDbSA2cW0CKlZGi5Sab0W8lCjNkNWziHxxc49Crir0DYl/teCLH8jKn\nYjgdhN7FKkSj3+mJ4CSmYY17b+Mdd5/gATKhgppULU37YIEbwn8yortpFhBF\nK52EGxd4tPttuoOzS7jBfAWE/3zksEgiZSvuRnXvpPy0bqlTzSbe6hZ3frOP\nycB5qUw9kkKNfOSpRNfjF5KdB28/GBMjvGt2tkiaapmFxoOicPBEINiIYff2\nIWWDEAEa+Es2cw/zbZ7NCMT4e3Y0p+UnF8fWyNRcdpfune8467uLlSkklBBg\nDFZJKCjYmr4X77mxj5CQZ8LIFV4/GFvszYYAA8SM8GMYBK+gRzL00DT+g31t\n01mORtb6JCtvV1l+x/kz+WInX/gdp3/hb73s13ThM/Vow9n/i0n/R9U5Un96\nXxlB\r\n=ufrd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCMS1mdgf0Pr4lWCwBu4yaEa86HvHI3/ukeZA+NQ8p/lAIhAIytLxswBHIAQla1JudWPRfoCzK5tDyGcmLLN+rThq1r"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.1.2_1558467560513_0.8968241005842379"},"_hasShrinkwrap":false},"14.1.3":{"name":"tap","version":"14.1.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.25","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.1","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"git push origin --follow-tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"fc312d139a15656fa286de212f8366757ec0feb7","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.1.3","_nodeVersion":"12.2.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-cadj2XGTpJugHlfJ4vwK5bkVpQXmieKETFn/hdyGyEowEwhI33ZgJ0yGOtiEiXQWjCXVKXYKuNF2fHbHPI78Lg==","shasum":"027be1b7f2b79733197d110777324353722fb8cb","tarball":"https://registry.npmjs.org/tap/-/tap-14.1.3.tgz","fileCount":25,"unpackedSize":147551,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc5IyQCRA9TVsSAnZWagAAse8P/2J/JN/Q289mRqlxeYUd\nVzL2J48dXxt3Bn/fqpT4dCaCvMRk8rQt603/1Ng45VAgRfP9QCGS35lnVnwt\n1ezssJ8pRjcdRQgwhXbAPoHQ+yN/Kt1PBfLx+L/qYtfMuCt/1nWAIZ6wdbTa\nJMcH6mu+28jbpSKIqCnNX4ODs7GRLfSdWRoe8G1xjFqA9N2SnCzT10Wuz9kq\n5ED1JXVUKJiuIMFA8sMNF1V7DkH4n2DHo+Hiqhv1KsQSe4Y9A1hZI5wDLSZ+\nDdS1qqHcBUpfmMT5t2X0/ScaQD5MLUJ9vzOnKnX+dLlZKWMoSeufTXQteOMI\ntB2VDRGqEXzacTu6oafKfs32B4ms7nUMku3Btc3M2gYBSLk/D+M604XY6vTu\nGb6MrfWEvsuVW88Y5N3bc81P8DYHuaSaVSO0E7d9ScPKxOaheXiH18MOeb5C\nKcOfdraCwuaJAzlr7TvaUHsA/qzPFsPdX6ZbO2OxLGNxU7SbKIToDqC/6UvH\nebZRPAODaPRY1BQwnPGguts9yztN8tuNyeu0GtSilC+byTUSfvCuf9J5F1t1\n0STdb9OUawVqp+PNniFviutjLn1q3nd/1lr43XlJNoB7ERhStNIy7PRW0/IA\nj+lwIConXMfGJXdmyam6BV3HrJjHpGOqluzVx6845FWAzn8ozjIo7nF3v8tS\nFucF\r\n=ZSJM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCz7A4mdTrxVJrXZlA1RSclWM4FaHSzA5r4mTg3ucFUwgIgXDQ+SzXA0CE/z7eTLAMknwc6fydxVU0E+Z95ArK7VX4="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.1.3_1558482063987_0.7245871373941208"},"_hasShrinkwrap":false},"14.1.4":{"name":"tap","version":"14.1.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.25","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.1","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test && node docs/cli/index.template.js","postversion":"npm publish","postpublish":"git push origin --follow-tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"69234398e8581a710c9c34ee84c0b22d0a5615a4","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.1.4","_nodeVersion":"12.2.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-DfUvY6fNsmh2rshw8CMRW7DOhRPVU0vtDjKVobMkfNpTP0ga7yNPo+jOcdSC/CljudsyEFfmMWfJD09QxOs6fg==","shasum":"1a210913e0faa6e84d6a6568de9db508cfa4f9d2","tarball":"https://registry.npmjs.org/tap/-/tap-14.1.4.tgz","fileCount":25,"unpackedSize":147586,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc5XRcCRA9TVsSAnZWagAAPHMP/jSoT5HVM4PLAN/G/r9D\nk6y/Z/e7EX6z0qe2DmD/ehcNrt5SX2EuUr1BB0Yy7ra0JWaSDDddAwJC2Jgk\nXIHVQbRgCbLi2zr/ey+KXB6JGV3qVnmAxgRUktdihVg3DKu6Wr7kOm54cEsL\nqGARrvJhnkA72yWoy89XNBiZnSwgIICn7nPxvKp+6BXfZj11fJb7RUw/ZdIj\nN2Y6dOWLX7wY0lm0kX/d33OLAE/zp4/fXKU6DsH+EcEb084B/kH3/ERZy0aG\nFtZpoJXAl4CihJ+gQPnDayn5MK5kt/l9Gd0iTCcREOyZn29/uvyuTzdYzWnZ\nNuB7TLsvYchJrhbKOLeYBq1/GI2kX89S38ziE0ej54bEqNvyw/TJnvyQkf+0\nOHFLLPHFu87QtuTxEkMys6atK1oxjjRE7kMq5feucwr9FisOCTPz5M60hhBA\nL9OzT0091QE3GikGsQj/mkY5a4uRyy1P4X9MF7wiJSUAnVfHTLfN9iD8Kzc/\ndgEso0ryu38k9a/wbR4KgRFzmym3ql3Vj+9LzDlEJrWHHeU32O6zMqsxEXkb\nWH3BczOxsaLwSTReRqu7a/vSLix3iTaS20HNQCijCUK8k1sIFXuL4KJQuGR2\nLRM49F2NTl5dgML3dL9LHUb6jP6PFgbLqcp+80gO3d/2sVsDx3/cKZmkwXJt\nDnRz\r\n=MFBx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDjGZEKCKA88sZtXfvekfeFhYGBA03vBBMfOpwGCfq/ygIgQ9YpEVp2DpskXfILakgdO2le4o8/vvWyrXlqZqU+tv8="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.1.4_1558541401666_0.4883826735315073"},"_hasShrinkwrap":false},"14.1.5":{"name":"tap","version":"14.1.5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.25","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.1","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","prepublish":"node docs/cli/index.template.js && git add docs/cli && git commit -m 'update cli doc'","postpublish":"git push origin --follow-tags"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"b3b1a6b507fe7b95652b527360e4f9dc4ad0d4f1","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.1.5","_nodeVersion":"12.2.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-E8NS5rnNhRPE+Rr3pNAd+PycvtaXMvVwevzqj3LWDJH7BsEpqvm6nVEyDF+7P8bpduv336TxfoXbNADb0zZFqg==","shasum":"2c027ab42a96dbbbd921010823e48f6371956a43","tarball":"https://registry.npmjs.org/tap/-/tap-14.1.5.tgz","fileCount":25,"unpackedSize":147658,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc5XUnCRA9TVsSAnZWagAA9f0P/1feM+plUFLBbRyfiJxe\nPAestmNUcs17p3jyZzGYNdLcjnbzWflwCiY47TgEWBDDU9Q14A3cKpSdgAu2\nP5zkyK/t8eZx6/rXNfedAy27zqJiUAbPf3kpzHcaUpJyskgVb5vcKCFNwcyH\nLYoy1GTMZOiH/77+1R7BDGUFOo70nEiniKk5xjWvbBWsQQI0lEE7G942Id6y\nWe0BhX6a03L3B08qcGHzh1HEgf09lxh4XN19/orPHam8mLphFQ2CRrdOifB1\n+yuGuCi6Mg1C89t3tk2bHggEj6xxZ4nwypX5+rndtY5ck5Q2+i0PgpRik7ta\n65edTqT/qFfekMm20rmn+WKdc4YwGzy47GBG/APOGczIGOyDwkeDsyUioTSG\n1oQNGvmLLY1DgfCJyXpvfg6BZuJdu7Ef8V4OJPfqk1SmQ7RCtYOSAS32FTt1\nNJK3UEvsmEWeKtU3YO407gFseD4AJMuCHYj3JvEws5GnyKZQoSMBApdT7VFx\nmegEKRde58JyuBhD1vlJo2Er4gTIjDSCFgbaUASTV4ZXmO7P8g1u6c7bY1D9\n9248MIwfyj13hwb40FV3q0mHGyJkTejQGZUIGI2/FQwmEbrlgffzlT0W6QYb\nw1wfpRcH7OFEWPfO+IiO+vxH1AdPek/vS3g8GtACflaPfmp38hoEOg//AbDf\neBdW\r\n=6AmL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAZq9VDybvpkRoKocBqeJ/YSilHl1gvjYLTjpxKsWNJHAiEA8ZBO/DsLtYfHl3r2MpQhyUybyIXHPNJHdqqArA+Q8Rs="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.1.5_1558541607150_0.6617975426474088"},"_hasShrinkwrap":false},"14.1.6":{"name":"tap","version":"14.1.6","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.25","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.3.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.1","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"bcc03bdc8fb0637e3c43aa6f7decf43629337d60","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.1.6","_nodeVersion":"12.2.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-Atdl6nePAHm3uxyhGJF62e7kEHxjaAwACD7M9dVFqb+5zBlayOO/Oe31sRsr7H8uEEE7HNIAkg6KcMXQFwTMPQ==","shasum":"11f414dbd09374f33dbe0822f0e2898190bcfe01","tarball":"https://registry.npmjs.org/tap/-/tap-14.1.6.tgz","fileCount":25,"unpackedSize":147541,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc5XbtCRA9TVsSAnZWagAA1jkP/j7SITOueZgJY70X6REP\ngwXqlZ6wJLtD8nirG63zRLSbww+mdx3Gdx5jo10H4JvI7VGLD8ub4p8bbttt\nRQkgRp5CTy/5Jyr2oquTQRKzZpITOFaOmnBjmrhMcqBWHbo5D+VhHwZVe/ZK\nPAyRZXcVWxvIDGbHPKxg5DNc/tvP8WOU+GWUwHrtLRcmvzI6t+zg+5w2QI4u\nmdnnTbrhfTq/hkYu+JV/3LaHBBslDSxATz46fEMblkml7smS4Nkt3bY76/W/\n33qwn8gPNWVjBRGe3NExt8muTIu/SHijDYclLRHuy2rSdOq5I0tFyaIbpBh+\nu9k7TJZzyjj3/RqTkdSd8Bdy56mTumAEnfuAKKrnxkSBz9K09EuljXavftqQ\nYj8HcKRvxi0qyTjat+jyyaGIF7CmqnrqEwyEtEo4bumBP9vx1Hjf9Dhr8f/I\n8OLquSiFu+zSHYcS1j7z9sW9yRVIwqmqm3dMbK481RCAaTacEJ8FAYKoETCp\nmUWnUjg7EGi2yhY8Oe9RT6vdpZ/7TDpQtg75aI2MG8SrpZvuPj2ZkvClCno/\nmZqxnw5W9/mh6ZZeR33IW7+eQBJlBMraAgJ4jq9paooGBkE4ENi9Pc7hmgRH\nYn598CXHtODKVD+IfJFxTrH6vz3R54zGeiVVA0ilEyb8F9XVygwFh2kei88I\n0Eg9\r\n=Z4xF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDDle4P8eCvLfZMAj4fMv2FRd+sbSe4PCm0SC8hI+IcgAiAOV4+ppYG2uG843iF2c7wAZAh93tb2ZQL9J6TUSJQjQQ=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.1.6_1558542060325_0.3424651556175655"},"_hasShrinkwrap":false},"14.1.7":{"name":"tap","version":"14.1.7","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.25","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.1","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"66cd5803df5f9d1515e2ffeb85478371f3d6e3dc","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.1.7","_nodeVersion":"12.2.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-ms2/xC7Cz1swurkuWk33luiQiGnuOKsbqOAUmxCY+2ZfXOnBiGqpHuL0GB/CxRqG/4s8UprSFxlPTilKnVxepw==","shasum":"56e3c68905f65b1a124b7b4ba2d487997ff8f6bb","tarball":"https://registry.npmjs.org/tap/-/tap-14.1.7.tgz","fileCount":25,"unpackedSize":147541,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc5ZcSCRA9TVsSAnZWagAADZ8P/0wVHwbaedcOKqSS6r56\nYSP+tDGwHlecCK+H3MPM3q5sjOdPpYUvOC61sfi9RVqavHxEGFOo58ypCQ6M\nO3lQjC3MVjjNvEcXZpfnif76m05fgiY64sJ1scAXu3+Gw2/S7OY5TGAVpHzl\nJ6tZAMY1zzDfjF/EUHTWOpaW9F6AK2XCeygqU/lQUYXE/OXD50Xy/pmcH976\n/ZuMLTUi5hjFYwt/4rn5+wYtGKu0howzypJdZ1vNzuwkFPwtBj0w2SfjzVLR\npyo/s0oW/9TVno8OmaF4tXRDicNr/xGljyYcqZeu8VvO3VFdaDOcuKBzSkn9\naL06yMF5ERibV6wVWnZFxzvPIkaNft0pyME8Uzkp3PiP4S+KixiU9A2LXVPO\nZzHTpQZyEhpOyORNTMMMii62Xw82YResN0AXVo+aAu9fQNuORyFVmAItCw17\nxpIp1KQnq1x72+u1nwOrHfoblF04Dj9zQTNmPOCUnjxDoig3K1mcpu8pJokt\n8PYU/vodBL4q+2R/QDPwAGQWPcVXl3Y07dwHUTnk/h0ecpGaCJXDZ6pRkWAP\ntEEiYIjXh3z+vCqMPfa/i7DwFXqK2aOwZX3/ZG28ZXcoBnjeFB2538QpiBDz\nOPatj/WPCQ82zHiPWNRsEKzNaqPwxZhk+mRx8l+ZgpLjCL2khKxn0twrqnXb\nkT6I\r\n=ZY/N\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDTlbGK9TvqwT8BEsBpCQo3H/bORJU/d5YA6wxmJjnctAiAWYo/qIBkztKX8c24YouqYxHV2KzQjY10OtG1n3/3DAg=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.1.7_1558550289674_0.25242892853744103"},"_hasShrinkwrap":false},"14.1.8":{"name":"tap","version":"14.1.8","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.25","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.0","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.5.1","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"902e4ed9e4441016e155532f586b440f06e30fbe","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.1.8","_nodeVersion":"12.2.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-pjjbWuZc69IOHHRubSRmSCL0jOEfT2f31uS4Usut1dQFzBR2xU/v8rHotiHz3BFSa/ULO8UFEpFFNBzrqqa68Q==","shasum":"3a9b3ac621a6b3ee879c4ff91862c2e51010ec48","tarball":"https://registry.npmjs.org/tap/-/tap-14.1.8.tgz","fileCount":25,"unpackedSize":147581,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc5u/nCRA9TVsSAnZWagAAsYMP/R6YwL+n91rumqB1tjd6\n3rmsQYm8FJr/sWj5NSy1jTCsD5pu+d5QJilOVNXbPG/7yprRyPE2kgt09ZRb\nHucOg0GAYSAzjd+JRwQcXD9CrbsLyKEp20FgCSKOy/OzqPPluGNvC9ElzUg5\ngJc4zAyjXIS90Vb6dLCL8EjTmoAXznHVzX9XQUpPMNdPLbqlmV8magyHYMzT\nKP78it4hJVpmMKi5LYgdJhBI7H2O325jEXKRAL585fsnQW7xwVtIpT4gq2HA\nB4A095Huj+d4jo1TMvmvYrFiipKoavenYSvyep4hsxI9yhsgpTgnGGETkICG\nOl0mYLvbxTOhx/LgG7d5cyFKKM/1tVNTN4X4oDXa490IjTNVJDdXaXxqqTAb\n//jGSqR+mTANB/jhb6dZSVFWvAF/Hbu48N3u7sMfAkIVRCVx30149IgTS2p8\nNHYACT9YrxFMH8/F1DzjELDlFe6PqH2ml3z94SfXCdnoxDzq/QaQ1Ci4ukEG\nP4tVKsMQTQlMvJGCB80PNgHko1DngyKDOYGhJz5Y6i74fzvFQgHTpo6XnjmQ\nmfZ8/EZh+/s1Sl7ouISoOQO6pEE8OWONmOctWUk0dJ8X+1IRUBNydViX/Vf1\n8zN0r8OEBSIbdOjqIEJ9vpFAC6o059RTkTrt4hGZF4AT9AoIVUvVkUzgCsK6\nvDKo\r\n=r1D2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID0wZykjRpqY5+hQodbIzKoD2zowcsq5r4BGueKRGWWPAiEAxOvoSEfs3bo18OC4nkmBSiMS8nDMwm7XcWtsnQB+PHc="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.1.8_1558638566521_0.16496693651686223"},"_hasShrinkwrap":false},"14.1.9":{"name":"tap","version":"14.1.9","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.25","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"38829955665a4bda8b1527816041be6a37cc2c8a","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.1.9","_nodeVersion":"12.2.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-kZrxufw3RylDzaVWrzkFeyiggL8uzNLoLZ17XmrzvQqBVqiP31xwYSTzWIzjrGOdwUtnoiZu/TjQvCTiX9Rgxw==","shasum":"f4a8adc08880f21cd3e3465526bc5ec1e455429f","tarball":"https://registry.npmjs.org/tap/-/tap-14.1.9.tgz","fileCount":25,"unpackedSize":147614,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc5vHxCRA9TVsSAnZWagAAgrkP/06rjkxP6t32uSytEb/j\nJnWBKkSobKBn/emjpj+fyS/fe8RMKzmTGaiOQzMCJ8hNOMaJcTm4a6c5+Yd1\nuyGZ/AAf0aExrIya6ujBaYpgnesJzgxRN2uIYuXKyEbAvSRdaBycUF0OOeLT\n7r2vFWmlYzpCYOHMLj2h6krVP0t2kcCvrlZo1gD8b4iYJ35AuQzZHZjM+uFp\nitVZ9Ho9pudmNTSaZjEtuiXgCS1y6ysIhFNfYXN8Uhr4z4g2mUlJnztMyMO0\nLgSgaA5QdxofPnw6kx6bAy6xtE68P02pWE/63eSxOutbxp+MJdbTq6s1QDbb\n3o6C9WCBk+YobziSMJNIEj7x79ahBogzcGg7RYrDMAImVdFEwtd504F7D5MW\n5FbUxEHBJp/yk3GWLw2LtbLYueCDiH7ydSSKp84M7XAztfVZwjvJ6Fu3pdsO\nYBM/fqvgl8v6xVvCFanGhCMMxaJb4fWP1erL8zS+pa3hp/HMwLSMJA7Z0pbW\nytDctea5oKdkI13I3BMOxDHu3Nxej5g8xV33lx3IKmT4XSJKMKSwExFbwbzG\nq1pe6177c2a9iY+jIDGVD5z4Hwf9L/7n7EeRE/Jxx2pOQ0xciswU0DZ8m5vl\nkvaCHu+h8BXMbq6XYOEs3fH7Y+9SDpwq+XBGz+tHWtzUYdtiMTOVqCWP92xk\n0gni\r\n=tq8i\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHnyVXFw0eY7FcjLHoOjdBuHoX70Om8BBd6AHL0HrjOjAiAIaZ6uxL0Lx10Y6dZDO/cV8hrTxHLZ9RO4yJebqow6+Q=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.1.9_1558639089358_0.6047499745321236"},"_hasShrinkwrap":false},"14.1.10":{"name":"tap","version":"14.1.10","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.25","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^2.4.2","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"fd6ae637bd161f2e606292034b73afa061e5c468","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.1.10","_nodeVersion":"12.2.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-mwYjPJpbnBvwsy1IP12g7UgtvgfnFwIVfeYcI27LDuefFGe1XtW+7+ZgFwu0qHG9f+YCBPMhm82W5o8QggPxkA==","shasum":"66676211f359219c37a15f878f4860205a70b30a","tarball":"https://registry.npmjs.org/tap/-/tap-14.1.10.tgz","fileCount":25,"unpackedSize":147977,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc5wP6CRA9TVsSAnZWagAAdagP/RNflcuLgpOXPYlkmheP\nNowBXm9aC8Mmnmxa7G6/u7VydcKsAMepOshHW8ChGF/AlKHajSlbJsPgLUo4\nJjGV0+4M3z6gJmJlIMxNNsY//3Z0Tf/FlsM+z/Y9mC+1ekUF+lPyFBceqPgI\nt4dox+5TpHHylHP8mIZwNkaHF/moop3U3A6hsMhU81dEwti2Wk+8r9z6Ma4d\n+RmdBNOho+cOsXelkp3H57R1QzXbuqSIqEs7aPGsOrsICTkwmRE13tPRlaQY\nKY3pLlwIkyFfw836fb9XXZlkrmkkSfv2TAp8w98UalUnWuhnwYo1JeQy7tK/\nBmviNdwOJIhTSSxqcr20ikzqLiaiqxTrkKq10fbuNY+U9lfWyQKbPvPXCSLr\nzdi12RcPlcNs6CjuHpcgBVVI5X9DGmnf8aYwcISDTeS1+8g1zZ2hf/u1ylcv\n40/r5P/UqExkKLCkejHCrVDL55PFi6ryE5w5yb9aq+Iwt9eR5+4+O88kIZWf\nksrzvqj1xF6vCr+tMDJDKkCuhakFQaX0TVZfoDtkwyoeQTUAMnrzYDO0muaA\ndAAQJLqLAfZnTtc672P0JnTl8ADtdfdPEh/zeRego5uVrX8a695kMfQZgkNw\nlpyS4VX92GT6e1+eTPT6lcDDjFY/Ax+WCcbJxYFqO8r2bbArldJPS3nRopDZ\nYhd4\r\n=vPw4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBxw7N3HuM6E6T5bq5RBfE8XxJiR9/ieqat0OEVJWVX1AiEAjVtBYlIaJbBZXzXU6B8WbA2MXTpfANf7FmBsuQzBF6o="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.1.10_1558643705698_0.7717889642805629"},"_hasShrinkwrap":false},"14.1.11":{"name":"tap","version":"14.1.11","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.25","findit":"^2.0.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"f57836d300292e337f27fdd51d9b1f9b20ad4ba9","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.1.11","_nodeVersion":"12.2.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-lz/nGffbk4M7RfKfK14QrXBSy8cYNKTMZXAgPFSThyDDwsy46VGlp+sEX6jHydQa2xe1Q/Ea3IWCrMI04JM4+A==","shasum":"8449772236aa02e6b3e54c113c685c219c3a5ca2","tarball":"https://registry.npmjs.org/tap/-/tap-14.1.11.tgz","fileCount":25,"unpackedSize":148402,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc6ETYCRA9TVsSAnZWagAAUEEP/1IN7WOdR6F+t6gxMlfc\nIvuePhS0mrwyP0goD3c/b7PBV/zje8tjXnVhlNy2rPRov+TqxRI2WKcgYqEg\nvl+qJUy0IbaGz2vB58wVNybTuC1XiXp72rRc+JEXma9WHtqX8gA4Ft4gB4ZL\nfkdjHllh3YkCFYLzyG9yp3Nh5KeouwBs+tos9OVtwVeUTQziFUIkVJfnroJ+\nZ6orratdEQEmZKdrZcWiwOPOV7bpOH1BvetjjL22FRrVgvFYu09V0oek9F0U\nNeyK9Gxi3YPOaIoEkPRJy6Gk7bXCPByA2Ntmm5T4RU+IdZ8lqE/TUoEH5hm1\nfVAvRq27U9WllRRnL3oicrPsxMme6H/Z65gk5oF+80wl4qvbmTgT3j8ZAQHw\n0f1tCNvmXR0lsbA5zO2vAYm1SidXBPE50pBBq4aAXQTt0vI1qx/U95RBE+KF\neFp/VOV6y2zNhQoDd2Nt1CltH4QYNOVrKMqjjVu7P6oRSrC/QJaypiSxKfD7\nxsCYz4ySsdDqR9i+6toZDiU03vxrgytM8fC2YEHb6PrjBLDud93jU2Y1h8h+\ngOktT2PsM51/WpuznwTS9U4HVC/OuuzT1bgSKDF3RcoEnDuwqaqlVO8GH4+z\nIs0577DF1IOKHJoOiPnQdP6I/PCfgu4X0WjMbymS0dijrNI50kcpESh5Cgec\nEGm0\r\n=10n4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDXeXUbvOVrkIOACVDE2ymBsE65djS26YCt3TJjOga0XAIgI4le/14KQ7LVZHPXsWc2el3enK2N05zxaprJyceQdhM="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.1.11_1558725847995_0.021826013905291042"},"_hasShrinkwrap":false},"14.2.0":{"name":"tap","version":"14.2.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"browser":{"domain":"domain-browser"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.0","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","domain-browser":"^1.2.0","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.99.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.1.0","typescript":"^3.4.5","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"c32ed4e1b9659a183a2ad88e2399d6822aa479ce","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.2.0","_nodeVersion":"12.2.0","_npmVersion":"6.9.0","dist":{"integrity":"sha512-uZN2HdkjMFxxLJqIwRO/I0Izw4nCIMQnEBRyVhpQAyo+XyclximeLleK1QHeMuKLMamJGhLDZ+IxJeZxwnl8Og==","shasum":"bab8d496595c64d29c4a73d27e0ab10d3cf9699d","tarball":"https://registry.npmjs.org/tap/-/tap-14.2.0.tgz","fileCount":25,"unpackedSize":148636,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc7NzQCRA9TVsSAnZWagAAGboQAJjMzkCwdviNtgic4CwX\nnnfyhMVAAHPN7XY6PZLS0fEl4C/J5yqMeNsR8N8eCoR+g7nvvt5X6hqdpvbE\nLisAg01XGlpC6xOEZEsJUJlhHdrFrrUGItCV+GXspL8tAU+d6E63+bdqitB5\nCZsUkxxmFrhwBWLbDyViWl/u0MmJ/zVkDKpH0L6QFW4KwdYO0AQp71fEbgkR\nEbEe6TE6d8KCWEfTWQIKKRj1dSeEj0e7cg4XPn24EndLDokk8PELlXqccfmn\nJ2dgL44+wouaAUacOHGQKaczXdAkqgZqehWhdY0AY4mc0yGCixyClKqEQheK\nGbKyx0vkrD+uXq4sFt2apANXO3eZRB0x/p60FWVWvElBmsIhhCnsJwv+JG3c\nX/lfuWPeCOtzrRkkcksI3NtL0pC57mFMjbSmFLtPcHXfPgUSDseWydTm8lUx\nuTc4/ZJ/XGPikvBD9TkLPWPWgzww4tsnP9hdHNJkOzNExrxeHrmyp5D4XGL/\n8eum5S6wUUiq45b2uybtLHCZIIJdV4KrY99VXV11a5Jv7em8Z7aAlcnrymfm\nO36VNfnbL83J3qCHlPx3VaKkmPApKisW6VUVzfR5wQktS9hClU63Rciwk64+\nUQ1SbNv7kCHbGPQCeCDul4XNGl2V575IsCwYPxLwloSsvGdJ99wlpnLLJvkA\nfDpv\r\n=kgDl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID8DHt2athAEhCFMJau0z25eQvqMQKkpBBcbKHPznF8OAiEAsyPSlypkNGCWHaEcJKG6v4XSenl4fbh4G6L1zZP7v1s="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.2.0_1559026895605_0.8253742137740812"},"_hasShrinkwrap":false},"14.2.1":{"name":"tap","version":"14.2.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.1","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.100.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.2.0","typescript":"^3.5.1","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"70741f211c0a04362fb18599185edf1e34f30d0f","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.2.1","_nodeVersion":"12.3.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-+tUbLEKZXuMl31H+FGPbLIMlvcmmQ7UF5OWi1NITGkdC9ibsIhIla02tv/UvvHxCsfC9k/p/Npzpq3IfBhqUJw==","shasum":"43c4d0e616c753644b30b742fdf3df765166bc84","tarball":"https://registry.npmjs.org/tap/-/tap-14.2.1.tgz","fileCount":25,"unpackedSize":148553,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc9tQFCRA9TVsSAnZWagAAhyAP/AzOHbWrT7FuPelCmvHy\n+Kwizq+CwhAtlQT2Lxt42mI2piLUY/ndX6dv3V/ATElbmdAkE/NFG+SpSfAa\n3/Gxsb0JoGN0d1bvlkSS4m0b9yCpPZS0W59ku4VVHA9tJ/IL/JhTPXBxJ99A\n5PFv1LAedT2O3z8+qdmPvv+aQHuM7C+9UPVX8WEner/ej3KG+l3C5kPxLn0/\nu0TA2zxRfmOFhJXAY6MFkk6kaLKapgXkrExX5Bx2s4amLz4jY8yOD50EBsY9\n+IM0RKad1eBYVm5/Schdjne4dcrmrsvTKOtRE8Iwx6RdT8Hm0SPx5dtrwgRt\nqNCZ0IAh75dCN0UcdHu7ubo8TH9k4skMfgZwH29L0dvWARIc6I7LnguV9CxP\n1FK02+sdMeSBjQxEUuy/0f7XFx/pTe3XmLN1Dy21YTvt32yl3Gf293ZAMIJa\nNm+F7xqpi1qRCCtsCnhIKFnW841eovGkejJwa0MN10LAdwNhTC7DIsU354RZ\n+9rg+cgoJrD7yJUC3Pckasrna5mVUcLdNGU2Ez5Sgz0ZmjZQc0GpWnlYDqHA\nvkdl9YdeC6sJ7Vc1tOYQ2p//8R0NUXsn3OvpcEPW0+PW3CcULZxM25p8RlZ6\nXOYvKDLzaXY6UroWIQ0ci2bd8gpoixFZuzrLKhy5abRqobkxj8WueqxZSQJu\nukQr\r\n=eESn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCmiC9OvMWs9hx5uyB8wXp/Xr38f6GzcKPxE77v2wwkXQIgVK6ckbVnJ6PRHBVdhoMGIrMK3iuhK6P3k0b1b95/CHo="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.2.1_1559680004446_0.9989653703910759"},"_hasShrinkwrap":false},"14.2.2":{"name":"tap","version":"14.2.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.1","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.100.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.2.0","typescript":"^3.5.1","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"devDependencies":{"react":"^16.8.6"},"gitHead":"daceb25ae6d3e586110df8893823fac109ec674b","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.2.2","_nodeVersion":"12.3.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-eZo7NmEmmvgU+BRa9fC1Puj+5+Yd7AOeFSFOw9xZiehzKHCF/JvhkVn8NCB5N5P4sywTD7NnYqgYrG/+Ny8T+g==","shasum":"84e7b9a9f839e907fb2ab4c88b6c421346e9dee3","tarball":"https://registry.npmjs.org/tap/-/tap-14.2.2.tgz","fileCount":25,"unpackedSize":148609,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJc+BRTCRA9TVsSAnZWagAAvp8P/R/nBMRfABIi2tS+rRNW\nzG9O20fjBy92v242Hl+GRSEatvvNMWHOmPcMJnxFArOENlFB7qYJyrwEuRUq\nzWpQKZfnig7awShgEzrL+ivzq7FOhXHS1FYdpOamHqG26mUaciwLzEXRwgW5\ntPesAW2xMIC4s29K7eDl8xGPCb69qp800ZH1Aqd+i3f+yzpUZRpiR1RABRCA\njQIvJkkdGIVIdrWeG9CJ8uJAlwL5TdEfUONrmy8T/+4oVNwOlfqTIP3oDips\nEJ2ADdRVulcFu5BUcu/I3MRX2s03rGyLgxMFgfeG386Sp/Xh3zb1c2LolkaR\nHKIVSUOjXkgZdZcmGvblEwh0rUKolM7JDj461AeD7BRub4rIPju/+bzGf/17\nNEG3p7BbFqmd2EKGDEey+uobxybMKRx0cMqBgdaHYodY+Qo7v8pPPkS7Usck\nAjJKaq8ZLVyyvhXmZ5oP1145JdUHoW81xLhmUvI7v/vLePKq42u6xsgI0bPn\n8BmmdMhyWwLi5XeARrZQ7F/O0NAk1hJMfyo6XuvBmx4Tz+9mNzA+FMpavI/J\nlb6qCbQFFuAbWHo2FJC62et9Ug+7LBqxBCULjOzhicDJQ2JZVb58POm9NDU4\n90eCEu/+8FR7LfQhalOMtLL7E01NV/ttKwl346HEXPoYUkaTaeBKdQI63hEg\nVN34\r\n=xEL8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHJrCd9YaKop0TEjCwpOz1MJ9GAR5LJQeye/FiyxYZ5lAiEAlpUQFBArnNUCxv695qpJOmLoBraabv89OcpIx9cCZd8="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.2.2_1559762002176_0.5063075181013263"},"_hasShrinkwrap":false},"14.2.3":{"name":"tap","version":"14.2.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.1","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.100.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.8.6","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.2.0","typescript":"^3.5.1","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0","ink":"*"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"gitHead":"fe4ee0c8089327b206ff223f46e9ef78263c93d9","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"bundleDependencies":["treport","ink"],"_id":"tap@14.2.3","_nodeVersion":"12.3.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-XQFFqrhJIbHCWTDd8qGbzr6IlRVqDpEkjmvrPClO0My+IcEisODAhXQH6vJJPj0vMVPYMKgKo9E1bTdHEeS+GQ==","shasum":"ad5c53d242365f14dd95b16b7fe23a211694985f","tarball":"https://registry.npmjs.org/tap/-/tap-14.2.3.tgz","fileCount":4033,"unpackedSize":13298863,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdBBlUCRA9TVsSAnZWagAAeEcP/292Dekd1xd7TTtvYoBH\npFl7Y7f/02y50CUoUoVCR+F2YLEeXOTtcFjbEVUgynUmpOkJ8O3sXOQ+JmZs\nr+Dm6hiHddTQk3q7QANAw7nH/okZzl7SXExrTlSAO2U69Robrxbi2YfjqY/P\nKiMzOlzOZomHhfU9XL8O34vupIwNpXsZjkSm36fiyKexzGpFJMAlUAJSxD2Z\nWWRJn/RWtEIBBbsYTOMJIQ4RWjVqmiAKYeTqY8BWQXG/OAwzyXjQA227gCJ6\nZjOEHPTJ4sqLRBrRDmmopYsd6uZVOfnIQMbyjDn2vejL/E0XAhISFF3GULcS\nZrzVCW33QehoHU6qkVgAOR6H3xkplyytXiwGqDSONy9Il6s4nodwdnxeV8nm\nR5W2dIvPfOAEXWA/jAshZ3cU207+R6eh7UCPNWMK9dUbfDpZewDvTEdo3+80\n37/6jIGJHSG4GcYWQkbwFjC5CCCW86T5P8z1aWBZOzEagC/kCWo6FbY0xZ80\n9sSudFkGLZGr1hLv2lHM81WG3BOCYZrUi+JAGQuH4Meavn1MRCCo6t2a2C2Y\nQyB5JEuB+K0gwt1+RZ8e5aqm13EyvsOjE9lQaKwnGH76YOUiccwQn7/zzkDy\ny1I6/mQqj1qr5NT3Me7ZP/dbT9ED2mWvC0p3YR0nvskvQIkrW2xTtSRAYhCK\nZTux\r\n=dguv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH41RjAwfX6/MycA/OWYo8e3FED3/chTp9xR2UaQe4ULAiEA08Z6jJ8UEcJoUpKoQrsLtTySyfiD/EMMbtwjfcQy+1Y="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.2.3_1560549715844_0.4643119970116445"},"_hasShrinkwrap":false},"14.2.4":{"name":"tap","version":"14.2.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.1","color-support":"^1.1.0","coveralls":"^3.0.3","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.100.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.8.6","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.2.0","typescript":"^3.5.1","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0","ink":"*"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"gitHead":"d57bc177aca00eaf1719d0a25327567020e8d3f0","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"bundleDependencies":["treport","ink"],"_id":"tap@14.2.4","_nodeVersion":"12.3.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-Khe4+Rm0MThQj/t+8p9WwSD9adQDWi8zgry6JJOQrInoQ89lrj5Dgl9XY62/EXhygSeLiSfpj2ZUPGcEuaHdaA==","shasum":"7eec5c717716e6801be732c992dd6fb9f705495f","tarball":"https://registry.npmjs.org/tap/-/tap-14.2.4.tgz","fileCount":4033,"unpackedSize":13299308,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdCopaCRA9TVsSAnZWagAA+8wP/2fNCrStfMm4cTYKTMIc\nSJ6eyajWZTB4SjRj85BzxIEJwvyUDWg7ca4D1gDUmOqZg2Jde5FjkOBfZaFQ\nuK2jt4BjvPQ+1EBCMl1dSXDpapGYOKBaH/dCqQOTQ1Y7fVQsWdoYYRLAPj6v\nGQXDyViEiwC4m4did8dWJjIZusHxnuWpur3TrxQn+NQLD/yRaa6i2a+iAQV0\n0g/TrUto82bp5L9maYyrPcm7D2k3qD39bQCu1EMQUBPzOe6xHTmJEWH0D7V+\nmdcmTVz/a6ApQtvYJUa+8ranNpyvUZEccUeFxCul3Dn6xP7KB6k+Wrh1fLzU\n/mC/4LZ/dViqzGX16PimrxAwRELJVkefgInJiO3BCWtT+BkJnKyuOJ7J0Mil\nuws8WqsPyCSd7Fu62pSgvnFfzr9auIyLi2BZv/SGdKR2sBJ+GAWdfBalkjxW\nrBMEoQ1s+fJc3vp53qwaKx6K9xL9gCeHdTEDcLzk0Mqm7r0Dy8eoM+4+pxoi\n/ak5PfSkgoWAaAsmMqzr01skACYI93Y4hEbMn/SnVW5DKaZHGPLrbDt0NeJi\nOkgQR9XhWsHXgWq2T0Q+GCLAsu32Nifc/CF4rHzhtrbtBKt2ALNrswKm4WeG\naCT/WKh5SDNeUcOs8SlKz37lgccVGCd1wP8KxYWj7eUSlJ4Lldau7nWVWbmU\nFNGg\r\n=1NqA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGLc/KOLq7tN8kJyiXRk9MmQFbd9n6z5zWQCx08cIpBBAiEAydS3hGhFu/NZKefh4hPuPyrPeDRKytzzXY2tDdXkxKw="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.2.4_1560971865054_0.9452410158311784"},"_hasShrinkwrap":false},"14.2.5":{"name":"tap","version":"14.2.5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.1","color-support":"^1.1.0","coveralls":"^3.0.4","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.101.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.2.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.8.6","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.5.2","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"gitHead":"00b41a6033acc8e2cc8000b94fc7aba1af1b7fff","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"bundleDependencies":["treport","ink"],"_id":"tap@14.2.5","_nodeVersion":"12.3.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-TnV9k07zH+hjcWhKyzzIakxucJCJCf2+V/gUXFnmcYPNz+QIfpf+aM35EPrYX95TETQ0VsiegXh4+qrJ2VEKiQ==","shasum":"2e00421185fd6f81b70c2c9271257df4612f2b07","tarball":"https://registry.npmjs.org/tap/-/tap-14.2.5.tgz","fileCount":4034,"unpackedSize":13323812,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdDZ9nCRA9TVsSAnZWagAAkv0P/jZhoE2HXy2tZGA9Ca28\nSqmVUuDeFzRf6FSGc/qXU1FID9B7GD1Ksue9uPhYiEOeZdPcB2/yUuF8TK5N\nJIOPmLStuINkTjq17+k78oQVfa63ROP3EhUgxx3/uNDXTbsWvwNPkSj5IZTM\ngRL0YSt6qI8wYMhEfMKrcaRS9vs7vnjHOFqJxqCLgcR3McUIvLSjWHukoC8r\n8q3v0QVE66IIgKNPMQk14Kk/evRhD8Eh2xKkAD5olixqz6Wkrk3bmRPvRptk\nUDBJDwAq8Gob/xb/1y7VeygQwWwupYX2MjhmmPkwIlrmt+nkTCDWz3utYgxH\n8D3b30zyCoOzPv98YWUSE4gXElRob8ME36N8xS+YjOjI+e75myAC82XbHpQt\njMtOB1YLZ0Umti+ziyg51U2QR0OgS4x8Z2JxBELDehMil+5VBSNJff0yYvv4\n3mXmN4bDofPcKmBZs8M3GI5gGiHec/2umER7IyJKbosOwk/mgvAoB/edfBwt\nRz2Bh7PM50zolhdvQapiVlxwW1WoIf/09q6QmbdYhvjFFGJMjLDQJyvPmomZ\nM6VlWNEvbppt8YGsFj6cC0B80RfQ0mTF3rwPK3Xl3bmvv19jPHXgGXw01/SQ\n6CmA2HzQ+6lNeWsp5zvflO3Kii7TH0Dv6g5t9sX6OMjfjvqUovAOut6S2t3A\nvggv\r\n=inuQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDUPXH0BjiG1Z8YVuMFLFkYYACDm9som80/739QjS7pQgIgUal2xsLnGz5D0XjmW1Gh8Xk34s519vs8f3s0xaSx5L8="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.2.5_1561173863143_0.08623589382369601"},"_hasShrinkwrap":false},"14.3.0":{"name":"tap","version":"14.3.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.1","color-support":"^1.1.0","coveralls":"^3.0.4","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.101.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.2.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.8.6","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.5.2","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"gitHead":"8a5603e5cb815f6f8c699c99085cf7f6628969a8","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"bundleDependencies":["treport","ink"],"_id":"tap@14.3.0","_nodeVersion":"12.3.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-8LhAAYAn7JlWwmxlwG4Jbh5swb7bz96KDxzgvJ6WoKCpjGQQz5ZV9+0YvV8FOn8ybB8HGEirRGb7cwZsCWPNig==","shasum":"d770a8c849c47196fa1ef59a9600b70402610848","tarball":"https://registry.npmjs.org/tap/-/tap-14.3.0.tgz","fileCount":4033,"unpackedSize":13312755,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdEdFXCRA9TVsSAnZWagAAUScP/i8l2WOVAPaCoNmrJHDt\nHF5liolBoQXQQH82/xsEee6jV7lwHUC98GG+rFbWsDkVTQqEY9hR8GOtRFbn\nD3i581iWceXmdhBrhTroL8GUh4IKSkvy7ZNzqcwQSvhVdDk8VJfoaU1X9hzn\nkME6GBeStdvF1hS51UDN0pvl8UNJgq3J+AusLaX9AtLMr1unU5t0tGaZdALA\n+oKb5vLA7S25Uv1cVeD7GLwFJ3553bkOxu4bZkGL9mMlAozPLc6sAR+fpZCo\nbusKPFkQhjz+y3Xjj9JwJ5l++SOGXtU+xLjODSMmMb0/seI1V8AdRYF+1qw+\nLIausC5dchfRCJU8oQKLC+fmpwb47FtUyZNdzungAxsVcJYQtRLHmN3RoG0u\n2m6T/RH3pwQCxHfRozUGhfwTWm2NmWQ63+AF1ROXtcVSxlpSXooKKllB/B5C\noWkmZcnU8ZTQ7LofNne9J8j+rMkh/R/SIpjk33r/Exs+Dh/GwULIrh8cC5XH\nxE+tI+gWBPNuf9QZkQjJzsCDlDs9/ra2P/5VJFFIoNx7mVwIQ2uIqzI2TnjZ\nwxkqdiBOjibYrPi4aaKpqj8qs/8d8YJ41xainIHoyXQosjHC5zxRi6/OfRop\nzIGc1PjGOE5QLYcLJ6y6J/VznHe7tzkrgnMYvBLNJaZTRFTEXReepSnNCZlD\njDZl\r\n=1ZWf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCPoLHeOx95mpCKx01TkyPNgN1BDmFD9DQYxv6iHPBLugIhALVweONID11h//vSN6QEvQfBFJvUY7DXTriXCjpebLxw"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.3.0_1561448790388_0.5491747942100473"},"_hasShrinkwrap":false},"14.3.1":{"name":"tap","version":"14.3.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.1","color-support":"^1.1.0","coveralls":"^3.0.4","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.101.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.8.6","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.5.2","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"gitHead":"0d2da19eea32ade9c14d2cb633041e2c5fcffdde","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"bundleDependencies":["treport","ink"],"_id":"tap@14.3.1","_nodeVersion":"12.3.1","_npmVersion":"6.9.0","dist":{"integrity":"sha512-xDjfHKRwhrsAgV4DtKwhJ278rqRV8t1jTCM2P+1vDllvzGUIuzYFatC8vHosLg/HnGGLr/28BuTVeE64JwnRPg==","shasum":"cd550502213c45a86626565d17f66e1f6b185305","tarball":"https://registry.npmjs.org/tap/-/tap-14.3.1.tgz","fileCount":4034,"unpackedSize":13313809,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdElH6CRA9TVsSAnZWagAAbooQAIPQLfd2GzVZf8SZlAjq\njD+TDIqBNPh8QC41mQRSEcMr/ln5dAaZSyElt1yo+ggGMZZztnB1yaXU3seR\nww4w/n8m0ea7ycFZHbqAjoU+zlRtr14fjKYqp15Qa6cJjaEBKwakC1fci7TP\nrK3VBgwOfxzDW9ZMfY486vx21waVd+GMHlD0efEG4hg98YHlpbTJotxJl4y+\nfUrYJl7ykBZbRKMQSBHN8wy0okaUDLLNFaYWcEYfyWK5NZwvHmsNBdKBCiG+\nVc6iBgePiy2MODof4ThTV8Xk02c8os++pHFrKddwe+OX/8lvmEdCcWgd0ucW\n+1NOw2RVEdHNvXt6681NO7qYKGRPfUb/uQIfle0yMVSPsJuuJuiCNaPWm/jP\npIPDBRLkqQ/6nEWajmMYjgij9/NGb4SmPR5K58wSiHtAHEy0MqYBOnlSvFWX\nRy7SOjNsqZNAilvxAKeHQN0h6qep3Cvo5PqnMx96sdymKi37kar2Q4lEDGMF\nb/TCHHTrkFTl4tHXNKu40fB8lfLMdiJLRDxV/PSs4wFIcvkStEkZ5E6yhzeS\nX8MrW3hAdyySttiGndTGOVxqbCK/5iXW4k5DC4q+kzi6NJJ12c7DidKubFVn\nDF2C3qsWv/9N+MgfeZ5IPHqXt6uXrL/ypMokNW5bA5jG241sNlRkR+qGy9lG\nxyzZ\r\n=aNAP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCDFsp3Bqbcxk5IYhDJ1RTLMIlAoXqe0mwvy3MlUU6VYQIgYT930C1J1Etygn/otcGna1x8lBmDJSmERdwkjyYDUCw="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.3.1_1561481721325_0.2403762587454683"},"_hasShrinkwrap":false},"14.4.0":{"name":"tap","version":"14.4.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.1","color-support":"^1.1.0","coveralls":"^3.0.4","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.101.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.8.6","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.5.2","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"gitHead":"98dc5d969430d41ce120760d0d9963539e13cb61","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"bundleDependencies":["treport","ink"],"_id":"tap@14.4.0","_nodeVersion":"12.4.0","_npmVersion":"6.10.0-next.0","dist":{"integrity":"sha512-MtAKbonDCg9Ig5F8whn5nHrHe1iLRMGXQHiVBu1wkluN4NRtHhTIbOlpXgt4XJqlRIAByjgUiBMnBZCX/dnMIQ==","shasum":"7e2303076a33693f1835c8a5cb63f49481ad2122","tarball":"https://registry.npmjs.org/tap/-/tap-14.4.0.tgz","fileCount":4034,"unpackedSize":13313967,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdG69ZCRA9TVsSAnZWagAAlOoP/i3MxSIIiGyc+FlhQ44M\nEKVwn77XKihWIg/AoM3RoQiD5TGtjlgqKpDcSA+ys+fISC2O/im9Fkt6+LYG\nFS6e/EmvUYLxkDnB/H3XB8JTjwTnhW6njvmJPW9NQcedI5T8KtikG12hb7vk\nk6t4FcT50rhTmjMN7spc/MIR4H9tjBdlyAvU3XdcoHJlC6yfLOsVMVnFzU2I\n3P6hZVpQQKUL3B1Hss1p3w8d593Kj773JGVS8iqUlol4hevNj7SG3eOhzYBl\nUUVBhutiza3FJ/mOfLbVYPdzZsW5iQHDN7u+4Z/W8CTfqKE6EzlR7pzv/Xtz\nHyFq9kZUz1OVNsbr4dJxcFcdVEP7MBdK32l0yYTeg00DntPQ6pSWPFcvsgKc\nFiXq+EDw/gPsijZCJOSUzzbexTF1ZJKv6whp19Zz3HmIkbW2uUhaeWOJdjcA\n+TLkfasJOUcKCkEgJUEuqiZBWEsZIEeGK6R6BfsNOiiXJbNEquxmy8ylMIj5\nYjsL/ssjlXG0kE+LflQ+5IGSy6p+bdcAtgISzp8Hfc5QtKquGpaGfFVv7Yz7\newvO75q3KogXOlL6eHAXI+N7ybUBdWic/BUbNUbRoqaZL0FkJ/phi/Pv5ywh\nkS3Yp/aL8L3lVxl/k1QhWL4mVgqMWmy74IuXUNkfR54G/G2tU0kHeoKkDIT6\n0gGo\r\n=gV9Q\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCPtO9CH7g6wd/a86kiZLVSBwdvHO12djwXsXncPG9POQIhAOUkqbTztweBqe5BrpxgaUfuvoKAOVujEY1FV4606mdr"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.4.0_1562095449126_0.479065120157838"},"_hasShrinkwrap":false},"14.4.1":{"name":"tap","version":"14.4.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.1","color-support":"^1.1.0","coveralls":"^3.0.4","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.101.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.8.6","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.5.2","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"gitHead":"9554f6b31bae5b5047d53c5fc24f4ff9119b5ece","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"bundleDependencies":["treport","ink"],"_id":"tap@14.4.1","_nodeVersion":"12.4.0","_npmVersion":"6.10.1-next.1","dist":{"integrity":"sha512-eDO6oSFqoL0PP8GKcPPzNGGJ3XiJMQOFnAZbqWoaf//HDd232JQwQ4FdDAJtgn28+bGvJYC+wgvccsHzBd+RxQ==","shasum":"6cebe3c5e566a047af08fa79ed9b3dfea58df5b5","tarball":"https://registry.npmjs.org/tap/-/tap-14.4.1.tgz","fileCount":4034,"unpackedSize":13314566,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdHTD0CRA9TVsSAnZWagAAQIUP+gKBr700+quxiajgem4n\noiOCq017Ha4SD/6ceFI/ergTVEobPHsew8/SSF73cAEkL9H144b7xuxEwi/K\n4ACBSvHdLYSwDGRzDI72KWXkCHNF7Si6YYPXlbGFe97Q0cp0AOD9ojfMT9bA\nBj5NVK24mOc3/5dqrMjvI7F11uzeBtK+0V31W3ulzkMFUWmz1Az4/WrJl9at\n90kNkT1wBwpnUAyt8YCHWYDsGPQSiXPjnqGcQFNsab7SXzWnnZ6yu3by8Rb1\nHAx1LtDmzczy//LauB26So1t1JwRMzUCbe/MEAkAnqp0Y629CFUcbqlToWsg\nLrWyC712QZhr0zqK8ioyqdSx4Z1ezzy4qkQMrEkpxoqRZAud3DhdREMqmfWp\nyqeIjDa/csqLGCzeffQUfY4aiZaq+845Em5nlRig1/Du4rqwgbQf2/TJ4ri8\n32AGThvt8ZdfblY2YTzj09lODyfR0bjf8V18j7G3G8uDvjsboHQgs8BPd+rD\noHxsYEkVkmkQDkvtcqD6HE7293VfrEh8iaOgK9OBOMrULRq6nTzvUqH7EboR\ndJ/uPS38aY71RpgJFhzT3j64h/k2HBXFYGOasLBtjUxjRYbxoVF0yEYFQsUl\nqivF3f6l6P0a3mxV5eqVS+Tz+PZROB9CqRkg/qFJIX/gFhheSScUWbl+nJNf\n1/W+\r\n=bgE5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDdJuIxrxXCDqdzShY4LU2Oi3s4mXXzBuqgH4N27fzNRAiBfz2Bcbzb8HwWJpYC26d8KHj8OyXRWafCX1UCXqGSLVQ=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.4.1_1562194163322_0.34470719813354633"},"_hasShrinkwrap":false},"14.4.2":{"name":"tap","version":"14.4.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.5","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.101.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.8.6","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.5.3","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"gitHead":"dae64c86d14e7fd3e64bda889f85d626617aea19","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"bundleDependencies":["treport","ink"],"_id":"tap@14.4.2","_nodeVersion":"12.4.0","_npmVersion":"6.10.2-next.0","dist":{"integrity":"sha512-99JNfL207x7ERi1x4e4sjkF/Kg/tel8zfTbaIqERZ4tHG7RZWTdq5qcnqzp2GbQeV0jxivTB9AKKVw/8JA/4zg==","shasum":"be7998da854bd13cca6da4e927da151635112d5e","tarball":"https://registry.npmjs.org/tap/-/tap-14.4.2.tgz","fileCount":4036,"unpackedSize":13318331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdLmaECRA9TVsSAnZWagAAC3YP/3dboWVJtRdfRVF81HfB\nQ5dWi3mzgLJ+4CHowd4tpM2rtsbtqpozFz6F9ROqguTrkHcOVBkIWN0uCcvI\ns0M3yBwxKHjNhOCr5OE7wmY5YOptPQsOcEuylpquI4VNTUaVSOmnHwhIx8n7\nVjegerj/JSwmyVE5ygVSsUxjql/6NpoCI8PpYaCtFkhdZuEAS6lb/kgv4otp\nMLBEODt9o/j8fnyTV0moG8PlsDBVfO3NStruScse1YN5IUtHaGH75LpaIKT5\n0zINTkVY806F9ihXtm62EbpUzymbigdc1zCj3B5NSuY6fluflCihzD1YVMZl\nzOwXgwyXG0YHtCPEnT3JFwCsoHlvQS+jcDgFxl93Oi5TItS1li+pgnKTGXeO\n+M3fOmMrix9dIHxyXmZcn6sZQiQNMZMfnukB0Qk6TAcFUxPGNuNtKU/oNEt0\n9hTg2TCdt4bKvIcGlzZG3fhYUhd6AiRK4M7FCWPG/0C1q9FkeweTNMtiFpAV\nMVxkVYNn3DJGRLy6DlK5/zqMPJFDLo8AKFNM9vWBpTJe/9HBsd2HsOawjLln\nkfrR0r68PmEqGPYgvzOvga0k9QWwaBueBukhOal1am6MKHtBfOemZpws+4wh\nUYiM686etoFGjlkNEpOmXBA89z8UC1rlX9JLAEkIqhXGckP46LuLYgWdpmhK\nZzdO\r\n=kRrb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEKB9dt4f4yqOfAzHUHh/+YqNBpH9TE87BlfoyswT9/eAiAYd5wUBGK2y7uf1Bw57GHDlt7p7NS6AlsTNbW4bHraTg=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.4.2_1563321987716_0.24188367268884003"},"_hasShrinkwrap":false},"14.4.3":{"name":"tap","version":"14.4.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.5","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.101.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.8.6","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.5.3","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"gitHead":"df348ab2c250c6f5b4d7276ae98af3ae16813633","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"bundleDependencies":["treport","ink"],"_id":"tap@14.4.3","_nodeVersion":"12.6.0","_npmVersion":"6.10.2-next.2","dist":{"integrity":"sha512-luji9MrP9xwB+XzPeEQJJZFCRFwB6dIekMP+xYp77JfN7pkfKE/w7Tpu+hw0YMjdyOgSbcFlKOdfaIyzVhmsrg==","shasum":"97506f8ff14e42ac4b72b4940b8f5b3608803059","tarball":"https://registry.npmjs.org/tap/-/tap-14.4.3.tgz","fileCount":4036,"unpackedSize":13318331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdNf6zCRA9TVsSAnZWagAAj88P/i421+mVNRFM5jc67LjB\nL1CK5f614qsIKWL94N2x4UgK3+lsbMw1doR1O9135LXAvP9gn/5EeMFeiFfQ\nm+bk0Je1wFteOJS8AwbkK04G4Dp/O5YRX7mVdssht8hlghtk2u4GNU/LYrPq\njxUpYmu7lh/1y0cj4iXBcnkrr45ePpfDtwVNvJNQWhPb+qPFUhLl4s5vLywH\n/jZFTcEwUb4FOq96MuZMJE53MgwDBKw6t/DFbW3g2xBcfTHeWjdnS2kyaUDt\nn2RJrR+gFfRqHJkB/Iud1RGQsCISVBzttfUa0nn64ZTxlYyYUtTIOibg2BZ9\nQqPdE67hLlLaVLwv7xUKXw0H0rgboxtkjKhJDAMASWfVVlxFKrRKrlbD2r2/\nwHylcQne5+pN7Q9Kl0GBcgoiHw5VGyBdC84QusKXvczDcNYlHHNkjMtMRIK9\neIZc4s4H6cZUHO3urS+HGY2qwxVUYMlVARlBNzsTqaIT6mm00oDA3L6QE0SG\nq7uwZGZnjxGcfXQNjB5eKupTX+sGUmCQQ7x2Z4UJ0ddLoIrL9AwjzlsJn5V7\nxUBZLQT8QOxyd8x55iliDlW4Ebiby/ph1wxd3VCo0CNdf4ter84Mq6a4SEby\neR/B6+fpWqDOXcfETSuWZkzbSZozuw1kiV/SHX7ep8Fwt81v5eM8Nd5aqwUz\nEpdN\r\n=idol\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDeampHxLPQ3pISnC1YzMFCFJRyOnMMuwbNtPE5o0jH1gIgTm/Egy+KREUisyU7h4DgBfuj/Mltf8eVV+OCXZbHGk4="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.4.3_1563819698125_0.2130469995080122"},"_hasShrinkwrap":false},"14.5.0":{"name":"tap","version":"14.5.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.5","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.101.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.8.6","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.5.3","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"gitHead":"b8febfbed1db2ae3e7d33d6497aa132c03fe85b1","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"bundleDependencies":["treport","ink"],"_id":"tap@14.5.0","_nodeVersion":"12.6.0","_npmVersion":"6.10.2","dist":{"integrity":"sha512-C7gfyUH6xrL47pdQFTndwKrSTMYTgNwxfeEDVPY8nIR8/VEGtTQCLHFJHXcbB2wBJ2gtdjrfkLp8Io5yOtwCmQ==","shasum":"4fdbcf0cb85a9926e0b88c578e390b0e45667865","tarball":"https://registry.npmjs.org/tap/-/tap-14.5.0.tgz","fileCount":4036,"unpackedSize":13318421,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdPhwgCRA9TVsSAnZWagAAndMP/RgjPVuIj4Ts4J33PlTe\ngyVzZzM8O/pr70YTMkGsJR/4GDMTPhvovU0JNHNxWojzdE8eleX8pGslfWWp\nYPwe860vWDjwCf5M66S0DiffNfaFT1rUPGQg8F5703Ng5+zKpN02ErZQFKaG\npYOcexb3PHnNRRScZs6lxATHqc3Rx4o9uZ2Ch3GiJq7VtHr3siGG5cEhXb+c\nGBH1lPJkbVbTD9AsiZNhv98jTw5k/aqwaNEaYM8p//QN4Qo0wlPLnHq7tsem\nw0kQR/AVcxQ3ETVTzYnN79R4nqpq0XG68DRWBsf9tzP+pH0bLsr9OoXBskEm\nP7s2yk67A+iTDGyatVt8dVLtXIiQ+0dg8XeJkSMuP4VyG6qqU0Eqam2x8iQL\n5HpAcMmwMY/HY/xv0Y8O79mM0Dm6sTJrtUkCjKU3OwEJlo/6dsQUOlu0cnUq\nFJ66ir6a8NC5N2haKYGRnDM9p8ps0Y35SbB6kOFi91YicZmY3YUKMuqf3m3V\nO2hHS52SdHB60lOHYQR1bpBUduaTvtvZBfl8pFvyXqrIdd6F3Rz0Havmn+Hb\n6StnEgnAQV3QnDdPs6UY7Mp1fmmkW1cGuk1MIgCUSPscYuI0guSu5QKcVoDF\nqhCl7QMmoQsXiBwYQo/HoxBPM9XBV/njOXIrkfb+p1cExazKhKjhHKTSY2NF\nW5ri\r\n=/vUd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDRLVdBKN4tiaJs3dBwCK/H/3jXffXkBwR0x+wB0okTIQIgHHuRc8GfSF96szXiLVQjAdzyrDfOrQu676hFAEQmpmU="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.5.0_1564351519540_0.12919705346182253"},"_hasShrinkwrap":false},"14.6.0":{"name":"tap","version":"14.6.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.5","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.101.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.8.6","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.5.3","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"gitHead":"940d44c8fd8c1ea8701cb353779c94a52e5d5581","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"bundleDependencies":["treport","ink"],"_id":"tap@14.6.0","_nodeVersion":"12.6.0","_npmVersion":"6.10.2","dist":{"integrity":"sha512-Z5CMrdKAup32UKDfzCLq61p3X8SoKjqA6SDqNr20zO8U0n7Q+c3JGM22jeb0wJUWATqi2CUvM7Z4AMB5QM+v7Q==","shasum":"c98a3ad9e1591322aee91065896fba7e1f13db23","tarball":"https://registry.npmjs.org/tap/-/tap-14.6.0.tgz","fileCount":4036,"unpackedSize":13318929,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdRmvGCRA9TVsSAnZWagAANMoP/2ZAa/IWWofqi503lmfQ\neF6OXRfHPAahEYXmTIM6gfX7gQ5MXACui2kTbhxowrKSmfkBzasUyi2aCZH9\nSv+LzvXO5dbooU7rqD1r/a/At9Z7IO5V1m6VDs76BV6Nx91oMHU/NQ8N1fSf\nmOADUPf+5BnX0kgqs677nKPYNbaCWTbVcOnIZnW2Ipf20uhq63zKhB2BH4Yh\nNZK2nehFkUvQg3QwMl3lqBI15eJfnCu5w3+1/I9fJe9u/QI01oQ+jM41FYVW\nwJDMLkgtxaXwkW16x4RlDHh3XM/C3bYBuZeYEpwRYD7EZvU4LloKATWnm5Gt\nVk1sSK7fdERt5gARAyxfTQWT9uFo/pAaHPQpfpZZ9+3OkNMppPtN7Os3vsEX\nUrknFOQzocmBacjT0w5gL73XhUjEhaV/8muOtdCDKYSblZNw4KZX3SimEpNf\n1HslmNUDBC8B1MNCJgtUnd1yvM0roRtj/mUMRTIJpZHfOt5fk8P7GSrsU8Cu\n+CtXr3RstBEa18VsSX4lwkQRvkWmu9V1o+iTEh8tXhYeyq7HS5ivdnWSrsXd\nHV5L1hOBJ10MGBguWZO3PvI1Y9beJa9TzDifIetocu26ZJ2jng5NfmS5QclM\ne6LiXMyVSTx3H1syu1NgFGRp/qNYnNYmPgzu+RS4cqLbxinV3rz+uG3Faylj\nWUCs\r\n=omz7\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC/1s/sXhsGNY9BQvyucsX6+V9HgRhFjffntiE3BKmA3wIhAM4Nlb3CvsEJGVmS+XlxIA/B3ExKmi/qZo+/FnzlCc0U"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.6.0_1564896197821_0.7444719840595015"},"_hasShrinkwrap":false},"14.6.1":{"name":"tap","version":"14.6.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.5","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.101.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.8.6","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.5.3","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"gitHead":"8d280c356467c09c9dc604dc11acb0a42f7b7177","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"bundleDependencies":["treport","ink"],"_id":"tap@14.6.1","_nodeVersion":"12.6.0","_npmVersion":"6.10.2","dist":{"integrity":"sha512-zxENP78NlaF4guEyNPvSs7iKWOJUSjqRYcfN+ERo42OaSyA0hDm27U4yuliQjuBJlW35vvAk9dIfocPVa0eYMw==","shasum":"ad94a2baa5a61db772fafa2d172ba8df77329a6c","tarball":"https://registry.npmjs.org/tap/-/tap-14.6.1.tgz","fileCount":4036,"unpackedSize":13318933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdRnnHCRA9TVsSAnZWagAAgREP/36VHZ+OTZy9MQmjby9z\nFNeveJmeMltaSv4hLWOwFFPJtjKKj9LCVeLw5+5Px2S9CFJuNytU+YpCwCrK\nPpIHmTw3sSzb8btqNX97dmRK4l59A8ZnWlRD2eWZNjb5prhGB+YuTrUsVU75\njhRwRfI33xj5IlVKx0BwMRb0c2k6WIQVLutD/Y6on0/yKhY7+vxf62U41uz+\nVn3d5JIJl1ps7ER4BWOY2NIXHbWnmfiAZmYhBW3h/qx7jN+aTnIoonNlMhQ9\nYhobGK4Q6RcYFgXxpA/nxagA9aeUyDIP4B+F4Gnk8aBe6ndDCbmyiTrNW9Ce\nZ6Gr/mbHdu/ePYisV4UrGgtD2+tUM3qHtql36Uaf9lXdr1JClzD9cWvMacBK\ni+MgsaumtF0l2qi0cUYuO22KkMK66f8mjB7b/YKutW4A4FCrdlJesyBRsz/5\ngUqZzZfiLXxBW1da4eE4JQ5IEEwATdNSM6JVpKZqo27EdFz0hM4iFGay8P2C\nw7HF2oXEq8wuCz//a/20fecuOmLV9HeyDpzJthK33lDwiosSC9frJwMrnbLa\n3ylA48rykTEatv2Ntf88SZeRvnUemT5hEr6zK3jqoIgQcJ/dj0LHsQx5M+8K\n6BrjMFKnTNTp0SxLif0NaMpVztlb/eJ59SrRD+GvKd4lEWVgmXWtsoeT2ICH\nF5lv\r\n=vukA\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHQ28euJjUr3iQO5aBhaqdGYsbr1VK1Nq3oLZIFIHw2XAiEAxEMzTFiReo45NH/nBq3zg+J/rrltvaq3MbpggLz+EvQ="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.6.1_1564899782772_0.03974116428957686"},"_hasShrinkwrap":false},"14.6.2":{"name":"tap","version":"14.6.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.5","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.101.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.8.6","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.5.3","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"gitHead":"443786c3a6c59243ed52fde64a37be4531f43367","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.6.2","_nodeVersion":"12.8.1","_npmVersion":"6.11.3","dist":{"integrity":"sha512-vGtyUcTXsmqKCv1Cn+noln3Qz3UucIA/1jO3oKR1UDHOC928+HWTmxJt7VkSyXk+ZYoltqVOYTW0BI4iMipzjw==","shasum":"fa9c6165e40f483a708ac3ef85d55a9ea95bf2be","tarball":"https://registry.npmjs.org/tap/-/tap-14.6.2.tgz","fileCount":4036,"unpackedSize":13319441,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdeA+HCRA9TVsSAnZWagAAFCoP/0oGX5d3fqp8WDwOA8OA\ndvC2yOfPYszpbVocKbww6vIlLV5ohqZn7rwmoyhE/xhnGOF+W6czhsVtW4sV\nfMrBgeyZk9mj94hrqKxeUFcN0+oEMxWFMC5HL78YhSS0HHtOmXwf77RfuQv3\n71wVYnNyRiDOGUghg5ww1NW19Jt+afQvn3zTARveQDHb3W/iNcXqNDO2eo4H\n9WLt+xwRi7E6iSNRzfExiL3wIKaYDHrW5N37leS1BegintqGHyWQB9HPQt+M\nMWdim14tMY/U/g68a1ft/sz8Pud9a8fD17IjZfTqB1h4gy/l6IvpbTSEeWI4\n8BOvpZwrdq33Z3qZqMo+Sbz49BhXr03GN1G4p0sSU3ee09M1ffDPA0jerz1K\nt4zL8aDCG5CtNKjGastHPaIeHYvLm+6DAXCVQH7u8ulT8CbsuixEJgJycFJB\n3zsEQvZ2e5vXB0Ndq09ZP8V1MdmNmXCuxXnocxjEggp3kLPqT0Croqz6Pl2X\neQsObQNc2mBe7rcjCMXeXr5OMV+kgUUVz3UOYs1J4dxHCNIGIIqRmTa40xUl\n4416z1YlQ95ahhHTGn/RGePbE4PK6GUhc9tAsBajlo5UDptmPckvzQRVroKY\nJ+JrF3oItpG35OlrXdEvw6fqfZLd92OzptN0Ohkj2LTRLCMb61fnhu8b9mii\nbjI1\r\n=Jv0R\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA5sgXZ51SiOW4eLOnRScg0srCK88gTGB1wQ73EoK/ycAiEA/X5mbuA3MHB66bejRPOMSjAaC9Y90KE00BZCBjtw3l4="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.6.2_1568149382180_0.8727462804029513"},"_hasShrinkwrap":false},"14.6.3":{"name":"tap","version":"14.6.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.5","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.101.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.3.5","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.8.6","rimraf":"^2.6.3","signal-exit":"^3.0.0","source-map-support":"^0.5.12","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.2","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.5.3","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"gitHead":"1436f4ffc5b4a7ead14486ad2ca9424bb7012d48","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.6.3","_nodeVersion":"12.8.1","_npmVersion":"6.11.3","dist":{"integrity":"sha512-Y9n3M56wM2PwbxvQkFR4mRT/nnCJcK4EB/q6WoTpXnGZBgNoU9Z3OajYfHUni73OPca5jXn4+J4Ox7/4ROzefA==","shasum":"8144aeb9a3f1a295e8e85516fe33f75511743f42","tarball":"https://registry.npmjs.org/tap/-/tap-14.6.3.tgz","fileCount":4036,"unpackedSize":13319666,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdfnfrCRA9TVsSAnZWagAA+0kP/RQGRHchy7ih1IzlJrwq\ng7lWF385avzKJovErBc/E0Ax+HxUJTJiakk5Ib+EAL9sfpOcBaeifGdj8ZKW\nNUdX7l7t9BMW4QZZlh+XLX1XROj+ZQeaoki34eDxj4pVHIsWz5iHrF1cBLcF\ngzOJyi1HpQvENp66BPTqyNbfbZOO5drvsw2soecKWM5TtL3OJYD4MXY+CyM6\nzxCzJrWJoUcli6p8EFEXWLRxiXtCUetQldvDa3kYdzdAejQMBaKcUaNUHTcw\n+Aj/PHC5szi51zPWaSe9SZh87TKIkkuvcQ/aUe8HTgp4bjQ0hvArNaHqH75S\nLzc8+w0C2k+Lji8btywOl+sTEazmfOcPZenVjnal5X+GO/fTcJjmLAAInGGy\nYB5n1GO4GUSKsZ383/CPTSIGhZNRpkJKV2/nzHSQFZffZScZZkv1TJ+W2Uea\ngCOpulBJ3pti/ABMsTF5u6+VRMkbfMtyEKrRZqUJHT6y7SFr43PXMKSYdQwH\n18Bftj1LUk66uHZ1A4s3hBgSegI0XfzTgViLXXrQs8FBgGuKUaJOhDUJHdnc\nl9X1WwyB1FaaVXAe8CY1Ah9mV5sB5yR9eyzmC7TejpOiw/lSRJEaSQx4nCiR\nlVrlYQLHwQxay+tGG6/ioCeJZ/WADygJX7AdCI9XTlCW3t0KiEWP6lUhH5I7\nlVCc\r\n=+WkP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDZMNE6vM0bhXiZrb6AtWDH07dwINH0qiXuXHjBA2xS7wIgLTJBPlVV2Ncy9MTDm62Pqz3TbDlpQFFr4nYd/1UstD0="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.6.3_1568569321917_0.7002367639176414"},"_hasShrinkwrap":false},"14.6.4":{"name":"tap","version":"14.6.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.5.1","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.13","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.3","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"gitHead":"49e9df0d8337ca57fa7bbbf493811bd3cd806680","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.6.4","_nodeVersion":"12.8.1","_npmVersion":"6.11.3","dist":{"integrity":"sha512-qYO/ZlQumbYzibH+wCVfkrNAomtBhKcKvMHWAMaucHrTBzZGHCmLR/WmRhb1khOKN5gzxMbCpEct3GQIKYXRlw==","shasum":"a42b05035b27ed3f43a1c47601585908b38680c9","tarball":"https://registry.npmjs.org/tap/-/tap-14.6.4.tgz","fileCount":4036,"unpackedSize":13349248,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdfnpdCRA9TVsSAnZWagAAG9MQAKS3KN/6hRM1xlpUMNX3\nWjbHSyE9szv25URmwARCnLt4zq9sVQ310Q2Ttok/du4EW8McTyVpcd51kKxF\nLXEH4llB4K3T6plLfOrsykXRmpkZuUJ0czFNSIzP8nvwNwUhPBsAIKARHmwO\n/iAfqlplmLyeU+Zrqovh7+r3hcD2XNhmGjBCieUzg6YmJam/1xamkhLn5fNN\nLHOeDUx+3jyxajAIfdqpL9mdsu+0G+5YU1mEwhFcqySmTeAiTWZxfizDhzAJ\nvC/3ng1QLCGu6XkHTHjK5qY0OeNelkwf7fNsmsIBhwApyS7rWm26fl9+bYq+\nJuWmneCcDFkRxZgPjzmto7CvqgxODejxhwGb46/JZzmde01nidgJXB9qa1Er\nwTr6sCpke4CrYa50S4e9hok3/2Qb79rawUTEjd61BUeYhlIMQMiYi/8evIn6\nT77h8Rm47z8m0OKww321DEFq2StNmeqC/r561wvWQSCCxgDIRU09e3Y2Fo1Q\ni6rvSLHv8SLtmvGwef+dyOT2wmfAahv11P0rtzN+3MwiFRw2lfpGLoAyNwwq\n7oV9/QVbdGzF/Zcbn8vRAPJBZbNuodIYg6BYwcHLHXKZbprWV+BobvoqR6Vd\nDxEDeIsqmjSFomI/sAAzihkm/Ow6hPB875AFWzk1UfRkAKoR1gsR+APlS6s1\ncbJV\r\n=tUO5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC9gq71nUfLeq05G8Kj0l9P78CDEYbGdkleVBiNDZ5ecwIhAJ9X1/pGq3zhZ25ZrSwhOD+xZ8JaDe6GEGUe/Gj5j0sJ"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.6.4_1568569949245_0.1056409729836989"},"_hasShrinkwrap":false},"14.6.5":{"name":"tap","version":"14.6.5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.8.3","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.13","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.3","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"gitHead":"fb852eed31598d7d764992aee73343b83d159212","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.6.5","_nodeVersion":"12.8.1","_npmVersion":"6.11.3","dist":{"integrity":"sha512-+cSTJoajn8dyBttdNkHtrWkMAjIHRYrSlFTPkGLeeUhMpQ3kal7YsCnwPSVtE2R0ALddxtTGvU+2D87HZnAUgQ==","shasum":"e754f1f67ab0fd16bee4b5575d4cc245652ccfc6","tarball":"https://registry.npmjs.org/tap/-/tap-14.6.5.tgz","fileCount":4036,"unpackedSize":13364828,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdiRYpCRA9TVsSAnZWagAA8kcP/0pwL2/4ObDoaw1XcpHE\nRdRyaZnoeYhsN/fXhsO/9usP56KPNV782NvQbN647KtZ+zSZW/PZKQ0CdfcP\nFmbkcemD3+3qoRKRqnbjNs0IIHJLE7+pqHLstFfPuh9tC0sCrS0OF/OwjCcB\nGn8mfC9fQSw5XZY7ojbFfgCNv5dyyj7V8lAMa40tDCIVfheb5XEPwGz6bv9l\niTR9hsF+HYcKmvzmY3DPDdTUzwFycDdFX9mAG1PxQt1JUE+xEcJhIV+eOONT\nH3M4pQWdk9PBb2JeZjbJ8B2jMKiciURLANYo+J9WHhm2CCMtLp3po44Q44xs\ndtAUJpCe873WE5YtNcFbmd8VZ1eNUE6rdWbF/SNl6vTuzllrZt52W1PFgbVm\nvSgNhO+rv5OUbAi6tVuM5hfe57qxFA4Z3IEAfOzRzWgt44UhEvFMbUTW1375\nHwwVq5hzvkQWHNkkMLNPlCN0hOlhQjluczbDVaKhTajIlOt0GFmnZhLQkXC1\n0ybd5NbB+779q6f99rcZ62BtwJUhkTWHQL7oDeDNL5TnZpNWvRBm1yAv+BBC\nY598vm2YfxywZ01csVD5A2VwUq1wCPAc8kErPraURynkXe5s0ywtS8uGCvaV\n0scert3ClPdHkH7owFyHOaqQVLDnE1R5U4u0Z1Z+9DSkcVsCLjtRHdU/tjL5\nTIcA\r\n=2jLv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAHpdIXWy+k8MjB4JyWiZLWI2JoVcjHcqcpHvU3Xui/3AiBlR1dHPL28fa2mKdEVm1x8ND4XhQzQCJBfgqeV8zIY7w=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.6.5_1569265192452_0.5524140079539055"},"_hasShrinkwrap":false},"14.6.6":{"name":"tap","version":"14.6.6","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.0","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.8.3","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.13","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.3","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"gitHead":"eb2bded8bc3984bfa00b4f6a337502e53adae51c","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.6.6","_nodeVersion":"12.8.1","_npmVersion":"6.12.0-next.0","dist":{"integrity":"sha512-kRYct/Iuc1oWZVgiFkr5bI6FLN78GT0MxqdiwvYFJDt1fxTX7SgxSBAES5H4RPgezaN21zm39Gf09tSM6E1+jQ==","shasum":"b44366c4a50e5e2f62b322b0c7fa4d1c3b625160","tarball":"https://registry.npmjs.org/tap/-/tap-14.6.6.tgz","fileCount":4036,"unpackedSize":13365477,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdkPSpCRA9TVsSAnZWagAAeUcP/0py/v3uI9T2nzLYZ+Xv\nsx1F3REKkdRcvmHsYQnGz1Dc4dFSKFbFiTGZN81TJE7gKj45yjU5/i6jfAbo\nt6OUfJBoSTsgJTlmKNeiLBYywd3GHZWc8sxKwDcQ3dM5jsYZWFW51b9TXYJF\nzDZYRm5Hqm9qXmrAbd6f628GO3en6NrydSuRXrST7nTf9huG3plMyXyMVFHt\nHCEa1B1O7XtvIBwaAqzhwg/4yxgS8Eupj8XCe9iBUM/qMiE41+vWMkFT9opd\niJ/fe0KymFcS7MrCjXOHoJvoHTzKtB1c+kouaT6+9Blh/cscPYQWiFiaCgra\nq89soC3tdD8oyAdrfvUe83EsP5N+Y2ee9nGMnWqHAfct8zSzU+cscQP/7c0x\nN9q80VrsGy2yWJWq9q6p3ZFPoIuFQOaQefyMlJjz79hdM4jvCMy1AfYk/RCG\nRF/N9dBZymq8X9O/TnAgWwzRmQA4jByeqeo5JZP0ee8tYBlU/tkkf20sYM9u\nAoJNyDqCa9M9isKFmx2DpWCv49qtvn9i6HFLA5akeHWQDBKyXFzrtjbazzv3\nRFkcL1uGSTU9xIoNtAfaZ70iH6tF/50LzkaUvPF9go8GNvoiZJ4DTuGMhKma\nicxWh7PbWNJ0XJJvhblrSjOVcsi+uyFwm1OeKTjEPRRYMP2z8x7Sf1JfAbyK\ndKqx\r\n=wqR2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIH7VJLfYyZCbAUEyZdqOahPLTCOGYIhGLfGUUfQnHg9+AiAK6Lw8RrRHUtyCEm/y3zUg1yqYHLmWcuJfiDFVQMsoGw=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.6.6_1569780904283_0.5885826832428798"},"_hasShrinkwrap":false},"14.6.7":{"name":"tap","version":"14.6.7","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.1","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^2.8.3","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.13","stack-utils":"^1.0.2","tap-mocha-reporter":"^4.0.1","tap-parser":"^9.3.3","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"gitHead":"9917a7a163303c90ab818ae2723376fac08a3401","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.6.7","_nodeVersion":"12.8.1","_npmVersion":"6.12.0-next.0","dist":{"integrity":"sha512-44C1d1q7TnATCO4XjzyDMkLoGEC4XcwwAoDSbX5FVjtkWAWeQoB3ClQRaxsvj0qvyBvJkql5QypLLa8Q42xuZw==","shasum":"e23c51c52655dbb895ea96d0a9b7069b785dbab6","tarball":"https://registry.npmjs.org/tap/-/tap-14.6.7.tgz","fileCount":4036,"unpackedSize":13365477,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdkQ6PCRA9TVsSAnZWagAAqPMQAKQVHN9zM3QLmCmiIQXE\nEy1Kl1elIDP6ZEyB9qQoKrZscDGBCFB4oZvMpCNOSg7WdBV8SU6TzwMCIFbn\nZYSGr3rt0IpXhQm8O7sNw5tWolqbLBxIpNctdDYmK+hpjaB7OKKG4JTEONWO\nbtW1tkwxNxsLIkxo5fwI1nTFkP6qTW77ecsd/pQk54oZJAeoCBn7tdw0kWzZ\n0HC8oTbT2eunZcYq3y1tTNIjC/edSEUocS0TxJQO4TB51Df8RYhtiGC1le73\nWw5gUjoRtZ8O4HFtsRoeNdk6+bhCI4vVnI4a96vi+RU/xGjDFO1t3eP6iCPq\n6APIrdYNkENQi70GX+R9xYsJMC2hikvs0oJVxWf/Ex3kbP3Gkhy8J01F8PZu\no1YAwfl15dWCqG/XfYPgHf4T7rpE217nzNYGVRLpnug4WNUTwbNJz80fjXpS\nQTLFDAkF1NAXjk9Kj8zMYNBvVf9NCvyRvrWYwkTEBcPriWIzTPQL4dNRx8gr\n2l3AYGqPWgjpIRMtKJ6WCup8Y2rjpqYwXVT19BAInQqhwG9Bhsq+Ha5DF0t1\nwLDsla6qferBQgvodFkGspkXWiggzx5cOiU+CB11m8AW3YGnToNY++QqC44K\n5M+urGPa37R3bckIDNM4dtQ2uAcA2SRZQixulRIP4vgdz6K+Sk4C3HPyBt4D\nUFJn\r\n=YrK0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCvRlgAbNrWu6nVopyIESI/N3ONijP9VHUqM7DgQvkkYwIgZSjevjz036TQDgCgt11p2LwoU4lBZ1CRCfGyzScHJAk="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.6.7_1569787534534_0.15124151304978906"},"_hasShrinkwrap":false},"14.6.8":{"name":"tap","version":"14.6.8","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.1","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.0.0","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.13","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.0","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"gitHead":"eaa008498b556ca8e6ca1ba7a55b877fe7032593","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.6.8","_nodeVersion":"12.8.1","_npmVersion":"6.12.0-next.0","dist":{"integrity":"sha512-i9VCQTtgv2BupdD/KOxJB5nMGTyAe/SQuNNOpq6sMBDITXVFlUscHQziE5bvX8UESVy7/EAnFqlZCe87HtQDAQ==","shasum":"29ae97d979edeed4a67a5f463ff0dca02e80ffb8","tarball":"https://registry.npmjs.org/tap/-/tap-14.6.8.tgz","fileCount":4036,"unpackedSize":13372588,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdkmXCCRA9TVsSAnZWagAAjIIP/ioisZQJ+etSDThr5HHe\nTMT5c+r+qp6dyryTUrLhKBu/rkrZandJVjnALH4hmlmNsh6qH9A5UkoKjWqK\nusGlzcY+wTXTHXTgiIGjJdBjJidYm2aFHbYUe3Gu6X2g5KgQFXI4AdMjPHFL\npQfqzQiB0Vcd8sty+YqmVNhu+nsWJQw1m3d1FosYnzvitrtCwB5T91tz0m+g\nhsHd+tU8Q0ukbpQSjIojNcF6T9ZaAMnDFlH/m8PaiVW8JFalyUAHglU4TKHv\n40hzEzxb4dM2LljEMKAkOrtwEhotsFyhFRMszhk876GB6ecLo8mEBRk4RAKF\n3wp3hn1dKks4gWcfUFwpDsT33x4j9rQbfVrGODzWpAwmmea6N/qI4l/DhjZy\nrBLsf8W8+Rdtz2vzD2RfDa9ycmd6/F519hEt88yCIZUvBjYY9pBQ3IIhap42\n36DsgwVSkpRj8V390oNf186yuwaqRl6biiDAfSHJdg3phEVnP/539IMztAKx\nwGXoqJJTcOrptRiRycdxRw4yuLQVDRwcRLQpd6o7gC/ZbBsHEB+3eEq0//dh\nazRQ2F4+HsIfJWQjeciXiq73jTA34iOBW6j2WH8ST854AYQjZrPYdQbU7Rzn\nUd+HEu55vDXaTa74UuvIssSPy8GaXQYC/b7WL8F3i8UyYQsCpB06y7fqVN5b\nJXyG\r\n=5Oss\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAk3NTSJN3MU5Jbd7nfywulz/naYwYPxUzfNiZQsYGfRAiEA9pa0tERO8oTipJW9t7aBhAQY5hYlHFoPwYMJhpsu9oM="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.6.8_1569875393408_0.8964507226135294"},"_hasShrinkwrap":false},"14.6.9":{"name":"tap","version":"14.6.9","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.1","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","capture-stack-trace":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.0.0","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.13","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.0","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.1","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^1.3.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"gitHead":"a1ffb54fe6f06bf5557850f3940d8828727c1749","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.6.9","_nodeVersion":"12.8.1","_npmVersion":"6.12.0-next.0","dist":{"integrity":"sha512-impxvxJo49knWdQNctdY+hAyQGbLjGR9foNkX4B9NnotgV5tfmJNqLrFu+YluHSNhIjfqF6Ea+Pj08xPAHxfSQ==","shasum":"bcc6f7d73cb0df3a4a045165a79244a3ed33b7f3","tarball":"https://registry.npmjs.org/tap/-/tap-14.6.9.tgz","fileCount":4036,"unpackedSize":13372306,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdkmctCRA9TVsSAnZWagAAME8QAImp4X2mGwQguM4hTRoQ\n1/J0i3rFKdiUnoyMLymk7hCYrPxAB2FoYjGSGn54TwNTzd9/iVJUFCYnbWuw\nxk2RLGzvWGUD6cWvPhCjSs+34Bg2/LJrqj2yZZ8VUyDePJ1Yf2p0QOyWnIea\ncwWefUI6rgRC+SK/E04DzCfFfG63N4vfG86/DSILfdkOi4ZMHG87vzqd8Z2W\ncLfdMvTByjc9cQNDHwTJN3aqqxAz6qT1MOh+5c1E942Tyl1dkY2ahU8/Oq8i\nv8zGa3YW0T/x/rKP1yJQgw8oqVwQjGwKaq2mBYywEP0luo7TOM1SHSD8ypsb\nDHiVLpT5vZ0U5viqQIDIKKyP4KL0725Fj+H7sSIdaQymNhM25vsy+Te3pU92\nAKuSbYS2MddUpZ78k/Ay+CB+nqXtGa+KTtuCHPNMDDtKKnhWBC/w8s9J4EII\nHdvzYnzbplCKIIZOWClwGMHDIo1fHEfaUGXC0BIjjDl4GlVrMntuTwBapKjZ\nOj+NF5Gn2Sz/6DdEo4ByPGTYn7J6hBz1scbGlyAyWGWogn4EEdHyaqCCJhBR\nwuVLdpnq/1fRRuTizx4EbEEtNy40H0NffSSrULJ6WCl66km/nWczI/m0UhNQ\njzMIPGZYWEzYYTAqEoCEpZsAmMz9CiaMQNPtd57Fzvpn19O0c7cN5vTPLqSp\nEKTS\r\n=ooK6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDyPeWNqELz1a4A+D3twgLK+pZaNj35YOuY0G9lNkNvCgIhALIEen6DZRp2zb3VYBL3Eix3t1qO2x3kEXCb23Q8kYQa"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.6.9_1569875756796_0.5036633641583672"},"_hasShrinkwrap":false},"14.7.0":{"name":"tap","version":"14.7.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.1","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.0.0","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.13","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.0","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.1","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^2.0.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"gitHead":"9c85d03b53f69b5c62f9513e4eb673ca354d0fe0","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.7.0","_nodeVersion":"12.12.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-bEgzzUSsz3UG0zEEVpNAruPvOoKWE1z2ROctd337mSjjEa8nGmW7b5Iy5KipwXK0z6JXPxEBpegmlYSQInELhQ==","shasum":"46ad8d53bd9a1aeb978e3532f8e7a5445648955c","tarball":"https://registry.npmjs.org/tap/-/tap-14.7.0.tgz","fileCount":4057,"unpackedSize":13755739,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdpA2iCRA9TVsSAnZWagAALoQQAIIiAQnm0FKNExEGykHD\nK0TCcIlMtyEGevYN8ViNwCCpz1J2XOASWnaIumlIpuH4/kv/ZSLZ9UBx3GOF\nc28fMnO1r4c7bpwidPMUaUTewauL9rsxAxF+IeH88HiLqZJpfipzz5zxu5s0\nEaDL3au9loDnAvODzQh/iknJ+KRJk+Gbead1vm0JsYaihx3JmYq+2X8DY55b\nI0OLD2TsK5QsyOTXMH7Ojh6vk/BexTybwA7tck6FmybQKwJ2OhQy8qBqujoc\nl3pujh7nGmcCwCYyU0d1LzUr2w/Jvst8ajPMsGGBUaLOvGrQG9pE1jCfyLwz\n0pZYtfobTjzLqYRYw3t/BIesWyQzHIYhMtE+n7PhWtXB/lNZPMCEZA8u/017\nLy7GNDgr4Nx0T7nhB88Ra7Hr/kUCpEdvA++2hRPf83L3FwhtIgQGGYlFbKM3\nmTN2ZKHxK2sWTWg21kuorHzW9QBHKsmon/E98IN8qF+YByjyT3VgDvF7lfGj\nlxYsO+gmvq84Fh2bmoRTC7+pH5InJvrLXGHqrGxAhJ+w4I8UpuEdzCN06hlE\nzqs3vUXBOEI/rNudNmmKMyhso62TnD5CzFEcUlTbk86Oq6zhEjznkEUnQJyf\noMlBnjfMtfH3AHAhWJmb/q2vOlPhz+7HlAm9UlCnAVBCVQSqCNVPokMTSQbN\ntUID\r\n=s0gx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGOHcPTtQeBlyMcwV91hvLG6MMnrfq/x0evKTg5DcgcAAiEAiSLnkSL4EAg27tWQvimKbhyiGJm9KXN0Qdac+SxyIQo="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.7.0_1571032481576_0.22740060685090646"},"_hasShrinkwrap":false},"14.7.1":{"name":"tap","version":"14.7.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.2","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.0.0","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"github:tapjs/node-source-map-support#node-header-length-change","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.0","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.1","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^2.0.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"gitHead":"876ab9c63c97415ab5f0b9db08805268490738e7","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.7.1","_nodeVersion":"12.12.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-hbX34cNSduEh0RMNMIUwZPwJksBnE+LQC8FfvvOeZGvkUTXVVxZ4/ADuuDP2AY+9e75t8ZqzezAsfzIQHSLNSg==","shasum":"8f144952d83d11b2c6dba1d7953e5931cf28cff1","tarball":"https://registry.npmjs.org/tap/-/tap-14.7.1.tgz","fileCount":4057,"unpackedSize":13754354,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdpmtOCRA9TVsSAnZWagAAuo4P/RRm4FjzdUtGDoDxvVtQ\n/Kk3HgtRpQJeQ78GYL+gXFWLEa+27ClFmuQTrhYb5FI3M1i4BsF9fo30MRKG\n/LS55VCEe6YaGvPcjK+aa3lZTvomacJaIShab94dVsFiLiANNVkX+XxuGjXL\nv0sHA7hg6quHv8NnlKzbbLC8EbvswJPUwpTy7Fz4DDHCTxz7lAM7czuTpJCh\ncqwydR6EDPaBSEBJospMSBTRI53boR5d7euGrqa1niaswXt43Gf6NU+j1lio\nP8CGtdo9+B9jTaSlNNEftMgTlYn962CvYDw2wdyY/XbAsrfiuD1zVTm2mcPx\nyCyz6jgdLZvLw9sO4hBqPlHS+8jfZKwXuHwFiv0CpgjYLCzvi25JR9buyx5I\nl0GFlPRG82j9wFL0jUSxR9Y6lO1vecTktbvQx4rQGLU9VJjve45Jb1YO7pzl\nTTm/iv7hSQKHYVB6NnN8ACtDeDnIBI/aR4YH4ibLbwxZNZOEAP0LEajaRrWH\njCOqpSeItNKohdBqQWM9OWUDdkxg5ihiJCgg/DiEwGHeXIh6euELnoja56DE\nvNjD2ddz1hvOuvqwKdeIdXdpK7DGymnbYnePIGxn7Q0pH0FwhPZR8+BG467U\nXPLMOB8LtV4pDkaJPsp1X2QoHn1aj6vRJkeMMUr56ASkWv39d5qmOqytAnuf\nDfiy\r\n=xzN0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC8UKB9MpANm4p0STREsWVMmqCoDck3FClB2CGc1MV3EwIgDhHIHOkWbviUkyNCuZhaeRPbF5cXK5p4cskT38SrAmQ="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.7.1_1571187533702_0.780640217302266"},"_hasShrinkwrap":false},"14.7.2":{"name":"tap","version":"14.7.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.2","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.0.0","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"github:tapjs/node-source-map-support#node-header-length-change","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.2","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^2.0.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"gitHead":"1e2f18b0004e69d8dae5afe03ee6c4665d537768","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.7.2","_nodeVersion":"12.12.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-JbqhvKsmnhe2HJjCu1DBMcFdlLfljDRuyqRiAv7If0QAXjJCvbYlEDIzakErQnitjJChMn9U+w5Ir2wsPxgv8A==","shasum":"e1002398fa7d2d8893e792131efc28eeb94fd33f","tarball":"https://registry.npmjs.org/tap/-/tap-14.7.2.tgz","fileCount":4057,"unpackedSize":13756987,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdqSXaCRA9TVsSAnZWagAAWHgP/jiwKHXr1YpDnH8ac3ly\nn+yxKFJHA1ozeju1xY0KJALaJojmKf8AVAM3FzL0FESACK2jI58/DrGdMreG\ntjZARPn8v3wqLLLLGk9im1ez0+juFYS95Sw1WwUBjWgkvPKGhRhFM2GU/EVL\nelYCVJ+BdVCZVoymEDHhv0zCrg7cOSoyruEbidcwWzm+jdt3oiLXe50nvD60\nz9BiW8vXu2NzFacIgt3GRMU99xy22f+K84aJ812meF0ZgaCDw27XX7IEP/Rh\nxIygIwQWOjidfATWUy+WTyp8sCooDBQrQNyVY81GKnSdX6QKleGuszAqzv0K\nioajX4EfATECojptB6sLvm3VgTq7c6LXVppjz+YYhJelycgYhWmU9eSEvhkP\n/YykotiMoRN5uup25qbRd2vxBFSUth2JE2uEZFXfS0sPMLujfCAiPNTP56jW\n9XqmTBJkotGHN+eWipiBK3fIMHawzpdU6PUZi9zwqPF1CGL2HjBDvKNG9PIp\nH3MaryPhz1ybk6ud0a5X/zAQvohXWfcbTmwvBIMzgm0+Ml+nvaKhOpLC5pCb\nk49vkURm4iIKpV4WQDuglLaqP8zgtR86jQPmOcf7earAqAnnTnZ+H16ERnVD\nvrgJPiq74YmhWEimhzs+9u1EZS1HqmtbhxdGIhTa8QSoFxSTsIF9fLczB4Co\n16iE\r\n=m5sq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEQWpLgfVyW2KFlqYRnGqqcTKKHuPJ6bBeHn2wT+yuILAiEAxcBlyxFJYF6esecomJAo4u4wjGWgXDC2A+62fVlEAaU="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.7.2_1571366361080_0.25542963461738677"},"_hasShrinkwrap":false},"14.7.3":{"name":"tap","version":"14.7.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.2","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.0.0","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"github:tapjs/node-source-map-support#node-header-length-change","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.2","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^2.0.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"gitHead":"3dc878974630ddf66cefebad138e4bbd1e6de44f","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.7.3","_nodeVersion":"12.12.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-g0uxgGqprqBpC+Y1aufJ3KlHVCM6ROdo3UnFf9nkYIxB86ImEPqJPWQfIpJWO/5YrQguDkWFbT3vDe9NyiTmgQ==","shasum":"176679d3ec13ad21bdff79ba19e7a2830b50f960","tarball":"https://registry.npmjs.org/tap/-/tap-14.7.3.tgz","fileCount":4057,"unpackedSize":13757132,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdrPSCCRA9TVsSAnZWagAAtJgQAJxuBivl+rBhznikc8Fn\nbW84LoRKoVjVW9opGc8uOiMnPVPpunkM31hQPJfZbXlJDf3Dq7a7IDX23GL+\n3nI1QkBmz4GLxi4deuDk3d6ZcGgRRnCkqix7MDPny1/uj88Rnoo20Sw5iHbT\n8qa4adxmIGVspggqSKurQCCWSsSw+YkwFBhz/5bVZl3Koa3e3KcCqN6Yfkb4\n+SkiVNHmiLKixF813Pq0AdJdaDorMaZnoG6B5BETnIIpsdjGQqYCOv+wlK2w\n6VRBPaNFBST3ogXcfkSCb+kNFFFVoA9NEMDgLe7z6kveYH2kDc07sloKUqY+\n+eLQIW0vt2k01nIvZihw3mZDvBqI+kIb2cev40Hv5cWj2eI3vALSlZ5D6WOp\ns8yH75fbRQ7NiGJDWcswFl5uxUR9/3mE78C4Zt+BGNAvT1hghkas8PDqMMd5\nzdEsS+fvlGWxMnqveriNz99KhQ+lkwD0eUwGmbznJs7Wd98o+Z3ApSqUdHrh\n5dgqm78lZkTIOe+tr1lPTDgib8X+juBf/J0JOaPmBp6wQ1c4lWnxFYQECfln\n0u2z1+gS5Sg2ZDJ2/22gEILtfi7wIdb40wlLgLNOnQ/DYvp4c2vApMT8/CdT\nbdbZYTp9dflfSGN0vMd4tah0DdDfGR7YRGtpZ/+Kqnz4zFvaKQ1DVCbMtdek\nkOp/\r\n=uSXF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG6wcCEKzJRA7ZYQJecOiIptNujhg4sQRaw4JgQbyi+5AiBifI8fzF4+Lk5yHJfV0QdGrDIyWxV3o9Gqtw99rpXGpQ=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.7.3_1571615873204_0.24781697247038692"},"_hasShrinkwrap":false},"14.8.0":{"name":"tap","version":"14.8.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.2","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.0.0","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"github:tapjs/node-source-map-support#node-header-length-change","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.2","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^2.0.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"gitHead":"9113f30dd79188699429a31e99b94536c1c3cb60","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.8.0","_nodeVersion":"12.12.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-YO0UWApF2CaH4Y4RDrVV4KzXecU0n5uML87UqHOjYsdo79gy6YUj4DzpFfLDf2eATttlWRDIaCKGCYElDQR5gA==","shasum":"5b773555cc94b59f083145a36f4f8697aa1f6252","tarball":"https://registry.npmjs.org/tap/-/tap-14.8.0.tgz","fileCount":4057,"unpackedSize":13757872,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdrPUvCRA9TVsSAnZWagAAke4QAJxsdTjr9imhgB74MSXO\ndnAoR3+hwaU6VzB6GUQTFVgmwZSDgK4blBi3ziCRTPLs3NaFqTBlNvhxmXI9\neLU1jAlYN5pMcJGoXAauyNwuBoNrSZEcRGRlJThVHdEIxCcP3OuAQOcxH92L\nxakLUlVi7HS9lN0JYen06SLN2rcERhcN3naIfp7VdKCYWUbcf3wqtSl4ecch\nif2hDhXVzCT0jusJwtm6pZDKq4ays5/FyovnkJJQnHOGdRPeiJU6fjTaN/86\nwpmu3Y+Eqfm9KOkRcLjVaqs6W/lwKA1UG5ViOv9J1MuHdMf56R1LtlghvXER\ndNfEgdo9+ZUHLB8Iy4lWIuUVYBucYgTT0uRpNEZjeUmfn4Mvx91YSzAx1RIM\nWdB/yjcu+1Qw/l56uAeOktoIbkSFwp6PMO/WEUIS0L9JJKwiBdZpdRP4anQH\n9LqjgatxkR7rTOs6zvva6tseKmIRzho8kBBJN8f4FRXV+DzIEVxzPVyKKYex\n8gIxc5gEVWByVGIjSE1YVwrXX8LUsiDrMUowhj6DckxDHD4Yi/dAyUQWwB8U\n2BsedctJ1PxWacm5KhKu+HejURl/skXXhKRRXEF/FF2AFWYgOwt1ywXmofHn\nBsjh2OjvUtPCh+1kUa2KZ9ic578BcysJhRyQ5zOZ7Pj3OhoDZx4NBNGZLh8p\nXv/b\r\n=ERSd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCd+A7XZdCKUPc1k9cwrGe3l5dzY279yh98CLeGAZH17wIhAM63wqw0RXTiDJOEsl7fKEVAQcLY/SaQBL3/kT0k8gk8"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.8.0_1571616047183_0.40010348237940674"},"_hasShrinkwrap":false},"14.8.1":{"name":"tap","version":"14.8.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.2","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.0.0","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"github:tapjs/node-source-map-support#node-header-length-change","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.2","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^2.0.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink","source-map-support"],"gitHead":"134bdabf8c3fc269e28c76b1f89121e214fd3d8a","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.8.1","_nodeVersion":"12.12.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-tX/WEcEPNlLqwooiKrQsI2buKafHbhhtgey5XS3DskJdC+A7urxEJ4TF9uDV6de4LAbR652AUEMWVGkNzXWPBg==","shasum":"52bbe95fc2dee2c6291a5d0070c43c4b1f937c55","tarball":"https://registry.npmjs.org/tap/-/tap-14.8.1.tgz","fileCount":4087,"unpackedSize":14655598,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdrx0yCRA9TVsSAnZWagAAeeYP/RLnylcYGN7aCeVjxneV\nUnOq+ANrrhlzIraPddnkvUCtqL3dNsnztKYtIuL+oVLcSbFaMcJVGtWGCJTv\n7xTtxbrB1cn00M/E5Xkmvf/9YW75FNvjqxJqJokPGRESaNvZ/KgGIfZOax5v\nqUi8w9OMCZ+he+BPJjiBiSy1X24BSuivLmTwDk/jw4bg61MbNyrFX2oeW9Ng\nXIhEUEjvKVDjupGjgkdTkLViwkqyIp0xRdOXgmohbXBNp+PevhNN2lMk2PXp\nudJMhWOHwmffIEXRezUrvSU5unDv3i+MJq2NSdP+H2hmklxgyBQpLZsDkpMc\nMpfjKEUEkOXHgntfhM6N6EHwUzS15V4OEfbxhwOpb19rhY2fy4evvosan2RJ\nzQLt90tgn/OUX3TaG3WTl0vcxPaausZjRveGQbCV4UOOknDjuBcpG1rootZo\nq0aTmH4yt2lKpjfrCeoJ6xcjbKruDAJSKbgJq6iB2sE2o2DOgC9IByquMBm6\nNVOYR25//XfxnaPcvrgQ3H1XNsGzvvxq7eBSoDbJBJRnHJxIa9YtA4pET/SY\nTyVCOHWPSHocPEP0sKzgEc8S/7mV6anibZkOdnhNYHewmnl9E7rq5z/+M5yx\n80AuDEmhDWcV1v0kFAsdLaOGKQMtZRn+fiAE4sRK88MgWf9NU2fwkWMwIOxz\n8qBv\r\n=hTVv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCcaMDFRsUMvHc6X8NZom8hOno+XDApvi6LlrnMzS482AIgUJmAAPDLANUfa+DpsNaAtvVGN/8P4p+LmekyoI+u3z0="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.8.1_1571757361695_0.05211525399032846"},"_hasShrinkwrap":false},"14.8.2":{"name":"tap","version":"14.8.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.2","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.0.0","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"github:tapjs/node-source-map-support#node-header-length-change","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.2","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^2.0.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink","source-map-support"],"gitHead":"835fa5a0249dd4d7312eb7b5bd86dfb22e2fa6d2","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.8.2","_nodeVersion":"12.12.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-md0cw6fH1SbT9HBdzHJgMsVqp7daZ6MMAwuVIHNTtQusFMaLOEAQEbqxPc4rnjNezgKy7wKS0aEc17gtwrVtUQ==","shasum":"e9757f8695d44ef47c8f1db7d43e65140793c1e8","tarball":"https://registry.npmjs.org/tap/-/tap-14.8.2.tgz","fileCount":4087,"unpackedSize":14655612,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdrz96CRA9TVsSAnZWagAAz5gP/2p1rL45fKE3xk0KHref\ntRgDLd7IyzP6a9nNRIXOkN0Q4AJ/JeZLhu+RlhIXKO9BEE2dt3lErBpzWDIE\nextKq8buzpPtixZ+oGDXl23g2WM+3qG3eCZhA+9mN7KsJbPloMwh7J2gsbwW\nJTmFAlTD5buPH3ifGOQo3WAwXty4jX4SWh1zu0sUPs5GFU/JUpTJeo996sD7\nLdx2IPtPllnSi+YOOnyeCqFyICIVZaT+e4VpM4azP9FvMntMuCESUb/Mr+1W\nkUyXCvgR2NgpGpLl3WIDd+oEjAxQ+TyIHyGpfv9OjJ5E2S0XEe4PbF2MUNrj\nSWpBjs3eKqhacWAzXW6Y16swZCjJIChMQGrCQEtl609XtxuLAWCqZxcf0WXm\nknkkLyEigDuK7pKtP1yM1xhVvkkitV5yrY2ZsumNXZ9WZOP9q2DTUaWCKJD1\npmLlfjyGceHUNH819grETiXevjmQD+X0pc17627bTMNqvjcXJwYeWpvCWG9R\nM/9x2iEFHitR4VRX+G2GW7IBA6CkzgNfsQT4wfGrjWs7KTM6M3ASp4o1FXpD\nmzzbHUHU0ULWM0bPjGerbqduGvKLPG7sIHMt7q8BTmzQ9gEjBFKZ85K8JWWM\n0b+/qr1mw6bMYRZ8HRZhgX7OF3iiHosmyqqLRD1rB23UypKvSMIEUsGjIDDY\noR9x\r\n=3yZd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDQeezuZ+ZFIbHnPCkcfrg2wn1W9VvYd07UQ+kAF7pwdAiEA1SUfftJrnAlGcCE/93Lpmm3+ykH9jP+dmYUDAORwSM0="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.8.2_1571766137904_0.316954666235568"},"_hasShrinkwrap":false},"14.8.3":{"name":"tap","version":"14.8.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.2","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.0.0","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.16","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.2","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^2.0.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"gitHead":"de8b15b6441c99152dfda45ababb5564c1b1a55c","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.8.3","_nodeVersion":"12.12.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-wfjlXZYs6a8jpr+wkG6N+crvyvyEQzlL1S1BHa4beHOY5nUse4Y/+1nJUU8LAGm6qHJqDb92YaScuxQXPMx5cA==","shasum":"d4271cc74b719d806264f089d526118bc5da8592","tarball":"https://registry.npmjs.org/tap/-/tap-14.8.3.tgz","fileCount":4057,"unpackedSize":13757830,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdudP8CRA9TVsSAnZWagAAhvsP/22YklDY0Gf1Sn8uAtaf\nYYQkB+FT9CcrYQHBBg7vm8fMcFAk470kJHEFhcrQwn6oFulWBUboe9D827wZ\neNNm7xXAUD38t8mN+wNfqsYVwsYQkPdqfHFZjYovnCyKI0BOU3jtJr9Rw5pN\nS0j2EtM8sKokxZtErDoHi+v0nL9gzbFTwaNKh7RALlVKrOzH/KVts86MLo9V\nYwb/XcbN8RUHVfj3n5eyUmXnGJay07yvlA1H4EK3gjU8A8Se7AlxfjoRzBjY\nKn/RjG7Un91JEM7rOifSYqIJx82k2rrcwnYpF/aNhOGVmpwe629zvmUrougz\nlSL6vlH3rikErNGaZy8lb4dCBREYJT8fdBTGRIKtYu9Caq2ELIjJY8P7KJZB\ni3twk6M9SNT9grwh5HKiMxsCNMthd1ekSiC3JoxV3ImsMZRelxe5vl3yHChS\njYnZNuDt//Ji7fXlnPNzicPH+N+a/Xn4MKwwl0H/5w3leO7ElC0mTpQNVK22\nQgTGNCUWziUsLTlhvL8Dkxo3BTa5eTOoglye74wbCLWX4BlD/kQZE6uJhvVx\n0eBQKiSlhKKk/5UW9AK/BmeNwfAi2PPSuKMSSXhdsu8m0Btfe3ebnLcQqXWp\nNI6hCtrL7L9aB0Kxss7trSUHla3i9yrCuPsQ/PYi2LUzbZVnCNuTCDyYY/oE\nO9Bu\r\n=mVg6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDCAwFyZ2m6hwz0fb6jOMwh/XYyj7RToAPiQ/8O59TsNQIhAMHTHiOpwK+FBzsTzFkIvMR9fsgGlfx4zX6v26BT3kGk"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.8.3_1572459515643_0.32596126172813"},"_hasShrinkwrap":false},"14.9.0":{"name":"tap","version":"14.9.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.2","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.0.0","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.16","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.2","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^2.0.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"gitHead":"f7a2c69bed787a2fdddd7e8f0817035422102ffc","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.9.0","_nodeVersion":"12.12.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-dM/YvhrJ+NqKnZ25HKr2KkxGKihGTCtKnES+vEDD+rXUOc0xhzi4I8lpWlq6Ry5LsQYxmAfYgtl2VwO9lCEn/w==","shasum":"7cb0b46f11f2c4a7d9cc12cb3533c7b946ebd058","tarball":"https://registry.npmjs.org/tap/-/tap-14.9.0.tgz","fileCount":4057,"unpackedSize":13759677,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJduf9oCRA9TVsSAnZWagAA3PIP/AlVGmRxz90viSN89rrk\nRr0H8WoZLbDq6jrH5WJfu9njCX1axLjDhhEvF8kfStz0eXkunhl5rJmVZog0\nxyUe3XGrGytacKnhR6MA89QrTfnuL9usRx8ZdFa5xxK7nf2Sa6uZImLJTVdH\neoBS5gltwVrPWrCB2A4RCx3lJJOlbKFqUTkwORO0wUcRO0or7LifQDKJ1kIx\n7LjZ4h0vZOh3I88bmPoRJzcnFYvlAPPFr7R1yPcOqS+mhujGDkN3Urou+uNB\n/grWkkhGJuLjM3ZGkzogjqLJdCzLLlfIgjw3Xi5A4SCzesTu7j5BOywuRbAg\nSvHNYEoe9vKqF+YjoCGe8KA/IMrENe5hnrePs909Up8FcQK2tivOEaZ6hmf8\nxPwwEg7Y9wjIvbs9vChOvWBtTJX9tx9v7hUf0y83wNv4EEdeHTHGsejhJ5kU\nVfdt5sD1WkaFGUwTuAjEZD0sTT0oq0oO8XyiISQj99uvGh/A4ZP85wTqueaf\nlE54bqGmIXijd5roWPc0jdz+QYwdkpAR32S+qu8h0Ac8tmxwMAU0e2OF6G3D\n/o/dt1aSxoTS1GsnhgUKHQEgKioEHnCtEc4znSLhTKfeZGgNkpKMWMTQEvcM\nsU2YvebOcR/sW8UDY5Hb4vf0UAkG310lcYUYa0qd/KQg+L7HXsy9IJLIaORT\nMf4y\r\n=G5BL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGlPqCXY/rw1rDqBM9EJv2RimQlS9WeFpBGZhAJpYSr+AiAB73orkbX6YyOmuu0oaCTaBEq4D/V0MZaQOVn3h/++/w=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.9.0_1572470631954_0.18879266022855545"},"_hasShrinkwrap":false},"14.9.1":{"name":"tap","version":"14.9.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.2","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.0.0","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.16","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.2","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^2.0.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"gitHead":"b49070b67504e72c85978be4b8d742ad83e60111","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.9.1","_nodeVersion":"12.12.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-QIN6WPtrBcMf9k5U/rl1WTaclN4TY/YZnCIjsF9u6KEVwYQ6BNBs6Rkxb6Z9p3bl2lPYFKu5qHdTnwqaZKIwLQ==","shasum":"fd4213a713176e3b92d1c322552ca18f0700bdbc","tarball":"https://registry.npmjs.org/tap/-/tap-14.9.1.tgz","fileCount":4057,"unpackedSize":13760138,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdugmJCRA9TVsSAnZWagAA86sP/RdZSNeuTA91h5avFOi1\nVFtuj19zij1vlSs0+fd8jpCAtSnLuGtdgSUYLTrAFvrZew1XcGD2u3ejyEiJ\nuYIophuxwS4DEavlZbR4iKqBJh6wSHIr8oou6rBrD4GbWXkioETPONhC1qDL\ntxEjQRB2tcu+6a+gZKaRjwYDlXtIh6evUvRFAqoNciO+bfK/rW1RF6YmnAXZ\na4Eratnp/IMTcTSNrzEfRKHwbv/6rIDNGiViBwGDLvk/gjghJZDijfFzCXyd\nuAWv0qqThMYLJzRkIOKrpRo7pZ+6CQoj9JJnBGkJNT3AgfNmTTopWiQlt5YI\nsybnrUrr7C/aEtJvczjEpEGqMmkDCv6lNi4RUNEzl81MduRmQXh7Z6QEfpbu\n7iuJV4vX3gq/79OII8FdKEwlcmF3IV9U9ghMsbXZypbVFGXHaqIudHwA7DU4\nY004WYUk+/aW4dALVAA3ma5zgk8K7j2h1zG69sNyJhG1BOYvy4GRLux1J9Ax\ndP2zIFlH5KetGtPWYQjoXdoR5L1a+TbkYtcLoOhaRfbUfm3Mxuk63IrqGhch\nH/8obZyC0KsmOe+T9PCBdVhsIxDS7m2yqOrcNjIGt0Mn54u+pWWBbGPc6sm8\n0OfxqShUCISOCcLA8hE+jAmN4vqF2xjb9XqyPbOa5co8ntv+JU3aLD6Q2upb\np1vc\r\n=oJN3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEgtk0XvfLAhORS7l2ldOuDYeniiBZxZmrUAKWek8QtTAiEAoiA96EtFaDSoUo0kmWk+9ia4XpOFhgWt8m2EVtEuaN0="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.9.1_1572473225062_0.5922406155918956"},"_hasShrinkwrap":false},"14.9.2":{"name":"tap","version":"14.9.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.2","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.0.0","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.16","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^2.3.0","treport":"^0.4.2","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^2.0.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"6f03d81284caf19e1eb6e6a9054c989711ded2ff","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.9.2","_nodeVersion":"12.12.0","_npmVersion":"6.12.1","dist":{"integrity":"sha512-Fyy/sjsw4eb+Hnphin4oMtDtKxmrob/vrnaIDv/F3thFFQjQFqMg8xf45zRFGHxUfezlrO6KsH8TpWNlTDINfA==","shasum":"7a40fb7a0198156a97448187b2275de02ff71cf6","tarball":"https://registry.npmjs.org/tap/-/tap-14.9.2.tgz","fileCount":4057,"unpackedSize":13760206,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdw0QBCRA9TVsSAnZWagAAQpIP+QEaP5ldIiNO4TBnea/D\nWshtQtfNnkTMMN8G1W9XfgMlyzEzVXuMF4Qxgt5yQKTaOKDb1yzGBg1Zskh5\nZuGjLiaI7nkMdfLzdRM6tE3jKu6jWyR/DzkzWKxNXWAQe+U2AtKevKaZ+ZLh\nUBDhuM0lsZSLdmVW2DkPDFENwTmacrDvJEIhkMzuuZWZRKniF5bMJKvC86Lt\nTp447iqCi5QU6AcT36xOpHu9iBaEf5vAycdA2bFbEPo9AIKIMh2fwAwZwVUU\nZt1Zr2aj9enbYdg+ECQJMlVeUk/KoLBx92+I6uiwnZlnAVvracw+n9g6tx5t\nJ01F5x97El/LFgPae+aJBNayfO+pRE7XmqsmEvTNDUS+ukdYy/BXnk0GMR5v\nCISjkE1tbFC6DZwhZI9Fm/uEpkO8uORURPgSVVRp2bTNqb/HultxIbzS5ZcK\ndko+DhL6rBeGagGNv5n0jlMJV9L8a4vQXGrULsgcuDnX3+9DwUbjvkwSrBfx\nXUf7Pg4pf15HVbo396c+lYwq0T7jg4iRLHZ1QlzgXa0I0FR+QNRwkajPM0M8\n4rwIRKrSZ6llv92pmJX3bsW7aiST8p32VkeZvCElMjmt0gu0dAlTBfSwXDQx\nxAmU6Y4wLr+KESFfh4dKSO3AlAxXWQzBfBbcqPXf2SkOYP+bzUxg8Xh2wdHQ\nBym1\r\n=exFI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDn45cu8lFEb97ELZyEq5HK8hZkzkBNUxiFK8d/xvStAwIhANEuvxN491z3fu7mPQWBM3ARMPdwXP8RQb1rkV5w2K5E"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.9.2_1573078016648_0.8570792629225745"},"_hasShrinkwrap":false},"14.10.0":{"name":"tap","version":"14.10.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.2","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.0.0","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.16","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^3.0.0","treport":"^0.5.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^2.0.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"4d571d7f104facef4e11704fc382ed2e4ff59fc4","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.10.0","_nodeVersion":"12.12.0","_npmVersion":"6.13.1","dist":{"integrity":"sha512-5+5BD+APA36q9YnnMyENYSCifaUvWFRqKMzBomWiw+yaoqHQhjiPhU6SFdTky/Iqlwgqs6sqwFbwfvyK9AnbUg==","shasum":"8537b1ea5758b22036b4cd043088ea1a47dae237","tarball":"https://registry.npmjs.org/tap/-/tap-14.10.0.tgz","fileCount":4057,"unpackedSize":13754447,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1jdRCRA9TVsSAnZWagAAQ+IQAJy4tFvQCPoRawYypBUq\nXSEp9SthijsQZmuy78bbwzLbafyq67OFm8gFeQYdtCT0aN1ekRe14FJy4D1l\nwW8bwehwMGizR9aHS1VQvwFx6kMO2NJ/vyqqRLYZr1rirVunRZW2k0UGwH7L\nBCkz6u/cqULl1V0p9kcpjZM2LLuYEHq9Du0r+gFLEqL/mr8Ur0tf3QjO5/D6\nZ8IXbRie+igLIG9F6NOHcmbYYJqjVanZqnjEOCzC56IU9bp7BG32Vyj8pxvl\ncjwfw/q4DJaezMZPDItP3ExQ90vRTq4bHOG+wSZ4kAfMQPswY7+9ZZSc0QAU\nN5VMQWe13pm2z9b4RA0iMozs/myo9XgKm9dQbXY0q7fv0Dk4Q4mpKxg6wyN1\nRBbzgur2j2x5tDSXehtSZAzLJEpLpH5D82xGR6ae8PFlIb6R/q6uZwYcNEzj\n4SaNzVM8O+nMjxpfV5sz8qYmEbpSUNna72QDP6rXPelbuu1rQA2cF7s6L1Ge\nkeyIr6jZasPrgcvUB86RThrOtqUi6LBbVUyJMMh1T73csrHTKxZa/KWxaWBq\nnHSTSQpUv+y9ltzPsRVhButWOYFxeLcVjMdERhvUWwJQgXSRIpkZk4yiWiw3\nCGJYrCeJM/wIpbWVZVZlzYyapoxfE+ogd7Du5DztdutONoCdY2NF/4Dc8XCU\njEff\r\n=6lfQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHWbK7F7uy1ilpbpoKH44EhgWgIeunYfxYo11pMIb/XAAiEArw8Pp915Qvypvj3KGJuZ+kwTJgiGNuHuxpX5AiHE3yM="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.10.0_1574319952474_0.4859939779573832"},"_hasShrinkwrap":false},"14.10.1":{"name":"tap","version":"14.10.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.2","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.0.2","color-support":"^1.1.0","coveralls":"^3.0.6","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.107.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.4","import-jsx":"^2.0.0","ink":"^2.3.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.0.0","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.9.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.16","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^3.0.0","treport":"^0.5.0","trivial-deferred":"^1.0.1","ts-node":"^8.3.0","typescript":"^3.6.3","which":"^2.0.1","write-file-atomic":"^3.0.0","yaml":"^1.6.0","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","bin/jack.js","lib/*.js"]},"bundleDependencies":["treport","ink"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"1f189791991a39603ddb2ddccda38ae5c3501ebe","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.10.1","_nodeVersion":"12.12.0","_npmVersion":"6.13.1","dist":{"integrity":"sha512-GsjAtKf9WKe2Cj5/5OckVdwyz4kv4pjlidDPpNY32ikR6rkBnicU/gxwckXvV/pQ5uTDx+od6XqmVAB7ityXWg==","shasum":"4e88d5964decec69236cb302e6ce4b2691d56fb7","tarball":"https://registry.npmjs.org/tap/-/tap-14.10.1.tgz","fileCount":4057,"unpackedSize":13755449,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd1uFuCRA9TVsSAnZWagAAPLUP/2qtnbVYG0FO7skKvf2x\nNPwCqx26cBthO3dcAcdWrMqDUOZ47ehiQY9MDq+uFRQXex1qm+9cLGs0iAvd\nai1Sl2hbeXsz1sgtou3Un+xciLDz3GeGe7fJxff5/7dBU1eFNWxb8vuj/RLp\noVeBv2ldGlbwoNlmLVPwYRBxJLqjSrIlxb0WqjhiIK0qORjq4FWfFOa1Chsv\nRSABc4rtxJb+j73ZKXci57+FluyyZ3SDGhBRRmG9eg6WpGH13HW/G4OC46Yd\n8P7BSoVjQyUUy2YtV93pH+4aSgCI+fZgarJHErkpe9msV40rwIhaAueJ+FuG\nb5VddhcZfe0d2+AeWfEZTOxhUZ73bpgzJt7m5mvJu0GINn50srvBeo8aX28w\nFS9RKstpDt/bltKxU/SnPwDGeMw6REVtH1y/zp+z8KOyssna5MWpKjkJWtd+\neeXP2M/F9BZR/DSW8qFa9leyUbvAmEvdgdmRf4Rat2NTxhZg9tEQBgiQL7CE\n4eIjjXa+zHYrhRXo58wh40AeBzokz9uGuUsO0q3Ng1QryRKh/aAJdZYwLjQn\n2+2YFpM8I48ZvncX5Lgk02l9hUCImjhHF39beYdepxd7XjzCEn8iJOT9QVKs\nyExkn3vT/sJGBxhu+kP9ohf7uGxP5vA/2DKNl1JpytRcx1Y/4MmjJqeI5cFk\nnLh0\r\n=UyOf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE6NDocjAS5ZezxJbxLhfE0wSyBH1UcNN5xsXVov+LEAAiAoTtDxX1vY6W+6GDTkYdqfYE00FJIqkpKoPMynep+c9w=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.10.1_1574363501939_0.33934590404088816"},"_hasShrinkwrap":false},"14.10.2":{"name":"tap","version":"14.10.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.3","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.3.0","color-support":"^1.1.0","coveralls":"^3.0.8","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.112.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.6","import-jsx":"^3.0.0","ink":"^2.5.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.1.1","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.12.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.16","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^3.0.0","treport":"^1.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.5.2","typescript":"^3.7.2","which":"^2.0.2","write-file-atomic":"^3.0.1","yaml":"^1.7.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"b157f819a9a831c726dbf1ef2afec40d8f3abb91","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.10.2","_nodeVersion":"12.12.0","_npmVersion":"6.13.1","dist":{"integrity":"sha512-JeUDsVrMFmR6b3p9hO9yIT/jibrK6LI7nFza5cqDGsxJyCp7yU3enRgS5nekuoAOzewbrU7P+9QDRDT01urROA==","shasum":"b1b3fce91f676e48891534bf32e6b85614d63046","tarball":"https://registry.npmjs.org/tap/-/tap-14.10.2.tgz","fileCount":2911,"unpackedSize":16685654,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3GpoCRA9TVsSAnZWagAAqi0P/iYMI4N3fUJtjKLQeaQr\n1NVgM4IuYtTbdinADvwEwWRjl9uE/xJCBX4N5RZ3s5gUZLm9SL6m/O2PURGo\nh+JXiqpevrFK5ILbIg7lR9znsXPjeS8PFjOMx5bFe9QrPderlZlEcszwtc/w\nNboeRu5J9KIp+sVP1IEgkffNehskIVbIZ+SdUCfiCicnD+dFj+A7HpORgf0C\nZeBe4qnJeJVr2j18M8LqvkxkYrRQG+c5NZmccdMkJ8oK0JnYTRG/kAyE54BW\nPnWJKP4EWyzBivIkAGocXiEJ22Q6YczJa/tq35+z2QExTv0yXJQU5+Pr8pqg\n85JT6FYlCjrTEcql3wDFNErb3sXs2Me13UgI7z5Z9lybBNBpz5CxlT0LPGTe\nQB0f3XHrebtaRhd9f0XeQPnQYoI1K7RuyApKFMwtcGl9P9naLZe4qI2upm15\nyLbHNpFMRbKTv+mC50Rc0sK0PcZ+uAdSRKozhmXN4JH85yOnjEhUceLxoSAV\njF2ZuzI3LpyE10d+s1WoNYUcp884kCZw0bA1fQnnh4z0OolgD1Vvh/KJvqLk\npO4ExFfiCsRIRmiAbQpOw01otAw6hs+GmRxep6D0ODgSVtYdcaJdLcjIBywu\nsGcUIN7t+pLzaeKWnUKDyTm20h9a+xIpDxDDxOcQK2n+ifF3DXinHfpFfoTw\njA2Y\r\n=GXxh\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCb72KzOP7O+EbYf9aixHsb0b5OWGpGOpBCz6bs581fDAIhALjfdID8o/Y4j2KJPcErZCDo6rIXdohFESUnsaCBUeOx"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.10.2_1574726247632_0.30045737102285797"},"_hasShrinkwrap":false},"14.10.2-unbundled":{"name":"tap","version":"14.10.2-unbundled","publishConfig":{"tag":"unbundled"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.3","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.3.0","color-support":"^1.1.0","coveralls":"^3.0.8","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.112.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.6","import-jsx":"^3.0.0","ink":"^2.5.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.1.1","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.12.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.16","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^3.0.0","treport":"^1.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.5.2","typescript":"^3.7.2","which":"^2.0.2","write-file-atomic":"^3.0.1","yaml":"^1.7.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"funding":{"url":"https://github.com/sponsors/isaacs"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating test\nscripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running tests\n (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates,\nor just get started with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over to\n[the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why they're\nthe greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge that\nbalances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have any\nopinion about whether or not you share those opinions. If you do share\nthem, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run directly.**\n\n That means that it can't require a special runner that puts magic\n functions into a global space. `node test.js` is a perfectly ok way to\n run a test, and it ought to function exactly the same as when it's run\n by the fancy runner with reporting and such. JavaScript tests should be\n JavaScript programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the test file in a\n way that is easy to determine.**\n\n That means not unnecessarily deferring test functions until `nextTick`,\n because that would shift the order of `console.log` output. Synchronous\n tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the test\n as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to doing\n `test-runner test/*.js`. This prevents tests from becoming implicitly\n dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of assertions based\n on some list of test cases. If the first failure throws, then I don't\n know if I've failed 100 tests or 1, without wrapping everything in a\n try-catch. Furthermore, I usually want to see some kind of output or\n reporting to verify that each one actually ran.\n\n Basically, it should be your decision whether you want to throw or not.\n The test framework shouldn't force that on you, and should make either\n case easy.\n\n5. **Test reporting should be separate from the test process, included in\n the framework, and enabled by default for humans.**\n\n The [raw test output](https://www.node-tap.org/tap-format/) should be\n machine-parseable and human-intelligible, and a separate process should\n consume test output and turn it into a [pretty summarized\n report](https://www.node-tap.org/reporting/). This means that test data\n can be stored and parsed later, dug into for additional details, and so\n on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more tests get\n written. That means that there should be a relatively small vocabulary\n of actions that I need to remember as a test author. There is no\n benefit to having a distinction between a \"suite\" and a \"subtest\".\n Fancy DSLs are pretty, but more to remember.\n\n That being said, if you return a Promise, or use a DSL that throws a\n decorated error, then the test framework should Just Work in a way that\n helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no more or\n less.**\n\n Stack traces pointing at JS internals or the guts of the test framework\n itself are not helpful. A test framework is a serious UX challenge, and\n should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about your\n programs, and provides much deeper insight. Node-tap bundles\n [NYC](https://istanbul.js.org/) for this.\n\n It _does_ necessarily change the nature of the environment a little bit.\n But in this case, it's worth it, and NYC has come a long way towards\n maintaining this promise.\n\n Coverage _enforcement_ is not on by default, but I strongly encourage\n it. You can put `\"tap\":{\"check-coverage\":true}` in your package.json,\n or pass [`--100`](https://www.node-tap.org/100/) on the command line.\n In a future version, it will likely be enabled by default.\n\n9. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't require\n compilation, then I think your tests shouldn't either. Tap is extremely\n [promise-aware](https://www.node-tap.org/promises/). JSX, TypeScript,\n Flow, and ES-Modules are\n [built-in](https://www.node-tap.org/using-with/) when tests are run by\n the tap CLI.\n\n10. **Tests should run as fast as possible, given all the prior\n considerations.**\n\n As of version 10, tap supports [parallel\n tests](https://www.node-tap.org/parallel/). As of version 13, the test\n runner defaults to running the same number of parallel tests as there\n are CPUs on the system.\n\n This makes tests significantly faster in almost every case, on any machine\n with multiple cores.\n\nSoftware testing should help you build software. It should be a security\nblanket and a quality ratchet, giving you the support to undertake massive\nrefactoring and fix bugs without worrying. It shouldn't be a purification\nrite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"1610e0a0eb3957334740f2663b24609d460761f5","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.10.2-unbundled","_nodeVersion":"12.12.0","_npmVersion":"6.13.1","dist":{"integrity":"sha512-31xCnBkxXT/2AN/Gp+aVZHLulrOY6+DMhYm+3Cj70i7T9dY9YZ2mp5rDWtaXEDcyz7kfHO2Q36d4cDOdvd76Uw==","shasum":"266cd1f7b9594c33d7f59fe6d5fd74a46fd42a57","tarball":"https://registry.npmjs.org/tap/-/tap-14.10.2-unbundled.tgz","fileCount":26,"unpackedSize":160076,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3GuACRA9TVsSAnZWagAAPhEP/1A82CzyFTexnmxad/Tp\nH5DwttiPmTsx0j+tOZM8MWhMPEenWlU2WTT3pciY7wLtHsHy3iSthsOQNDL1\nafAA+k2697z9jmO6l0eigGQuxDET1miNNT9eQVx20jGpd5prdu1LCiQYGQRY\nlkR5t+ZB/2xbbbQL3KjISccN0Owz6HX00Tx4Bwk4zVo9Kq85ucO8BBxavTCk\nw/H0bGVxydkl6OwRffda7I38izuj4o3VOPk5b7OX/nJoDy8LXUVow4pYOGcq\nItWbiXCVUcuVtbHt09gg3w1mU13vKt3XYeA+RcKzSStST11PjEgsMLNRKc8J\niyBANFtgTniqg+nFxBQwBWajTmgb6U2O39RWWqZ/equqFJ06V3g3HPJwJbJl\nv221FStt3mZIlUFfbAq4nlgYZOepB7gxkaBpcsd76WjYvU7Y69tMzjXDDAMR\nqqVlpMWOCur72ni91xYm12HjD/okdifmr/FOH+4pVUixvAKLQJOteMrY3LlM\n9AUsjCyfuQVGujKrEdt4LRnujfu9TVL0ajBKh9mu9G+GGu/gpArppF0HSCRk\nJNiwHLqGNV3bCHwbBkNAGgHnKAtgrL5VCtxyau20ROwiNIWJbLHe0611DFna\nqcF5ieFIjgSiLlEVC7d7WcvQtc5BBpiSSUwKZ/WVKxXjQRsdzqCk05nMXa/G\n91Vb\r\n=IuK8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDTz5bsvOvIvDqnWM1ALM7igr2sMIT35g8zX0BqkuVe+gIhAKkAgYW7kqb3wEIi6nUQCGYmsO3IQR/ZpfiYkHVR31eJ"}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.10.2-unbundled_1574726528087_0.8634592176639342"},"_hasShrinkwrap":false},"14.10.2-totally-bundled":{"name":"tap","version":"14.10.2-totally-bundled","publishConfig":{"tag":"totally-bundled"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.3","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.3.0","color-support":"^1.1.0","coveralls":"^3.0.8","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.112.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.6","import-jsx":"^3.0.0","ink":"^2.5.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.1.1","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.12.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.16","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^3.0.0","treport":"^1.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.5.2","typescript":"^3.7.2","which":"^2.0.2","write-file-atomic":"^3.0.1","yaml":"^1.7.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["async-hook-domain","bind-obj-methods","browser-process-hrtime","chokidar","color-support","coveralls","diff","esm","findit","flow-remove-types","foreground-child","fs-exists-cached","function-loop","glob","import-jsx","ink","isexe","istanbul-lib-processinfo","jackspeak","minipass","mkdirp","nyc","opener","own-or","own-or-env","react","rimraf","signal-exit","source-map-support","stack-utils","tap-mocha-reporter","tap-parser","tap-yaml","tcompare","treport","trivial-deferred","ts-node","typescript","which","write-file-atomic","yaml","yapool"],"funding":{"url":"https://github.com/sponsors/isaacs"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating test\nscripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running tests\n (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates,\nor just get started with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over to\n[the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why they're\nthe greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge that\nbalances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have any\nopinion about whether or not you share those opinions. If you do share\nthem, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run directly.**\n\n That means that it can't require a special runner that puts magic\n functions into a global space. `node test.js` is a perfectly ok way to\n run a test, and it ought to function exactly the same as when it's run\n by the fancy runner with reporting and such. JavaScript tests should be\n JavaScript programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the test file in a\n way that is easy to determine.**\n\n That means not unnecessarily deferring test functions until `nextTick`,\n because that would shift the order of `console.log` output. Synchronous\n tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the test\n as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to doing\n `test-runner test/*.js`. This prevents tests from becoming implicitly\n dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of assertions based\n on some list of test cases. If the first failure throws, then I don't\n know if I've failed 100 tests or 1, without wrapping everything in a\n try-catch. Furthermore, I usually want to see some kind of output or\n reporting to verify that each one actually ran.\n\n Basically, it should be your decision whether you want to throw or not.\n The test framework shouldn't force that on you, and should make either\n case easy.\n\n5. **Test reporting should be separate from the test process, included in\n the framework, and enabled by default for humans.**\n\n The [raw test output](https://www.node-tap.org/tap-format/) should be\n machine-parseable and human-intelligible, and a separate process should\n consume test output and turn it into a [pretty summarized\n report](https://www.node-tap.org/reporting/). This means that test data\n can be stored and parsed later, dug into for additional details, and so\n on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more tests get\n written. That means that there should be a relatively small vocabulary\n of actions that I need to remember as a test author. There is no\n benefit to having a distinction between a \"suite\" and a \"subtest\".\n Fancy DSLs are pretty, but more to remember.\n\n That being said, if you return a Promise, or use a DSL that throws a\n decorated error, then the test framework should Just Work in a way that\n helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no more or\n less.**\n\n Stack traces pointing at JS internals or the guts of the test framework\n itself are not helpful. A test framework is a serious UX challenge, and\n should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about your\n programs, and provides much deeper insight. Node-tap bundles\n [NYC](https://istanbul.js.org/) for this.\n\n It _does_ necessarily change the nature of the environment a little bit.\n But in this case, it's worth it, and NYC has come a long way towards\n maintaining this promise.\n\n Coverage _enforcement_ is not on by default, but I strongly encourage\n it. You can put `\"tap\":{\"check-coverage\":true}` in your package.json,\n or pass [`--100`](https://www.node-tap.org/100/) on the command line.\n In a future version, it will likely be enabled by default.\n\n9. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't require\n compilation, then I think your tests shouldn't either. Tap is extremely\n [promise-aware](https://www.node-tap.org/promises/). JSX, TypeScript,\n Flow, and ES-Modules are\n [built-in](https://www.node-tap.org/using-with/) when tests are run by\n the tap CLI.\n\n10. **Tests should run as fast as possible, given all the prior\n considerations.**\n\n As of version 10, tap supports [parallel\n tests](https://www.node-tap.org/parallel/). As of version 13, the test\n runner defaults to running the same number of parallel tests as there\n are CPUs on the system.\n\n This makes tests significantly faster in almost every case, on any machine\n with multiple cores.\n\nSoftware testing should help you build software. It should be a security\nblanket and a quality ratchet, giving you the support to undertake massive\nrefactoring and fix bugs without worrying. It shouldn't be a purification\nrite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"1610e0a0eb3957334740f2663b24609d460761f5","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.10.2-totally-bundled","_nodeVersion":"12.12.0","_npmVersion":"6.13.1","dist":{"integrity":"sha512-0taXcRzW5SRQTUAeRVDd85upZf2sn4e9yirdY7nU27O/33mdvmqxa4ZyqeXqMPL4fs9CCqPepMe/2+AXBdNflw==","shasum":"1dcbdb7f83c9cc7a95c973deafc5fd84a1ee235a","tarball":"https://registry.npmjs.org/tap/-/tap-14.10.2-totally-bundled.tgz","fileCount":26,"unpackedSize":160118,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3chSCRA9TVsSAnZWagAAKVsP/1Tdr+ZbDmIUPtFceg24\nDiPxOSfx8bBLD5fnJm/1AHqIgXfcl1hGYcONKbkYyi1zalVCev00aMbHdFWs\nZspgBMgW5mZcVb5ff1nfB6DuhPLoBof3xl4DDg5DmVPNFaJqhs5qp2+5uabb\nvBt5WWZtv2FzHzZKLrwQC9gkp3ZKCGI6xsZUmgeQROUc+lpXihBnCNJEaUGn\n2Pgumoav6XzPx7gorTzgCgKR8qxAnk3m4+/3kOUM4p2G80YPlQTZDsJgWGKg\nq+eV+N0RNFfA1QeVQNkAf2jtERB2bm50Flas5Pzt1Sz3F/VJS6UBDt34vpOR\nL51jss0AWtUx2C9aSxecuyzqei40zV+VIUJ4Hug+03gSAKRNLP4lMy3n8BAU\nfAGy4HFDgi+tynzoxjtJkmed2AbxU6zm5mCHh5b0AxmAqFLSxI7CHNRoVFcj\ny31sNBPtG/h8074cm4xEA3AM7lCRWLcq9iGzeH7tKsSogZPKJlVouqj8jK+j\nVoF6QL2ekGqS+iALkLCrALqPZS3Drq6YQI9C0tssCA+5alYrGrW/CWfaWfHX\nEGW/8x0oiEpdwsvMhb/TUd1l4D3/OJ+YtzqyzgxEMFSzdn3f0gFQzgQHmkPX\n0J3g79YAgsocG/DJJWKTwQd7rswgkBhbswgiFtWV9CrlMzuX9UVqteYNus7e\nPnPX\r\n=a1nt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDnKQkKBtm2LzmVoXbxP/gSZ3gbVJgk7ixeNeDRAEV9CgIgcC6U8WlR8e/ZmYNk7DgSILvwJGnD6pw/W0ypHbuWVXA="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.10.2-totally-bundled_1574815826023_0.2920941524224694"},"_hasShrinkwrap":false},"14.10.2-totally-bundled.1":{"name":"tap","version":"14.10.2-totally-bundled.1","publishConfig":{"tag":"totally-bundled"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.3","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.3.0","color-support":"^1.1.0","coveralls":"^3.0.8","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.112.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.6","import-jsx":"^3.0.0","ink":"^2.5.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.1.1","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.12.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.16","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^3.0.0","treport":"^1.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.5.2","typescript":"^3.7.2","which":"^2.0.2","write-file-atomic":"^3.0.1","yaml":"^1.7.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["async-hook-domain","bind-obj-methods","browser-process-hrtime","chokidar","color-support","coveralls","diff","esm","findit","flow-remove-types","foreground-child","fs-exists-cached","function-loop","glob","import-jsx","ink","isexe","istanbul-lib-processinfo","jackspeak","minipass","mkdirp","nyc","opener","own-or","own-or-env","react","rimraf","signal-exit","source-map-support","stack-utils","tap-mocha-reporter","tap-parser","tap-yaml","tcompare","treport","trivial-deferred","ts-node","typescript","which","write-file-atomic","yaml","yapool"],"funding":{"url":"https://github.com/sponsors/isaacs"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n[![Build Status](https://travis-ci.org/tapjs/node-tap.svg?branch=master)](https://travis-ci.org/tapjs/node-tap)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating test\nscripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running tests\n (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates,\nor just get started with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over to\n[the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why they're\nthe greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge that\nbalances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have any\nopinion about whether or not you share those opinions. If you do share\nthem, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run directly.**\n\n That means that it can't require a special runner that puts magic\n functions into a global space. `node test.js` is a perfectly ok way to\n run a test, and it ought to function exactly the same as when it's run\n by the fancy runner with reporting and such. JavaScript tests should be\n JavaScript programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the test file in a\n way that is easy to determine.**\n\n That means not unnecessarily deferring test functions until `nextTick`,\n because that would shift the order of `console.log` output. Synchronous\n tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the test\n as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to doing\n `test-runner test/*.js`. This prevents tests from becoming implicitly\n dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of assertions based\n on some list of test cases. If the first failure throws, then I don't\n know if I've failed 100 tests or 1, without wrapping everything in a\n try-catch. Furthermore, I usually want to see some kind of output or\n reporting to verify that each one actually ran.\n\n Basically, it should be your decision whether you want to throw or not.\n The test framework shouldn't force that on you, and should make either\n case easy.\n\n5. **Test reporting should be separate from the test process, included in\n the framework, and enabled by default for humans.**\n\n The [raw test output](https://www.node-tap.org/tap-format/) should be\n machine-parseable and human-intelligible, and a separate process should\n consume test output and turn it into a [pretty summarized\n report](https://www.node-tap.org/reporting/). This means that test data\n can be stored and parsed later, dug into for additional details, and so\n on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more tests get\n written. That means that there should be a relatively small vocabulary\n of actions that I need to remember as a test author. There is no\n benefit to having a distinction between a \"suite\" and a \"subtest\".\n Fancy DSLs are pretty, but more to remember.\n\n That being said, if you return a Promise, or use a DSL that throws a\n decorated error, then the test framework should Just Work in a way that\n helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no more or\n less.**\n\n Stack traces pointing at JS internals or the guts of the test framework\n itself are not helpful. A test framework is a serious UX challenge, and\n should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about your\n programs, and provides much deeper insight. Node-tap bundles\n [NYC](https://istanbul.js.org/) for this.\n\n It _does_ necessarily change the nature of the environment a little bit.\n But in this case, it's worth it, and NYC has come a long way towards\n maintaining this promise.\n\n Coverage _enforcement_ is not on by default, but I strongly encourage\n it. You can put `\"tap\":{\"check-coverage\":true}` in your package.json,\n or pass [`--100`](https://www.node-tap.org/100/) on the command line.\n In a future version, it will likely be enabled by default.\n\n9. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't require\n compilation, then I think your tests shouldn't either. Tap is extremely\n [promise-aware](https://www.node-tap.org/promises/). JSX, TypeScript,\n Flow, and ES-Modules are\n [built-in](https://www.node-tap.org/using-with/) when tests are run by\n the tap CLI.\n\n10. **Tests should run as fast as possible, given all the prior\n considerations.**\n\n As of version 10, tap supports [parallel\n tests](https://www.node-tap.org/parallel/). As of version 13, the test\n runner defaults to running the same number of parallel tests as there\n are CPUs on the system.\n\n This makes tests significantly faster in almost every case, on any machine\n with multiple cores.\n\nSoftware testing should help you build software. It should be a security\nblanket and a quality ratchet, giving you the support to undertake massive\nrefactoring and fix bugs without worrying. It shouldn't be a purification\nrite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"6b25d01d1896eb4cd1832864e986b6ad9ab13170","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.10.2-totally-bundled.1","_nodeVersion":"12.12.0","_npmVersion":"6.13.1","dist":{"integrity":"sha512-rompwzYoNad2wXZQ6uUG+Jj3RfxJLPyyoQF2dnWbk3yTeuQXTEXOH7FFKBpb6FNdvR5XG4DBwZE7oP0xNlKDYw==","shasum":"1c59d31aa89bdba18bd443b133900070252af622","tarball":"https://registry.npmjs.org/tap/-/tap-14.10.2-totally-bundled.1.tgz","fileCount":5457,"unpackedSize":85329534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3csWCRA9TVsSAnZWagAATloP/11PL9Pz0mLaZgQmVM0W\niGKGqUyHWVHN1frFhYFSNXoUQTC6jleAnNJ83dBU5pwlOXX329WeqN3OI/Hi\nNBy/XfglvTqKreKRU7H0QfGxahYmcUuGAZYsED76RVlPaCio3ByvtA92ETZH\nrPH/8Ua8cePiw79wlXT4NV5is0jNs0uy51/uVmUnP4KK8Xa/fZYxvkxmX1eC\n5JwYvNKASnTL/SU0gaYB6Ko6zaL0/XvSEcwh4HKShnoTpHuJpUOavrl8Kr1U\nCUBFQWJ3XdyQA5OeTaSsEvS8WxpYPqe6lzFaVl56+PoLcn97WOD+dHz5eKPf\nNQ2KiMfABpnyGLCFgijSQXDHDjCFwrIIAazCyZ+FE7W5EtaERiMkpU61Eb91\nXTwp1dO9DxC2gXqsTsPOThYYdZ5ol7Spx/UeKsus9FmGVa0OgirxpDGAugAp\n4XcgoqHJKpxWkjrPPF2t5wvFr1BNn5+8JoYgjkBH7hVOqAp7TXr4BybtiA3R\ng3GnBbf6lHgtZguWl1b41UV2xPHsqJfLLr6qjdEWARVRwRGh+cTHl3534m2U\nrVWMfoW4UfvWxynDvsIFuEDPMVVTmCbJ+62ymplEL99JO8/J85ok6a7nwoLo\nKYgk/0Bpx4/UeD5rEBaN9mspEx2khkPq9C6MDcQTwYeXOfP9ln9y10RuMuNw\nWk9l\r\n=hhWE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCpd0jQFH3gQAPbQ5fouX12Thd3ooA19L6uvr/XtDiB5gIgTU43HyA4my9NsOYm1D2CLU83j7kBIX79+mJBIjRL778="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.10.2-totally-bundled.1_1574816534030_0.5057069814253903"},"_hasShrinkwrap":false},"14.10.3":{"name":"tap","version":"14.10.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.3","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.3.0","color-support":"^1.1.0","coveralls":"^3.0.8","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.112.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.6","import-jsx":"^3.0.0","ink":"^2.5.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.1.1","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.12.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.16","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^3.0.0","treport":"^1.0.0","trivial-deferred":"^1.0.1","ts-node":"^8.5.2","typescript":"^3.7.2","which":"^2.0.2","write-file-atomic":"^3.0.1","yaml":"^1.7.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"f8fe967857c23963555faab0383249adf0ce3b99","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.10.3","_nodeVersion":"13.3.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-7C6J04s+f5pkDtcqgrXkMNQrjeAkpuJLqU2RDqjMBZNLHxkS27XC2bnfsswW5R3vlapWNAHA7uoT5pVipD724g==","shasum":"296cb7a16e1a4b6a6daa16658503b5adbcb2e60d","tarball":"https://registry.npmjs.org/tap/-/tap-14.10.3.tgz","fileCount":2537,"unpackedSize":11374116,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9/VACRA9TVsSAnZWagAAJBkP/1ncv/EheXNxckjrJEMV\n3CYyYb5e6slPOE23JWzlGvu7rJl3TXaduonfVSif3QAuoUKncWL4AhwCN3pP\naXYscv8rhpT6MhQ+56AsPlnnqowpk9UPcDgn0cwAjClIrQemceyCOKfzwKwP\nWdgoOYHXMcerO28p/TaOlagCAq6fQn4i7uSG6oKa9T5ZWlKbZR+vm2wHl4lr\nksYyi47U5zuMzLU5VJDj1xqn6hBX+5w3x0sj9vPIjh85RbRFhJ9vQSTuyr5O\n+zPzFI5qDs5lsEP1BwaEcuPwCvUYaE9Idk7fIEAaFLLudfWIVqeZCVGuLaIw\nXnIIw9fGFLfybF0c4QGUtfjkvNgnxMfwYTLTZywBX5wikErUTzblJxHbH6UK\nU1Fur4e92t035qFEZiotyNphqDYYST4SIq/v7angzGbXDxYS3dv8AtzYeYfk\nTp0FDCf97PO1AgEaTVGvhqen4CP2uVysc3imeTDv416tkXvEDemkECzospl0\nSJ7zBBLRd0+5bUE9f3qC9oSUsciA/rtUY4sYLW0ZhP7bbCdvRkFFVlrEMxRX\nECTikJp0g9tC0h/9tDBxrjyWsfhP4Kh82PdwrzLbMDhNvQyOpvPw5Sth4GoK\nIFqHPNoxRgH9/ipgVYuuKeSgMODBq2Av6V0d51+ciX5ZraDT3JPPAsTwkRi1\nw7kj\r\n=36+6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDCr+1ZqymqEIqEdp0a5kNhxkBIuKfK0HiZdE3K0FQb9wIgA+kQ0Sq59Qm95lXish7usYPVKz0PMNJ7KQ71I7LmhpE="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.10.3_1576531263746_0.2039302537940817"},"_hasShrinkwrap":false},"14.10.4":{"name":"tap","version":"14.10.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"async-hook-domain":"^1.1.3","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.3.0","color-support":"^1.1.0","coveralls":"^3.0.8","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.112.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.6","import-jsx":"^3.0.0","ink":"^2.5.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.1.1","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.12.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.16","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^3.0.0","treport":"^1.0.1","trivial-deferred":"^1.0.1","ts-node":"^8.5.2","typescript":"^3.7.2","which":"^2.0.2","write-file-atomic":"^3.0.1","yaml":"^1.7.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"bfb1a6d183f5cc1b162940b8c78215b958198341","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.10.4","_nodeVersion":"13.3.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-vQZ7GqDNXx7oMhC1GLGhusSkF+ZlWKD9Xtte9cm7a7ZtrSlEm6p6Pa4WGxWeFPd8IeHK0IgXPmhOSRJkenRN8g==","shasum":"3585f8f3ca57e7ce7f42cbd3a82363cb570a7738","tarball":"https://registry.npmjs.org/tap/-/tap-14.10.4.tgz","fileCount":2525,"unpackedSize":11332168,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd9/n+CRA9TVsSAnZWagAAnoMP/AoJ/0uYQYJAfeBjhNPS\njoPCi5TFL/ZLkLavICg0ab6W3rBms4wGy/SEUdP6N74iUTGH9uaGSH+JO2wE\nGtzBB4OJ7AmO2PdOlZ5LTDlccvKJtgen22FGkEr22wGahe8ozo9MlW+l+jnu\nCUNfHdv8Z8aPqKrOE23NjnbluTVqFM+mAf3VuXAkPr1ayytMUHqF6uPoIFvp\nZNT8tRnkL68aHH5C/9t2YDeeSzDy3ti6PybQLg37CAnUSxqq0pjAyRQOkcCb\nSWMWgRj31LcAHmK+WO+LnBRSQCfZt11MJkddUMR2GLCjW0Nb+lvwTqyoD2Zh\nUH/JgwZdDgIcN65ndwIl5zDFLL3TPjmMT43qMZe+RruZo8X0qop55Q5uXakW\n06Li8sNb6MmuU+DLazLr3GY0z/hZ5Xq7Ngzh4S+1e8uKgkNU3PEDXRUTltSc\n1VOpfezgtKGm6595tyfqePWZZ5foR0R0wDS8zrviRXnf2v9awY9EPEKGM3Ou\nZYhcgjlRuviu6kE/x0lCIr8LPYS3nON81ePj6sMAYEcbkY1oAGUAVPEijhLZ\nrsgctLyGydsbqCpMQ75elJFqD/+tGjqd7yqTc4HCpwNSUly3oe9y7CVJxUfr\nWSJNfhKSoUA2sj254NbOPDdzMtGV1ac49NeBB9myS34tsRFr/Ys+7D9GW37B\nVtHk\r\n=CxRV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDhlapbeVcnH0j+Ieu8DLic0IJ0Ir2GlNozix0Q9k2LxAiEAoYv0/TnB0JCLS67uYTgBAecHAj6QDw/XL/BuP73z+/8="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.10.4_1576532478340_0.2249689370296284"},"_hasShrinkwrap":false},"14.10.5":{"name":"tap","version":"14.10.5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"@types/react":"^16.9.16","async-hook-domain":"^1.1.3","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.3.0","color-support":"^1.1.0","coveralls":"^3.0.8","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.112.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.6","import-jsx":"^3.0.0","ink":"^2.5.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.1.1","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.12.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.16","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^3.0.0","treport":"^1.0.1","trivial-deferred":"^1.0.1","ts-node":"^8.5.2","typescript":"^3.7.2","which":"^2.0.2","write-file-atomic":"^3.0.1","yaml":"^1.7.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"da31576843b5639234039bb81f0756652768bb35","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.10.5","_nodeVersion":"13.3.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-8I8zMFEVu7e7RVcjK1GUNf1vW+6B9TRCZWGgif5siMBfvwTE9/EPN/7aH6W2r+WR2H2YHXcrCJ3XhRitYEVKfQ==","shasum":"59c625ee064fba229d87eab8badb27d46ebec169","tarball":"https://registry.npmjs.org/tap/-/tap-14.10.5.tgz","fileCount":2519,"unpackedSize":13096052,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd+XacCRA9TVsSAnZWagAAJv8P/iKd85aYnxJ9eBKq4+bq\n1Hr7WO5HDCvQw0kyWfehy5/Ef6LOow1oBYc7fid5E7gEOvfNA/yKQp3DeEwx\nNJ0wH6aXfc7ndof6O22KSMBVHpV6DzzVTTi052FnpwlwLxzm3uXXyexR4JRd\n64L3cAz/xjOqM4V8o8tuwjnM5ivQBZUQGqyvNYMzCNMuOqsnUVcFBDcTR/yf\nUKyzIY7g7EWdxQZJeyrIifF4FTE01SHH7Xv21V47ZU0t0CdQoa4OSG9QfnZN\nRe+8hJRKzywOby+rGPqIAxXPVMYuxcaaTduUEYMngIT/yMPtFAcGFHz46WO+\nvAWam+9WeKAPeJy6HJHlR36vxCJrYnEQM887VGB3eEZEsEkRKSFyFq0aiQq9\n4TBn4d7l1OW61Izlk+BksA9mENlYTc6vs8cAb0/60X+W1tzbUqDnd7IexGsq\nlfj+x0UDl/vGyOb80lazmpjeqHD+vbvjssrdTBae/1HIVETbtLm1fhOJHxfk\npwofcZRSAudiqB8fh5hFqJv0hPtv5BvIbx8fuJdq1PVzK+JJEV7dFEXxk/il\nECQcnvB5lsrBtNCBOhPA24nZIN52KCRMo2+V14k20mIWTE1hWySWQM2YNUq1\njvjAb9Moq9Agf87E94M5rsCjLlAgQZnERdZtyVLBU8Jc7WrhHPIyZl0Pjs2h\n8sXT\r\n=sPOU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICQ5WEpjVokywDT0dhG2ZevdwtHUjQa80Sg9D6ATnfiTAiEAjeliMEcxv744smfsVTtf1iM75RtGRPVOKwH5TqbuDT4="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.10.5_1576629915504_0.03323067549204328"},"_hasShrinkwrap":false},"14.10.6":{"name":"tap","version":"14.10.6","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"@types/react":"^16.9.16","async-hook-domain":"^1.1.3","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.3.0","color-support":"^1.1.0","coveralls":"^3.0.8","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.112.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.6","import-jsx":"^3.1.0","ink":"^2.6.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.1.1","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.12.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.16","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^3.0.0","treport":"^1.0.2","trivial-deferred":"^1.0.1","ts-node":"^8.5.2","typescript":"^3.7.2","which":"^2.0.2","write-file-atomic":"^3.0.1","yaml":"^1.7.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"045c81d68fa5aabe7e94113764be6622c1cf664d","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.10.6","_nodeVersion":"13.4.0","_npmVersion":"6.13.4","dist":{"integrity":"sha512-0Ikt8ui8TIYcoKkJRWDfoO0fgsknP3d6ouBak8HkDW8dl3NWF4Nj3X3bYFGozFeclXJrzY2qBERk3iPlypwOyg==","shasum":"554b399ee14f1794ea995363b07012c2edc9def6","tarball":"https://registry.npmjs.org/tap/-/tap-14.10.6.tgz","fileCount":2566,"unpackedSize":13256207,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeHSSNCRA9TVsSAnZWagAA7lAP/2RpODr7o5hZgi04qKAD\nUZx2wvnuz7hfpcWCq7P33Lp9dDWW303FZIG/0QoFyCK00BwYHkjgKi36dQy7\nxRMvsaZt4S7P2j/euDd15eRnKElIl5qDwV/0ii20bCgTEl3d6jsMjsn0K3p9\n96fb6cKRoXbd6HXNEC6VuhZVBbvkwiQnVJzNBIPvOPeNAAABMzj0WAOyvrww\nt6F+RzS8EL62UHMZmjsboqSqduyxMa+RXj4zsvrPTMen2nic2PK8Hdc/0AA4\n4ZDe//oQ5WuByPaYT3mAfaRLLDS6aWTD/VTr/f2oc9HFHMG4gIienLNNgaRq\nyktWT4d7mp3RF+8JKSuW57Fp5OfpRReDwYzVCzJZWTdcxx4MRU6SG4PBoNSR\n/zqIiqWRhDjDZHvPkPrjgbF/cp5VKo+91b3El/a+3oQq9WeHNWr46CGl0gwS\nGhUHCcPpjHHjnKzsLn9YKabZPgUkjbI9IKj19XD6hdehQrCluVsdPy/Xes23\n5CpnWyTFef5BcY5JKM+GOZL9SQOBbJ1kpBr1q4+rZbrI4+XVEHRhX6mD6yIY\n8YYg5Do+ablB8iThR7mFtu8Sct8ddaL0Vh8MDhaR2DXCTncI7pdRzWRjelFn\n2srhcbejXIa3wYKZ+lI7wc0bca6zoam7Hu6PbYL4Rg+flhR1dEMjoru+OfKa\ntFFn\r\n=aJj1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG1xF6BB30LfYVVObLSpw9ht8gd75m9ToKBRGcCJNTKzAiEArzBZuFwQCsQW496qUUrEZl0EEECWnTCSEYULK9S2xTk="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.10.6_1578968204822_0.48156332518103806"},"_hasShrinkwrap":false},"14.10.7":{"name":"tap","version":"14.10.7","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"@types/react":"^16.9.16","async-hook-domain":"^1.1.3","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.3.0","color-support":"^1.1.0","coveralls":"^3.0.8","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.112.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.6","import-jsx":"^3.1.0","ink":"^2.6.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.1.1","mkdirp":"^0.5.1","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.12.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.16","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^3.0.0","treport":"^1.0.2","trivial-deferred":"^1.0.1","ts-node":"^8.5.2","typescript":"^3.7.2","which":"^2.0.2","write-file-atomic":"^3.0.1","yaml":"^1.7.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"7c147385a1496973a9497285147897a149bca503","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.10.7","_nodeVersion":"13.10.1","_npmVersion":"6.13.7","dist":{"integrity":"sha512-DVx00lfiMxFhofwFDP77pitRCruVQJn8Dcj/6auIU3dErJQWsKT94oG6Yj0MQRuYANhSec8ruIPyUjH/RI9Hrw==","shasum":"426ee130a81bd00951d0ab2cc1eba76cf1775c36","tarball":"https://registry.npmjs.org/tap/-/tap-14.10.7.tgz","fileCount":2583,"unpackedSize":13397487,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJedD5MCRA9TVsSAnZWagAALWwP/0PWSrVKP8Jfgvnwvd56\nEcUu7DkfNUBfFnolXKQI6kkndpZvMtpzvNS89NhM90k/GPwOvIXgVdhO2Mxb\nJgtobjJ1WlX3rx408lrfkm6MDcedxcCp1w2oCnxnJKphvCseE43nMv948HN/\npDxJi19PTyKiaajlX5IHVbKdAH4WsCeUwJ/w5msCntGx0XDmh1IQ7dquY3Xs\n26A37/w9Ohs11BKAO2NZ9GwIRT7ArS4uWaUtjubvM4yx6DV5yzv7FWzMi1+U\n9AkWZMjZ40HZQvGkIG0YmoVfUMLORL4q2/ODv0u3KZieZhaiaoNp+o9SLomx\nkTeUTl71aJeiV+0eDqwTG4uWixMypm1ekA5ZXsM7cSWZvHSuPphBKqwuzJTD\n8VR6MnQLFynj0Mi04FXiOvuGTD0L9Gt/exJkDeNNTy0CBQEU7qICrwOUoGMJ\n50XWch/x5Y3eckarmf7UduJJWVOdPg8cVKm8UVDcyByZpjL7VfHue/dsQiq1\nIAxBBWaFJ6TeqEk9kGdkPI+lF9EnE2AASbstiaK7rtncl/KtaNMJEuox1PEy\nLRFE3fz4DJOqHthTLzkxQyCKCbr/UnvuTcwJupUj3fZwyognG9nUVHPf/CLr\nPR373kTnnGicq4Uj2bUmoN/6tYix3TYTfyXWnIwubs++5EyyARt8cNyAdHGK\n1tmQ\r\n=blZt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB3QC5i+FhvYiEoX1aSDkuABRWSTo6CIDgAilUf3wyP/AiEAthCFtvELV14eEEJpFGGk2ZfhSJrVRrMTwNQlcfQcFvo="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.10.7_1584676427391_0.9412665271016234"},"_hasShrinkwrap":false},"14.10.8":{"name":"tap","version":"14.10.8","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"@types/react":"^16.9.16","async-hook-domain":"^1.1.3","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.3.0","color-support":"^1.1.0","coveralls":"^3.0.11","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.112.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.6","import-jsx":"^3.1.0","ink":"^2.6.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.1.1","mkdirp":"^0.5.4","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.12.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.16","stack-utils":"^1.0.2","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^3.0.0","treport":"^1.0.2","trivial-deferred":"^1.0.1","ts-node":"^8.5.2","typescript":"^3.7.2","which":"^2.0.2","write-file-atomic":"^3.0.1","yaml":"^1.7.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"d3c4d2cdf1bb3121ad3fa34f7b3ccd8be339a8ef","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.10.8","_nodeVersion":"14.2.0","_npmVersion":"6.14.5","dist":{"integrity":"sha512-aamkWefJ0G8GGf9t5LWFtrNF5tfVd8ut/tDUianLF6N4621ERITIl0qkocWCVEnsM6hZnaMKa+SggSAaBlC2tA==","shasum":"3c9ce79519acca2f40e57350513b2aa51c6e57c2","tarball":"https://registry.npmjs.org/tap/-/tap-14.10.8.tgz","fileCount":2360,"unpackedSize":13248498,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfF3EeCRA9TVsSAnZWagAAB90P/2RBZwmZalMCwUvyMlpL\ndvmkRlIkwyg/fO9U5HPvKKGYlq/TqxU3bJReYJR6CJ4YqM8xAgj8RtbAwv5G\nGA+rWb5lcQ1ly+uSjwvb+wm1NzgDFcGR4meEXzl/h0RK/k3GYkk00VK+Th/9\nVRNYb/fLFO3PShXMiBSmJYtYmztvUCVyasfqefAZQHgR9Q1yOvI+p83x2+ri\nh6RBXt37YQIhQtVjCMwLk373z07eD0YkTgCxM9T6s/RWZubFLfNyuMf+1RwX\nnh5gNizaIFXVv/RAWX+HMUNn0O7yPraRJDBgTK4HBw6Raq2pnSyhDJdbOCV2\nnbaAn6CD5tF9EyE9EFCr2tALOrAqvfPytCTjz7iUThV1iFtT9VXxS+dN3k6p\nZoZFxx4wJLXJT9LzR9Jbs4Jc9kCNLtPB6cOfHw5G21MFQD6dXcG8WAN2OS7s\nUWCvzme7QLzqUuwGypNh9KmCXZsTSHuQkzaX912qZHiMM1GTG/CdMmeG7X+L\nGaeWaFtsninnTiEEbo0rOvqewCwFHsXQALbjdr7ePKGCWImdyiNvbVj3DFzS\nkwLohhPlbcl/ZhdEVXlRonLWHQlWbQTpVwEBxhAQpjd0R3n7ecPoY50NugXv\nUgv7yY/FavOpbU1fGlZqWGzOaaLO+RDNPnU/O3pvoIk50OuHynWeUnboZJ2k\nHa7o\r\n=XZow\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHeK/eHf1tA2U41Ek7YufmleZ4TWEBnfVuL4dVYHKcn3AiAOpWTMX9mne2ARNqIFg1BkpGzjo4gPzpbOY7uf/bKOaQ=="}]},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.10.8_1595371805711_0.5902590166177308"},"_hasShrinkwrap":false},"14.11.0":{"name":"tap","version":"14.11.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","engines":{"node":">=8"},"dependencies":{"@types/react":"^16.9.16","async-hook-domain":"^1.1.3","bind-obj-methods":"^2.0.0","browser-process-hrtime":"^1.0.0","chokidar":"^3.3.0","color-support":"^1.1.0","coveralls":"^3.0.11","diff":"^4.0.1","esm":"^3.2.25","findit":"^2.0.0","flow-remove-types":"^2.112.0","foreground-child":"^1.3.3","fs-exists-cached":"^1.0.0","function-loop":"^1.0.2","glob":"^7.1.6","import-jsx":"^3.1.0","ink":"^2.6.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^1.0.0","jackspeak":"^1.4.0","minipass":"^3.1.1","mkdirp":"^0.5.4","nyc":"^14.1.1","opener":"^1.5.1","own-or":"^1.0.0","own-or-env":"^1.0.1","react":"^16.12.0","rimraf":"^2.7.1","signal-exit":"^3.0.0","source-map-support":"^0.5.16","stack-utils":"^1.0.3","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^3.0.0","treport":"^1.0.2","trivial-deferred":"^1.0.1","ts-node":"^8.5.2","typescript":"^3.7.2","which":"^2.0.2","write-file-atomic":"^3.0.1","yaml":"^1.7.2","yapool":"^1.0.0"},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js test -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js test -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"esm":false,"test-ignore":"/(^|/)cli-tests-[0-9]+/","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","import-jsx","minipass","signal-exit","tap-parser","tap-yaml","yaml"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"e5417c733786db5cdb2622b8fb4f0f63a879318b","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@14.11.0","_nodeVersion":"15.2.0","_npmVersion":"7.0.11","dist":{"integrity":"sha512-z8qnNFVyIjLh/bNoTLFRkEk09XZUDAZbCkz/BjvHHly3ao5H+y60gPnedALfheEjA6dA4tpp/mrKq2NWlMuq0A==","shasum":"64f1f50b10280d5149690c9a7059d859f2bbcd24","tarball":"https://registry.npmjs.org/tap/-/tap-14.11.0.tgz","fileCount":2360,"unpackedSize":13249822,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfsxGWCRA9TVsSAnZWagAAB+IP/jo7ZcHhStZhlPqoktay\nLGosuL/1DNSIaFuqI+5QYdU7ipiDesWvAH0cbtXRUC85v2CdVqJl1rFNnW2k\nl2Mg1CmIM8RmiXYaEvF17fMwYMRnW4FnHxsGvV8u257cvZPdpLrQecosvCa7\njqRIAjoc2rxlvjLVnRuvdkb1NhMBomqRkcr8UPjnSbOytmoUcENENEELnVgq\n+XvmxW5iyzeNKjKYcbvGuFIywd/79CQuyFQjjafKoxUvGiMAYfPtgirEToRR\nqnTqbcqvTEVT7JAqmK+nq+vKRh/wnXC1nf7C/OA+yo2kek7STGYcsObjXrAl\nse7h973iywhOJcRuKo7YmD7H8r5dBKIdPXMq45fZ4Lb4TG9w6lkMwYU9cl0x\nvWFabStD7uCgx15C6yJYjJXDEDKTxvrjycdVXmcz5xHo24tTcqN3DohUnjnk\nB3JV9CBq7K6e0v+guSa1wpW4IbfCkaLKuGPR91Lt9d4UmQNmuQaZ5lncKUHk\nZfJTYFFgHVpBW952IChTCj5jCQcap0Qa3kvQ0nz0uzN5jzYdxBT0gY1N+WVe\n3wF8/G2SxirwNAs3CsihGkRbPb8tIRlc9piU1MC4KIVvkHGIhYiRDzPjCcT3\nV4u47cKnr7H7VRbJi84yD6cLqzQFQ5Ca/4BagfEx6oxSQW0ZpeitD5Te24/J\nCVx6\r\n=zzQT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBDPdQSSWPnds8uA29os6Z+KmQMWM5M/jNp1Td+jM2sJAiAeU3qSnDBkOgJPk7NNcrT9j2YEe/78naNJJ19zT9TEoQ=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_14.11.0_1605570965651_0.6142852273872295"},"_hasShrinkwrap":false},"15.0.0-0":{"name":"tap","version":"15.0.0-0","publishConfig":{"tag":"v15-beta"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@types/react":"^16.9.23","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","import-jsx":"^3.1.0","ink":"^2.6.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.0","libtap":"github:tapjs/libtap#isaacs/tap-v15-prep","minipass":"^3.1.1","nyc":"^15.0.0","opener":"^1.5.1","react":"^16.12.0","rimraf":"^3.0.0","signal-exit":"^3.0.0","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","treport":"^1.0.2","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n![Build Status](https://github.com/tapjs/node-tap/workflows/ci/badge.svg)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating test\nscripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running tests\n (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates,\nor just get started with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over to\n[the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why they're\nthe greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge that\nbalances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have any\nopinion about whether or not you share those opinions. If you do share\nthem, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run directly.**\n\n That means that it can't require a special runner that puts magic\n functions into a global space. `node test.js` is a perfectly ok way to\n run a test, and it ought to function exactly the same as when it's run\n by the fancy runner with reporting and such. JavaScript tests should be\n JavaScript programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the test file in a\n way that is easy to determine.**\n\n That means not unnecessarily deferring test functions until `nextTick`,\n because that would shift the order of `console.log` output. Synchronous\n tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the test\n as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to doing\n `test-runner test/*.js`. This prevents tests from becoming implicitly\n dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of assertions based\n on some list of test cases. If the first failure throws, then I don't\n know if I've failed 100 tests or 1, without wrapping everything in a\n try-catch. Furthermore, I usually want to see some kind of output or\n reporting to verify that each one actually ran.\n\n Basically, it should be your decision whether you want to throw or not.\n The test framework shouldn't force that on you, and should make either\n case easy.\n\n5. **Test reporting should be separate from the test process, included in\n the framework, and enabled by default for humans.**\n\n The [raw test output](https://www.node-tap.org/tap-format/) should be\n machine-parseable and human-intelligible, and a separate process should\n consume test output and turn it into a [pretty summarized\n report](https://www.node-tap.org/reporting/). This means that test data\n can be stored and parsed later, dug into for additional details, and so\n on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more tests get\n written. That means that there should be a relatively small vocabulary\n of actions that I need to remember as a test author. There is no\n benefit to having a distinction between a \"suite\" and a \"subtest\".\n Fancy DSLs are pretty, but more to remember.\n\n That being said, if you return a Promise, or use a DSL that throws a\n decorated error, then the test framework should Just Work in a way that\n helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no more or\n less.**\n\n Stack traces pointing at JS internals or the guts of the test framework\n itself are not helpful. A test framework is a serious UX challenge, and\n should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about your\n programs, and provides much deeper insight. Node-tap bundles\n [NYC](https://istanbul.js.org/) for this.\n\n It _does_ necessarily change the nature of the environment a little bit.\n But in this case, it's worth it, and NYC has come a long way towards\n maintaining this promise.\n\n Coverage _enforcement_ is not on by default, but I strongly encourage\n it. You can put `\"tap\":{\"check-coverage\":true}` in your package.json,\n or pass [`--100`](https://www.node-tap.org/100/) on the command line.\n In a future version, it will likely be enabled by default.\n\n9. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't require\n compilation, then I think your tests shouldn't either. Tap is extremely\n [promise-aware](https://www.node-tap.org/promises/). JSX, TypeScript,\n Flow, and ES-Modules are\n [built-in](https://www.node-tap.org/using-with/) when tests are run by\n the tap CLI.\n\n10. **Tests should run as fast as possible, given all the prior\n considerations.**\n\n As of version 10, tap supports [parallel\n tests](https://www.node-tap.org/parallel/). As of version 13, the test\n runner defaults to running the same number of parallel tests as there\n are CPUs on the system.\n\n This makes tests significantly faster in almost every case, on any machine\n with multiple cores.\n\nSoftware testing should help you build software. It should be a security\nblanket and a quality ratchet, giving you the support to undertake massive\nrefactoring and fix bugs without worrying. It shouldn't be a purification\nrite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"d1816532e98868f13144bbc245060f8251cba910","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.0.0-0","_nodeVersion":"15.3.0","_npmVersion":"7.5.4","dist":{"integrity":"sha512-B+xXzWsJtnlmoWUzmyEJu0XlKsX2Gu5CFoDGhIFaHAsHOEC/enjX57SAAqE5pSylC0+a90QbrPzN6jNmLgM+3w==","shasum":"4665d5f04c84c47f7d1b6a2b4a4c35796bbdcb9c","tarball":"https://registry.npmjs.org/tap/-/tap-15.0.0-0.tgz","fileCount":2257,"unpackedSize":11833014,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLWRSCRA9TVsSAnZWagAAI+4P+wZ7dftG4mijQRwQsbFZ\ne7R2FX/5LLNs+p99pyofgu907m5J4yH+yrMeB5n4zCtvdi094JKVZ8iAu/xe\ne16EZdbPRQWNbZM1ndl4yF8Dz2J/cCu3Y/WDG3L2z0Cw1vmgp5k2KQvYnTjE\n8qlCGL8vUoYkbEYozPO0jRyNze0EO1rzqLIDGTBbI3OBlDXt1+DKzOn4zLlj\n8nJCCgwbVW9y/Jx4fWwqI/PDArNMrO0tR9Whvc9pt/CtERKvDzyumBFaLX3P\naDvcSI50T+NDsED0GVWpbODDkM0zX5wf1J6E8WhTOZF/o/f7776CXqk6Hhno\nV8q/8q76440DiU/xNfeBKW0AWFEWCBaPWpmOzXJK/h17j4CwDeN9y4WPonMx\nN9P009VILDmtWSZxcNnOYJEyF1TZXH8Rtpr7EsYugJh6N/wT/sQ7IxkiHqHq\nrxRVWvW/ovhdCx/6hfWkKSk3VPV8qrBNnFTkSwcaT8CSZ6ON2VoPwj9618vt\n/I2joI71jSfOl2Qclo1afrJMgDNwdjGku8zsTVSHE3lixbrm9ha314eMJ95H\nBdnGJF7Jy7fqruRKjpD0I2yRG+ciet9nKPFPX5+vXgadSxYewIdYoOE6xrFS\nLxbc5Bnp3i0rdMVQhejDXMYAK9Gnu0Mud563uGbOXlakQfq9/ZherTlYQkvX\nuBP6\r\n=h0hQ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDwN/Gq8fs+Pegsw8lhVOKpJhCr1OnvyffUjZOdAIcTCQIgcU6zZRaBs2HxgHWovVyZigVXHaMiMVRDsQtT30hWIPc="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.0.0-0_1613587537592_0.22173550635896766"},"_hasShrinkwrap":false},"15.0.0-1":{"name":"tap","version":"15.0.0-1","publishConfig":{"tag":"v15-beta"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@types/react":"^16.9.23","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","import-jsx":"^4.0.0","ink":"^2.7.1","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.0","libtap":"github:tapjs/libtap","minipass":"^3.1.1","nyc":"^15.1.0","opener":"^1.5.1","react":"^16.12.0","rimraf":"^3.0.0","signal-exit":"^3.0.0","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","treport":"^2.0.0","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n![Build Status](https://github.com/tapjs/node-tap/workflows/ci/badge.svg)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating test\nscripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running tests\n (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates,\nor just get started with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over to\n[the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why they're\nthe greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge that\nbalances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have any\nopinion about whether or not you share those opinions. If you do share\nthem, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run directly.**\n\n That means that it can't require a special runner that puts magic\n functions into a global space. `node test.js` is a perfectly ok way to\n run a test, and it ought to function exactly the same as when it's run\n by the fancy runner with reporting and such. JavaScript tests should be\n JavaScript programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the test file in a\n way that is easy to determine.**\n\n That means not unnecessarily deferring test functions until `nextTick`,\n because that would shift the order of `console.log` output. Synchronous\n tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the test\n as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to doing\n `test-runner test/*.js`. This prevents tests from becoming implicitly\n dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of assertions based\n on some list of test cases. If the first failure throws, then I don't\n know if I've failed 100 tests or 1, without wrapping everything in a\n try-catch. Furthermore, I usually want to see some kind of output or\n reporting to verify that each one actually ran.\n\n Basically, it should be your decision whether you want to throw or not.\n The test framework shouldn't force that on you, and should make either\n case easy.\n\n5. **Test reporting should be separate from the test process, included in\n the framework, and enabled by default for humans.**\n\n The [raw test output](https://www.node-tap.org/tap-format/) should be\n machine-parseable and human-intelligible, and a separate process should\n consume test output and turn it into a [pretty summarized\n report](https://www.node-tap.org/reporting/). This means that test data\n can be stored and parsed later, dug into for additional details, and so\n on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more tests get\n written. That means that there should be a relatively small vocabulary\n of actions that I need to remember as a test author. There is no\n benefit to having a distinction between a \"suite\" and a \"subtest\".\n Fancy DSLs are pretty, but more to remember.\n\n That being said, if you return a Promise, or use a DSL that throws a\n decorated error, then the test framework should Just Work in a way that\n helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no more or\n less.**\n\n Stack traces pointing at JS internals or the guts of the test framework\n itself are not helpful. A test framework is a serious UX challenge, and\n should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about your\n programs, and provides much deeper insight. Node-tap bundles\n [NYC](https://istanbul.js.org/) for this.\n\n It _does_ necessarily change the nature of the environment a little bit.\n But in this case, it's worth it, and NYC has come a long way towards\n maintaining this promise.\n\n Coverage _enforcement_ is not on by default, but I strongly encourage\n it. You can put `\"tap\":{\"check-coverage\":true}` in your package.json,\n or pass [`--100`](https://www.node-tap.org/100/) on the command line.\n In a future version, it will likely be enabled by default.\n\n9. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't require\n compilation, then I think your tests shouldn't either. Tap is extremely\n [promise-aware](https://www.node-tap.org/promises/). JSX, TypeScript,\n Flow, and ES-Modules are\n [built-in](https://www.node-tap.org/using-with/) when tests are run by\n the tap CLI.\n\n10. **Tests should run as fast as possible, given all the prior\n considerations.**\n\n As of version 10, tap supports [parallel\n tests](https://www.node-tap.org/parallel/). As of version 13, the test\n runner defaults to running the same number of parallel tests as there\n are CPUs on the system.\n\n This makes tests significantly faster in almost every case, on any machine\n with multiple cores.\n\nSoftware testing should help you build software. It should be a security\nblanket and a quality ratchet, giving you the support to undertake massive\nrefactoring and fix bugs without worrying. It shouldn't be a purification\nrite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"335096112d44e010761ec4909f344162f4e82fce","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.0.0-1","_nodeVersion":"15.3.0","_npmVersion":"7.5.4","dist":{"integrity":"sha512-WjZNzZTpxkZDXa09JYQ0IETvRDM2Jw3dR48kH3+SKG4+a0vFg7VyjJVkEWV35Zre1KwI3s4LDUr3BolkEDnGiQ==","shasum":"1b298ce3aee32489a236fca2ab63ca41901c398a","tarball":"https://registry.npmjs.org/tap/-/tap-15.0.0-1.tgz","fileCount":2375,"unpackedSize":12131561,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLqbgCRA9TVsSAnZWagAAtQcP/i9YupYfnl4vNn0DvxzG\n/0iYKkOLU2GShTGaessB5//Lgry1u1X6Bkrt9Cf8WucEFn57/P0aZSY07K5I\n8YzGvkjzdi6UfBZXlAhmN+3YG8i43TaBShsO/AEDmrhiA2HQ+uy2U32iPPKd\nvOj3aY5txcK3p/4e4cWxRH4pM9AqNiPH0u2GSvy1Te+MBYDrPmoN/+BEI3Md\nrDYz6IhRKzs9XisF2OOyQD3i1ZMoiZh+tMtwr1pJa4t3rZ/nj+91X0Xw2VwW\nVfZsoMKAyPOLx+EEhu+yLKjBdK54K82lZtqkYoklwqdyyb03YyhggjWLxGrb\nR5Clc/U2Pxw8JqktRy7Vw05ZredluNdW7HXeaMsMBrfWnAw2XRfpoK+XNN+1\nHaypOUWzmwB3OSwDlXFGaIf5jdSoJeB7vqJvnCOkGcjWaxRcFzpPhImObc8e\nTIjXZ841DuAQI3OWiYg8wf4GyKmUBcm8TfYRTyxZaQ6q9jSOgKZAJUtKV94h\n/ExbTKceC4TKQr+ajMOckR1mIckTcHIM9YWwDhWwBRRB58aluE+QDd8kVxDb\nWz6LASHRdwgEjX17AVU49WT8VyBrE1sX3Uk7A/E4hWovZb+eQ3RmE+zzDKKs\njAe0HtOZoRpwf3gClWO2Z8xWF5i95MqkYn+aBSMo/UoLcmw+LT6VNxH1qTgp\nOQQ5\r\n=fSYH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICfb7L/oqJmrC/2F5TQu490rlUIk45UHW1fxI6wsLuCuAiEAvibxAqaIsSTqlJhmT06BMToNbbksGn7DkQURvDLwT30="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.0.0-1_1613670112180_0.8981957811328865"},"_hasShrinkwrap":false},"15.0.0-2":{"name":"tap","version":"15.0.0-2","publishConfig":{"tag":"v15-beta"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@types/react":"^16.9.23","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","import-jsx":"^4.0.0","ink":"^2.7.1","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.0","libtap":"github:tapjs/libtap#isaacs/tap-v15-prep","minipass":"^3.1.1","nyc":"^15.1.0","opener":"^1.5.1","react":"^16.12.0","rimraf":"^3.0.0","signal-exit":"^3.0.0","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","treport":"^2.0.0","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n![Build Status](https://github.com/tapjs/node-tap/workflows/ci/badge.svg)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating test\nscripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running tests\n (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates,\nor just get started with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over to\n[the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why they're\nthe greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge that\nbalances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have any\nopinion about whether or not you share those opinions. If you do share\nthem, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run directly.**\n\n That means that it can't require a special runner that puts magic\n functions into a global space. `node test.js` is a perfectly ok way to\n run a test, and it ought to function exactly the same as when it's run\n by the fancy runner with reporting and such. JavaScript tests should be\n JavaScript programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the test file in a\n way that is easy to determine.**\n\n That means not unnecessarily deferring test functions until `nextTick`,\n because that would shift the order of `console.log` output. Synchronous\n tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the test\n as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to doing\n `test-runner test/*.js`. This prevents tests from becoming implicitly\n dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of assertions based\n on some list of test cases. If the first failure throws, then I don't\n know if I've failed 100 tests or 1, without wrapping everything in a\n try-catch. Furthermore, I usually want to see some kind of output or\n reporting to verify that each one actually ran.\n\n Basically, it should be your decision whether you want to throw or not.\n The test framework shouldn't force that on you, and should make either\n case easy.\n\n5. **Test reporting should be separate from the test process, included in\n the framework, and enabled by default for humans.**\n\n The [raw test output](https://www.node-tap.org/tap-format/) should be\n machine-parseable and human-intelligible, and a separate process should\n consume test output and turn it into a [pretty summarized\n report](https://www.node-tap.org/reporting/). This means that test data\n can be stored and parsed later, dug into for additional details, and so\n on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more tests get\n written. That means that there should be a relatively small vocabulary\n of actions that I need to remember as a test author. There is no\n benefit to having a distinction between a \"suite\" and a \"subtest\".\n Fancy DSLs are pretty, but more to remember.\n\n That being said, if you return a Promise, or use a DSL that throws a\n decorated error, then the test framework should Just Work in a way that\n helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no more or\n less.**\n\n Stack traces pointing at JS internals or the guts of the test framework\n itself are not helpful. A test framework is a serious UX challenge, and\n should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about your\n programs, and provides much deeper insight. Node-tap bundles\n [NYC](https://istanbul.js.org/) for this.\n\n It _does_ necessarily change the nature of the environment a little bit.\n But in this case, it's worth it, and NYC has come a long way towards\n maintaining this promise.\n\n Coverage _enforcement_ is not on by default, but I strongly encourage\n it. You can put `\"tap\":{\"check-coverage\":true}` in your package.json,\n or pass [`--100`](https://www.node-tap.org/100/) on the command line.\n In a future version, it will likely be enabled by default.\n\n9. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't require\n compilation, then I think your tests shouldn't either. Tap is extremely\n [promise-aware](https://www.node-tap.org/promises/). JSX, TypeScript,\n Flow, and ES-Modules are\n [built-in](https://www.node-tap.org/using-with/) when tests are run by\n the tap CLI.\n\n10. **Tests should run as fast as possible, given all the prior\n considerations.**\n\n As of version 10, tap supports [parallel\n tests](https://www.node-tap.org/parallel/). As of version 13, the test\n runner defaults to running the same number of parallel tests as there\n are CPUs on the system.\n\n This makes tests significantly faster in almost every case, on any machine\n with multiple cores.\n\nSoftware testing should help you build software. It should be a security\nblanket and a quality ratchet, giving you the support to undertake massive\nrefactoring and fix bugs without worrying. It shouldn't be a purification\nrite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"2aa497c0ae33eadba6f80d7849b3007b4ef98726","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.0.0-2","_nodeVersion":"15.3.0","_npmVersion":"7.5.6","dist":{"integrity":"sha512-Lt2xYr5x2JdDUM18LHMIaaCHITNBt1ylCIpIwLB3fhLPrvRZCYO6uXu4ZkIFVB93LNXL4eyh0TYdsBEPuwc/nQ==","shasum":"1c1f82f5451703ca4f8a674d2ac872362f9e1b0d","tarball":"https://registry.npmjs.org/tap/-/tap-15.0.0-2.tgz","fileCount":2375,"unpackedSize":12133388,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgNElkCRA9TVsSAnZWagAAuFsP/itNNyNHehUTLuQt43oV\nx/MWIJb+Hvur3Dk3bGEJe+yxCrIbAF5dKu/jQS6tkjkyjJG8Z/w7e0L+R6xv\nCEIFeaI4218/4q4Cv8piMemzrPv23WQo05BaMwuQ3nnpDt4zuE3U+cAb38ER\nmCbJRtqBnW68fMEMZFtLmn8I1cDmZQwbbuv3jiL8ecfeM1iVd1e2Vz5VudeW\n/Dgvous5LDWrap7IScTvUOB5i4Iw2JeKPv9jiGVW92KiPOVgXVVqVkA3upFe\niXPKEwRrAoPyXixuhhp9Qsiw8r9dP8iXp7m60abTD06dweYxU/d7Di24FauB\nxMbQ3nEuVR1ktvi2ErsUjVNM7xMPnS0S7RB0ytNQD18gq8nX8cZ1itrRS9G7\nVzh46TmuzTRsdE5B6HHx/4I2gLX83KB69PWV+m5FcDUXaM18gF1JAjwefb33\n+YeW7NdWKejl8T1vcyd3MLLzRnmvZaQWpjZcfOvMT1klxJfz+fit1fJI+lYB\nlJJ2A4vpDRlNayDCTBxXv7CK3fcHgKHLejqMgl91ylsiSkNrCQtbbKA70XpI\nVxzOs0iXjl4r6t5Z9vn3HPavF71Waun+9Y+dyPoWBRVXglOM6SjQtOfOz4gt\nc5yw78QwLzjJHR7i8O5AE9a9oVIo9ZMnBcobqrwa/eZVeMjaWdx3qnQjrPB2\n9xaW\r\n=OP+B\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBgn7Etxmr0o6rj4i4sjciaw+xQINC4YEtvwt6Mst9ZLAiAZCnaPY/TfYU0ANUtUU7ajWj8CXD7+wv2c4oeUtf36jg=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.0.0-2_1614039396008_0.2916137818307045"},"_hasShrinkwrap":false},"15.0.0-3":{"name":"tap","version":"15.0.0-3","publishConfig":{"tag":"v15-beta"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@types/react":"^16.9.23","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","import-jsx":"^4.0.0","ink":"^2.7.1","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.0","libtap":"^1.0.1","minipass":"^3.1.1","nyc":"^15.1.0","opener":"^1.5.1","react":"^16.12.0","rimraf":"^3.0.0","signal-exit":"^3.0.0","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","treport":"^2.0.0","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"bash scripts/snap.sh","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n![Build Status](https://github.com/tapjs/node-tap/workflows/ci/badge.svg)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating test\nscripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running tests\n (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates,\nor just get started with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over to\n[the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why they're\nthe greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge that\nbalances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have any\nopinion about whether or not you share those opinions. If you do share\nthem, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run directly.**\n\n That means that it can't require a special runner that puts magic\n functions into a global space. `node test.js` is a perfectly ok way to\n run a test, and it ought to function exactly the same as when it's run\n by the fancy runner with reporting and such. JavaScript tests should be\n JavaScript programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the test file in a\n way that is easy to determine.**\n\n That means not unnecessarily deferring test functions until `nextTick`,\n because that would shift the order of `console.log` output. Synchronous\n tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the test\n as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to doing\n `test-runner test/*.js`. This prevents tests from becoming implicitly\n dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of assertions based\n on some list of test cases. If the first failure throws, then I don't\n know if I've failed 100 tests or 1, without wrapping everything in a\n try-catch. Furthermore, I usually want to see some kind of output or\n reporting to verify that each one actually ran.\n\n Basically, it should be your decision whether you want to throw or not.\n The test framework shouldn't force that on you, and should make either\n case easy.\n\n5. **Test reporting should be separate from the test process, included in\n the framework, and enabled by default for humans.**\n\n The [raw test output](https://www.node-tap.org/tap-format/) should be\n machine-parseable and human-intelligible, and a separate process should\n consume test output and turn it into a [pretty summarized\n report](https://www.node-tap.org/reporting/). This means that test data\n can be stored and parsed later, dug into for additional details, and so\n on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more tests get\n written. That means that there should be a relatively small vocabulary\n of actions that I need to remember as a test author. There is no\n benefit to having a distinction between a \"suite\" and a \"subtest\".\n Fancy DSLs are pretty, but more to remember.\n\n That being said, if you return a Promise, or use a DSL that throws a\n decorated error, then the test framework should Just Work in a way that\n helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no more or\n less.**\n\n Stack traces pointing at JS internals or the guts of the test framework\n itself are not helpful. A test framework is a serious UX challenge, and\n should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about your\n programs, and provides much deeper insight. Node-tap bundles\n [NYC](https://istanbul.js.org/) for this.\n\n It _does_ necessarily change the nature of the environment a little bit.\n But in this case, it's worth it, and NYC has come a long way towards\n maintaining this promise.\n\n Coverage _enforcement_ is not on by default, but I strongly encourage\n it. You can put `\"tap\":{\"check-coverage\":true}` in your package.json,\n or pass [`--100`](https://www.node-tap.org/100/) on the command line.\n In a future version, it will likely be enabled by default.\n\n9. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't require\n compilation, then I think your tests shouldn't either. Tap is extremely\n [promise-aware](https://www.node-tap.org/promises/). JSX, TypeScript,\n Flow, and ES-Modules are\n [built-in](https://www.node-tap.org/using-with/) when tests are run by\n the tap CLI.\n\n10. **Tests should run as fast as possible, given all the prior\n considerations.**\n\n As of version 10, tap supports [parallel\n tests](https://www.node-tap.org/parallel/). As of version 13, the test\n runner defaults to running the same number of parallel tests as there\n are CPUs on the system.\n\n This makes tests significantly faster in almost every case, on any machine\n with multiple cores.\n\nSoftware testing should help you build software. It should be a security\nblanket and a quality ratchet, giving you the support to undertake massive\nrefactoring and fix bugs without worrying. It shouldn't be a purification\nrite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"c1289bf3e4a0784946721e5da7072e70a90df175","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.0.0-3","_nodeVersion":"15.3.0","_npmVersion":"7.7.4","dist":{"integrity":"sha512-cn4XWMXRSvZuv59tulTsH7AyOpeFc5dHdAQ/lz3Dl8ZxiP2iMfOmK4SwCVIFKh36ZmVA03EK9dmxFMn5UxAQwA==","shasum":"19c1f0cfaa7ba4830140d69bbb785074f560b168","tarball":"https://registry.npmjs.org/tap/-/tap-15.0.0-3.tgz","fileCount":2375,"unpackedSize":12133355,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXVs8CRA9TVsSAnZWagAAq7QQAI+SMr2DQPmb92kDoHMa\nCJ9Y/VvvR5bB26ynFmu9KdVbOcWt3c+kc7RCXh+6rkjvKPihNU7HDQhrIpUb\nh2a5IJfvxvqf6Dez1bgOLKPwNFio3Y3NpydsB9gUK0PhON1+RdJu/bSG2UA7\nD7Da/uqMrNRMisohn7oHJmcZebFM6OHcr8TFxSIo38BinsekY8QKz879wwmk\ngnLerxmgbUNj3pzS9XQTOUdJJGxoYwIHJogeDptJobGLrlQFswQzm4ZyiOsW\nhCHnhGfsaJUHzuF01kwnCJOImgEAf51TfaByUmwGyBjn3o0lo5zZ9/7Oxsia\nzRT5RJAxdQGisUdK5vgw+1q26CbfHj+e0p5AUsXe59mAQlDNikYcEHqytPiF\nwvM3u2sDc0AWHO+hcpXD/e5VmF/MMNW31PpoZ+EtfCK29oUolychZgSkgsRk\nTpDZQhHeYtxbLLo5xliwE6qjSLCA109oQ5hmCyFEUvvnw8eyzGKk44DLRUQV\nXJb+7/mP7Z2qQtsasu8T6cAMeZjD8HjMI8qKE+XimMAU6O2nJsbSrJnsTnAI\nHTG6HQQMU265fTNL80vSVG6cZ7eIdSuLQ72IaHmK73cHceenwGUqxRHpugIZ\nsf3XUDjGKqVclfSodgkCxOPYhGo5BZfKvnq+kZZZlni/235mqAl5ztEJ9TUM\nWObs\r\n=4zrl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID/MKcSxXNEZHUbY6ke1JNMi6Iz8iJwpeKgUHUUALlWYAiByYabQldAuOk6F6pUbvOMPaCHKRP20jY1PWcwXfPkZNw=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.0.0-3_1616730939583_0.23550005227988557"},"_hasShrinkwrap":false},"15.0.0":{"name":"tap","version":"15.0.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@types/react":"^16.9.23","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","import-jsx":"^4.0.0","ink":"^2.7.1","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.0","libtap":"^1.1.1","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^16.12.0","rimraf":"^3.0.0","signal-exit":"^3.0.0","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.4","treport":"^2.0.0","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"bc49fb76608d4dc49dfed760797a1a93d00e2835","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.0.0","_nodeVersion":"15.3.0","_npmVersion":"7.7.6","dist":{"integrity":"sha512-OV2HkF00WakjMpmmJ9g475zWWL8dx5+sh4vBvHq02gqsyH8v1eOL834JAIXzkEmwpCJ7TJ2ewV6lWuNNwWZtzg==","shasum":"e4ef51fe360e6f4d10a8bdd5abfa69c8a88316a5","tarball":"https://registry.npmjs.org/tap/-/tap-15.0.0.tgz","fileCount":3295,"unpackedSize":14223712,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZAHnCRA9TVsSAnZWagAAmAoP/RepAbCqsU4fv4EPeUXw\nUM83k5hKM4IMqasK21bpKpOljzlctdZj5w1I0A76zBkeR13gnjLkQvI047zN\no+obFcp7WEp7C9NHt+JF61nGh0Z6iNHt0wR4JK3BcS6xFMyky6m/lxPWjoOb\nlQKhEdj1TTUjf3nHlmIUuUlzR4WJwyFNN8Lb0V16IAA4Z8vFc/YdFNPaJNcW\n8jkx9acKjbx5Pu4y+Xo1JTI1/k66/O7/5DJpoU7Y5Ck5Jt2QYlNwsKJeAYel\nHbha/8++jkUMZGqvIabhPDOdOKJ36IMtZr6nQzXMCI4uH4Pv4VMI9wrYw+6q\nImxZo1nsw3c/zDFriyYeTOOU+AFTdT2kePe9z6rtGtNfZWOu8jO6bY2Kq91D\n0LYqjW1JEBwUuFrntOS8Q7QhcwA+AygOKTHqI2nfOzex50sdTemdPvH51x1v\nBLUsom77vAtf/Hi2GBKddZS5HSXMuyicIgpciXL5Et4EmteS/RORT6f2qW4l\nf2XsRF5IHG/oqtKGXtTUq9tuWlRJ1/6+D9PchQ/OfexgcRTnD3dDXyIXFJ/L\n8NWBcYBTJacpvBNz/sA94xCPPdRj5c2ZRQ5BVTHBgA4GRac+lmfQPCGvEmfr\nw103fxRhpQKvnpHlg2gLIdgbqHom/2eZlfbL9WcspUI4bRVy+W7a4/niuO89\nglgc\r\n=2DVd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFA/8JbFhhhAl+VV4bDIywplkC0XA/45D2/n89e9x1IvAiEAh+GJ6XXGtgwMTvf1i9s4xYzAJQ1hm4Z2xeOo9mDkmus="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.0.0_1617166822536_0.370121709912435"},"_hasShrinkwrap":false},"15.0.1":{"name":"tap","version":"15.0.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@types/react":"^16.9.23","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","import-jsx":"^4.0.0","ink":"^2.7.1","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.0","libtap":"^1.1.1","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^16.12.0","rimraf":"^3.0.0","signal-exit":"^3.0.0","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.4","treport":"^2.0.0","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"4ae3f458d3005e772ce8a099984bd460eba45d62","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.0.1","_nodeVersion":"15.3.0","_npmVersion":"7.7.6","dist":{"integrity":"sha512-vMWv+wZIefkwHX8NARBuQIiGhLAmvZfPZsXW2DCDuBgWnqg7W7T2ZfkC3ELqENgAmc6WDgyCgHrT6wevF3Mw9A==","shasum":"be93fc04a73ee36b25ec846bd66138d4ace6c43c","tarball":"https://registry.npmjs.org/tap/-/tap-15.0.1.tgz","fileCount":3296,"unpackedSize":14224303,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZT4kCRA9TVsSAnZWagAAz9IP/36OLZQLL9+Wa2T2B5NQ\nqLlSxOslyrbJDR0CruQPDn5UmpfAlwA7qMup5DiEZmCRqsnWKgUgErLMXJwH\ndmhPRyO36BQlouupX6VHETkVlk29Q8EHP855kjXdkFGfc4m70PaN725Aq7NO\n2VTXQuly7CHYbiI+Mpi845ffUP8RC3lZEOx03L7/pbNHmM+hzEY2AZ+lIKbJ\nGTyki9M4HWgAy73aBBP728X/I8eAhjKoDVoEoBOyM3Fd3HoLeduvS1pLF8Ns\nGZrx13g67yMudyByhndBPpX+hAihV2gQXpGDh8yURkQ7GmfOIu3lQPfx4gc3\nA/o5NRR+e8P03vofC/HJxyc5Cw+WkT3Xsi0l+bis+sFbglZVVCxDOz2uCtpm\nnkMuqNm6X+ECKWm86Crb9f23vyz9/VHmTPmFzcNZaLkLeqdierGAinayWHgY\njyOvkADrwvQet33r0nmYymMenzkAPnRNB5jERQ+XqO6nVYZWuM9RX2CwqQHU\n3xwO8DgQSy9mvuxTv/uVR8okHfeWShTQM6fOcuEO3LNIp69EFvJ8of9vZrKA\nCMmIx/WC4JZjszY0fCP/ioH2O9V7M8jPkP+dq/ypPLxSbPyEeasCquEG9N3d\nD9XwHimjoSEPz6n4Y/P9Qx5+KNzxSGQNnx1AGPKbOzGcmKCLVHWtJF2Qh9BV\nSDAs\r\n=2aXO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD5utkbLduQ1IfXBL+t6AunM12ATyqHrX8WKgUzCsnXMAIhAKqdJ2aesOaV2WR8/CVVdg1pRC01K6kk/Evc4M074v5Z"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.0.1_1617247779824_0.4260595067101942"},"_hasShrinkwrap":false},"15.0.2":{"name":"tap","version":"15.0.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@types/react":"^16.9.23","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","import-jsx":"^4.0.0","ink":"^2.7.1","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.0","libtap":"^1.1.1","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^16.12.0","rimraf":"^3.0.0","signal-exit":"^3.0.0","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.4","treport":"^2.0.0","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"267b26ea923a5358ecc4a9191e8d4651a3e6fe9f","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.0.2","_nodeVersion":"15.3.0","_npmVersion":"7.7.6","dist":{"integrity":"sha512-HfEahBCFIA/t3YuBZxkgfu9UiLqpOo/ibCs1xgGwJSWNqdmIxF8tiPwmgni+7SlNtmf0jNfYjT2xeatfZ7t/QA==","shasum":"44e6f98829079f27e39c8ca5a56a484fdb8e1a2a","tarball":"https://registry.npmjs.org/tap/-/tap-15.0.2.tgz","fileCount":3296,"unpackedSize":14224310,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJga0xoCRA9TVsSAnZWagAAWoYP/j6MmBbadavC8QFn3Lc3\nCAM1pbDSn/G+TMnUABd4b9HEcoZq5WujGuMX82aJW4JVkWv/83wZpe+b371l\nmm4TPaGO/P2XaUgdXaHqgrdVsCxOu/6FePT7QS33i8Q6xJ8BzCgI0aDkZOfm\niCy4/2O0PA+K4bgTTTRLjaJdk25yagTM6LzdsWEiHGToXkHeZUNiOD08x6+Q\ni33vXoee7ZY8zbnL+FsAj2tSQaN6plPyHCeK3RcFVSFLtJCvEeq0QX0N2m+q\no44iibvw5vzN/Q/J3G2zBC+KC5Cxb4ByznolUd/x7CeMj152Xb2KCLyS2Hai\nN7NqJidhqJieNZAYSRQWDUFnescJN0B6KvT2zUaSyO3MuDuOsYYiBk6SBfpT\nCpZO58/xgBl2zLNjqxsJj7qtETGKsBNw2Oz0M13tM83GKvEIBLAvu1jtd0h8\nWW0TCYkHvDKOdh7M18wz362hcMSb0Z8/vW9PQ2TmmgNhpTyljc7VHBkeMHP7\nVPJJ71xnw1SibiwuP4/9jrO7o/a61nc0EB0AErLfvzHwhD8YHErL1NOGY6Qb\nkLXtYJWgJs7hBlhKTynDtlfpG+ka9JuLWETDfHjf7MvBKeWFtOpnBFS3+34p\nCdVZtvLA46PT8r6rqqMOYfakkVnjDjLDRfcQ9ZL3Ga3LTwYUxdlyWP2DYmjF\nLp0E\r\n=xfv4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEiBAs4QXgOIviL9/SQxRIPaHOe09fdFmmhzGwezqHliAiBYbCskkpFGmo7JOX1nO20rzVgpoPOd0UwJvyytaAWGHA=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.0.2_1617644648106_0.7425868285856962"},"_hasShrinkwrap":false},"15.0.3":{"name":"tap","version":"15.0.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@types/react":"^16.9.23","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","import-jsx":"^4.0.0","ink":"^2.7.1","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.0","libtap":"^1.1.1","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^16.12.0","rimraf":"^3.0.0","signal-exit":"^3.0.0","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.4","treport":"^2.0.0","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"bc1374545d9aea3d5dfb1863ce28d98f8678ee29","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.0.3","_nodeVersion":"15.3.0","_npmVersion":"7.10.0","dist":{"integrity":"sha512-TSsb2SbdudiseTFEFQANJagvTQC0pW0d9+qzt+S8pnBGnas1g+EE2wx8MdfGMPyR9mUZ5pSbAa68Q+DeKAw9iA==","shasum":"861c465eab79f93b0b4cdf4eddd3297b67063c22","tarball":"https://registry.npmjs.org/tap/-/tap-15.0.3.tgz","fileCount":3296,"unpackedSize":14224310,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfhqgCRA9TVsSAnZWagAAVbYQAILmO0MsCDYgBPdFWP0k\nZHx794qdU4BWCAOzipElnDSHRAncIYV9DCGiVPAOx0wy+b3WtG9xMvzhIUf7\ndRbKRKb0UvAMPwZ5d4rpGx4Q2DR6ustVZzPSAfMNRI4G7BcuNNP46hne2J/l\nZ4IKzQbwTSUgRO6Ea8pfmLpEqkz9MZ5XoemKmW8kBVi+69sdMe5pSrbz5C8T\nyCoho/peKvknpho2V7+f/oUcLGe6m2rZRV/9bUD79IUiOXvDUZWBLt0j580A\n5f29BmVKSPfDTGkxUoo0k5RKugtrtFcat1Q5I5AM1niu5iWYqI27p13VwSzw\nf11WqJUl52ekN1J5Y0cJSaOAs44j70KamES6LkwwDjp/YfvXpPbtHAzfzrMd\nGCijILRtetx0bplZfTKgGwHn95ysvbBs5qPd38ieI5rP1PyB0e2SBXVTVOgc\nG6FDS05xRrfjj38EWr8hRlvg+FjvQBdLe5XkxbzXNaOAw+iBDSsSRcCLTqb4\nwcTeo//RAI9+U8v3C9HytXq/2QsQ1UdiYb4zPTuXG/QWyAGTXJaPhjA+0LEK\nWzHQ5d1DzsY5ts/Y0TO/g9jXzuqt7cxZ9qX47GCao3d36F9WVjRWQzukPzSv\n5WITYzFo3AzD6BO4N444Ipq8/HNGe6DgjxucfX8qI8VCPeuFH4Ursi4vQ3l6\nBduv\r\n=MGPF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDJYUWKESU9nEOcigV4qjVD1prcI6ozEQCXuHtMLfmYrAIhAI7GWL/JcnDrRLxYR3UFI56M+Mzq2+ZL2UyxBEM3SnQZ"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.0.3_1618877088052_0.05136270586815295"},"_hasShrinkwrap":false},"15.0.4":{"name":"tap","version":"15.0.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@types/react":"^16.9.23","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","import-jsx":"^4.0.0","ink":"^2.7.1","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.0","libtap":"^1.1.1","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^16.12.0","rimraf":"^3.0.0","signal-exit":"^3.0.0","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.4","treport":"^2.0.1","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"8e405a79be99c54c5da8b92c4e15af0f3a7d358a","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.0.4","_nodeVersion":"16.0.0","_npmVersion":"7.10.0","dist":{"integrity":"sha512-OCOm+CaXU1OleruihHk/9pX3xFYFfwQIEo+mbSsMZTIqG2b8qMrzJ/g3+3cEWx63/2u7SYJQ5/TwmYfFLElHbQ==","shasum":"81131578ac8be071566ef6b99445e6a7f602e157","tarball":"https://registry.npmjs.org/tap/-/tap-15.0.4.tgz","fileCount":3296,"unpackedSize":14224562,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfxeTCRA9TVsSAnZWagAAs2wQAIK1Y+ZAnoDGHnJq6nOt\nnHw17KD8X55q2T8pCqMHtEMQExzzf4YtD2QEnJibGXn2mykZEzHCD/26F0Sy\n8RbBUrDmcdH4yJYS7rxa/LRJUtYlCE4N8qyTq98CwOLWc7vqDJQo1MD6vfEC\nTmnOEobuwzkTf8wzFoghfegoU4cIaDaSSgpkX6k3Z6gyJ7M7qxI4lDz5MuQO\nkuwbBb0h0Em7QCFRBzGcZRv9IfEqs8XNi2koH32b8A7ooNu0cur002kB0QkW\na0yTLc09n5z5E1HLxdv8dj4EWRsmeHC/7nDXWDT14Nrx/m2yszvRbzWwaPiE\nntJ6t2SMT+M/P/PwrqmvTnWah8NZwW4mY3P/KXUtvN/aZP/dkIg+jMgY6zei\nqC32hJWShcexOzMGLpqyRuO2aV5/2xCGQ6mBPiiQ0E3yEnDz6HhuTU1iI4eO\nistxriG/nNIEg7o3QHaUXnHAFkOxcdqTJpyujlcyTd7YOoxaBstjktZio8G0\nOcnpP4+FGSAdjb2PfVVSFM9aIH/jhJIEiQt9PB51NfX6XzGE90xlyHw0qUOC\nUxrLTTU7t60eszcjOil2fhQzU67rmM1/z8v62T2SxEy/VUggxJTTYo1ZsbIg\nt5yO+WqukdKNPd46lBlHOGDORR9hp0/MHx3foZiys5q1VWqHnP8nyIo+K2q3\nA0gx\r\n=JolS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD3qzftin27jqsA50tZxzpyohhQuaWuJJY1W2u2uki2zgIhAMKCkFT4KeBZJgeBrz8Hh/OgBpWaCXuyW1d9MdVI/Kfp"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.0.4_1618941842741_0.3318784250858886"},"_hasShrinkwrap":false},"15.0.5":{"name":"tap","version":"15.0.5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@types/react":"^16.9.23","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","import-jsx":"^4.0.0","ink":"^2.7.1","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.0","libtap":"^1.1.1","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^16.12.0","rimraf":"^3.0.0","signal-exit":"^3.0.0","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.4","treport":"^2.0.1","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"475f0522a72aeb221c30c2cd98fcb16556da5839","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.0.5","_nodeVersion":"16.0.0","_npmVersion":"7.11.1","dist":{"integrity":"sha512-9txwiDv7Sj8e4O15bjWtjSsPSJOiBGFbQj8gW0Wc7GXPXe6Zy46q9Eax71Ez7gAwhElnu7f9qgtfiCYzH8U2/w==","shasum":"b84d8103d3303994c9229425ca461600bba013be","tarball":"https://registry.npmjs.org/tap/-/tap-15.0.5.tgz","fileCount":3288,"unpackedSize":14217603,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgg2NYCRA9TVsSAnZWagAAgpwP/2Urn19TCsLg7bQd6P6p\nE9bNzKpouOIcfa4nXd0MsdMEOrj7VxRvDCUBUyuHotVBwj+rs4QANUMe8BUe\njvhp4PnBvNjV18VgPiz+fKstR5Iwsx1dV7sYCXNw3Bzi9p8dsRxRlZVZ713C\nAaG3xy7xr16BxQVvDDRXi1jFsWW0ceGBYRoftfzVkel4kvrtb69FwwC7IFk2\nnJ6Xz11YnthkFlgGjIg5gl9djloBNWjdoN93hu2epDLk4pRbGKk9AfEwDEzL\npaDS7vuf9W7evyGLrXkLeFJemx7++csr7cUo7MMeq2eakcCng9yJgV8+WwxI\nYd87mUYnzi9LHgcFnb2kUJUmKAjWZ/uFk6FJc7AWmrLn3qRfa+eKkp1M8cgH\nT1m8rnC0nvcD4y11KAXEtyc9LzDTnGLLIM4q5lJbi2cwhiWTCXanBW/lgYRj\n+lOfMY7CNH+GaILfjzRFr0obRml3sEyJyNhghbCXKqgpYxQ0sCmOIhw9vARa\n7X1T8vN3SD9yroe3whhYOeIqMWNkrXDf0DYachzLWclOmHtzSNflLkdEWYZX\nHS1Gz4LIVTs0Cw33fcPbEssrgC5gEwNKlasR721KncpaTQ+VlHnuMssSBaJH\nM/3qI7X02D/AbErfv9mXj9Mk2JrQe/jKXF60dFo7iU1oEW1U0D/8moXN5isr\nxg+Q\r\n=+Gxb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD2+XK6Ln4nx8r5nkujFkMVFQ9Cy9CoON+7WKUGtymxNgIgT23u49YQu5da54Yf9TkoJjKmZ5vVgjOrlQrwZxx568I="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.0.5_1619223383525_0.8795765914939226"},"_hasShrinkwrap":false},"15.0.6":{"name":"tap","version":"15.0.6","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@types/react":"^16.9.23","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","import-jsx":"^4.0.0","ink":"^2.7.1","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.0","libtap":"^1.1.1","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^16.12.0","rimraf":"^3.0.0","signal-exit":"^3.0.0","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.4","treport":"^2.0.1","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"f7c0781c9819760a9e4cfa95ed77b36a6c12f64e","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.0.6","_nodeVersion":"16.0.0","_npmVersion":"7.11.1","dist":{"integrity":"sha512-f3LaBSGgXkwTh17Lj4H4DxKIl4BrDZlmxWHtLVGwl8vx+XxNKvf0qMbeFLVhsVTRVz9E5yTaSUweB00YcO+TMw==","shasum":"d8d5bf1af5485c9d4bb5b4ed3b84dfdca7743006","tarball":"https://registry.npmjs.org/tap/-/tap-15.0.6.tgz","fileCount":3288,"unpackedSize":14217557,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiudQCRA9TVsSAnZWagAAYKYP/182ShCcWb2/Z5GgkbCT\nP06OULXyDhL4SinaAe22Lfxn9KYZGmXC0ctNg4jtjZXGqYApTu+GkxZ02geN\n+rF95xUGTx3gZG+jHIXFIZOPGvoYYZBic2+nQwe4jDnzasl3s9ygNcGzjJTB\nj8x6cJ7cDtEfz2KHOj5ZMCWAnM+pYAedPGr4lgyZW/uWBHWEsHR9kzFmXYLu\nC38ZToqDl7zQz4rlOBloccc4VHT9HlfWtBel8xVegEpJjUhhyuY2u/6CbaiH\nOBgp1OuHOYvEVcK7nLWxHgNsBXNlK28nHwtsPwziQnp94/O6KKA88ONiI0DE\nIJLvQEdgc21hFT0zE1K2i4zc3LSyfXeDXD1/nimd0JwpRk9dnKg7kc0WEVtg\nDElk+mRIyKm9Jgnt66dziywyYEU41YC3dr4scH1HpPx4UyMp/hbwWBbqRznv\nAD/+nzyeNcdT5+UysYyf1X/Gz1+MhGGkcnKe4bAk2jrHoxpeqHsBgavntncR\nCxycVOHHCAiTGHUkuX7lBWitV3wv1ftxeZJilgBUTsg8lCIP2j3Iq7hHKDZX\no4HtLycRwuDuUWZNlTWrK2A4OBhLyKfXbbtFcWBCoGPP5uZvgU0F7RRUDmIR\nQuPHjvN+z9Go7vpfOUDptXelfl01K2TjMh6cJaYFizzFl6zoGD3Fk4lQoplP\neqED\r\n=jOmt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQChmMO+Cmiz+p3VkV2WOzBiOG/gBroHIrsvrcBcaKP6FAIhAKhxGG73+5TvL0QJ9cZZhiOW0LEpG/PviNoCfJQGguEl"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.0.6_1619715920176_0.4519523765456235"},"_hasShrinkwrap":false},"15.0.7":{"name":"tap","version":"15.0.7","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@types/react":"^16.9.23","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","import-jsx":"^4.0.0","ink":"^2.7.1","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.0","libtap":"^1.1.1","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^16.12.0","rimraf":"^3.0.0","signal-exit":"^3.0.0","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.5","treport":"^2.0.1","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"79af49d8c88f93ece879b27cb51ffa2abd3308e6","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.0.7","_nodeVersion":"16.0.0","_npmVersion":"7.11.2","dist":{"integrity":"sha512-tft/4ntmoyHafSK0STbJaDN7bR87aJRBTDilP2lgGivVKeTdbo4BDNaQuMvN0MCCThKqdiXSAg1pF8t9ae0tbA==","shasum":"791ec12a57816b28032db429e0cda4491ed6887a","tarball":"https://registry.npmjs.org/tap/-/tap-15.0.7.tgz","fileCount":2244,"unpackedSize":12863628,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglH7cCRA9TVsSAnZWagAAeEAP/Rs1rUYIJIYXZzVFgYfq\niRPI+TgjnLHZz/cg8QTTGR2GaHwUtgJLTs7GjMDZQ3dwvKaQHIUdMCWAwsMi\nAp3FANBPUPS4IBI6aA0YZ+2inPNvcEljuCVKk/sm9Crz6qZNXkeLNGYDb2UD\ndtxRKl2vFH2mflmPdhg1e5A6wHlazcPev/DZa+sJcdDMV+y3E+GZQwsnnKjp\nL6xNuABENqA9rkyObaWNszjl5rGMng+fgX6YgRLO+Mu3z95zzL5PZXs3E+QD\nooK1+4+6S57yuNY4UFVmn9euomcCP7ImsKpVhAqChXfo19Xs3IS0QnvSv/4O\nSB6+xf/+iR2F/54odJGsEM5Fb48yucwbIRpNHuprZO0ruix/rfVSk4xmUYRZ\ndupmmvRODu15ZwJveptD8ySPXY6aTO3Bm3oo6W6ZDjIZZaQFMLH31Pkfrcoa\nremMjc9NSLA0KMvVy3kDsxA5Widr9wHDV16dR7sXJeHq7Q/QW709A7rlQVnE\nQ2eDBS5zrZJs0mNhajZxMCNaXeZFXNWtWrpsVXI2An3aP7/M8utEnLh66TFu\n+aPUDvI0lRjE2XTSZcUiwpoC5BoZVuI9nnJhTxbgfAuZKjMx6FZWvJjkUS6+\n2jlD54VfdVzgMqxTcpOzwf5N0PIftSeKo39d3bk5e8XBLLf+TbQ8G2io5lNb\nsGZ7\r\n=Xi2d\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCGj25YOQHY59XM0bMUCrsCRXoVRXt6bb63A+uQEgsagAIhANnVAOual4/9m3Mzq3oabgtnh94eQZp6bCcJek2hji/G"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.0.7_1620344540257_0.9065493482180256"},"_hasShrinkwrap":false},"15.0.8":{"name":"tap","version":"15.0.8","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@types/react":"^16.9.23","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","import-jsx":"^4.0.0","ink":"^2.7.1","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.0","libtap":"^1.1.1","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^16.12.0","rimraf":"^3.0.0","signal-exit":"^3.0.0","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.5","treport":"^2.0.2","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"0906b78a2aa292c5bf3d9165c097cbb243fca86b","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.0.8","_nodeVersion":"16.0.0","_npmVersion":"7.11.2","dist":{"integrity":"sha512-PCxlvCcnTZHPNwrUB+8M+4xuxu+zyvc7dMxPFDgv03XeXb7wE8c9EThsWtI/ZuKTzj+0i8WChDDBGmDJ/YJoQQ==","shasum":"05638fd5384ecf1027c843c5aa044245f566e931","tarball":"https://registry.npmjs.org/tap/-/tap-15.0.8.tgz","fileCount":2244,"unpackedSize":12863650,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglIOnCRA9TVsSAnZWagAA70oP/32oGiDx/lGfy6npHTFk\nrd0qzTixKUJ7V4hY/tEYnUVjk+u+vN/Z1Mby9PuQSNjp0y24HnuM+OoeXh0r\nc6PcJyL2D+jyvQXt+K6U/SHtBYQT/V0IPQAxcVjINqxGG3UeInn68wt2Wo1E\nvV7W2vnalkGqD11QYomvWdFPRBrELxFcya57HbRGR/2PgqErfhrfikFYo/T+\nQR/IiYQEZHTjYMCCyiVSYx6vef2bLX/ri5SVWP7AIr4Lxiw1bW42gCUMPuKz\nQed5Nz5YFLJvUum/Usvuv2ZX+OCVNRcqOEtIR0K+PDoLt3wsMjJyrDAmLJHD\nFaH+/p0QrM0e0hEhw201Bs9J4R2oYRWT/iXn4rhjLJTCSaQXF7ngZ73ikHqM\nX2ZUpTnc4ZbHwnlR1BnENJ1x6zFvjGlyYoJx+lHhYXGWw3XJDAvMfy1y2NCz\nRGHyS/i7jmEKfB+Tw3YPQq4CVAhpGG6JVI5V8L9gD9Sh5fKZD+8zHOYkFZTO\nesem/tPEEK7QVKlKPn1G3ZZFrd/StpRNysluGyLZLl6vpy26+10C04JzZSaU\nCE4nPlB61eN7SUw/G0B4vdyxDsOk23jiw1mwa0EIrCYx3TMUFbAOSSRNG1Sb\nkWfu5aBUmjyJ2KbJricgQatmCgdjB8Lenx+6nd0YytzFTP//2+ws0bZT0LIh\n8lXo\r\n=uLI6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDl9NcmztWdFOhirB6/xs3aw74dg/58YSc6t51sOKccdgIhANH4ZFvPNCpMtPPAnQ7vi6lSQuSmv1MJJM0DyIStQgK2"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.0.8_1620345766568_0.042786403931597716"},"_hasShrinkwrap":false},"15.0.9":{"name":"tap","version":"15.0.9","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@types/react":"^16.9.23","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","import-jsx":"^4.0.0","ink":"^2.7.1","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.0","libtap":"^1.1.1","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^16.12.0","rimraf":"^3.0.0","signal-exit":"^3.0.0","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.6","treport":"^2.0.2","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"4dbac3861ced7a12a3c61b3df259ce1d8a1e87a9","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.0.9","_nodeVersion":"16.0.0","_npmVersion":"7.11.2","dist":{"integrity":"sha512-bqY5SxEqYKRd37PIUfKBf9HMs/hklyl/fGXkuStr9rYTIGa0/icpSLsm6IVOmx2qT0/TliPNJ6OvS5kddJYHdg==","shasum":"21347a789e88798a94aa151d25ea1c92d04c27ef","tarball":"https://registry.npmjs.org/tap/-/tap-15.0.9.tgz","fileCount":2244,"unpackedSize":12863650,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglIb/CRA9TVsSAnZWagAAMMEP/i9hR3qR/ivPhhaEsrw9\nPAZcoHC3NM00hExCh2h9tyM5DgstTeq0hcnV/rDs+/tY3qG6Uqvs+E376Ubt\nRE0Rd5W1534N5fZY2nkNIOirY9kD3O57h5iNDBfDKmsgI0XxZmnX2z0UG39P\nqkncpLDYjU+9blv6so2GbSE8CuUsb00fjNxL9kEIJfvrhkH805mom/ZcWrpP\njS9cjsx6065H5zc8dYHoCyayC4x66vKNx2OlknIP8WwWXA7oJRDs+PPqKVFA\nsd0aztXdr78Q6jn/djLHRcGT1dChYagtft1avnN9Lb8HiucWO6Q0Y7nF1H2W\nYawX0H5dCvlzebEI3oznCTwBCHrek0xRhar6cfaSFuTwnkBViBfSwdq5rC8+\nV1u5HuVmcMg9E2WMLRAnHfTp4z0N7XGEUblfE3WKeE3lB+nHsQ/mIwf7Au2S\nGXB6LFXTqKAbo32xd6ec217pUy5gjBeFUxU+p9EMoA5/3sKRmdSTTxW0ShAX\nHSg/Y5BKHoIgMyQvsAX4s0bb99O/T32iSbFAUprJgs5waYZjirriH0C9j1uD\nMAec0M3yczR+iE0yl+tKcvQCtgKlF09HzbXr2tPsT7xw53yehDKuwhEZSHFy\n9ozAhoCMGcrgW+0qSMx8yJKfCk9FrZgLd33wauN4GTey5Ribo5QyqUgMWFHk\nfNJJ\r\n=9HJM\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCrLn9S831ALjZ79+QiN7v1jfQVuKfl5LF3HSg7jJp7OAIhAN4KblNGlP6FZiu0toYOMzupAwCdJnQDtQRrxqT2+l2Y"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.0.9_1620346622264_0.8377752523122133"},"_hasShrinkwrap":false},"15.0.10":{"name":"tap","version":"15.0.10","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@types/react":"*","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","import-jsx":"^4.0.0","ink":"*","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.0","libtap":"^1.1.3","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^16.12.0","rimraf":"^3.0.0","signal-exit":"^3.0.0","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.6","treport":"*","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"7c33ee552159d466f4512e833cba313fe1ffcad8","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.0.10","_nodeVersion":"16.5.0","_npmVersion":"7.23.0","dist":{"integrity":"sha512-8aq4j+1JUOlXyffLX7ZJxhe9KAxV3s7PsdWAm3XwfoWc/OiFyAMcv4+T0/5/65gBxOVAPLpxH8ecfDkYTA2BCQ==","shasum":"5da9c7a9b7fb4f4ccdbd5c4d72580dcf3c24dc89","tarball":"https://registry.npmjs.org/tap/-/tap-15.0.10.tgz","fileCount":2240,"unpackedSize":12858923,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC3szfDG5o19jItvLGYeI1b3vHwiuBL3g8qCRQi67ox4gIgZyuV737zeDp2DrzFCpiXNZXzpaqyEj9KE800ptl69x4="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.0.10_1632266944252_0.0014113186865902794"},"_hasShrinkwrap":false},"15.1.0":{"name":"tap","version":"15.1.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@types/react":"*","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","import-jsx":"github:isaacs/import-jsx","ink":"*","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.1","libtap":"^1.1.3","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^17.0.2","rimraf":"^3.0.0","signal-exit":"^3.0.0","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.6","treport":"*","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"aa73aa722d74abf6885f2e1c87a7254296644d44","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.1.0","_nodeVersion":"17.1.0","_npmVersion":"8.1.3","dist":{"integrity":"sha512-ZIpbdhyUee5iFEhsrMaxxnJMt3BunJEsstaVc5zZLV4ndv66SBresnDxLbZzE786Q1HKpiLsX6/jp+7nz6KCIg==","shasum":"2d5dc2aea3a4f6ac9893fb3517422bb7fdb40ff3","tarball":"https://registry.npmjs.org/tap/-/tap-15.1.0.tgz","fileCount":3384,"unpackedSize":28042240,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhlCZrCRA9TVsSAnZWagAAbXIP/R5H+jGHfrUhe3IL8E8A\n5uSzJp51kZRKRsSba7GH3T233htZOHQpQTFSJVNrVKVQQOxUXxflP4SgLDoI\nUC+eE/uxSlmA3hBDr04xzeByD96R5q0MJcuqswzgf+9zXF98CdmiiUeg+N/i\nfgZCN9wk4MW/DVeraPJV2n4OeCDimFlTJM1vExK6p8EqUvT6gW/HwigbxQKF\nlojalw3iNkNmQzYsAMQlsiUlh+o0w4iHcvXefKS1g6uVJ3tfFdxuwmzAAnJ9\nyTuwXMgKQVo9ZDkkOvSmy3SNAIj4NS4tiKzCzRNrgeXX66f/j5Wbf4Fx/ZM5\ntjFzSEiVzQ1rB13nsVDJ2WzZlL4W7T9dKTiBpAtWVnzWmaTAs81PhkWx2Bc2\nfKBNPkHkggmdfzq611V4m47cOei+BURJ7sTEwJepgYqWYjM7LmE5NCft6G6c\nK1TP6rY2gBNUTaFormuH19Rh9Lb+MmtpfsR0fbrSVuQ/k6tjk4Lnxv7GgvMm\nQ2Js0huO1cov+m98z3mlmtsFXEBOvTkbR2OMTyP9XTzpQAeOhfc5d1gnwlyG\n1CnlG4VbWPBMlfkj0UeBOsgO+Q7lKysyhNcB368dAVOsvqcqviYU/NnToSKs\nRqnfVjTZx9wwVMB5YHJU4uOYLb5EzvVDuRyBqkksOqQxabhSess242413PGA\nX3nS\r\n=1k9M\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDj7arG4hqhxB+dE4oo3UhKnIhltQENOFrOtqVR0ONuoAIhAKoTQNPsyCgnsQBzSmmlUCE7Gywqkd8/hTXUtvJP/uSS"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.1.0_1637099115152_0.5007083026281809"},"_hasShrinkwrap":false},"15.1.1":{"name":"tap","version":"15.1.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@types/react":"*","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","import-jsx":"*","ink":"*","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.1","libtap":"^1.1.3","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"*","rimraf":"^3.0.0","signal-exit":"^3.0.0","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.6","treport":"*","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"988152cb22a6fc2b55e6e6779964c690c672f4c8","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.1.1","_nodeVersion":"17.1.0","_npmVersion":"8.1.3","dist":{"integrity":"sha512-7g9WaBK8Cp3f3Ry+OFTwhDjnEjJGGsylOT3V7N+hcONYgSpnhbgVp9ZIyAt++YTwBkRrE/6NxKCCf0MbSiToCg==","shasum":"73900bf64086012a927898ba092103f39b5a8146","tarball":"https://registry.npmjs.org/tap/-/tap-15.1.1.tgz","fileCount":3402,"unpackedSize":28333398,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhlFEKCRA9TVsSAnZWagAAXtMP+QEMejAg9OxyFc6x5jJL\nTzAoAsiFsEByPne1eCHB0M7FfkfPEIRN/Wb53vfZjb/XVNpXxyTNbNBn7KPZ\nmBEIF0//Cx9YjhkFZrAzuwmlF/Oj3g1SHqYl9EtSvwqqAHYjjaEJBAULy28L\n+V7e5f4CiOKy/bKielm0hIzKs4TbXfxvjkdrX1gdMN9FEJQlbxasv8rD0+74\nIBhaoQYELy/sAobMNR353tPA3IKiqNALkgsVLvXR/X0FP3vHRgYe4qg/JV34\nSyCZakvfhnQE9ZHf6FdXIANW9mFzAd2ziXwjyKrxs79lAMymQtE0vFigLnvR\n42+KG4ErkQJcCQYWeWmG4UxxGrorq/7wk4jsBFM9N4Qx7aZcR1NmU25/8fS3\nALKlUGqcgI9AWb3La9P8CZxuMnqbGnmm5+ldWRT0b+4bFEM2THn9wp3D9/01\n3/DLqghf/bjaRM90NX9Ufv+y4EcRG9aqnzJqKbwzyoywhyAXgoddUkYrZBOb\nYxWk3O/fhdWbckmpMXXwg6a6zOJ9Dg8205n++05z2V0MqeSUokAC7CIYHjE8\nyYHpWAgw8elpMs7zIXH/HQVaWH+guZb/Obg6g25Ao0Z/w5APuI45Qs60YLOS\ntmBGFeay8NqTvmZkSSuOecsgphBmKjnS3yOiy0ZQybW38N9vaDp+j/D97A2V\nYk9v\r\n=jwFN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFsouiW8sd1Zf3q7IJ1RVB17Ijvd3Chg+jY/RkSYY/Z/AiBeGurmlCdUYicwiCF7w5BJT5Aa9Bsbq9GHy/fBBWcVPA=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.1.1_1637110026343_0.7472373988127472"},"_hasShrinkwrap":false},"15.1.2":{"name":"tap","version":"15.1.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@types/react":"*","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","import-jsx":"*","ink":"*","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.1","libtap":"^1.1.3","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"*","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.6","treport":"*","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"1ff75c786cb987d20f7ab17e731fb0f62899fd42","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.1.2","_nodeVersion":"16.5.0","_npmVersion":"8.1.3","dist":{"integrity":"sha512-32FftTGFDnWs6/mcaLm2d6AZ1kMq94w8ybhpnwL4CZYtWIHcp6FyT+NFaZZcajI8NqSXCYku88PMEDMY6vykEw==","shasum":"f42b7cd7db3acc86262f75cd096c0f05fb2ebfbe","tarball":"https://registry.npmjs.org/tap/-/tap-15.1.2.tgz","fileCount":3402,"unpackedSize":28334093,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhloZMCRA9TVsSAnZWagAAE7IP/1ww7k/y1TaIR21ASydD\nBVv5Eaqu0FKLnkD0xhXyYxO/aPg+SnyN1sRH2nGchkxnfs0oZGd6nRvUhd8O\nWIeZ/1080/OAYzg1IfBIrRmmxEeQMn18L0g32hsaFJ6fSmKFvFJkOiI49TCe\nR+/YS4VtpBRTvJn6CbvEyXQ7/MHk89JwvjlVBfrfvkn11JUeXXa7OZ3gWLe8\n2UpHT7fUXjNJUzFlfDaY8BkSVKOimAXJtT/ojcjQ6ULVZaxPCwizcVhEni7G\nkmbuYNwNGrDf+HPst34QGSkjDUtO84yRNkQ97nbVMlk4uBrfUDtICK9pXyXe\nwYa5nkW6MlR68JLV1Hj2A4BCg/LLt2LtNdOtDLt7pq+9KiF1qaBRqRfQL5hD\nEBuKsY0WfpToZQdA5dQUiC9GME7uDI0Ni2Ir7VngqUBqljv9DIUk5FS2lx5s\nj5lCU4XFs0CaGt/qkybkBANl+cAWwKgPJacLj0p7PB7ALZxm+V2F4H5LK4Qt\nEg0uDLnnvqDkb9jA/pK5R3fctlb5HEEnCPJlpUX7SFMTG+aRSA3tB0zO0nt+\n1ypb5AJg+NPp6iyjDZoO0nyPDA38kwTtkusKgsYH3MqsMGop5NY5pmDr4E9d\n9lE0Iq3IOXN2m+sRoeCqOnPSmPZeuAqQ0dOc+Ywqr1KQd1hTFBT3gpZnuO7a\nuQbG\r\n=tTEO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEf/ZbV6qE4W0b9GWn3vLT5CPpH3KLCGYAS3FMrIqmD/AiEA12GbtEoGAjWnNdR/dk7yVOr9LmzsSEV/9cxkySaAdhI="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.1.2_1637254732020_0.5176933985900891"},"_hasShrinkwrap":false},"15.1.3":{"name":"tap","version":"15.1.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@isaacs/import-jsx":"*","@types/react":"*","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","ink":"*","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.1","libtap":"^1.1.3","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"*","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.6","treport":"*","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"b47d3c79de132762861cbd9448b93c15c89a1f70","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.1.3","_nodeVersion":"16.5.0","_npmVersion":"8.1.3","dist":{"integrity":"sha512-VL9zHknZjXnWxPxVnDGyNHkmPtYIG4YJXfS0BIUjanhy8B1y/GXGPsAlRyxcWJll8JNPZrtGXxRspOWn3xndRA==","shasum":"b5d53e4aad8269205b56700088a4335a7b732366","tarball":"https://registry.npmjs.org/tap/-/tap-15.1.3.tgz","fileCount":3423,"unpackedSize":28357858,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoQoCCRA9TVsSAnZWagAAP4UP/RrANjYVUjBayniz54+M\nGbA8/7/xWJ0bAhskhykoKyWv0Qh7gaMPjaoRCpXseiaPv42s+Al0ERgi8O6/\npUDseQtcGTmAYjYtB1e0USO1L4IeJg7ex3MWu9Bfli4sJo2eRC3O0/9YKIuq\n3NLV0vy6w7WUB3U/is8MLTqBxn2xeQ6tjAB+jOAgtVkJ15g9cXATeaA6ro0p\n74nCMj4Ub2vq7rRbAjbgyUh287JGoBec6bJvkq/kDo/xBu4DyMhflFL2pTNz\npOidgx108PyIsnn5NFfQXrgOyGMV6HqZ/+QDXpg/u9eodufeg9RIZj/zI1KQ\nJiaeS6POA8AOn7U4iY/ARppxHXgvA+xO7W7i6VOxzA0w+CbpndvvfE5ou1UA\nKcVZKUym1T3aUl7v6lbeVQxY+BsbaPWoM337seU8ydTCvSRnzJVPWwxUel7q\nK0dCxsfgYIbd3WeMU0OlaH5lPDjlXDS/V1IcFVsWNN0LASQYOd73FIajGcQC\nv1gvbAKETUKAMJ3/lKGX91aaH4tQNZ1T6Iwh7/wSae5+DOxOWdkOciZ2HbQE\n7sfEWjU/ggLuNEuozt16cHd670//imEwxM0owF5RojMcQt1rY2mx7Y08AI4Y\nTYaxTIyjNZ+CoISNaXZ5a1QCyYtAvO+UW7XCbz05Z3qisE8ckstEdEfFK5J+\nBgM1\r\n=+nAa\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCdm2leQXoIbFzTGPknfzS8hVbK3INnny/SaCskhKHmXwIhAKF4EyUQhHexGV5FPSs1lYlPRM+id4mT//tBLBM5Nwgq"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.1.3_1637943810484_0.3518656665879343"},"_hasShrinkwrap":false},"15.1.4":{"name":"tap","version":"15.1.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@isaacs/import-jsx":"*","@types/react":"*","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","ink":"*","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.1","libtap":"^1.1.3","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"*","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.6","treport":"*","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"4abe6860b6d6495fc4e0ac1a2161ac12d77416b6","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.1.4","_nodeVersion":"16.5.0","_npmVersion":"8.1.3","dist":{"integrity":"sha512-zxN7Wp9/CAxRpiELCwUeOcH5ePXCvZ+FW1uhPDMg6CStvjNh+R/PnNykdRXnfayuvAH3dlRfP041rgpAeSL8/Q==","shasum":"76d32f8d04cf53c374ef41d76c39d49a870d1f39","tarball":"https://registry.npmjs.org/tap/-/tap-15.1.4.tgz","fileCount":3405,"unpackedSize":28339671,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoQq2CRA9TVsSAnZWagAA6yoP/jPKzedS+x1AZ4o20ccu\nV4fEC66LYs4q9Ju0O+NaAxSdlSfH4tOHVg8XDxyebIqBmqAyrt0nI+Qt4jUv\nnr6rwSi6N0wBQQHS7VCv+kCnhby+lxZK3NzgpdxAlOy4cGall0bot7XlxF7M\nLKwdbv40oMDQrmS1lx9fD/vWbgVbj+3MK8zX3RwHamTDinpw2Fht1OSyC05B\nB9pqGmrZsBc+FDMe7B7MK0kfmx1Sxp+CEYbO0DMDEO/iYAKcLhnHexCMIaEl\n/v7wcbWTEZz1/UJ8VBAIlYz/7wq/KYZmEJ6OhhYArj6h2JAGoinNtoMgunwP\n4uKpIoBpI4ZoMN4AqvHmVK5VYTvzq6j7OFxyzFpkKLOoJni/h7GwSDO3f5Td\naaj+kQPafVLE1XaEQ+6vQUcEZZxeG3H7spygAMBZ+E9bSQbGxcAirpg17ZlI\nPU7mARG6tF/cggF21pF4CZfklGTUe8UrP7lMGZNXHHuJQYKMA/GmbVNfXHSo\nLl4UoALwGRaTo6fir/HYzquM3GI9Tfe8m1ZYNHVohiI/mmn7hNWsqYISfLY2\nCpApcsgZHOTHmK7g5D2xQJaUGhVNAKLoB9+tjkC05uON2NNGpV6MD5jUgKLZ\ndrdVedh+RsnV3lYYQnDgiZuxgP5PJgH6z/Cn7T7B+XAECv2oIhbT/TgouaJ0\nK55r\r\n=8nF6\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCL526ETTWJh/uunI9V1T6SNiv2egPBiEdloyvgC1GN2QIgDI6mlfWDeISawMrTOoUCaTM7xjkrxffh9TvN6PnKGmc="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.1.4_1637943990120_0.32170856912128"},"_hasShrinkwrap":false},"15.1.5":{"name":"tap","version":"15.1.5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@isaacs/import-jsx":"*","@types/react":"*","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","ink":"*","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.1","libtap":"^1.1.3","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"*","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.6","treport":"*","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"b070c0d202e83e08b8628f0a67182d80954102e3","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.1.5","_nodeVersion":"16.5.0","_npmVersion":"8.1.3","dist":{"integrity":"sha512-ha9ify0cagIOENV5D+T8ys+FFOWqPaWAKk66hjtUWjywXdGmnL8LRxloZa8sHiaB+Az1GYx4ufEaflOpedSCbQ==","shasum":"be44fb6571cefeae1aff9d7dbc9c030eb0a59093","tarball":"https://registry.npmjs.org/tap/-/tap-15.1.5.tgz","fileCount":3405,"unpackedSize":28339679,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoTxMCRA9TVsSAnZWagAAtLUP/0ahS7RdNHu61a03JFDo\nk8Ivix4f81EPlUBV+VCi/ffgi/KMXlEoaC+4CxQySGzhGiXRYajVN3LGECCm\nVQ0/ydJHYFTCZ3RP7PHPP4NLs8+/76nqD1MkEBe6Ek/zk3T9+ISmubFu/7Bd\nNhTpVkhUuurGwYAZ3M5huNmxjW0DhfUNSYQvJg78XzrQN/bF3yLf57fW8G8U\nsbvbaZmvNwmgCz89Z9UobSfl1CP7abTDv3rwp9nB8m9kGXIU5sraqUfKGrPp\nZzW0LDQN82BAAeE8ndyak+R75Jvr/mFBuvxt7xdxl+KD6GdCQbZHKzeBKZMg\n80+SWZNBzv24zoWk6wiokIfUj8h0ID0FmSPyYKdbaaCG2gy4PG0sLvuIGdQp\ne6xjs3sPKJ8WygHflVHUYyvesWP9Ov/QNNBFbHoz4im1TUXMgLN06uCia5Et\nxrOVTz+y00+SRysoypZIeRglyCtX5g6EpE7QBc4XD12jUC2X7s13oDhc9/zD\nvxjw+uVcJIoN50hl9VBHq24j1c/nE+M5ZIUoN4wiwA2qmHWT47oxmDS7PI4w\nhooqfwkTlTaNo7nyORzN89yb18W2/6iivaQVV6z5wkmgnBhMOpSzwJ70pje5\nxtKJ3FQfeckeqFF4DOm4mVF/vUkLPsd3zKYmJ0BwBmczDOO0l+3qw6jzzlk5\nCcDU\r\n=Lwbm\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDB8ZkP0m9BgSmjnJjIK14W8kKI8j0StXmAiqk1hEyyhgIhAMlJinFMfvgUurTRd/uhpy5ERh5mmmirDCkrvDeXv0lk"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.1.5_1637956684506_0.25490060068878373"},"_hasShrinkwrap":false},"15.1.6":{"name":"tap","version":"15.1.6","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@isaacs/import-jsx":"*","@types/react":"*","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","ink":"*","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.1","libtap":"^1.1.4","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"*","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.0","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.7","treport":"*","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"c2378efc91c4f7e7a6839d8236813fc0a4ffa519","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.1.6","_nodeVersion":"16.5.0","_npmVersion":"8.2.0","dist":{"integrity":"sha512-TN7xH6Q2tUPTd6qwmkhuFJcx1vUR8e4dDUpBKc61G0krOzne7Ia6aKIFb8O/0kVazachSSuVME1V8nQ2xwWL8w==","shasum":"dc393e17bead934a2ee734d6124928694f2da2db","tarball":"https://registry.npmjs.org/tap/-/tap-15.1.6.tgz","fileCount":3405,"unpackedSize":28339679,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh05VWCRA9TVsSAnZWagAAf7AQAIa4/jgMsTbdaLRZTrK0\nqjXdQtR5l0NIijHMHnXUljgcxdavT/mzY5xyTobL9NmP3/LPadYwe6AOVDth\nGQBuxERfzYIRn+/rFKcAlWzBeqRQ/gYq6Pq0+nVP+3bLY/T+2/UublajH3T1\ns4t5OYCmx09ZVnMP7xiz8Lm0j/3q3onWchSuxWKFN4suvzdznSjY2mNyLUAq\nzOB81+sYeBFV5WAmdryP3tg/6EegMwayjI4eSaVW5vOcO+TrmIrl2gVGLpuz\nu6Y6mADo+TVyVav1KNiWoH3CAfzLlKQcfC2i3BoZLTDgP6l6XDSSPqgtBw1+\neOg6emCckRjK0aWS0DvOOe/bm5b3xWe+PkPzlrf++QYnNiERbIDq/0zv2/vA\ncJtz8sFM92u0+8caDEwITu+7sux77HSidiUF618SxtRE0leiFxxTyE6l2+B8\n/MrGK/lD9yg79C9NUhIV6hE3qo3jL7Si+TDd23hCwtgJSyTzNrya2uOgmDYm\nIKRJ4AJxr/U9jhWon//L2hB8a11GmpZ8OXR12P+XMWb0q2Cd7iCEY6X11zSP\nkj3NlILNh0qQAaz/3a7vuPsjFPNPRihi5VuVbJJWGmOmRLszE+G8BFzaTzEk\nS/NQo8jJC8YPikm69ufgBUBtYo1zwisnKb7izA34mV3H76ICeiZBbr3pIWhf\nYjTO\r\n=LI+a\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAzJo7NUeEMEbJGVEBjrET9VxAljlBAg1dC2Cz8ze0fqAiBMTh0ebtnscdt6LsSnUrm3yZaqa4AbX6advN8PK5VIFg=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.1.6_1641256277694_0.739274868169389"},"_hasShrinkwrap":false},"15.2.0":{"name":"tap","version":"15.2.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@isaacs/import-jsx":"*","@types/react":"*","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","ink":"*","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.1","libtap":"^1.2.0","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"*","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.2","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.7","treport":"*","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"a194430968765a96dd7fff9e2f268e39f555072b","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.2.0","_nodeVersion":"17.6.0","_npmVersion":"8.5.1","dist":{"integrity":"sha512-R4KMM4XFjbzh32Q0rxj+Lf1KpZqeyw0lOsAlK+0oUYuWxP6TEiUfAyzw1Kg3Uzu/WDXLw3nSNhg+sgU2UPcnsQ==","shasum":"7b9a72f28d7ec594b301039d166afa8337d3462b","tarball":"https://registry.npmjs.org/tap/-/tap-15.2.0.tgz","fileCount":3405,"unpackedSize":28339760,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiItPIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpirhAAjcVDTZDAc3kUwPa4akS53JLFeXgkyxLkMP1L44QV1cBYKD6n\r\nLJIVjCC+8tskdVpRpL10lgL3hAv1aTaH0h6ZfIrTlaGG7B0v+IHasrqvdLfr\r\npkQIiuJJzBt2nB+csvrdXJTm0S5VK1NIdFWS+E6gUDfKEC7iFR2Xu84fd9dK\r\ntI/aVODhTtPknSf3Bs2VUJ8KNMezSgqNWXNg9Hi5PpFIpdoNm787TnUolAiN\r\nFgDqqDwK3qcekjxqJoKxZ4/m+ptyyHn4MmIV/uGGUPwCMCIbxPdlbdF5swOA\r\nfnQcii6NEDpJN+u3mUl/AnMyDCJ3z8zLzMSRs7VfoAzwVBfFt5Xt4bsTx51m\r\ni0sWg/9Sk1DK4dGbWDNAPMkm/aEHik3HWSUEvgZQ5ZJ/lKX2pqB8nhvQM+kF\r\nbuR+/VKEQVzJbFCgtapa7hRygc5OGbt/Ph7Va9YcrfWE3kNpc3cyquJs/Qwl\r\nNVmg2kp43A3Ro1MGCS9POwmNtZlzHSYzBPyCNxa0hXlOyIllrwG7HhL7Cqil\r\nFsY6KBCZrQVXsVyGxuX4exY8ZhBjykVNV7Ic2XJ6Ffww6U9FuL9dsJ/cGmnS\r\n/7MRyhxdov14W34pWV/gMOG6us76eBqBNnUgtJ19IxobXhvLKnXwTYtY75Bq\r\nEqw5KgV3d0n8bh/sygcQmjyHuXVUWonTqFE=\r\n=TWcn\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHHOzCi0HKE5TRhj/2SKb9+owMX1ZnbcSxPs4M7NZsLqAiEA6P2vg/+M+QmCjbRaq0qPB024s1dxwCyRMqAJFXAbojk="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.2.0_1646449608485_0.5906525721152815"},"_hasShrinkwrap":false},"15.2.1":{"name":"tap","version":"15.2.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@isaacs/import-jsx":"*","@types/react":"*","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","ink":"*","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.1","libtap":"^1.2.1","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"*","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.2","tap-parser":"^10.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.7","treport":"*","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"dde502a478ca7ab385b499ced9ab8fd6b02c4d34","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.2.1","_nodeVersion":"17.6.0","_npmVersion":"8.5.3","dist":{"integrity":"sha512-4KGB35b5GWDbVxKY9qfTQgJJ95jPc8WIKkQno5EE7sLwSQCQC9ica3GtUyXuhnyGbYiuMeSrWg2kQ95j5APlNA==","shasum":"9fc2228103660cce61b6ae272d212843c00e13db","tarball":"https://registry.npmjs.org/tap/-/tap-15.2.1.tgz","fileCount":3405,"unpackedSize":28339760,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiIvZ3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpiKw/8DZrDv0rnIYhpDRkjHvCYKLMQf/euzgoHQYEx+99vOTZ2oqXO\r\nmNxFpwruTwjMhhr/FeEKAC32dG+Qf92NeBWcVRT2CqXzfPx5JOduMx2wc5hB\r\nToY2XRb6uERJA+pYQVfWTIfJNL7K4MzE0zl2vjnf3bHCb3jl6pgjXKR4R6Py\r\n1DcuCGj8ElR/ZMxWSgQ2OxvTwAseDdY6ocjI1VAYCq6PN32IyQsCtNHdIC9T\r\nqV5++b7AJjGY5bS9sD2LoEpK6rgYKgGHig6/VSXHCx21SzZ252/4AKzGAavj\r\n1mshG7Z/pbYcKOB2grvzq8F4XFDnXqQf+8IyrRA+M9Uu+HEFxz5dPRre3jNC\r\nUoKE4CoKjx/kjbNZ9LkGlhVnA3cc+IvtNp2pKJKsbKE4vlov6m4PwN+RD7N5\r\ne4C9a+lf+YWneRrXbRRxvXXEOAEV8dFohzWj3+exjYq3d68D6iOL29Oy1sbg\r\n0+gXOrXMT/btlZhrnCodwcvrJQ+P8MMPMzOre1f6y/Jwy1mt9HcO1lvBjoji\r\njWkbK4rolJTnUTd0W7L7WPC40utXO+WXT6s6kmJXl5BB2KwfKCOxVsVQ+Rbr\r\n+Ps6GDcVh04s+N550YvtORoQJXXGJt2rXYtaGNnu1Zmjeg7cmko57wwGYXcl\r\nbHEGpqLrLdD0zOIcPtxuAVutqXQdEX5eTOE=\r\n=6T7c\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAvnRK9v3CsMZZE+aC2Cl0q4kMKLUwn+f9aSySnTfWrtAiBDoCjnoHX9LHDvM2R11dfQ6I39E5WgbNwTB8JInlZ5jg=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.2.1_1646458487187_0.5291897087769308"},"_hasShrinkwrap":false},"15.2.2":{"name":"tap","version":"15.2.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@isaacs/import-jsx":"*","@types/react":"*","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","ink":"*","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.1","libtap":"^1.2.2","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"*","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.3","tap-parser":"^11.0.0","tap-yaml":"^1.0.0","tcompare":"^5.0.7","treport":"*","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"d1500b6b3ad495e89041e866bd7e6eddc5140db8","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.2.2","_nodeVersion":"17.6.0","_npmVersion":"8.5.3","dist":{"integrity":"sha512-MWU8vdFfTAWlVw73bNDgGCzZ6zHFEOprd2eywAsLJLTtr4IKjk4wWG5Qh8x2zJipKA2hEzxANqS2mJ+k2YMBbQ==","shasum":"45ff2f696db3119088974d37f5b1f77aaeab2424","tarball":"https://registry.npmjs.org/tap/-/tap-15.2.2.tgz","fileCount":3405,"unpackedSize":28340551,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiIweaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqiCg//YSXNnbFYKsT7/qSCkPiuwX7h8vd6x2Rdj00nbCB/SQuWXbqy\r\nldPEP31TVL2PBbrDcDtcnQMQEj/m/nPpLUGQgY4OHOCfUWNsnwj16JCT5+rF\r\noE96EnXJP86XJhwWTjC31eUt+7K3HthbKIgJ9O8je5j4IHuZ1V4gVmZPau0h\r\nSUyjwCxIJnCIh6fJbwggYaru9aFN2g4oTJShzeCxHf+VTtmsfF+Mu+Gof4Yz\r\nKQqMXI38J1t0yUDo1CCsQnve/t471HfgeogAH2gBHOmWM3Jf87h6+NP8sABx\r\nw1f0aWp6UCDupVaj8OzLXKDS6OYeD3QT7s/1GPUiAGHE4cnAzot6VbJz8wGz\r\nd8zE0Yxn/kAeG+KAJmFPlaQLh8xHO4xJy9YK5xi0Ydzt7p2rTQLEP7l54C8e\r\nsqbxJeenwEWZMcXPU21nyU0OyumGPQCXXNk6BNh3eSWoYkd7k1rf5Zf7MBkR\r\noaGRkHpWoCN3+o3RqqXt+4ASrXoMMytsjIoogZbpT1jDaPvmmUG5g0hMmVSA\r\ncX/zK3NC3owLEeVf/h6ZKPBmzgp/nx8lHDGrIUsoVFF61saHC0Rdf/J3xDro\r\nhoZ0VpF6iG8IMXkNLs/vGYn/ClwUC6egDwbNBSsGphL238hp43THPE/+dQUX\r\nbLte2mSDf4mpAdZpRHGyPw9lDkBo17S4R5g=\r\n=N7iF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCEudyviDNbEpzbYz6Vj5V8AMxoBPDsDMKTvU9c9SKSgwIhAKXZ+0Jl82rKquaCyhccBCJSo2frdnHPlgiOBkz6rn3p"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.2.2_1646462873829_0.5086709415705961"},"_hasShrinkwrap":false},"15.2.3":{"name":"tap","version":"15.2.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=10"},"dependencies":{"@isaacs/import-jsx":"*","@types/react":"*","chokidar":"^3.3.0","coveralls":"^3.0.11","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","ink":"*","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.1","libtap":"^1.3.0","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"*","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.3","tap-parser":"^11.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.7","treport":"*","which":"^2.0.2"},"devDependencies":{"flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"636ab1806f9882a90a98a83aeb8ea44ff442eec1","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@15.2.3","_nodeVersion":"17.6.0","_npmVersion":"8.5.3","dist":{"integrity":"sha512-EVbovHd/SdevGMUnkNU5JJqC1YC0hzaaZ2jnqs0fKHv9Oudx27qW3Xwox7A6TB92wvR0mqgQPr+Au2w56kD+aQ==","shasum":"994a8c4604b81b89d424809e0e4df86eb9073211","tarball":"https://registry.npmjs.org/tap/-/tap-15.2.3.tgz","fileCount":3405,"unpackedSize":28341144,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiI8T7ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrjCQ/+IOIIcAdXubiQxQD43z9XejOnXZ1mYVVLvcVTyH1ro/RBksAE\r\n3PW1Tx6CsDNu/v/f+DiWwr2m+5kyPk467p1r+eiDzgF1M1kkiidaTKsc1BEs\r\n8tYtNAKYJprRrMPL7NkP8sqlc/esMUr4BOq3R9zrWvlAq04Pt2uMRcRYGUqY\r\nnnOHRWGoHp1AToRLy8pqMauO3m2kf+n/TZbQhQLgh+Os35+dGXJFtnoITegi\r\nimkx5SRsFBVY7yXt4Z8htOsaC0yu3A6Ul5kaQMOGb/pQAqLFVCuX3Ry8jYGa\r\niUU9yLFjclWQaifKJFtdMEgq3L5USVsWmN4mcCiD0kcUvA8y55EGriixkH0b\r\nrmSnIyJXOGB/aBnlg+hvbq9deUJw0VJE8tcK4U6IrehlMSc6eo73p+yYGh9J\r\nU1FKUaEQGmv22ShvzCYdkKJLTVot408SjfmzUpJwRTjHW7gVlQwDcHm0ECGx\r\nDDh2TFzmCGvjuDRm2MMmxCSblXJKGw4lVds+5q2bHHyqgQZfExb15h6NOJdu\r\nFNosVHQxJpN80ch2n6FP8MD4FuHgbPdQnB4HIqDPZ6qC4YGgqiskwSvUHbHg\r\ncS9KCfl4U0wMrNwVPYxy8iRXhvdrHnX6Wa591azc5dg4zlTb+6F/UNLSxNdz\r\nARLbSEWjkCx4dPjH4PfNnpa+Ay/pNFmu9GI=\r\n=3kfp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD/3K4zIRJHVSgZhH8BevbzUTBFBV3nZGeE7m2vyYSx/wIgStbogDhJAVPqwvJLyhplSd1gy/IuUNMESWsKA/7ZQvg="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_15.2.3_1646511355373_0.19554894799785694"},"_hasShrinkwrap":false},"16.0.0":{"name":"tap","version":"16.0.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=12"},"dependencies":{"@isaacs/import-jsx":"*","@types/react":"*","chokidar":"^3.3.0","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","ink":"*","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.1","libtap":"^1.3.0","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"*","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.3","tap-parser":"^11.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.7","treport":"*","which":"^2.0.2"},"devDependencies":{"eslint":"^7.25.0","flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"coveralls":"^3.1.1","flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"coveralls":{"optional":true},"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postsnap":"npm run lint:fix","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve","lint":"eslint 'bin/*.js' 'lib/*.js' 'test/**/*.js'","lint:fix":"npm run lint -- --fix"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"8f2baa7eb5e1f4cd0fcf8b60da4fb4e41ea680f1","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@16.0.0","_nodeVersion":"17.6.0","_npmVersion":"8.5.3","dist":{"integrity":"sha512-EnrFFUIn+/089C051WYPXxNlAnXJ1TkKerh0Osz9lK0Ynb+X5FWBEZxWcZLVKiucdTnV5g97NL8Xaw1CuAkj4Q==","shasum":"867c619ad6fc2b539a6d5bb594284c058be17522","tarball":"https://registry.npmjs.org/tap/-/tap-16.0.0.tgz","fileCount":3405,"unpackedSize":28341915,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiI9CTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoBZg/9F9scLgxHo+L50b0PCMHfFmoBCom8Jtaoi/tm/t64ZDYFzBN1\r\nIHbY3D8b8HtJgG4VF5aETtc15YtY0ecusOE/P9RHUkCdFS3EtCRH68becdoh\r\nnyS4VI0Rmrukg4wUwO7OXrjYulXXW9CEwPwiHLstytSPl0TBgt25DiBhRRzW\r\ncGqoqEdIAGT8+FLdvm/ECzcw5OlV6GmCjwvl0bRwKNlLaJLq2d17s38SIvA4\r\n/+J3yDzHlXJXdnhSd4aHXM9BZLNuIu695GazawBK69GF+6y0xvzhwuHSlexv\r\nz8tj9qHsKC7Xgiw+o/GBU4qqWh2PXCB+GUx7OzS4+bCgCN//GUHSenBZBnWm\r\nEfTXJC5lIy5khjR/+urQK0q/UvhiuDXehgz3YxGVwbaEwlUyJ02ColAfPywq\r\nYYhJRaGAupCJjoMzlSO0jWwQ2WMwZDdbP6X3pnLnirFXoJ5BSK5ttxrqsue6\r\nMmYGnGuPFWIJbTQoCuVX0THN4/vDgqXM+RLyi8+5iJ8lE4HGawStjgkEMcQi\r\n6hgOZJxUexB7N70Ze1TMFSTrSdAWyx7a/onxc7XOUxdwXmPWZzH3DJf8djz7\r\nPOWrVYXV7IVma18Nk9kPBj07BwE1MLfO5QXNIT2zD9+GDuyE4zxlT1hiBis7\r\nd72wENwe77X0vStXhdJFX0wDGz9Pg4fKSxM=\r\n=E1K+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFrrbytjW0V6aMp7oD93ork92lWMbQ/buUBJBrdo0m8MAiBhKyESswp2vOsn3LauSscqJpGtXFXpP54qRPwKAcwUaA=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_16.0.0_1646514323223_0.12168612180142024"},"_hasShrinkwrap":false},"16.0.1":{"name":"tap","version":"16.0.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=12"},"dependencies":{"@isaacs/import-jsx":"*","@types/react":"*","chokidar":"^3.3.0","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","ink":"*","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.1","libtap":"^1.3.0","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"*","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.3","tap-parser":"^11.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.7","treport":"*","which":"^2.0.2"},"devDependencies":{"coveralls":"^3.1.1","eslint":"^7.25.0","flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"coveralls":"^3.1.1","flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"coveralls":{"optional":true},"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postsnap":"npm run lint:fix","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve","lint":"eslint 'bin/*.js' 'lib/*.js' 'test/**/*.js'","lint:fix":"npm run lint -- --fix"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"d38f1dd6d3b2146b604c94563282ccd88776359d","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@16.0.1","_nodeVersion":"17.6.0","_npmVersion":"8.5.3","dist":{"integrity":"sha512-y32sc4NFWzeOE1mrNvZoS1kRJADI8MCCSaatVBalCNVgusTf59h3t8mHZ3d0wSTQRs05JTOG52WC3KnWovhjPg==","shasum":"37b032f60496bb01051fa10e5a114c82186602d1","tarball":"https://registry.npmjs.org/tap/-/tap-16.0.1.tgz","fileCount":3432,"unpackedSize":29159972,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOlsvACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoIPhAAh1Fm3qaOv4P44/YPKgOjzkh3M1nuAxIOTtZJ4Zqs+YKuPaP7\r\n/Er8bf3yDCicMrKit0e21/V8An/XnkAlLLjPqqAV8NDhyIKVuejQ2LHicmNP\r\nVR+LIMy7jzVLMjKGLB5uTpfXxRVzSDAQ4LMgOQwb6rRlM/8JVbPON/+Tfs3K\r\nzDrYcAp7s9l2syuYL4Y0J5j80WLVec1fcTuA6lGYvl23vG3rGSKb3zIh07OU\r\nRRIl51JU9GG/LVcGlqYNWuYEjBULrVS7MxL2M0RYLDk68weCSlcCTex9Q0cM\r\n9/qkXuG2uI090hHtbIHQnpNxxT+pvIoA+rstvcBYmAiZEeA5LGBlEzTk5L+F\r\nFXmsPl4pczsC1MyP5EJmNZaN8l3/8JFP1yV/XjIwB94agntsh80vn5LLtjgt\r\nRqEUz4Qz3LKyTw5ljElkjwLERA06w4JdyIzA3UAIvNAn35OgIEp5KrUcxHIL\r\nz7usgq6LETYP4KDvusu5QJ90hUOD2/y1eqnLHrwsxjg/A8W3Eh9XMCG3nzuD\r\nEdG7ZT1YxIgLjHDxXWiPOPdT5dOCsDoAzDTa6GPM208vEwfASemPkINWXf6+\r\nGa0jdaSatNbgpLXPlKiN/8WSQvFZx1jm3g44+HhCumMsCGlJF5llJFfTT/3B\r\nCJXv1jjj7tbOEKmfAyy9ntswTOl06oFLGm0=\r\n=VX2m\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCHteAIu87XuQKIeX5rEhU/uwC9w252Bf44m1NRpnPONwIhAJjdaE/meyIN0oqQIzi1DR+Km97j573iPb9t7DSXB2UT"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_16.0.1_1647991599423_0.3756549434138228"},"_hasShrinkwrap":false},"16.1.0":{"name":"tap","version":"16.1.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=12"},"dependencies":{"@isaacs/import-jsx":"*","@types/react":"*","chokidar":"^3.3.0","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","ink":"*","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.1","libtap":"^1.4.0","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"*","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.3","tap-parser":"^11.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.7","treport":"*","which":"^2.0.2"},"devDependencies":{"coveralls":"^3.1.1","eslint":"^7.25.0","flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"coveralls":"^3.1.1","flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"coveralls":{"optional":true},"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postsnap":"npm run lint:fix","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve","lint":"eslint 'bin/*.js' 'lib/*.js' 'test/**/*.js'","lint:fix":"npm run lint -- --fix"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"d4c185eb4aa85f01627760e98f757988b9ca9906","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@16.1.0","_nodeVersion":"17.6.0","_npmVersion":"8.5.3","dist":{"integrity":"sha512-EFERYEEDCLjvsT+B+z/qAVuxh5JPEmtn0aGh1ZT/2BN5nVLm6VbcL9fR/Y2FtsxvHuEC3Q2xLc1n1h7mnWVP9w==","shasum":"85e989313afb318e6447dfa74c8aeb01b1770278","tarball":"https://registry.npmjs.org/tap/-/tap-16.1.0.tgz","fileCount":3432,"unpackedSize":29159972,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCZMOnpKMGclpJ7sf1nCj3eblItHwlCUf8Bxske/jsqLwIhAKD2MnR20II2NOzavXs2SsrX14Aih2tT/FRGSBLezpE8"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiZilTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqmIw//f5XZnXVpXzbUHXtGdBhxrwRZuUTi0XOxP1xlDiISBy+HoPaI\r\n0LBpeBJfMFfn+CME0X0wa+4gGQ76cShak8m9rWVge3W7/SmQWaOiIZ3lebbT\r\no0fvMcCvlAe5q5lwIoqhZwbG9VYjsMmSBrAyu0hcXxbccVaju42mT38MrP12\r\nHRgUpUTLKGZ2ccvgstvu1/Yh4rtPOjiyOjSItO2kGQka+7GpQ/xc+YXN1i1G\r\nRnulQz82jkVN9ENt6xl7JJIZxWscsQhMSMRSQOqiwlGuG9b9ic8p2rMZvx8B\r\nm113MHEql1x7h9M9N1CAqB9GVNMAqJdAZ74ISGvg3DOxoystlnLF5h1LO9+/\r\nMZeswrwx+ITlzl6JseFkvIeG/ApGR5ElFUocTODAwQ9pNprGh3QHXslBQg25\r\njpbZGx8IlJ5o0UzS/Y7rFfz/sH58wrwItT8K+dx9hKReuWn6fhMqPbUOI1CO\r\n47xmylXGXGQBL1RwLYc2IsL5uZoCa+lKoifdJwtkgzqjQwOhGv3PiQWexHtR\r\nrlO/RJXfQostOEYU/fDu9+43LlUoW1aSC4bFsEb6NeMnKq1ID8DCY0IRtnFs\r\ncLkSsfdFSsGvmCdpAg+E3v5Y703wLuTUApraVzABpFOl9HUcyBjwMBV1zd6l\r\n2CJEy8pyVtM13Ic0AsCDR1ktF5M7YfF2tfk=\r\n=sySQ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_16.1.0_1650862419394_0.25123601067227264"},"_hasShrinkwrap":false},"16.2.0":{"name":"tap","version":"16.2.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./"},"engines":{"node":">=12"},"dependencies":{"@isaacs/import-jsx":"^4.0.1","@types/react":"^17","chokidar":"^3.3.0","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","ink":"^3.2.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.1","libtap":"^1.4.0","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^17.0.2","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.3","tap-parser":"^11.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.7","treport":"^3.0.3","which":"^2.0.2"},"devDependencies":{"coveralls":"^3.1.1","eslint":"^7.25.0","flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"coveralls":"^3.1.1","flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"coveralls":{"optional":true},"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postsnap":"npm run lint:fix","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve","lint":"eslint 'bin/*.js' 'lib/*.js' 'test/**/*.js'","lint:fix":"npm run lint -- --fix"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"1a0c266a7afea0766bdab31d651a58629031a36c","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@16.2.0","_nodeVersion":"17.9.0","_npmVersion":"8.5.5","dist":{"integrity":"sha512-ikfNLy701p2+sH3R0pAXQ/Aen6ZByaguUY7UsoTLL4AXa2c9gYQL+pI21p13lq54R7/CEoLaViC1sexcWG32ig==","shasum":"0e47edcf1089e386630dc8d779dc8b20cfc7ee1d","tarball":"https://registry.npmjs.org/tap/-/tap-16.2.0.tgz","fileCount":3432,"unpackedSize":29159946,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGd352+70yZ1Twd5tOpLc2quJ65BR3EX75ycTlK2PIKIAiEAqgR5sDPy8nofzuh/y3gH4bJPu6YUEUt4c5ENUNi9ivU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJicq7QACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpNhQ//XWfXFVOHunc1+4WUftV7Io2UJUAscLjCn6mk4SW0Y6OvNacm\r\nF0BWIZYE86zRA0y5LlOcMzXBZEUDzrgI+RZTy3xO6ZygQMx7yw0g6mnz2+sy\r\nxT1U7774krjCqnrCWY3bHSRlQBVJRbOtYLkSCMv3sMem9Yr2DhuxV64wHw/6\r\nBRPd+Dk15fGrK0OpiUtsbKYEhV14B/nH6OIySk+FFboOA0+5zneA7asRgd2Q\r\neQkJ0cbyn8XvC84Rs/OIB6UQdSMAfRfFdVVGKCdsqlzKSUwL021alb1vNwHy\r\nVK4snjblPgt2daWvUhsmy5Y0DX6CgB1UYuUDrxCFjA69npqwAvLs3gZgdV23\r\ngZc4uwghv39MuVCpzj+p/+5bUZiHFw3piQ1V74hhSnTkJuHqtvYH0tP09XdK\r\nFjrV900aBTTniu3tq/zQddxA892XzvZhM4PnvAqbKL3lKpNFkqNCY//RJHZQ\r\ns6gACokTH9K0FeykwmgsduANqsOp3J2C1l/Xc46jGuMe76FhgRGqvmA1KrHW\r\n9bBVyg5rlooYUDCSFb5FxGIOJFzJro7svvY/mpmpCsr8Un3gdtM9rKD/5ff+\r\nr6y5+xzXc3V78TNrkOsy90JaJL8Js2czZuH8d42iYIdird8F5LabaScKWWdb\r\n7UGPXYGeplwE2hif8jNnxrBLqyEns97Tws4=\r\n=Bdca\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_16.2.0_1651683023822_0.4378464858818918"},"_hasShrinkwrap":false},"16.3.0":{"name":"tap","version":"16.3.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./","./mocha":"./lib/mocha.js"},"engines":{"node":">=12"},"dependencies":{"@isaacs/import-jsx":"^4.0.1","@types/react":"^17","chokidar":"^3.3.0","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","ink":"^3.2.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.1","libtap":"^1.4.0","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^17.0.2","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.3","tap-parser":"^11.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.7","treport":"^3.0.3","which":"^2.0.2"},"devDependencies":{"coveralls":"^3.1.1","eslint":"^7.25.0","flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"coveralls":"^3.1.1","flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"coveralls":{"optional":true},"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postsnap":"npm run lint:fix","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve","lint":"eslint 'bin/*.js' 'lib/*.js' 'test/**/*.js'","lint:fix":"npm run lint -- --fix"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"27703e46596087aa9d5ebc43434da459e0740c55","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@16.3.0","_nodeVersion":"18.2.0","_npmVersion":"8.9.0","dist":{"integrity":"sha512-J9GffPUAbX6FnWbQ/jj7ktzd9nnDFP1fH44OzidqOmxUfZ1hPLMOvpS99LnDiP0H2mO8GY3kGN5XoY0xIKbNFA==","shasum":"8323fc66990951b52063a01dadffa0eaf3c55e96","tarball":"https://registry.npmjs.org/tap/-/tap-16.3.0.tgz","fileCount":3432,"unpackedSize":29160012,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHK0xWKS2dq+E9AdeR7BcOL+Ax4+6dtVzH4tGISgHFtbAiEAxVTMtvIwc8+jQRHtyaAxEq8RTvuv+fTehFVWGg2+Xg0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJirB13ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpCmBAAm9hC5MnshJkxW62z3CdDwIfqdUq7dfxX8N9QZB2TsX8GqMBy\r\n7vOjnYay10LhkMnwiePHc/5TEHsj994a2MCScZK8pqmDwUEGhNy0ogSqakGY\r\nCI/74XkZQnZuzF43SK5ObPReCBP0/bLtSay2HE++8AaOA/Gv48w5qPDpmI6y\r\nfEfV67teNbck4BRb67By4Cxj+nvTIbnpSUvSfVOGdRtosWnEgJkGgg5zbkKn\r\n6ne1tEGPwFLe+xoX1gxknE82s0gNMfqC3sQTjK9lkdEZ0ZJcRsosiORxHc8I\r\nRHLNL9SAB6CbpiQPuaGr5o3CaJ8Kde2tt9aN7hFlWXbLkVOjoIE2wtvRb7Dv\r\nSHh0aKoSjko9NIeIXurCrDGsVUHv9wNIV3djY8yYEPFy5aq5k9163/G4WtZK\r\nXDCTvONLlLCeDuzly5CT+cB/zS+Nl506Ce78+PR5F6Av9fUd1mjF0e7vXSBK\r\nId9gAcg1XDwcbobWtBKlqDAcoG1p1arpUv8W8LMwbN6wYExCvKRqYbyNt7ou\r\nYwowpfLjYmTV6l6tORn/ue3Qwrwd8ZyeMG3hIt9DJaH54RYmi6kREZTVt6cL\r\n62P5aPtCgKnUag1bnvK2OvunzOoh+0mFKzIDHtLU3u3spnMlNGVAJ3Yco+c8\r\nADJvE+hyGN8Nrj5n25IpAyVL8t66/gcfKPs=\r\n=i3xW\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_16.3.0_1655446902106_0.6769533922465791"},"_hasShrinkwrap":false},"16.3.1":{"name":"tap","version":"16.3.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./","./mocha":"./lib/mocha.js"},"engines":{"node":">=12"},"dependencies":{"@isaacs/import-jsx":"^4.0.1","@types/react":"^17","chokidar":"^3.3.0","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.1.6","ink":"^3.2.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.2","jackspeak":"^1.4.1","libtap":"^1.4.0","minipass":"^3.1.1","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^17.0.2","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.3","tap-parser":"^11.0.1","tap-yaml":"^1.0.0","tcompare":"^5.0.7","treport":"^3.0.3","which":"^2.0.2"},"devDependencies":{"coveralls":"^3.1.1","eslint":"^7.25.0","flow-remove-types":"^2.112.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"coveralls":"^3.1.1","flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"coveralls":{"optional":true},"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postsnap":"npm run lint:fix","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve","lint":"eslint 'bin/*.js' 'lib/*.js' 'test/**/*.js'","lint:fix":"npm run lint -- --fix"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"10085a5ee563f4768f27dc88356d8d4a268d64f0","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@16.3.1","_nodeVersion":"18.12.0","_npmVersion":"9.1.1","dist":{"integrity":"sha512-B4+R/fY7hXuwDQOIpnT8rbXYYKUxX1Mu9e1axeoYtm5loyZRa2eYIL0zz8NaOg6h/dd+J8t25okCVg1RLDM8Yw==","shasum":"dbade2d7a9b5f006aae2fc87abb2fe3c743139b4","tarball":"https://registry.npmjs.org/tap/-/tap-16.3.1.tgz","fileCount":3660,"unpackedSize":32855361,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEM1KKJT4v0Fk+5qqrA6gTIB+DHGGcDceOSPYrgwIlUDAiADaXtNa7h8F33zOzCygOA37hZDMQSrAT0RLLWvxA1OIg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjcR8TACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrh9RAApFexr7hP8uatXIJK6o6aTfffOO6N+QqXNntd/qf/ZYaPmaTZ\r\nCDYnMihIDHGSJuGaGSFPxY+1pt/BpeTe7xwdDberLNifVwPwWApiNdXk0OoU\r\nIT0Q4RQZ1ESVQky6PXjIHPqMPqEoquQQ3knKr+4lz9Z0eZ+T2Fc5/UQXLyAf\r\nWFfXfzDV/ELW1c/oRMXib5pF/0ARu/tkAVsT2w32R0nIhMyvK/7On/o9+r8M\r\nYPNAoJI6jM3xcxnHGIKFz5XaYeY7HtARyiRdNOQ6ybSE5nyUxOqqQzazMF7P\r\n5KR6gpwPBJpgL+OU8R7kfT/p9YXYEGLDpRQ4SqcXFT+G4BL8XRQiCTeFenBg\r\nAInlLQPxE8Y/SvklivQqPsyYP9zYE6DoDu4ph9mhjg5FRky/8bgXM6GRezk6\r\niEdaEi6kOyGCTYLI/tLhFNKNILxx9lLtcUPU+WLmP+kJ4dw/NRl7Elhv8Vfw\r\n8sfqp/JyX4lMcIbSS4u1WYUgDcqBbeM4sClumVR4dvcmHD2g4FqxzPMchYIX\r\n4KREAPQqI6RpYIblBZtJgjp95O8/ASehRn4S2jKfnLcMsFS90pv/3KhwX1Fh\r\nKQewzFWBCZThCkppZDC2Sl6HBfh8X2fsPMIRtA7UyK1E2pyJXaiHRczNMvDb\r\n5xxIYXnYSVXL2d5h7yKL9ziAzxm7hiTyIsI=\r\n=GuFl\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_16.3.1_1668357907004_0.12198759529541814"},"_hasShrinkwrap":false},"16.3.2":{"name":"tap","version":"16.3.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./","./mocha":"./lib/mocha.js"},"engines":{"node":">=12"},"dependencies":{"@isaacs/import-jsx":"^4.0.1","@types/react":"^17.0.52","chokidar":"^3.3.0","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.2.3","ink":"^3.2.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.3","jackspeak":"^1.4.2","libtap":"^1.4.0","minipass":"^3.3.4","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^17.0.2","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.3","tap-parser":"^11.0.2","tap-yaml":"^1.0.2","tcompare":"^5.0.7","treport":"^3.0.4","which":"^2.0.2"},"devDependencies":{"coveralls":"^3.1.1","eslint":"^7.32.0","flow-remove-types":"^2.193.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"coveralls":"^3.1.1","flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"coveralls":{"optional":true},"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postsnap":"npm run lint:fix","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve","lint":"eslint 'bin/*.js' 'lib/*.js' 'test/**/*.js'","lint:fix":"npm run lint -- --fix"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"b55736255edbb25995eb9ea25a8d7c8bba1e630a","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@16.3.2","_nodeVersion":"18.12.0","_npmVersion":"9.1.1","dist":{"integrity":"sha512-4MWMObR8unbv5gAHHVW9F0MNk3opQMnLusSWvt4KBAnKmkwpBRKIfNF64fimQbcR4y9a7U9ISV7pCldlV3J8Pw==","shasum":"84350bce6fbe490f1befbcd53d5caddb8892feac","tarball":"https://registry.npmjs.org/tap/-/tap-16.3.2.tgz","fileCount":3420,"unpackedSize":29090414,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD32wJ6BkybgRJWKHzxmmZvDsxObS0mT3WEQ2iE57tjlwIhAJnI3TT1LCcaidGRRJqvA6icBUDuzvbWQ+0VUKtKWxLy"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdTFIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrhhg//XY+kWkmEGvJq2aoxNHzEIInxzMsBRHNRx7YuSxmxs4eEHAWj\r\npQoHCBDVxqXBnK00mtwwKZ8NjUuGePgtn0u3Pjn6JCddmhJVfkvv2jtxL0z4\r\nNQOuRZixLjTbMZA3rzntNmOdJ1SnDhLtTww9fvL9kEfXr0cSAFjp1EnAPwdy\r\nGQ03btXV/UsISyuvM6jjXbBrKs8j3g4HOuqKIP1Odc67aJJ6ur7PtDL+zuGe\r\nCb2R8DN+57gMz4DfyA+1cBQaANfX/ohOfmC+ismZh1+AM3+GbkyMS9SaI456\r\n4JcGxe4iBf2LJgGHd+5PSX5A3vev7tZOACVhPc9w3rVS/TI2WXWN1sOfkISk\r\nOZmW0YhpLMxFf1Mhj5Uqxeae6g76y/7M6QDgY3InUwZvnCt9cm1HrENhMpWf\r\nnjRBnvSYDeShY9CokXM9651yYy1Y/kQWJwrGT+tNvmQoDkqDAHhhnf9/mub/\r\nFBcpA/2pa1K23k/7wCKv96sezn1Fexra6xZcURldR5iWEqLnkbkp7oWDig2Y\r\nWrD8pavrL/17AyLEMd0jQ/G5Syi0soqF3pBCG7GC+C0Rw5WrKW8ky9hPL1hj\r\nQIldVDB/m8P1JIWCoTirmbRPXeCWHQH1Ua/SXd5f2/0BCNasbmhjWxaY8oC1\r\nuS4zo8eU4pdgPh+mw3VWJm6u1sMrMH2nVhs=\r\n=3W6z\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_16.3.2_1668624712226_0.21128538364574712"},"_hasShrinkwrap":false},"16.3.3":{"name":"tap","version":"16.3.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./","./mocha":"./lib/mocha.js"},"engines":{"node":">=12"},"dependencies":{"@isaacs/import-jsx":"^4.0.1","@types/react":"^17.0.52","chokidar":"^3.3.0","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.2.3","ink":"^3.2.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.3","jackspeak":"^1.4.2","libtap":"^1.4.0","minipass":"^3.3.4","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^17.0.2","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.3","tap-parser":"^11.0.2","tap-yaml":"^1.0.2","tcompare":"^5.0.7","treport":"^3.0.4","which":"^2.0.2"},"devDependencies":{"coveralls":"^3.1.1","eslint":"^7.32.0","flow-remove-types":"^2.193.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"coveralls":"^3.1.1","flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"coveralls":{"optional":true},"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postsnap":"npm run lint:fix","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve","lint":"eslint 'bin/*.js' 'lib/*.js' 'test/**/*.js'","lint:fix":"npm run lint -- --fix"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"b895d240b9f8a4ce79d983bec45315c600888415","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@16.3.3","_nodeVersion":"16.19.0","_npmVersion":"8.19.3","dist":{"integrity":"sha512-E6Ti4FaH3zUvOtl13GA60n8aodRj44S8Vu5efM84U5NmquJo4+y21+2VM9r9jR5iiEcce5dqvlrrwAhZ6r11xg==","shasum":"681719422d29c7b57004758a2cc1c9a30882ae15","tarball":"https://registry.npmjs.org/tap/-/tap-16.3.3.tgz","fileCount":3432,"unpackedSize":29167604,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGVoi9ItQ7Pvy0hthYEKSa/eCq8yCPJ3Xc/EliGy7+lKAiEAzqLyRlESvckx8EWZrtBEnJnu3Fm1jEdOpRAS8578XKQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJju7mnACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoT5BAAhaUPs5SYuGleShbuBU8o9eyyzmRDJyubo36YFyehKnTkl++o\r\nCkNJI279RihwgCPWXNYuE4AQWpEyezXvd0Y44kHAVRdj5B6C/UZ5R8NcNgQm\r\nXN288SFptMEyb2QHhXEufN1z1kwNHg7ZEqK15Jo/l5N1h9fI9l2ZBE0sjTyL\r\nFsCS2bZdPpDWuNte/stPv76Iw1RotaCbx0VGrIsrtAbViz9tjscOpVTJIl6n\r\nhUGvQtNRss0uP9psa1fgKba2FslfVc16/Mjwi5dGWScGW3/DUbDGFA7pxwFT\r\n8ZT2RwLHv6gpad3lzcNn/4aYU5ODJxZNegfgi4XsnklhDplvEcWFU2en4X4I\r\nJBwyrno0GoSZ096WXUJ+mE4UfxdoU3uf1m5FJ4wVMbxO783FInMtlkCKmy/w\r\nErQPWMnH68vi4DgD6aJ0Ry1dIPxqV6dm6GMCrtSMwuaKNaldO7nBROSsCm97\r\nzPGaoG5u0hw2cCV3U7T/TdXKNBeXa8xJNL75VCq9XHRvOWRFVP1hIp4FzxOV\r\nILPAyhObnCJ6QazpwDIzDn87Gv95a27wRSjJvpJTYNsvxs+oQ8gJ4B9aoP4A\r\nBhHsJdfnaqu9rbkoVBnkbJW570IznndRhxu0O5whvlT0owGTznHEUAqBTBHP\r\npb8IZDMUS3QfhgtSs4lH5eJdehT42GxdRso=\r\n=2DbN\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_16.3.3_1673247142603_0.6168578666445375"},"_hasShrinkwrap":false},"16.3.4":{"name":"tap","version":"16.3.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./":"./","./mocha":"./lib/mocha.js"},"engines":{"node":">=12"},"dependencies":{"@isaacs/import-jsx":"^4.0.1","@types/react":"^17.0.52","chokidar":"^3.3.0","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.2.3","ink":"^3.2.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.3","jackspeak":"^1.4.2","libtap":"^1.4.0","minipass":"^3.3.4","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^17.0.2","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.3","tap-parser":"^11.0.2","tap-yaml":"^1.0.2","tcompare":"^5.0.7","treport":"^3.0.4","which":"^2.0.2"},"devDependencies":{"coveralls":"^3.1.1","eslint":"^7.32.0","flow-remove-types":"^2.193.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"coveralls":"^3.1.1","flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"coveralls":{"optional":true},"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postsnap":"npm run lint:fix","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve","lint":"eslint 'bin/*.js' 'lib/*.js' 'test/**/*.js'","lint:fix":"npm run lint -- --fix"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"e6444ce79a50013ca10080d5b54802f02b0065f0","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@16.3.4","_nodeVersion":"19.4.0","_npmVersion":"9.3.0","dist":{"integrity":"sha512-SAexdt2ZF4XBgye6TPucFI2y7VE0qeFXlXucJIV1XDPCs+iJodk0MYacr1zR6Ycltzz7PYg8zrblDXKbAZM2LQ==","shasum":"4dc740a9dcbfa2d890fb2b647720f29980289179","tarball":"https://registry.npmjs.org/tap/-/tap-16.3.4.tgz","fileCount":3420,"unpackedSize":29097007,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDuv4VRHD+FaMN0EtVf0C1s05eky/nG13FePYlXhD1qGQIhAL7kEK6UBjoT409qO5cGH5ugnd1bmJCrs6P4nR8VcNZ9"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjxNj2ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrhDA/+MUIc0PfT5+YTuJTtWL4NCjeM6H+wg95LyPbMulcXTNqvwHTk\r\nwOvqSnlpVLmJnl9wZYioh+QS3d0/fMp0GZo+W7KO02sfKFY8PzEmKuNeMJl9\r\ntrTWRc5I3i4XVpucu7hg9puukehn/I1X0pe8Q/j/UOD1m8+Y9FS1CjlJLUhl\r\nKPEQxMvJD3pHal1lyurF+s4hYHZ/vFeOIrElyTJ6FPw4Mm6m20XzoMLBDcUi\r\n7ULXSWMaQs/DYI8cFzZl+jwGfCKqVubaqpDjl618VjwgVSlq0TUG5WJFE0qJ\r\neqZtlQEgRGOAUs9mIe5swhtREXhws+dBF1NaDe7Nx6Gmraym0uQ/w6PxVzWw\r\n+J8t8IIYl88cGeyMfAINl0Lkz1Mses54b0wb9vElDoTF8ZWc9wbs2qzraEKq\r\nR//WBs5vXx8XxeM3d3GPAA0VwRwz7zXd3qqCDqE1Xq2PcaE/B90jm/MnL4PF\r\n8LNsnjZaIxBvJTDLFK4tGwTHvBnlSYGXo94+/QbOdllX6ox3kop6JDxqHFtL\r\now4hunWwubSzCImcdoqKZ3T4vCCZGCpiq2XG4mauihMBOZIy/h9onLDEsARP\r\nv/ME/jlOwFDP7ZFBTElZiqby8MxDEGCEp8ltyNg4+NkR93pzbr9qzMXMdqoN\r\nYm8IkwsEG4rdxs2HCTw7KPTI3pWpTBcLgzU=\r\n=tR/c\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_16.3.4_1673844982225_0.5218389321731238"},"_hasShrinkwrap":false},"16.3.5":{"name":"tap","version":"16.3.5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./mocha":"./lib/mocha.js"},"engines":{"node":">=12"},"dependencies":{"@isaacs/import-jsx":"^4.0.1","@types/react":"^17.0.52","chokidar":"^3.3.0","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.2.3","ink":"^3.2.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.3","jackspeak":"^1.4.2","libtap":"^1.4.0","minipass":"^3.3.4","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^17.0.2","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.3","tap-parser":"^11.0.2","tap-yaml":"^1.0.2","tcompare":"^5.0.7","treport":"^3.0.4","which":"^2.0.2"},"devDependencies":{"coveralls":"^3.1.1","eslint":"^7.32.0","flow-remove-types":"^2.193.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"coveralls":"^3.1.1","flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"coveralls":{"optional":true},"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postsnap":"npm run lint:fix","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve","lint":"eslint 'bin/*.js' 'lib/*.js' 'test/**/*.js'","lint:fix":"npm run lint -- --fix"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"03e5233e3698ab27422ea6fcf5bb58bd8675756a","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@16.3.5","_nodeVersion":"18.16.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-SqSTUuK2uCSjQKaoqwd1+25YzalHDuZnT0XBlk6do+1X/mSbIQGVrRKGfLaPAsdvMG1kzVhb2btukgKFhO87kg==","shasum":"801e63dd55afba463a0663dbed2bccbb7a3b3cce","tarball":"https://registry.npmjs.org/tap/-/tap-16.3.5.tgz","fileCount":3785,"unpackedSize":34688793,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCMAuiUInDHUoS6Th3A7BKyX3Qligq04qVwyhcfrdp97QIgG09dhSxv8Uzv05knThdT/M2yMquBkPKILNJKKi6c9JE="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_16.3.5_1685910604261_0.687967029048977"},"_hasShrinkwrap":false},"16.3.6":{"name":"tap","version":"16.3.6","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./mocha":"./lib/mocha.js"},"engines":{"node":">=12"},"dependencies":{"@isaacs/import-jsx":"^4.0.1","@types/react":"^17.0.52","chokidar":"^3.3.0","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.2.3","ink":"^3.2.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.3","jackspeak":"^1.4.2","libtap":"^1.4.0","minipass":"^3.3.4","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^17.0.2","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.3","tap-parser":"^11.0.2","tap-yaml":"^1.0.2","tcompare":"^5.0.7","treport":"^3.0.4","which":"^2.0.2"},"devDependencies":{"coveralls":"^3.1.1","eslint":"^7.32.0","flow-remove-types":"^2.193.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"coveralls":"^3.1.1","flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"coveralls":{"optional":true},"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postsnap":"npm run lint:fix","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve","lint":"eslint 'bin/*.js' 'lib/*.js' 'test/**/*.js'","lint:fix":"npm run lint -- --fix"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"9b8dbdac5eab46bdd3e78d2ba8f67cd8ac283513","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@16.3.6","_nodeVersion":"18.16.0","_npmVersion":"9.6.7","dist":{"integrity":"sha512-+DF58Y0DuR18NITVuPsfQ5CRZ1KmYobxLeqKq6LOhr1YJu+QMbAkyhgWhaKsV8GMd329h3fa2SZoqTWmGZ+o9w==","shasum":"9223562a9e060c17dbd10d065f4a759ecf9ba475","tarball":"https://registry.npmjs.org/tap/-/tap-16.3.6.tgz","fileCount":3785,"unpackedSize":34688793,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGd8U9BiM6W5T324SiUKYQLYrvG+7FXBGaMuXSNYVHeKAiEA7kQAFc1jWsixR4d8pXXsQs3OjB7Jie0M1cZXejYAr+k="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_16.3.6_1685910724197_0.6100363048416189"},"_hasShrinkwrap":false},"16.3.7":{"name":"tap","version":"16.3.7","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./mocha":"./lib/mocha.js"},"engines":{"node":">=12"},"dependencies":{"@isaacs/import-jsx":"^4.0.1","@types/react":"^17.0.52","chokidar":"^3.3.0","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.2.3","ink":"^3.2.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.3","jackspeak":"^1.4.2","libtap":"^1.4.0","minipass":"^3.3.4","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^17.0.2","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.3","tap-parser":"^11.0.2","tap-yaml":"^1.0.2","tcompare":"^5.0.7","treport":"^3.0.4","which":"^2.0.2"},"devDependencies":{"coveralls":"^3.1.1","eslint":"^7.32.0","flow-remove-types":"^2.193.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"coveralls":"^3.1.1","flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"coveralls":{"optional":true},"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postsnap":"npm run lint:fix","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve","lint":"eslint 'bin/*.js' 'lib/*.js' 'test/**/*.js'","lint:fix":"npm run lint -- --fix"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"ae429548826ea20b8717368ab2e017da822f6198","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@16.3.7","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-AaovVsfXVKcIf9eD1NxgwIqSDz5LauvybTpS6bjAKVYqz3+iavHC1abwxTkXmswb2n7eq8qKLt8DvY3D6iWcYA==","shasum":"1d3561b58dd7af3aed172a2f6fc3ad8252b040ab","tarball":"https://registry.npmjs.org/tap/-/tap-16.3.7.tgz","fileCount":3783,"unpackedSize":34728087,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA7mowS2mJ9JPclKChsgs2xFz0wqdk/T09p06VAnUzRbAiBLDuzIIVtrR/CrnzoocOsFfeNHNZGECiPcc8vTQXYvQg=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_16.3.7_1687463795640_0.8374560838758083"},"_hasShrinkwrap":false},"16.3.8":{"name":"tap","version":"16.3.8","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./mocha":"./lib/mocha.js"},"engines":{"node":">=12"},"dependencies":{"@isaacs/import-jsx":"^4.0.1","@types/react":"^17.0.52","chokidar":"^3.3.0","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.2.3","ink":"^3.2.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.3","jackspeak":"^1.4.2","libtap":"^1.4.0","minipass":"^3.3.4","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^17.0.2","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.3","tap-parser":"^11.0.2","tap-yaml":"^1.0.2","tcompare":"^5.0.7","treport":"^3.0.4","which":"^2.0.2"},"devDependencies":{"coveralls":"^3.1.1","eslint":"^7.32.0","flow-remove-types":"^2.193.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"coveralls":"^3.1.1","flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"coveralls":{"optional":true},"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postsnap":"npm run lint:fix","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve","lint":"eslint 'bin/*.js' 'lib/*.js' 'test/**/*.js'","lint:fix":"npm run lint -- --fix"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"gitHead":"7327adfe9582bd34a5a7e0a3010695b5f0b8ed95","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@16.3.8","_nodeVersion":"16.20.1","_npmVersion":"8.19.4","dist":{"integrity":"sha512-ARpCLtOFST37MholnZm7JMFikGq0x/T9uBdZH83iuddPNgwDTZQiD8+4x7VABUfVWS0ozKUkmHZ5OOzMI3fLPg==","shasum":"458401da130ec3ddd75dbc7e25410aa40df1a180","tarball":"https://registry.npmjs.org/tap/-/tap-16.3.8.tgz","fileCount":3796,"unpackedSize":37885743,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH7bAJIc4yEwSsagnj2IJjl4s6cdz6h7tuLQiPXjBSX2AiEAhRpvfeJLGHcNACE/Okj9cmYR7jcb4sV60KcXicLePCk="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_16.3.8_1690690430515_0.5919354498800715"},"_hasShrinkwrap":false},"18.0.0-1":{"name":"tap","version":"18.0.0-1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"module":"./dist/mjs/esm.mjs","main":"./dist/cjs/cjs.cjs","types":"./dist/cjs/cjs.d.cts","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"bundleDependencies":["@tapjs/after","@tapjs/after-each","@tapjs/asserts","@tapjs/before","@tapjs/before-each","@tapjs/core","@tapjs/filter","@tapjs/fixture","@tapjs/intercept","@tapjs/mock","@tapjs/run","@tapjs/snapshot","@tapjs/spawn","@tapjs/stdin","@tapjs/test","@tapjs/typescript","@tapjs/worker"],"dependencies":{"@tapjs/after":"0.0.0-0","@tapjs/after-each":"0.0.0-0","@tapjs/asserts":"0.0.0-0","@tapjs/before":"0.0.0-0","@tapjs/before-each":"0.0.0-0","@tapjs/core":"0.0.0-0","@tapjs/filter":"0.0.0-0","@tapjs/fixture":"0.0.0-0","@tapjs/intercept":"0.0.0-0","@tapjs/mock":"0.0.0-0","@tapjs/run":"0.0.0-0","@tapjs/snapshot":"0.0.0-0","@tapjs/spawn":"0.0.0-0","@tapjs/stdin":"0.0.0-0","@tapjs/test":"0.0.0-0","@tapjs/typescript":"0.0.0-0","@tapjs/worker":"0.0.0-0"},"keywords":["assert","tap","test","testing"],"license":"ISC","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-1","readme":"ERROR: No README data found!","gitHead":"e80ff78447864f2b9d26e5fb6bc804a62605b1e0","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-ve7v/Ha5VEBV58QB+F4uAv7I2O7u1Z1EUkh85+D+JRVKzynNIeD6PYUWgWeDrfIgzvyzCDUVA455fUjpQWRNag==","shasum":"a66a1f08e7fe95007f7e3be61fd8dfb954fee366","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-1.tgz","fileCount":24,"unpackedSize":28232,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC+N9hHNQlSG9xgIO6K8ZfMlJYQkhRkRZSrMNjbTRictQIhAMqG6jeHB4uvaa7Klb6uQ3KLonU/E7XnVsHfd4wj4nUo"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-1_1691165773947_0.5050746697719213"},"_hasShrinkwrap":false},"18.0.0-2":{"name":"tap","version":"18.0.0-2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"module":"./dist/mjs/esm.mjs","main":"./dist/cjs/cjs.cjs","types":"./dist/cjs/cjs.d.cts","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"bundleDependencies":["@tapjs/after","@tapjs/after-each","@tapjs/asserts","@tapjs/before","@tapjs/before-each","@tapjs/core","@tapjs/filter","@tapjs/fixture","@tapjs/intercept","@tapjs/mock","@tapjs/run","@tapjs/snapshot","@tapjs/spawn","@tapjs/stdin","@tapjs/test","@tapjs/typescript","@tapjs/worker"],"dependencies":{"@tapjs/after":"0.0.0-1","@tapjs/after-each":"0.0.0-1","@tapjs/asserts":"0.0.0-1","@tapjs/before":"0.0.0-1","@tapjs/before-each":"0.0.0-1","@tapjs/core":"0.0.0-1","@tapjs/filter":"0.0.0-1","@tapjs/fixture":"0.0.0-1","@tapjs/intercept":"0.0.0-1","@tapjs/mock":"0.0.0-1","@tapjs/run":"0.0.0-1","@tapjs/snapshot":"0.0.0-1","@tapjs/spawn":"0.0.0-1","@tapjs/stdin":"0.0.0-1","@tapjs/test":"0.0.0-1","@tapjs/typescript":"0.0.0-1","@tapjs/worker":"0.0.0-1"},"keywords":["assert","tap","test","testing"],"license":"ISC","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-2","gitHead":"432f3a535d5fa2638b8c5b2f2a8f18cb7355f3f8","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-w95VSbOiPhJpKrSB5dJpCx5lgBFMKY6x6UIMRVyBNbS43sm7VshMqIZEMZduW4ZtfE1ZBqQiQVJcsWUSF713lQ==","shasum":"c0a17b5d4895100ba9def836693324f033c59ace","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-2.tgz","fileCount":24,"unpackedSize":28291,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCndsbhrSeTS3n2ZLFE8Tt6sKfjellMKyCcIlHvVLCL/QIhAKF9uUKCo5c2APyUc8BAZr90xDHvO4LvMWe50LOxI6WR"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-2_1691167406766_0.39143515925715655"},"_hasShrinkwrap":false},"18.0.0-3":{"name":"tap","version":"18.0.0-3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"module":"./dist/mjs/esm.mjs","main":"./dist/cjs/cjs.cjs","types":"./dist/cjs/cjs.d.cts","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"dependencies":{"@tapjs/after":"0.0.0-1","@tapjs/after-each":"0.0.0-1","@tapjs/asserts":"0.0.0-1","@tapjs/before":"0.0.0-1","@tapjs/before-each":"0.0.0-1","@tapjs/core":"0.0.0-1","@tapjs/filter":"0.0.0-1","@tapjs/fixture":"0.0.0-1","@tapjs/intercept":"0.0.0-1","@tapjs/mock":"0.0.0-1","@tapjs/run":"0.0.0-1","@tapjs/snapshot":"0.0.0-1","@tapjs/spawn":"0.0.0-1","@tapjs/stdin":"0.0.0-1","@tapjs/test":"0.0.0-1","@tapjs/typescript":"0.0.0-1","@tapjs/worker":"0.0.0-1"},"keywords":["assert","tap","test","testing"],"license":"ISC","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-3","readme":"ERROR: No README data found!","gitHead":"b7567fc6820fab075f2898cf8244af7a960f0b53","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-ybrxtZulQosap/rKdyEgP8bMxjIDOLu48Zx5Dbbtt8tYfc6e/ur07XpadL+d6gZbG5IpWyTutS3LwwS2Ijunnw==","shasum":"f4a34c78d43e57efd85cd1d0d6ad093f3855295d","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-3.tgz","fileCount":24,"unpackedSize":27896,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEHWVJzGGlk2jMDfCWNyAl6vMzkhg0XFagkMpO63W/JZAiB7rSX8pK13s9PZwqcdgK15DbVuRPWls9siCkP1tIno5A=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-3_1691168703551_0.627535455148007"},"_hasShrinkwrap":false},"18.0.0-4":{"name":"tap","version":"18.0.0-4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"module":"./dist/mjs/esm.mjs","main":"./dist/cjs/cjs.cjs","types":"./dist/cjs/cjs.d.cts","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"dependencies":{"@tapjs/after":"0.0.0-2","@tapjs/after-each":"0.0.0-2","@tapjs/asserts":"0.0.0-2","@tapjs/before":"0.0.0-2","@tapjs/before-each":"0.0.0-2","@tapjs/core":"0.0.0-2","@tapjs/filter":"0.0.0-2","@tapjs/fixture":"0.0.0-2","@tapjs/intercept":"0.0.0-2","@tapjs/mock":"0.0.0-2","@tapjs/run":"0.0.0-2","@tapjs/snapshot":"0.0.0-2","@tapjs/spawn":"0.0.0-2","@tapjs/stdin":"0.0.0-2","@tapjs/test":"0.0.0-2","@tapjs/typescript":"0.0.0-2","@tapjs/worker":"0.0.0-2"},"keywords":["assert","tap","test","testing"],"license":"ISC","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-4","readme":"ERROR: No README data found!","gitHead":"a6eef2ab88ae5aba836a71d83993c48b17e0f8a4","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-ZzrO1g/Z48vtGSrci6QLwajATccquIfy6z5G9Gd25j8wpVfWge4NXpeJutZVaEnJyGxh3Y3Jk07g9yxvXgeEtQ==","shasum":"ba6b664a204e8cce53f4e18e66b5427cd2dbbeec","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-4.tgz","fileCount":24,"unpackedSize":27896,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEsEKUbTOsrLnIc6n9HAVYGXLmPE54G/5cqtzGwrvd04AiAQXqukSChF5yJtwfIEC23fOXCeNJES7PpJBU/RwZ9hVg=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-4_1691192855610_0.8911898917006844"},"_hasShrinkwrap":false},"18.0.0-5":{"name":"tap","version":"18.0.0-5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"module":"./dist/mjs/esm.mjs","main":"./dist/cjs/cjs.cjs","types":"./dist/cjs/cjs.d.cts","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"dependencies":{"@tapjs/after":"0.0.0-2","@tapjs/after-each":"0.0.0-2","@tapjs/asserts":"0.0.0-2","@tapjs/before":"0.0.0-2","@tapjs/before-each":"0.0.0-2","@tapjs/core":"0.0.0-2","@tapjs/filter":"0.0.0-2","@tapjs/fixture":"0.0.0-2","@tapjs/intercept":"0.0.0-2","@tapjs/mock":"0.0.0-2","@tapjs/run":"0.0.0-3","@tapjs/snapshot":"0.0.0-2","@tapjs/spawn":"0.0.0-2","@tapjs/stdin":"0.0.0-2","@tapjs/test":"0.0.0-2","@tapjs/typescript":"0.0.0-2","@tapjs/worker":"0.0.0-2"},"keywords":["assert","tap","test","testing"],"license":"ISC","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-5","readme":"ERROR: No README data found!","gitHead":"fe7d0fe649c5c6ed3da9f0719fbc1351c122ea19","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-TQE72BEYHrVBC4SRGMuISRytiIKlkszEL7nYk6TFiziI7S70RmoPkI2IogijcJ9+EdDKNpXpnzu+wtOviK2WUw==","shasum":"155a7a905c75a0236a418c9ad6db7532e578aec2","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-5.tgz","fileCount":24,"unpackedSize":27896,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE9gK+ME8Inbi75seV5KnX+v4sPYYxaeLJeLmQXkxjGhAiB+TVE05BQx3CkUPaHbcew3lANeJtkGQyOpBJVOcco6WA=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-5_1691298111654_0.7251154574903182"},"_hasShrinkwrap":false},"18.0.0-6":{"name":"tap","version":"18.0.0-6","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"module":"./dist/mjs/esm.mjs","main":"./dist/cjs/cjs.cjs","types":"./dist/cjs/cjs.d.cts","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"dependencies":{"@tapjs/after":"0.0.0-3","@tapjs/after-each":"0.0.0-3","@tapjs/asserts":"0.0.0-3","@tapjs/before":"0.0.0-3","@tapjs/before-each":"0.0.0-3","@tapjs/core":"0.0.0-3","@tapjs/filter":"0.0.0-3","@tapjs/fixture":"0.0.0-3","@tapjs/intercept":"0.0.0-3","@tapjs/mock":"0.0.0-3","@tapjs/run":"0.0.0-4","@tapjs/snapshot":"0.0.0-3","@tapjs/spawn":"0.0.0-3","@tapjs/stdin":"0.0.0-3","@tapjs/test":"0.0.0-3","@tapjs/typescript":"0.0.0-3","@tapjs/worker":"0.0.0-3"},"keywords":["assert","tap","test","testing"],"license":"ISC","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-6","readme":"ERROR: No README data found!","gitHead":"9bd53a9753309ef0691d54b8d13876eb0b62b71b","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-JeIX8KBJsuII1NmWpPKOb2G7uOrbUJ6MfqcGysLSVWXGvdwQp70KCp9LqAHGOZLdFcM2aT71SOthb9dgj/dDjA==","shasum":"f06230ff9e587717c39c2b8b6eb8f6c0c3ab4f64","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-6.tgz","fileCount":24,"unpackedSize":27896,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEL2u45wCwkNvf9zgK+lkjXIonGISbNkgt2jk88VVCDsAiBS51qw9g5gcgWy/6+EebiZ6T1WqLfWpmyyng5NzmPu9Q=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-6_1691299113594_0.8130609151640773"},"_hasShrinkwrap":false},"18.0.0-7":{"name":"tap","version":"18.0.0-7","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"module":"./dist/mjs/esm.mjs","main":"./dist/cjs/cjs.cjs","types":"./dist/cjs/cjs.d.cts","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"dependencies":{"@tapjs/after":"0.0.0-4","@tapjs/after-each":"0.0.0-4","@tapjs/asserts":"0.0.0-4","@tapjs/before":"0.0.0-4","@tapjs/before-each":"0.0.0-4","@tapjs/core":"0.0.0-4","@tapjs/filter":"0.0.0-4","@tapjs/fixture":"0.0.0-4","@tapjs/intercept":"0.0.0-4","@tapjs/mock":"0.0.0-4","@tapjs/run":"0.0.0-5","@tapjs/snapshot":"0.0.0-4","@tapjs/spawn":"0.0.0-4","@tapjs/stdin":"0.0.0-4","@tapjs/test":"0.0.0-4","@tapjs/typescript":"0.0.0-4","@tapjs/worker":"0.0.0-4"},"keywords":["assert","tap","test","testing"],"license":"ISC","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-7","readme":"ERROR: No README data found!","gitHead":"acffc81f6b3776fd18406bf3b5633b5b80b5c232","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-EpLTXxaq5y+x9lwc6WVlmaxq4D4dC05Sxe9DQl9s9f8W6gUIjrfAueQnwTWEvM5zvFLwBer8gRjTulTpLoNHmg==","shasum":"bcd3e5f88ce1307eb0eede7bbc7aa5d6ed5bb32a","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-7.tgz","fileCount":24,"unpackedSize":27896,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD3RXpGgAEFmyOzH6/zMkJ7bApd7SNqdplTi/8pBfzviwIhAJTdfFtGqMljVCSyxHTnI9r/ga/kmdQP4+1zkcdDmyY7"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-7_1691379469271_0.7415756484191269"},"_hasShrinkwrap":false},"18.0.0-8":{"name":"tap","version":"18.0.0-8","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"module":"./dist/mjs/esm.mjs","main":"./dist/cjs/cjs.cjs","types":"./dist/cjs/cjs.d.cts","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"dependencies":{"@tapjs/after":"0.0.0-5","@tapjs/after-each":"0.0.0-5","@tapjs/asserts":"0.0.0-5","@tapjs/before":"0.0.0-5","@tapjs/before-each":"0.0.0-5","@tapjs/core":"0.0.0-5","@tapjs/filter":"0.0.0-5","@tapjs/fixture":"0.0.0-5","@tapjs/intercept":"0.0.0-5","@tapjs/mock":"0.0.0-5","@tapjs/run":"0.0.0-6","@tapjs/snapshot":"0.0.0-5","@tapjs/spawn":"0.0.0-5","@tapjs/stdin":"0.0.0-5","@tapjs/test":"0.0.0-5","@tapjs/typescript":"0.0.0-5","@tapjs/worker":"0.0.0-5"},"keywords":["assert","tap","test","testing"],"license":"ISC","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-8","readme":"ERROR: No README data found!","gitHead":"75219cfe3daffff3e3e38d3197fad510653ababd","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-iJ2+ivjxx0cwcwm6Xm4imdgLI0c1DoO3Xu84WqnQKIaOASyuKft55ToCFAB/hGiOp1B7X9uvL1gB1XDfrve0wg==","shasum":"cbe0171192185c9048747422ab9421c781e21927","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-8.tgz","fileCount":24,"unpackedSize":27896,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEJNQnmvdxybFMKGJOG9NRrS+aAF5u4YxUc2cidhsWqpAiBtvZOqAitKfVZZSQdeQ6RJ4Zw087/uOFblSf5Aq8aGAw=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-8_1691426575453_0.48472510027398696"},"_hasShrinkwrap":false},"18.0.0-9":{"name":"tap","version":"18.0.0-9","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"module":"./dist/mjs/esm.mjs","main":"./dist/cjs/cjs.cjs","types":"./dist/cjs/cjs.d.cts","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"dependencies":{"@tapjs/after":"0.0.0-6","@tapjs/after-each":"0.0.0-6","@tapjs/asserts":"0.0.0-6","@tapjs/before":"0.0.0-6","@tapjs/before-each":"0.0.0-6","@tapjs/core":"0.0.0-6","@tapjs/filter":"0.0.0-6","@tapjs/fixture":"0.0.0-6","@tapjs/intercept":"0.0.0-6","@tapjs/mock":"0.0.0-6","@tapjs/run":"0.0.0-7","@tapjs/snapshot":"0.0.0-6","@tapjs/spawn":"0.0.0-6","@tapjs/stdin":"0.0.0-6","@tapjs/test":"0.0.0-6","@tapjs/typescript":"0.0.0-6","@tapjs/worker":"0.0.0-6"},"keywords":["assert","tap","test","testing"],"license":"ISC","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-9","readme":"ERROR: No README data found!","gitHead":"2d03437468dcfdf8c8c7ddf2135641267a0dedbe","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-GW3/rRkC3E7EtQt9j0XWL+k8rN5+pVtIKz7kFhqdXQc7TPcAqy31cDCCD8QBLSfGr3suSaPyL50/jNPAmUWDew==","shasum":"02e7f659d4d5916cbf6f2527aaba4acfd34dba62","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-9.tgz","fileCount":24,"unpackedSize":27896,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCx30oZx6lU5CzGOyz3w8TDgTDg/pRWs6l4JqBvQyk3cAIgB7RDiWg9rvvzNAnYhCJaQtVpLba9ey0/MAVAuBfEDl4="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-9_1691430345230_0.2764089334613784"},"_hasShrinkwrap":false},"18.0.0-10":{"name":"tap","version":"18.0.0-10","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"module":"./dist/mjs/esm.mjs","main":"./dist/cjs/cjs.cjs","types":"./dist/cjs/cjs.d.cts","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"dependencies":{"@tapjs/after":"0.0.0-7","@tapjs/after-each":"0.0.0-7","@tapjs/asserts":"0.0.0-7","@tapjs/before":"0.0.0-7","@tapjs/before-each":"0.0.0-7","@tapjs/core":"0.0.0-7","@tapjs/filter":"0.0.0-7","@tapjs/fixture":"0.0.0-7","@tapjs/intercept":"0.0.0-7","@tapjs/mock":"0.0.0-7","@tapjs/run":"0.0.0-8","@tapjs/snapshot":"0.0.0-7","@tapjs/spawn":"0.0.0-7","@tapjs/stdin":"0.0.0-7","@tapjs/test":"0.0.0-7","@tapjs/typescript":"0.0.0-7","@tapjs/worker":"0.0.0-7"},"keywords":["assert","tap","test","testing"],"license":"ISC","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-10","readme":"ERROR: No README data found!","gitHead":"4c9c1ee517871da1794487dca0dcfbe7a83f18d4","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-zPBqxu4/Z2dn5lw6QIohjlbVdbwnInNe6TzsV6k6Et58l7P9J9ijHYw3cFJKkSEMxCQtItecTmclnrHDTUtaKw==","shasum":"0a050b146f277f3fcd0424e9d0ba4f1799a14798","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-10.tgz","fileCount":24,"unpackedSize":27897,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEQ/3qH9FAnhETlIXOLKU6Y/2mQjcaanYDXWX1B0QOAhAiAE0Aq6kTtZV0MKdGKTh0WY+vN+Ptp2KinCz1SCUDEVPg=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-10_1691431558029_0.3987112561098678"},"_hasShrinkwrap":false},"18.0.0-11":{"name":"tap","version":"18.0.0-11","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"module":"./dist/mjs/esm.mjs","main":"./dist/cjs/cjs.cjs","types":"./dist/cjs/cjs.d.cts","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"dependencies":{"@tapjs/after":"0.0.0-8","@tapjs/after-each":"0.0.0-8","@tapjs/asserts":"0.0.0-8","@tapjs/before":"0.0.0-8","@tapjs/before-each":"0.0.0-8","@tapjs/core":"0.0.0-8","@tapjs/filter":"0.0.0-8","@tapjs/fixture":"0.0.0-8","@tapjs/intercept":"0.0.0-8","@tapjs/mock":"0.0.0-8","@tapjs/run":"0.0.0-9","@tapjs/snapshot":"0.0.0-8","@tapjs/spawn":"0.0.0-8","@tapjs/stdin":"0.0.0-8","@tapjs/test":"0.0.0-8","@tapjs/typescript":"0.0.0-8","@tapjs/worker":"0.0.0-8"},"keywords":["assert","tap","test","testing"],"license":"ISC","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-11","readme":"ERROR: No README data found!","gitHead":"f83efd28e6d06b7bf69418bdd84bc41b89b3573b","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-I5FzKlT60/1gwlQZa0rT3PFu+IqLlg0+njIgcsXBaear6gxvi/lnDaEGx6k3e3T0FR7iH4PCoCxbeWvS/sXrWg==","shasum":"89318ad4ae5441e1acc4e83029b8022cbd9880f7","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-11.tgz","fileCount":24,"unpackedSize":27897,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCGo83DqCgjSNUmqOlInQRPpwS3D4U1ELrQQAYY4NeBcwIgRzZ3PYduy9IjnSOOqkCe9TNt2FfHZZqH+3uKF6WZaKI="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-11_1691432432510_0.44803143233187814"},"_hasShrinkwrap":false},"18.0.0-12":{"name":"tap","version":"18.0.0-12","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"module":"./dist/mjs/esm.mjs","main":"./dist/cjs/cjs.cjs","types":"./dist/cjs/cjs.d.cts","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"dependencies":{"@tapjs/after":"0.0.0-9","@tapjs/after-each":"0.0.0-9","@tapjs/asserts":"0.0.0-9","@tapjs/before":"0.0.0-9","@tapjs/before-each":"0.0.0-9","@tapjs/core":"0.0.0-9","@tapjs/filter":"0.0.0-9","@tapjs/fixture":"0.0.0-9","@tapjs/intercept":"0.0.0-9","@tapjs/mock":"0.0.0-9","@tapjs/run":"0.0.0-10","@tapjs/snapshot":"0.0.0-9","@tapjs/spawn":"0.0.0-9","@tapjs/stdin":"0.0.0-9","@tapjs/test":"0.0.0-9","@tapjs/typescript":"0.0.0-9","@tapjs/worker":"0.0.0-9"},"keywords":["assert","tap","test","testing"],"license":"ISC","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-12","readme":"ERROR: No README data found!","gitHead":"54ff3f8d8d40f78b6f2ef60277c7a6802b423f8a","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-cHkm1170xtxUMjDQJ44daCwKfk1GIUt9houU/pzsXQjp3QPQFe9r2NuU/9UIUYFQQe7a6NIy5/Y4PzaFRkDOJw==","shasum":"a85e506e13909bcd9dfba196471fb6160be0cb52","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-12.tgz","fileCount":24,"unpackedSize":27898,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAdZtO02a++QfSj9V+QPfhzqatIhHmdE45gt2wa+19OpAiAV0dASjAR1AN6mcHucMB0hz0sWclhrGYH9ekZUnynDsQ=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-12_1691452285526_0.40157485934497283"},"_hasShrinkwrap":false},"18.0.0-13":{"name":"tap","version":"18.0.0-13","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"type":"module","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"dependencies":{"@tapjs/after":"0.0.0-10","@tapjs/after-each":"0.0.0-10","@tapjs/asserts":"0.0.0-10","@tapjs/before":"0.0.0-10","@tapjs/before-each":"0.0.0-10","@tapjs/core":"0.0.0-10","@tapjs/filter":"0.0.0-10","@tapjs/fixture":"0.0.0-10","@tapjs/intercept":"0.0.0-10","@tapjs/mock":"0.0.0-10","@tapjs/run":"0.0.0-11","@tapjs/snapshot":"0.0.0-10","@tapjs/spawn":"0.0.0-10","@tapjs/stdin":"0.0.0-10","@tapjs/test":"0.0.0-10","@tapjs/typescript":"0.0.0-10","@tapjs/worker":"0.0.0-10"},"keywords":["assert","tap","test","testing"],"license":"ISC","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-13","readme":"ERROR: No README data found!","gitHead":"28002f3c88d5aa4da327ba9afe18199b9df02251","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-oLRkrDK/6moryAYOtfFJ3mPkugE1hoU7/wyKCMBjtLcuwNmM4HFwLnFKvk3Gj0v8XT6pbSEsqg0UagU7RLnBig==","shasum":"8fcc7425b530d06856f7ccafcfd6fa8d0541398e","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-13.tgz","fileCount":24,"unpackedSize":34744,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDneIXQceUKVf2nQUdhYeH1uB8XaeIrxGbkUFWHgK08WgIgEZUII3ThZE9yjaY/zMvs4HDP3X/P1B62J1NYgpzDRpU="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-13_1691610977547_0.921402150368277"},"_hasShrinkwrap":false},"18.0.0-14":{"name":"tap","version":"18.0.0-14","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"type":"module","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"dependencies":{"@tapjs/after":"0.0.0-11","@tapjs/after-each":"0.0.0-11","@tapjs/asserts":"0.0.0-11","@tapjs/before":"0.0.0-11","@tapjs/before-each":"0.0.0-11","@tapjs/core":"0.0.0-11","@tapjs/filter":"0.0.0-11","@tapjs/fixture":"0.0.0-11","@tapjs/intercept":"0.0.0-11","@tapjs/mock":"0.0.0-11","@tapjs/run":"0.0.0-12","@tapjs/snapshot":"0.0.0-11","@tapjs/spawn":"0.0.0-11","@tapjs/stdin":"0.0.0-11","@tapjs/test":"0.0.0-11","@tapjs/typescript":"0.0.0-11","@tapjs/worker":"0.0.0-11"},"keywords":["assert","tap","test","testing"],"license":"ISC","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-14","readme":"# node-tap\n\nA TAP test framework\nfor Node.js.\n\n_Just wanna see some code? [Get\nstarted!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming\nTAP-generating test scripts, and a JavaScript framework for\nwriting such scripts.\n\n\n\n- [Getting started guide](http://www.node-tap.org/basics/)\n- Built-in [test coverage](http://www.node-tap.org/coverage/)\n- Many [reporter formats](http://www.node-tap.org/reporting/)\n- Extensive [API](http://www.node-tap.org/api/) featuring:\n - Great [promise support](http://www.node-tap.org/promises/)\n - Comprehensive [assert\n library](http://www.node-tap.org/asserts/)\n - Other [advanced stuff](http://www.node-tap.org/advanced/)\n - Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n - [Parallel Testing](http://www.node-tap.org/parallel/)\n- [Command-line interface](http://www.node-tap.org/cli/) for\n running tests (whether they use node-tap or not)\n- [Machine-generated API docs](https://tapjs.github.io/tapjs)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for\nrecent updates, or just get started with [the\nbasics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head\nover to [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you\nwhy they're the greatest. This isn't that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design\nchallenge that balances on the intersection of many conflicting\ndemands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a\ntest framework should work, and what it should let you do. I do\n_not_ have any opinion about whether or not you share those\nopinions. If you do share them, you will probably enjoy this test\nlibrary.\n\nHere are the design principles that shape this test framework.\n\n### Test files are \"normal\" programs\n\nAny TAP test can be run directly as a plain old JavaScript\nprogram. Of course, if it's written in TypeScript, you'll\nhave to run it with a TypeScript loader, but otherwise, they\nshould be just like normal programs that run in a normal\nenvironment.\n\nBut there's no runner required to run tests, they don't\nexecute in a special simulated memory space with injected\nglobals, and so on. Because each test runs in its own process,\nthere's no chance of tests becoming dependent on one another's\nleaked globals or causing other confusing situations.\n\n### Tests should help, not get in the way\n\nThe goal of tests is to help you write code. They add reliability\nto your program by adding a layer of \"yes, this does what I think\nit does\". Whether you're doing strict Red-Green-Refactor style\nTDD, or just finger-painting until it feels right and then\nwriting tests to verify what it actually does, writing the tests\nshould feel empowering and straightforward, _reducing_ cognitive\nload rather than increasing it.\n\n### All types must be accurate and complete\n\nThis is simply not reasonable to do with a hand-edited type\ndefinition in `.d.ts` file.\n\nTAP's exported types are built up from its set of plugins and\ninternal classes, assembled into the `Test` class that your test\nprograms interact with. When a plugin is added or removed, the\n`t` in your editor can accurately tell you its new shape.\n\nIf you have to look at the docs too often, that's a bug in my\nopinion. Lean into the beautiful power of code completion.\n\n### TypeScript, ESM, and CommonJS supported out of the box\n\nWith the changes to the module system in Node.js over the\nlast several years, TAP fell down on this requirement in\nversions prior to v18. As of version 18, the entire system has\nbeen rewritten in TypeScript, and built as hybrid ESM/CommonJS\npackages.\n\nYour tests should be written just like your program, with as few\nbarriers as possible. If you can do it in CommonJS, you can do it\nin ESM, and vice versa (at least as far as TAP is concerned).\nWhatever is in your `tsconfig.json` or `package.json`, it should\nJust Work.\n\n### Anything that _can_ be a plugin _is_ a plugin\n\nThe plugin system is leveraged for anything that does not\nabsolutely need to be included in the core.\n\nBasic [TAP](https://testanything.org) generation and flow\ncontrol, error handling, config loading, process management and\nso on, are all included in the core. But TypeScript support,\nmocking, almost all assertion methods, method and property\ninterception and spying, spawning/forking subtests, creating\nfixtures, snapshots, and attaching lifecycle methods (among\nothers) are all relegated to plugins.\n\nThis means that features can be switched on or off or extended\nvery easily.\n\n### Plugins must be powerful and trivial to write correctly\n\nThe plugin interface is extremely simple. Export a `plugin`\nfunction that returns an object. That's it, that's a plugin.\n\nPlugins can also export configuration definitions, which are\nfolded into the set of fields that TAP knows how to parse from\nthe command line or from your `.taprc` file, or export a `loader`\nstring, which will be invoked when spawning test processes.\n\n### High Signal, Low Noise\n\nIt is important to give a lot of information about test failures,\nthrows, and so on, so that you can easily jump straight to the\nappropriate place in the code to fix the problem. And, it's\nusually helpful to see which tests are actually running.\n\nHowever, a screen full of green checkmarks and `100% Covered!`\nisn't very useful. It should be just enough to know what happened\nand easily diagnose any problems, and otherwise fairly quiet.\n\nLow information output has been trimmed down as much as possible\nfrom the default reporters. Coverage information is only shown\nwhen it has something relevant to say. TAP tries to show you\nexactly what you need to see, and nothing else. Stack traces have\nnoisy internals trimmed out, so it's easier to see exactly where\nin _your_ code the problem happened. Source maps are always\nenabled, because you need to know where the actual code is, not\njust which built artifact failed.\n\nIf the default reporter isn't terse enough for your liking, try\n`tap -Rterse`.\n\n### Assertions don't throw (but throws are handled nicely)\n\nI frequently write programs that have many hundreds of assertions\nbased on some list of test cases. If the first failure throws,\nthen I don't know if I've failed 100 tests or 1, without wrapping\neverything in a try-catch. Furthermore, I usually want to see\nsome kind of output or reporting to verify that each one actually\nran.\n\nBasically, it should be your decision whether you want to throw\nor not. The test framework shouldn't force that on you, and\nshould make either case easy.\n\n### Test reporting should be useful, extensible, and accessible\n\nThe [raw test output](https://www.node-tap.org/tap-format/)\nis machine-parseable and human-intelligible, a separate component\nconsumes test output and turns it into a [pretty summarized\nreport](https://www.node-tap.org/reporting/). This means that\ntest data can be stored and parsed later, dug into for additional\ndetails, and so on.\n\nRed and green are the conventional colors meaning \"removed\" and\n\"added\", but they're also exactly the same color for many people.\nAll of the color choices in the reporter are tested rigorously\nagainst simulators for protanopia, deuteranopia, tritanopia, and\nmonochromicity.\n\n### Test coverage is always on\n\nRunning tests with coverage changes the way that you think\nabout your programs, and provides much deeper insight.\nTAP uses V8's internal coverage mechanisms directly, and verifies\nthat tests provide 100% coverage of all lines, branches,\nfunctions, and statements in the system under test. It uses\n[C8](https://npmjs.com/c8) to analyze the V8 coverage data and\ngenerate coverage reports.\n\nMissing coverage means that you are relying on untested code, so\nthis is treated as a test failure. If you have some bit of code\nwhich is actually _impossible_ to test for some reason, wrap it\nin the appropriate `/* c8 ignore start */` / `/* c8 ignore end\n*/` comments to exclude those lines from the analysis. But think\ncarefully about whether that's really the case. Usually, if you\nhave to coverage-ignore something, it's a sign that you need to\neither delete that code or refactor it into a more easily tested\nmodule.\n\n-----\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual. It should be\nfun, because making stuff is fun, and it helps you make better\nstuff.\n\nThere are many opinions left off of this list! Reasonable people\ncan disagree. But if you find yourself nodding along, [maybe tap\nis for you](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"3bfcd960deebf6e2235d5093c998e1d0a8d1b0b3","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-z0xz8VblIqkghvJY3QojPHOR4a/nSKsRa9/duGypkMDZpiYq3z66Exbfh0IcGtfXmsl0TUwz7WDeDkkg1yiVbA==","shasum":"ce0328dc9c95c3ace3ee14ee76786ef9330348fd","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-14.tgz","fileCount":25,"unpackedSize":43733,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCVomsQJrtAWah6gVBj2ZXKgTvIhDF3UbiNzXBcCIsHAwIgLkT5B5ZiEgKSy1hiCLYPwXvJEgCoubkRnd9vA7rBaVE="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-14_1691867443332_0.3022184948302371"},"_hasShrinkwrap":false},"18.0.0-15":{"name":"tap","version":"18.0.0-15","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"type":"module","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"dependencies":{"@tapjs/after":"0.0.0-12","@tapjs/after-each":"0.0.0-12","@tapjs/asserts":"0.0.0-12","@tapjs/before":"0.0.0-12","@tapjs/before-each":"0.0.0-12","@tapjs/core":"0.0.0-12","@tapjs/filter":"0.0.0-12","@tapjs/fixture":"0.0.0-12","@tapjs/intercept":"0.0.0-12","@tapjs/mock":"0.0.0-12","@tapjs/run":"0.0.0-13","@tapjs/snapshot":"0.0.0-12","@tapjs/spawn":"0.0.0-12","@tapjs/stdin":"0.0.0-12","@tapjs/test":"0.0.0-12","@tapjs/typescript":"0.0.0-12","@tapjs/worker":"0.0.0-12"},"keywords":["assert","tap","test","testing"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-15","readme":"# node-tap\n\nA TAP test framework\nfor Node.js.\n\n_Just wanna see some code? [Get\nstarted!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming\nTAP-generating test scripts, and a JavaScript framework for\nwriting such scripts.\n\n\n\n- [Getting started guide](http://www.node-tap.org/basics/)\n- Built-in [test coverage](http://www.node-tap.org/coverage/)\n- Many [reporter formats](http://www.node-tap.org/reporting/)\n- Extensive [API](http://www.node-tap.org/api/) featuring:\n - Great [promise support](http://www.node-tap.org/promises/)\n - Comprehensive [assert\n library](http://www.node-tap.org/asserts/)\n - Other [advanced stuff](http://www.node-tap.org/advanced/)\n - Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n - [Parallel Testing](http://www.node-tap.org/parallel/)\n- [Command-line interface](http://www.node-tap.org/cli/) for\n running tests (whether they use node-tap or not)\n- [Machine-generated API docs](https://tapjs.github.io/tapjs)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for\nrecent updates, or just get started with [the\nbasics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head\nover to [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you\nwhy they're the greatest. This isn't that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design\nchallenge that balances on the intersection of many conflicting\ndemands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a\ntest framework should work, and what it should let you do. I do\n_not_ have any opinion about whether or not you share those\nopinions. If you do share them, you will probably enjoy this test\nlibrary.\n\nHere are the design principles that shape this test framework.\n\n### Test files are \"normal\" programs\n\nAny TAP test can be run directly as a plain old JavaScript\nprogram. Of course, if it's written in TypeScript, you'll\nhave to run it with a TypeScript loader, but otherwise, they\nshould be just like normal programs that run in a normal\nenvironment.\n\nBut there's no runner required to run tests, they don't\nexecute in a special simulated memory space with injected\nglobals, and so on. Because each test runs in its own process,\nthere's no chance of tests becoming dependent on one another's\nleaked globals or causing other confusing situations.\n\n### Tests should help, not get in the way\n\nThe goal of tests is to help you write code. They add reliability\nto your program by adding a layer of \"yes, this does what I think\nit does\". Whether you're doing strict Red-Green-Refactor style\nTDD, or just finger-painting until it feels right and then\nwriting tests to verify what it actually does, writing the tests\nshould feel empowering and straightforward, _reducing_ cognitive\nload rather than increasing it.\n\n### All types must be accurate and complete\n\nThis is simply not reasonable to do with a hand-edited type\ndefinition in `.d.ts` file.\n\nTAP's exported types are built up from its set of plugins and\ninternal classes, assembled into the `Test` class that your test\nprograms interact with. When a plugin is added or removed, the\n`t` in your editor can accurately tell you its new shape.\n\nIf you have to look at the docs too often, that's a bug in my\nopinion. Lean into the beautiful power of code completion.\n\n### TypeScript, ESM, and CommonJS supported out of the box\n\nWith the changes to the module system in Node.js over the\nlast several years, TAP fell down on this requirement in\nversions prior to v18. As of version 18, the entire system has\nbeen rewritten in TypeScript, and built as hybrid ESM/CommonJS\npackages.\n\nYour tests should be written just like your program, with as few\nbarriers as possible. If you can do it in CommonJS, you can do it\nin ESM, and vice versa (at least as far as TAP is concerned).\nWhatever is in your `tsconfig.json` or `package.json`, it should\nJust Work.\n\n### Anything that _can_ be a plugin _is_ a plugin\n\nThe plugin system is leveraged for anything that does not\nabsolutely need to be included in the core.\n\nBasic [TAP](https://testanything.org) generation and flow\ncontrol, error handling, config loading, process management and\nso on, are all included in the core. But TypeScript support,\nmocking, almost all assertion methods, method and property\ninterception and spying, spawning/forking subtests, creating\nfixtures, snapshots, and attaching lifecycle methods (among\nothers) are all relegated to plugins.\n\nThis means that features can be switched on or off or extended\nvery easily.\n\n### Plugins must be powerful and trivial to write correctly\n\nThe plugin interface is extremely simple. Export a `plugin`\nfunction that returns an object. That's it, that's a plugin.\n\nPlugins can also export configuration definitions, which are\nfolded into the set of fields that TAP knows how to parse from\nthe command line or from your `.taprc` file, or export a `loader`\nstring, which will be invoked when spawning test processes.\n\n### High Signal, Low Noise\n\nIt is important to give a lot of information about test failures,\nthrows, and so on, so that you can easily jump straight to the\nappropriate place in the code to fix the problem. And, it's\nusually helpful to see which tests are actually running.\n\nHowever, a screen full of green checkmarks and `100% Covered!`\nisn't very useful. It should be just enough to know what happened\nand easily diagnose any problems, and otherwise fairly quiet.\n\nLow information output has been trimmed down as much as possible\nfrom the default reporters. Coverage information is only shown\nwhen it has something relevant to say. TAP tries to show you\nexactly what you need to see, and nothing else. Stack traces have\nnoisy internals trimmed out, so it's easier to see exactly where\nin _your_ code the problem happened. Source maps are always\nenabled, because you need to know where the actual code is, not\njust which built artifact failed.\n\nIf the default reporter isn't terse enough for your liking, try\n`tap -Rterse`.\n\n### Assertions don't throw (but throws are handled nicely)\n\nI frequently write programs that have many hundreds of assertions\nbased on some list of test cases. If the first failure throws,\nthen I don't know if I've failed 100 tests or 1, without wrapping\neverything in a try-catch. Furthermore, I usually want to see\nsome kind of output or reporting to verify that each one actually\nran.\n\nBasically, it should be your decision whether you want to throw\nor not. The test framework shouldn't force that on you, and\nshould make either case easy.\n\n### Test reporting should be useful, extensible, and accessible\n\nThe [raw test output](https://www.node-tap.org/tap-format/)\nis machine-parseable and human-intelligible, a separate component\nconsumes test output and turns it into a [pretty summarized\nreport](https://www.node-tap.org/reporting/). This means that\ntest data can be stored and parsed later, dug into for additional\ndetails, and so on.\n\nRed and green are the conventional colors meaning \"removed\" and\n\"added\", but they're also exactly the same color for many people.\nAll of the color choices in the reporter are tested rigorously\nagainst simulators for protanopia, deuteranopia, tritanopia, and\nmonochromicity.\n\n### Test coverage is always on\n\nRunning tests with coverage changes the way that you think\nabout your programs, and provides much deeper insight.\nTAP uses V8's internal coverage mechanisms directly, and verifies\nthat tests provide 100% coverage of all lines, branches,\nfunctions, and statements in the system under test. It uses\n[C8](https://npmjs.com/c8) to analyze the V8 coverage data and\ngenerate coverage reports.\n\nMissing coverage means that you are relying on untested code, so\nthis is treated as a test failure. If you have some bit of code\nwhich is actually _impossible_ to test for some reason, wrap it\nin the appropriate `/* c8 ignore start */` / `/* c8 ignore end\n*/` comments to exclude those lines from the analysis. But think\ncarefully about whether that's really the case. Usually, if you\nhave to coverage-ignore something, it's a sign that you need to\neither delete that code or refactor it into a more easily tested\nmodule.\n\n-----\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual. It should be\nfun, because making stuff is fun, and it helps you make better\nstuff.\n\nThere are many opinions left off of this list! Reasonable people\ncan disagree. But if you find yourself nodding along, [maybe tap\nis for you](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"9a0e78ebb01ade449d8c077d0cc7a936772cd2c5","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-oD6rdY93bYgklrIDjOnpaHflfx1IhISzvR3fvG2F0o21qIZfXdSwjSKGu2vFlzidkBfecjFhFo05ow+cQk/ctA==","shasum":"e9df5176b68d5b8769f9c3842c8040be37e78a7f","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-15.tgz","fileCount":25,"unpackedSize":43743,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHIdvNqPK+w7MMTINouFIyqQSSlPG6eO6tMoxjDOiCsoAiEAtd0uuqsnzNqt9EYkm/XGR8hwKYzJtRvhcMqp0Aeytj0="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-15_1692080176651_0.8522614000048501"},"_hasShrinkwrap":false},"18.0.0-16":{"name":"tap","version":"18.0.0-16","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"type":"module","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"dependencies":{"@tapjs/after":"0.0.0-13","@tapjs/after-each":"0.0.0-13","@tapjs/asserts":"0.0.0-13","@tapjs/before":"0.0.0-13","@tapjs/before-each":"0.0.0-13","@tapjs/core":"0.0.0-13","@tapjs/filter":"0.0.0-13","@tapjs/fixture":"0.0.0-13","@tapjs/intercept":"0.0.0-13","@tapjs/mock":"0.0.0-13","@tapjs/run":"0.0.0-14","@tapjs/snapshot":"0.0.0-13","@tapjs/spawn":"0.0.0-13","@tapjs/stdin":"0.0.0-13","@tapjs/test":"0.0.0-13","@tapjs/typescript":"0.0.0-13","@tapjs/worker":"0.0.0-13"},"keywords":["assert","tap","test","testing"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-16","readme":"# node-tap\n\nA TAP test framework\nfor Node.js.\n\n_Just wanna see some code? [Get\nstarted!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming\nTAP-generating test scripts, and a JavaScript framework for\nwriting such scripts.\n\n\n\n- [Getting started guide](http://www.node-tap.org/basics/)\n- Built-in [test coverage](http://www.node-tap.org/coverage/)\n- Many [reporter formats](http://www.node-tap.org/reporting/)\n- Extensive [API](http://www.node-tap.org/api/) featuring:\n - Great [promise support](http://www.node-tap.org/promises/)\n - Comprehensive [assert\n library](http://www.node-tap.org/asserts/)\n - Other [advanced stuff](http://www.node-tap.org/advanced/)\n - Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n - [Parallel Testing](http://www.node-tap.org/parallel/)\n- [Command-line interface](http://www.node-tap.org/cli/) for\n running tests (whether they use node-tap or not)\n- [Machine-generated API docs](https://tapjs.github.io/tapjs)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for\nrecent updates, or just get started with [the\nbasics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head\nover to [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you\nwhy they're the greatest. This isn't that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design\nchallenge that balances on the intersection of many conflicting\ndemands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a\ntest framework should work, and what it should let you do. I do\n_not_ have any opinion about whether or not you share those\nopinions. If you do share them, you will probably enjoy this test\nlibrary.\n\nHere are the design principles that shape this test framework.\n\n### Test files are \"normal\" programs\n\nAny TAP test can be run directly as a plain old JavaScript\nprogram. Of course, if it's written in TypeScript, you'll\nhave to run it with a TypeScript loader, but otherwise, they\nshould be just like normal programs that run in a normal\nenvironment.\n\nBut there's no runner required to run tests, they don't\nexecute in a special simulated memory space with injected\nglobals, and so on. Because each test runs in its own process,\nthere's no chance of tests becoming dependent on one another's\nleaked globals or causing other confusing situations.\n\n### Tests should help, not get in the way\n\nThe goal of tests is to help you write code. They add reliability\nto your program by adding a layer of \"yes, this does what I think\nit does\". Whether you're doing strict Red-Green-Refactor style\nTDD, or just finger-painting until it feels right and then\nwriting tests to verify what it actually does, writing the tests\nshould feel empowering and straightforward, _reducing_ cognitive\nload rather than increasing it.\n\n### All types must be accurate and complete\n\nThis is simply not reasonable to do with a hand-edited type\ndefinition in `.d.ts` file.\n\nTAP's exported types are built up from its set of plugins and\ninternal classes, assembled into the `Test` class that your test\nprograms interact with. When a plugin is added or removed, the\n`t` in your editor can accurately tell you its new shape.\n\nIf you have to look at the docs too often, that's a bug in my\nopinion. Lean into the beautiful power of code completion.\n\n### TypeScript, ESM, and CommonJS supported out of the box\n\nWith the changes to the module system in Node.js over the\nlast several years, TAP fell down on this requirement in\nversions prior to v18. As of version 18, the entire system has\nbeen rewritten in TypeScript, and built as hybrid ESM/CommonJS\npackages.\n\nYour tests should be written just like your program, with as few\nbarriers as possible. If you can do it in CommonJS, you can do it\nin ESM, and vice versa (at least as far as TAP is concerned).\nWhatever is in your `tsconfig.json` or `package.json`, it should\nJust Work.\n\n### Anything that _can_ be a plugin _is_ a plugin\n\nThe plugin system is leveraged for anything that does not\nabsolutely need to be included in the core.\n\nBasic [TAP](https://testanything.org) generation and flow\ncontrol, error handling, config loading, process management and\nso on, are all included in the core. But TypeScript support,\nmocking, almost all assertion methods, method and property\ninterception and spying, spawning/forking subtests, creating\nfixtures, snapshots, and attaching lifecycle methods (among\nothers) are all relegated to plugins.\n\nThis means that features can be switched on or off or extended\nvery easily.\n\n### Plugins must be powerful and trivial to write correctly\n\nThe plugin interface is extremely simple. Export a `plugin`\nfunction that returns an object. That's it, that's a plugin.\n\nPlugins can also export configuration definitions, which are\nfolded into the set of fields that TAP knows how to parse from\nthe command line or from your `.taprc` file, or export a `loader`\nstring, which will be invoked when spawning test processes.\n\n### High Signal, Low Noise\n\nIt is important to give a lot of information about test failures,\nthrows, and so on, so that you can easily jump straight to the\nappropriate place in the code to fix the problem. And, it's\nusually helpful to see which tests are actually running.\n\nHowever, a screen full of green checkmarks and `100% Covered!`\nisn't very useful. It should be just enough to know what happened\nand easily diagnose any problems, and otherwise fairly quiet.\n\nLow information output has been trimmed down as much as possible\nfrom the default reporters. Coverage information is only shown\nwhen it has something relevant to say. TAP tries to show you\nexactly what you need to see, and nothing else. Stack traces have\nnoisy internals trimmed out, so it's easier to see exactly where\nin _your_ code the problem happened. Source maps are always\nenabled, because you need to know where the actual code is, not\njust which built artifact failed.\n\nIf the default reporter isn't terse enough for your liking, try\n`tap -Rterse`.\n\n### Assertions don't throw (but throws are handled nicely)\n\nI frequently write programs that have many hundreds of assertions\nbased on some list of test cases. If the first failure throws,\nthen I don't know if I've failed 100 tests or 1, without wrapping\neverything in a try-catch. Furthermore, I usually want to see\nsome kind of output or reporting to verify that each one actually\nran.\n\nBasically, it should be your decision whether you want to throw\nor not. The test framework shouldn't force that on you, and\nshould make either case easy.\n\n### Test reporting should be useful, extensible, and accessible\n\nThe [raw test output](https://www.node-tap.org/tap-format/)\nis machine-parseable and human-intelligible, a separate component\nconsumes test output and turns it into a [pretty summarized\nreport](https://www.node-tap.org/reporting/). This means that\ntest data can be stored and parsed later, dug into for additional\ndetails, and so on.\n\nRed and green are the conventional colors meaning \"removed\" and\n\"added\", but they're also exactly the same color for many people.\nAll of the color choices in the reporter are tested rigorously\nagainst simulators for protanopia, deuteranopia, tritanopia, and\nmonochromicity.\n\n### Test coverage is always on\n\nRunning tests with coverage changes the way that you think\nabout your programs, and provides much deeper insight.\nTAP uses V8's internal coverage mechanisms directly, and verifies\nthat tests provide 100% coverage of all lines, branches,\nfunctions, and statements in the system under test. It uses\n[C8](https://npmjs.com/c8) to analyze the V8 coverage data and\ngenerate coverage reports.\n\nMissing coverage means that you are relying on untested code, so\nthis is treated as a test failure. If you have some bit of code\nwhich is actually _impossible_ to test for some reason, wrap it\nin the appropriate `/* c8 ignore start */` / `/* c8 ignore end\n*/` comments to exclude those lines from the analysis. But think\ncarefully about whether that's really the case. Usually, if you\nhave to coverage-ignore something, it's a sign that you need to\neither delete that code or refactor it into a more easily tested\nmodule.\n\n-----\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual. It should be\nfun, because making stuff is fun, and it helps you make better\nstuff.\n\nThere are many opinions left off of this list! Reasonable people\ncan disagree. But if you find yourself nodding along, [maybe tap\nis for you](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"6df5d992fcd8b24314c48f79e787be438e02f89e","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-JE2n1oYNgrJuLxBeiEkOca/qIMMo10eIiHg8tAJ6JmZxhSwqoVI9j1+5rcRWGRGLrAjGPfBLRAU4erBeRJUmQg==","shasum":"3fb116923a08aedde5d16adaf1600de76850f164","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-16.tgz","fileCount":25,"unpackedSize":43743,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICjbeBNg/K98us3t2EhzJPLD/JNbliR5T8zzMUxwChd0AiBkzoNjEH85LO0sZfx2OztiDuzYBHnMV9QF/vX4GKx5kw=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-16_1692304563992_0.5183957317410048"},"_hasShrinkwrap":false},"18.0.0-17":{"name":"tap","version":"18.0.0-17","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"type":"module","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"dependencies":{"@tapjs/after":"0.0.0-13","@tapjs/after-each":"0.0.0-13","@tapjs/asserts":"0.0.0-13","@tapjs/before":"0.0.0-13","@tapjs/before-each":"0.0.0-13","@tapjs/core":"0.0.0-13","@tapjs/filter":"0.0.0-13","@tapjs/fixture":"0.0.0-13","@tapjs/intercept":"0.0.0-13","@tapjs/mock":"0.0.0-14","@tapjs/run":"0.0.0-15","@tapjs/snapshot":"0.0.0-13","@tapjs/spawn":"0.0.0-13","@tapjs/stdin":"0.0.0-13","@tapjs/test":"0.0.0-13","@tapjs/typescript":"0.0.0-13","@tapjs/worker":"0.0.0-13"},"keywords":["assert","tap","test","testing"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-17","readme":"# node-tap\n\nA TAP test framework\nfor Node.js.\n\n_Just wanna see some code? [Get\nstarted!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming\nTAP-generating test scripts, and a JavaScript framework for\nwriting such scripts.\n\n\n\n- [Getting started guide](http://www.node-tap.org/basics/)\n- Built-in [test coverage](http://www.node-tap.org/coverage/)\n- Many [reporter formats](http://www.node-tap.org/reporting/)\n- Extensive [API](http://www.node-tap.org/api/) featuring:\n - Great [promise support](http://www.node-tap.org/promises/)\n - Comprehensive [assert\n library](http://www.node-tap.org/asserts/)\n - Other [advanced stuff](http://www.node-tap.org/advanced/)\n - Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n - [Parallel Testing](http://www.node-tap.org/parallel/)\n- [Command-line interface](http://www.node-tap.org/cli/) for\n running tests (whether they use node-tap or not)\n- [Machine-generated API docs](https://tapjs.github.io/tapjs)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for\nrecent updates, or just get started with [the\nbasics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head\nover to [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you\nwhy they're the greatest. This isn't that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design\nchallenge that balances on the intersection of many conflicting\ndemands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a\ntest framework should work, and what it should let you do. I do\n_not_ have any opinion about whether or not you share those\nopinions. If you do share them, you will probably enjoy this test\nlibrary.\n\nHere are the design principles that shape this test framework.\n\n### Test files are \"normal\" programs\n\nAny TAP test can be run directly as a plain old JavaScript\nprogram. Of course, if it's written in TypeScript, you'll\nhave to run it with a TypeScript loader, but otherwise, they\nshould be just like normal programs that run in a normal\nenvironment.\n\nBut there's no runner required to run tests, they don't\nexecute in a special simulated memory space with injected\nglobals, and so on. Because each test runs in its own process,\nthere's no chance of tests becoming dependent on one another's\nleaked globals or causing other confusing situations.\n\n### Tests should help, not get in the way\n\nThe goal of tests is to help you write code. They add reliability\nto your program by adding a layer of \"yes, this does what I think\nit does\". Whether you're doing strict Red-Green-Refactor style\nTDD, or just finger-painting until it feels right and then\nwriting tests to verify what it actually does, writing the tests\nshould feel empowering and straightforward, _reducing_ cognitive\nload rather than increasing it.\n\n### All types must be accurate and complete\n\nThis is simply not reasonable to do with a hand-edited type\ndefinition in `.d.ts` file.\n\nTAP's exported types are built up from its set of plugins and\ninternal classes, assembled into the `Test` class that your test\nprograms interact with. When a plugin is added or removed, the\n`t` in your editor can accurately tell you its new shape.\n\nIf you have to look at the docs too often, that's a bug in my\nopinion. Lean into the beautiful power of code completion.\n\n### TypeScript, ESM, and CommonJS supported out of the box\n\nWith the changes to the module system in Node.js over the\nlast several years, TAP fell down on this requirement in\nversions prior to v18. As of version 18, the entire system has\nbeen rewritten in TypeScript, and built as hybrid ESM/CommonJS\npackages.\n\nYour tests should be written just like your program, with as few\nbarriers as possible. If you can do it in CommonJS, you can do it\nin ESM, and vice versa (at least as far as TAP is concerned).\nWhatever is in your `tsconfig.json` or `package.json`, it should\nJust Work.\n\n### Anything that _can_ be a plugin _is_ a plugin\n\nThe plugin system is leveraged for anything that does not\nabsolutely need to be included in the core.\n\nBasic [TAP](https://testanything.org) generation and flow\ncontrol, error handling, config loading, process management and\nso on, are all included in the core. But TypeScript support,\nmocking, almost all assertion methods, method and property\ninterception and spying, spawning/forking subtests, creating\nfixtures, snapshots, and attaching lifecycle methods (among\nothers) are all relegated to plugins.\n\nThis means that features can be switched on or off or extended\nvery easily.\n\n### Plugins must be powerful and trivial to write correctly\n\nThe plugin interface is extremely simple. Export a `plugin`\nfunction that returns an object. That's it, that's a plugin.\n\nPlugins can also export configuration definitions, which are\nfolded into the set of fields that TAP knows how to parse from\nthe command line or from your `.taprc` file, or export a `loader`\nstring, which will be invoked when spawning test processes.\n\n### High Signal, Low Noise\n\nIt is important to give a lot of information about test failures,\nthrows, and so on, so that you can easily jump straight to the\nappropriate place in the code to fix the problem. And, it's\nusually helpful to see which tests are actually running.\n\nHowever, a screen full of green checkmarks and `100% Covered!`\nisn't very useful. It should be just enough to know what happened\nand easily diagnose any problems, and otherwise fairly quiet.\n\nLow information output has been trimmed down as much as possible\nfrom the default reporters. Coverage information is only shown\nwhen it has something relevant to say. TAP tries to show you\nexactly what you need to see, and nothing else. Stack traces have\nnoisy internals trimmed out, so it's easier to see exactly where\nin _your_ code the problem happened. Source maps are always\nenabled, because you need to know where the actual code is, not\njust which built artifact failed.\n\nIf the default reporter isn't terse enough for your liking, try\n`tap -Rterse`.\n\n### Assertions don't throw (but throws are handled nicely)\n\nI frequently write programs that have many hundreds of assertions\nbased on some list of test cases. If the first failure throws,\nthen I don't know if I've failed 100 tests or 1, without wrapping\neverything in a try-catch. Furthermore, I usually want to see\nsome kind of output or reporting to verify that each one actually\nran.\n\nBasically, it should be your decision whether you want to throw\nor not. The test framework shouldn't force that on you, and\nshould make either case easy.\n\n### Test reporting should be useful, extensible, and accessible\n\nThe [raw test output](https://www.node-tap.org/tap-format/)\nis machine-parseable and human-intelligible, a separate component\nconsumes test output and turns it into a [pretty summarized\nreport](https://www.node-tap.org/reporting/). This means that\ntest data can be stored and parsed later, dug into for additional\ndetails, and so on.\n\nRed and green are the conventional colors meaning \"removed\" and\n\"added\", but they're also exactly the same color for many people.\nAll of the color choices in the reporter are tested rigorously\nagainst simulators for protanopia, deuteranopia, tritanopia, and\nmonochromicity.\n\n### Test coverage is always on\n\nRunning tests with coverage changes the way that you think\nabout your programs, and provides much deeper insight.\nTAP uses V8's internal coverage mechanisms directly, and verifies\nthat tests provide 100% coverage of all lines, branches,\nfunctions, and statements in the system under test. It uses\n[C8](https://npmjs.com/c8) to analyze the V8 coverage data and\ngenerate coverage reports.\n\nMissing coverage means that you are relying on untested code, so\nthis is treated as a test failure. If you have some bit of code\nwhich is actually _impossible_ to test for some reason, wrap it\nin the appropriate `/* c8 ignore start */` / `/* c8 ignore end\n*/` comments to exclude those lines from the analysis. But think\ncarefully about whether that's really the case. Usually, if you\nhave to coverage-ignore something, it's a sign that you need to\neither delete that code or refactor it into a more easily tested\nmodule.\n\n-----\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual. It should be\nfun, because making stuff is fun, and it helps you make better\nstuff.\n\nThere are many opinions left off of this list! Reasonable people\ncan disagree. But if you find yourself nodding along, [maybe tap\nis for you](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"bc2b652b1476a691a97563396fefd32312c1d8e4","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-eabnHtdxGDBKFe2AkNiP7Xm9nufEWD5xxgT3+TamJY5FWfWvb2r5/x/xwo4NzF9ek/XJCn5bKTO8foLBAwonSQ==","shasum":"ce856f1af2e177f58f4a3393830b1834e7ab08a0","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-17.tgz","fileCount":25,"unpackedSize":43743,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG1kzui4ML2IQTSf64SR9wKeLIm5mXmmhkO89OUwQfIBAiEAglR92SlEQzxBCwEfWFi0uWFHgfyy9Sfx2oQSv6O6pb0="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-17_1692320072977_0.8900386592651965"},"_hasShrinkwrap":false},"18.0.0-18":{"name":"tap","version":"18.0.0-18","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"type":"module","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"dependencies":{"@tapjs/after":"0.0.0-14","@tapjs/after-each":"0.0.0-14","@tapjs/asserts":"0.0.0-14","@tapjs/before":"0.0.0-14","@tapjs/before-each":"0.0.0-14","@tapjs/core":"0.0.0-14","@tapjs/filter":"0.0.0-14","@tapjs/fixture":"0.0.0-14","@tapjs/intercept":"0.0.0-14","@tapjs/mock":"0.0.0-15","@tapjs/run":"0.0.0-16","@tapjs/snapshot":"0.0.0-14","@tapjs/spawn":"0.0.0-14","@tapjs/stdin":"0.0.0-14","@tapjs/test":"0.0.0-14","@tapjs/typescript":"0.0.0-14","@tapjs/worker":"0.0.0-14"},"keywords":["assert","tap","test","testing"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-18","readme":"# node-tap\n\nA TAP test framework\nfor Node.js.\n\n_Just wanna see some code? [Get\nstarted!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming\nTAP-generating test scripts, and a JavaScript framework for\nwriting such scripts.\n\n\n\n- [Getting started guide](http://www.node-tap.org/basics/)\n- Built-in [test coverage](http://www.node-tap.org/coverage/)\n- Many [reporter formats](http://www.node-tap.org/reporting/)\n- Extensive [API](http://www.node-tap.org/api/) featuring:\n - Great [promise support](http://www.node-tap.org/promises/)\n - Comprehensive [assert\n library](http://www.node-tap.org/asserts/)\n - Other [advanced stuff](http://www.node-tap.org/advanced/)\n - Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n - [Parallel Testing](http://www.node-tap.org/parallel/)\n- [Command-line interface](http://www.node-tap.org/cli/) for\n running tests (whether they use node-tap or not)\n- [Machine-generated API docs](https://tapjs.github.io/tapjs)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for\nrecent updates, or just get started with [the\nbasics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head\nover to [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you\nwhy they're the greatest. This isn't that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design\nchallenge that balances on the intersection of many conflicting\ndemands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a\ntest framework should work, and what it should let you do. I do\n_not_ have any opinion about whether or not you share those\nopinions. If you do share them, you will probably enjoy this test\nlibrary.\n\nHere are the design principles that shape this test framework.\n\n### Test files are \"normal\" programs\n\nAny TAP test can be run directly as a plain old JavaScript\nprogram. Of course, if it's written in TypeScript, you'll\nhave to run it with a TypeScript loader, but otherwise, they\nshould be just like normal programs that run in a normal\nenvironment.\n\nBut there's no runner required to run tests, they don't\nexecute in a special simulated memory space with injected\nglobals, and so on. Because each test runs in its own process,\nthere's no chance of tests becoming dependent on one another's\nleaked globals or causing other confusing situations.\n\n### Tests should help, not get in the way\n\nThe goal of tests is to help you write code. They add reliability\nto your program by adding a layer of \"yes, this does what I think\nit does\". Whether you're doing strict Red-Green-Refactor style\nTDD, or just finger-painting until it feels right and then\nwriting tests to verify what it actually does, writing the tests\nshould feel empowering and straightforward, _reducing_ cognitive\nload rather than increasing it.\n\n### All types must be accurate and complete\n\nThis is simply not reasonable to do with a hand-edited type\ndefinition in `.d.ts` file.\n\nTAP's exported types are built up from its set of plugins and\ninternal classes, assembled into the `Test` class that your test\nprograms interact with. When a plugin is added or removed, the\n`t` in your editor can accurately tell you its new shape.\n\nIf you have to look at the docs too often, that's a bug in my\nopinion. Lean into the beautiful power of code completion.\n\n### TypeScript, ESM, and CommonJS supported out of the box\n\nWith the changes to the module system in Node.js over the\nlast several years, TAP fell down on this requirement in\nversions prior to v18. As of version 18, the entire system has\nbeen rewritten in TypeScript, and built as hybrid ESM/CommonJS\npackages.\n\nYour tests should be written just like your program, with as few\nbarriers as possible. If you can do it in CommonJS, you can do it\nin ESM, and vice versa (at least as far as TAP is concerned).\nWhatever is in your `tsconfig.json` or `package.json`, it should\nJust Work.\n\n### Anything that _can_ be a plugin _is_ a plugin\n\nThe plugin system is leveraged for anything that does not\nabsolutely need to be included in the core.\n\nBasic [TAP](https://testanything.org) generation and flow\ncontrol, error handling, config loading, process management and\nso on, are all included in the core. But TypeScript support,\nmocking, almost all assertion methods, method and property\ninterception and spying, spawning/forking subtests, creating\nfixtures, snapshots, and attaching lifecycle methods (among\nothers) are all relegated to plugins.\n\nThis means that features can be switched on or off or extended\nvery easily.\n\n### Plugins must be powerful and trivial to write correctly\n\nThe plugin interface is extremely simple. Export a `plugin`\nfunction that returns an object. That's it, that's a plugin.\n\nPlugins can also export configuration definitions, which are\nfolded into the set of fields that TAP knows how to parse from\nthe command line or from your `.taprc` file, or export a `loader`\nstring, which will be invoked when spawning test processes.\n\n### High Signal, Low Noise\n\nIt is important to give a lot of information about test failures,\nthrows, and so on, so that you can easily jump straight to the\nappropriate place in the code to fix the problem. And, it's\nusually helpful to see which tests are actually running.\n\nHowever, a screen full of green checkmarks and `100% Covered!`\nisn't very useful. It should be just enough to know what happened\nand easily diagnose any problems, and otherwise fairly quiet.\n\nLow information output has been trimmed down as much as possible\nfrom the default reporters. Coverage information is only shown\nwhen it has something relevant to say. TAP tries to show you\nexactly what you need to see, and nothing else. Stack traces have\nnoisy internals trimmed out, so it's easier to see exactly where\nin _your_ code the problem happened. Source maps are always\nenabled, because you need to know where the actual code is, not\njust which built artifact failed.\n\nIf the default reporter isn't terse enough for your liking, try\n`tap -Rterse`.\n\n### Assertions don't throw (but throws are handled nicely)\n\nI frequently write programs that have many hundreds of assertions\nbased on some list of test cases. If the first failure throws,\nthen I don't know if I've failed 100 tests or 1, without wrapping\neverything in a try-catch. Furthermore, I usually want to see\nsome kind of output or reporting to verify that each one actually\nran.\n\nBasically, it should be your decision whether you want to throw\nor not. The test framework shouldn't force that on you, and\nshould make either case easy.\n\n### Test reporting should be useful, extensible, and accessible\n\nThe [raw test output](https://www.node-tap.org/tap-format/)\nis machine-parseable and human-intelligible, a separate component\nconsumes test output and turns it into a [pretty summarized\nreport](https://www.node-tap.org/reporting/). This means that\ntest data can be stored and parsed later, dug into for additional\ndetails, and so on.\n\nRed and green are the conventional colors meaning \"removed\" and\n\"added\", but they're also exactly the same color for many people.\nAll of the color choices in the reporter are tested rigorously\nagainst simulators for protanopia, deuteranopia, tritanopia, and\nmonochromicity.\n\n### Test coverage is always on\n\nRunning tests with coverage changes the way that you think\nabout your programs, and provides much deeper insight.\nTAP uses V8's internal coverage mechanisms directly, and verifies\nthat tests provide 100% coverage of all lines, branches,\nfunctions, and statements in the system under test. It uses\n[C8](https://npmjs.com/c8) to analyze the V8 coverage data and\ngenerate coverage reports.\n\nMissing coverage means that you are relying on untested code, so\nthis is treated as a test failure. If you have some bit of code\nwhich is actually _impossible_ to test for some reason, wrap it\nin the appropriate `/* c8 ignore start */` / `/* c8 ignore end\n*/` comments to exclude those lines from the analysis. But think\ncarefully about whether that's really the case. Usually, if you\nhave to coverage-ignore something, it's a sign that you need to\neither delete that code or refactor it into a more easily tested\nmodule.\n\n-----\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual. It should be\nfun, because making stuff is fun, and it helps you make better\nstuff.\n\nThere are many opinions left off of this list! Reasonable people\ncan disagree. But if you find yourself nodding along, [maybe tap\nis for you](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"aa46d38c9860e76094faec0ed078d71c8f1aaf76","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-gdh6tgZulqBErV2XfifANU+xezQhplnVMQ484k1OTAvEpuPoSF1EhH9W/66T99ej6+VvCsJEEXIfCxMCkACVtg==","shasum":"c55e81aa705e295d57360f086b121e2c3f309253","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-18.tgz","fileCount":25,"unpackedSize":76995,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIE+t8zIFTznPZHfTN5OLEsEW+NHFmQtyDiGmb4UEIypyAiEAiOIyPSbMqxgz9kjozUOMv9lVASRrfJFGMk8rN70i0EY="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-18_1692513159595_0.4927818907799717"},"_hasShrinkwrap":false},"18.0.0-19":{"name":"tap","version":"18.0.0-19","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"type":"module","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16.17"},"dependencies":{"@tapjs/after":"0.0.0-15","@tapjs/after-each":"0.0.0-15","@tapjs/asserts":"0.0.0-15","@tapjs/before":"0.0.0-15","@tapjs/before-each":"0.0.0-15","@tapjs/core":"0.0.0-15","@tapjs/filter":"0.0.0-15","@tapjs/fixture":"0.0.0-15","@tapjs/intercept":"0.0.0-15","@tapjs/mock":"0.0.0-16","@tapjs/run":"0.0.0-17","@tapjs/snapshot":"0.0.0-15","@tapjs/spawn":"0.0.0-15","@tapjs/stdin":"0.0.0-15","@tapjs/test":"0.0.0-15","@tapjs/typescript":"0.0.0-15","@tapjs/worker":"0.0.0-15"},"keywords":["assert","tap","test","testing"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-19","readme":"# node-tap\n\nA TAP test framework\nfor Node.js.\n\n_Just wanna see some code? [Get\nstarted!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming\nTAP-generating test scripts, and a JavaScript framework for\nwriting such scripts.\n\n\n\n- [Getting started guide](http://www.node-tap.org/basics/)\n- Built-in [test coverage](http://www.node-tap.org/coverage/)\n- Many [reporter formats](http://www.node-tap.org/reporting/)\n- Extensive [API](http://www.node-tap.org/api/) featuring:\n - Great [promise support](http://www.node-tap.org/promises/)\n - Comprehensive [assert\n library](http://www.node-tap.org/asserts/)\n - Other [advanced stuff](http://www.node-tap.org/advanced/)\n - Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n - [Parallel Testing](http://www.node-tap.org/parallel/)\n- [Command-line interface](http://www.node-tap.org/cli/) for\n running tests (whether they use node-tap or not)\n- [Machine-generated API docs](https://tapjs.github.io/tapjs)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for\nrecent updates, or just get started with [the\nbasics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head\nover to [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you\nwhy they're the greatest. This isn't that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design\nchallenge that balances on the intersection of many conflicting\ndemands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a\ntest framework should work, and what it should let you do. I do\n_not_ have any opinion about whether or not you share those\nopinions. If you do share them, you will probably enjoy this test\nlibrary.\n\nHere are the design principles that shape this test framework.\n\n### Test files are \"normal\" programs\n\nAny TAP test can be run directly as a plain old JavaScript\nprogram. Of course, if it's written in TypeScript, you'll\nhave to run it with a TypeScript loader, but otherwise, they\nshould be just like normal programs that run in a normal\nenvironment.\n\nBut there's no runner required to run tests, they don't\nexecute in a special simulated memory space with injected\nglobals, and so on. Because each test runs in its own process,\nthere's no chance of tests becoming dependent on one another's\nleaked globals or causing other confusing situations.\n\n### Tests should help, not get in the way\n\nThe goal of tests is to help you write code. They add reliability\nto your program by adding a layer of \"yes, this does what I think\nit does\". Whether you're doing strict Red-Green-Refactor style\nTDD, or just finger-painting until it feels right and then\nwriting tests to verify what it actually does, writing the tests\nshould feel empowering and straightforward, _reducing_ cognitive\nload rather than increasing it.\n\n### All types must be accurate and complete\n\nThis is simply not reasonable to do with a hand-edited type\ndefinition in `.d.ts` file.\n\nTAP's exported types are built up from its set of plugins and\ninternal classes, assembled into the `Test` class that your test\nprograms interact with. When a plugin is added or removed, the\n`t` in your editor can accurately tell you its new shape.\n\nIf you have to look at the docs too often, that's a bug in my\nopinion. Lean into the beautiful power of code completion.\n\n### TypeScript, ESM, and CommonJS supported out of the box\n\nWith the changes to the module system in Node.js over the\nlast several years, TAP fell down on this requirement in\nversions prior to v18. As of version 18, the entire system has\nbeen rewritten in TypeScript, and built as hybrid ESM/CommonJS\npackages.\n\nYour tests should be written just like your program, with as few\nbarriers as possible. If you can do it in CommonJS, you can do it\nin ESM, and vice versa (at least as far as TAP is concerned).\nWhatever is in your `tsconfig.json` or `package.json`, it should\nJust Work.\n\n### Anything that _can_ be a plugin _is_ a plugin\n\nThe plugin system is leveraged for anything that does not\nabsolutely need to be included in the core.\n\nBasic [TAP](https://testanything.org) generation and flow\ncontrol, error handling, config loading, process management and\nso on, are all included in the core. But TypeScript support,\nmocking, almost all assertion methods, method and property\ninterception and spying, spawning/forking subtests, creating\nfixtures, snapshots, and attaching lifecycle methods (among\nothers) are all relegated to plugins.\n\nThis means that features can be switched on or off or extended\nvery easily.\n\n### Plugins must be powerful and trivial to write correctly\n\nThe plugin interface is extremely simple. Export a `plugin`\nfunction that returns an object. That's it, that's a plugin.\n\nPlugins can also export configuration definitions, which are\nfolded into the set of fields that TAP knows how to parse from\nthe command line or from your `.taprc` file, or export a `loader`\nstring, which will be invoked when spawning test processes.\n\n### High Signal, Low Noise\n\nIt is important to give a lot of information about test failures,\nthrows, and so on, so that you can easily jump straight to the\nappropriate place in the code to fix the problem. And, it's\nusually helpful to see which tests are actually running.\n\nHowever, a screen full of green checkmarks and `100% Covered!`\nisn't very useful. It should be just enough to know what happened\nand easily diagnose any problems, and otherwise fairly quiet.\n\nLow information output has been trimmed down as much as possible\nfrom the default reporters. Coverage information is only shown\nwhen it has something relevant to say. TAP tries to show you\nexactly what you need to see, and nothing else. Stack traces have\nnoisy internals trimmed out, so it's easier to see exactly where\nin _your_ code the problem happened. Source maps are always\nenabled, because you need to know where the actual code is, not\njust which built artifact failed.\n\nIf the default reporter isn't terse enough for your liking, try\n`tap -Rterse`.\n\n### Assertions don't throw (but throws are handled nicely)\n\nI frequently write programs that have many hundreds of assertions\nbased on some list of test cases. If the first failure throws,\nthen I don't know if I've failed 100 tests or 1, without wrapping\neverything in a try-catch. Furthermore, I usually want to see\nsome kind of output or reporting to verify that each one actually\nran.\n\nBasically, it should be your decision whether you want to throw\nor not. The test framework shouldn't force that on you, and\nshould make either case easy.\n\n### Test reporting should be useful, extensible, and accessible\n\nThe [raw test output](https://www.node-tap.org/tap-format/)\nis machine-parseable and human-intelligible, a separate component\nconsumes test output and turns it into a [pretty summarized\nreport](https://www.node-tap.org/reporting/). This means that\ntest data can be stored and parsed later, dug into for additional\ndetails, and so on.\n\nRed and green are the conventional colors meaning \"removed\" and\n\"added\", but they're also exactly the same color for many people.\nAll of the color choices in the reporter are tested rigorously\nagainst simulators for protanopia, deuteranopia, tritanopia, and\nmonochromicity.\n\n### Test coverage is always on\n\nRunning tests with coverage changes the way that you think\nabout your programs, and provides much deeper insight.\nTAP uses V8's internal coverage mechanisms directly, and verifies\nthat tests provide 100% coverage of all lines, branches,\nfunctions, and statements in the system under test. It uses\n[C8](https://npmjs.com/c8) to analyze the V8 coverage data and\ngenerate coverage reports.\n\nMissing coverage means that you are relying on untested code, so\nthis is treated as a test failure. If you have some bit of code\nwhich is actually _impossible_ to test for some reason, wrap it\nin the appropriate `/* c8 ignore start */` / `/* c8 ignore end\n*/` comments to exclude those lines from the analysis. But think\ncarefully about whether that's really the case. Usually, if you\nhave to coverage-ignore something, it's a sign that you need to\neither delete that code or refactor it into a more easily tested\nmodule.\n\n-----\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual. It should be\nfun, because making stuff is fun, and it helps you make better\nstuff.\n\nThere are many opinions left off of this list! Reasonable people\ncan disagree. But if you find yourself nodding along, [maybe tap\nis for you](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"0c84a41d15e242e0842871d37db6d80af03d2354","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-oEMNxnX8hT0g3qqh+F3zTaez/aFGaEzqS5e2TaHa0GQUjXqg7O2rwhSj09BSoztGi2TvAo9j2spxDuZKkwibDg==","shasum":"405cbffb87b7d44a74bc4ce69b85868405569b90","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-19.tgz","fileCount":25,"unpackedSize":75967,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDY1nyEe3AsR7JTOrKRrWTfmNyDyKMnWu24zl1ZFHCOCgIhAMqczcprFz7g+SOldwSEGoV5X5GtBE7blZITyMZv4pNu"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-19_1692649211133_0.6962199488666758"},"_hasShrinkwrap":false},"18.0.0-20":{"name":"tap","version":"18.0.0-20","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"type":"module","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16"},"dependencies":{"@tapjs/after":"0.0.0-16","@tapjs/after-each":"0.0.0-16","@tapjs/asserts":"0.0.0-16","@tapjs/before":"0.0.0-16","@tapjs/before-each":"0.0.0-16","@tapjs/core":"0.0.0-16","@tapjs/filter":"0.0.0-16","@tapjs/fixture":"0.0.0-16","@tapjs/intercept":"0.0.0-16","@tapjs/mock":"0.0.0-17","@tapjs/run":"0.0.0-18","@tapjs/snapshot":"0.0.0-16","@tapjs/spawn":"0.0.0-16","@tapjs/stdin":"0.0.0-16","@tapjs/test":"0.0.0-16","@tapjs/typescript":"0.0.0-16","@tapjs/worker":"0.0.0-16"},"keywords":["assert","tap","test","testing"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-20","readme":"# node-tap\n\nA TAP test framework\nfor Node.js.\n\n_Just wanna see some code? [Get\nstarted!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming\nTAP-generating test scripts, and a JavaScript framework for\nwriting such scripts.\n\n\n\n- [Getting started guide](http://www.node-tap.org/basics/)\n- Built-in [test coverage](http://www.node-tap.org/coverage/)\n- Many [reporter formats](http://www.node-tap.org/reporting/)\n- Extensive [API](http://www.node-tap.org/api/) featuring:\n - Great [promise support](http://www.node-tap.org/promises/)\n - Comprehensive [assert\n library](http://www.node-tap.org/asserts/)\n - Other [advanced stuff](http://www.node-tap.org/advanced/)\n - Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n - [Parallel Testing](http://www.node-tap.org/parallel/)\n- [Command-line interface](http://www.node-tap.org/cli/) for\n running tests (whether they use node-tap or not)\n- [Machine-generated API docs](https://tapjs.github.io/tapjs)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for\nrecent updates, or just get started with [the\nbasics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head\nover to [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you\nwhy they're the greatest. This isn't that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design\nchallenge that balances on the intersection of many conflicting\ndemands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a\ntest framework should work, and what it should let you do. I do\n_not_ have any opinion about whether or not you share those\nopinions. If you do share them, you will probably enjoy this test\nlibrary.\n\nHere are the design principles that shape this test framework.\n\n### Test files are \"normal\" programs\n\nAny TAP test can be run directly as a plain old JavaScript\nprogram. Of course, if it's written in TypeScript, you'll\nhave to run it with a TypeScript loader, but otherwise, they\nshould be just like normal programs that run in a normal\nenvironment.\n\nBut there's no runner required to run tests, they don't\nexecute in a special simulated memory space with injected\nglobals, and so on. Because each test runs in its own process,\nthere's no chance of tests becoming dependent on one another's\nleaked globals or causing other confusing situations.\n\n### Tests should help, not get in the way\n\nThe goal of tests is to help you write code. They add reliability\nto your program by adding a layer of \"yes, this does what I think\nit does\". Whether you're doing strict Red-Green-Refactor style\nTDD, or just finger-painting until it feels right and then\nwriting tests to verify what it actually does, writing the tests\nshould feel empowering and straightforward, _reducing_ cognitive\nload rather than increasing it.\n\n### All types must be accurate and complete\n\nThis is simply not reasonable to do with a hand-edited type\ndefinition in `.d.ts` file.\n\nTAP's exported types are built up from its set of plugins and\ninternal classes, assembled into the `Test` class that your test\nprograms interact with. When a plugin is added or removed, the\n`t` in your editor can accurately tell you its new shape.\n\nIf you have to look at the docs too often, that's a bug in my\nopinion. Lean into the beautiful power of code completion.\n\n### TypeScript, ESM, and CommonJS supported out of the box\n\nWith the changes to the module system in Node.js over the\nlast several years, TAP fell down on this requirement in\nversions prior to v18. As of version 18, the entire system has\nbeen rewritten in TypeScript, and built as hybrid ESM/CommonJS\npackages.\n\nYour tests should be written just like your program, with as few\nbarriers as possible. If you can do it in CommonJS, you can do it\nin ESM, and vice versa (at least as far as TAP is concerned).\nWhatever is in your `tsconfig.json` or `package.json`, it should\nJust Work.\n\n### Anything that _can_ be a plugin _is_ a plugin\n\nThe plugin system is leveraged for anything that does not\nabsolutely need to be included in the core.\n\nBasic [TAP](https://testanything.org) generation and flow\ncontrol, error handling, config loading, process management and\nso on, are all included in the core. But TypeScript support,\nmocking, almost all assertion methods, method and property\ninterception and spying, spawning/forking subtests, creating\nfixtures, snapshots, and attaching lifecycle methods (among\nothers) are all relegated to plugins.\n\nThis means that features can be switched on or off or extended\nvery easily.\n\n### Plugins must be powerful and trivial to write correctly\n\nThe plugin interface is extremely simple. Export a `plugin`\nfunction that returns an object. That's it, that's a plugin.\n\nPlugins can also export configuration definitions, which are\nfolded into the set of fields that TAP knows how to parse from\nthe command line or from your `.taprc` file, or export a `loader`\nstring, which will be invoked when spawning test processes.\n\n### High Signal, Low Noise\n\nIt is important to give a lot of information about test failures,\nthrows, and so on, so that you can easily jump straight to the\nappropriate place in the code to fix the problem. And, it's\nusually helpful to see which tests are actually running.\n\nHowever, a screen full of green checkmarks and `100% Covered!`\nisn't very useful. It should be just enough to know what happened\nand easily diagnose any problems, and otherwise fairly quiet.\n\nLow information output has been trimmed down as much as possible\nfrom the default reporters. Coverage information is only shown\nwhen it has something relevant to say. TAP tries to show you\nexactly what you need to see, and nothing else. Stack traces have\nnoisy internals trimmed out, so it's easier to see exactly where\nin _your_ code the problem happened. Source maps are always\nenabled, because you need to know where the actual code is, not\njust which built artifact failed.\n\nIf the default reporter isn't terse enough for your liking, try\n`tap -Rterse`.\n\n### Assertions don't throw (but throws are handled nicely)\n\nI frequently write programs that have many hundreds of assertions\nbased on some list of test cases. If the first failure throws,\nthen I don't know if I've failed 100 tests or 1, without wrapping\neverything in a try-catch. Furthermore, I usually want to see\nsome kind of output or reporting to verify that each one actually\nran.\n\nBasically, it should be your decision whether you want to throw\nor not. The test framework shouldn't force that on you, and\nshould make either case easy.\n\n### Test reporting should be useful, extensible, and accessible\n\nThe [raw test output](https://www.node-tap.org/tap-format/)\nis machine-parseable and human-intelligible, a separate component\nconsumes test output and turns it into a [pretty summarized\nreport](https://www.node-tap.org/reporting/). This means that\ntest data can be stored and parsed later, dug into for additional\ndetails, and so on.\n\nRed and green are the conventional colors meaning \"removed\" and\n\"added\", but they're also exactly the same color for many people.\nAll of the color choices in the reporter are tested rigorously\nagainst simulators for protanopia, deuteranopia, tritanopia, and\nmonochromicity.\n\n### Test coverage is always on\n\nRunning tests with coverage changes the way that you think\nabout your programs, and provides much deeper insight.\nTAP uses V8's internal coverage mechanisms directly, and verifies\nthat tests provide 100% coverage of all lines, branches,\nfunctions, and statements in the system under test. It uses\n[C8](https://npmjs.com/c8) to analyze the V8 coverage data and\ngenerate coverage reports.\n\nMissing coverage means that you are relying on untested code, so\nthis is treated as a test failure. If you have some bit of code\nwhich is actually _impossible_ to test for some reason, wrap it\nin the appropriate `/* c8 ignore start */` / `/* c8 ignore end\n*/` comments to exclude those lines from the analysis. But think\ncarefully about whether that's really the case. Usually, if you\nhave to coverage-ignore something, it's a sign that you need to\neither delete that code or refactor it into a more easily tested\nmodule.\n\n-----\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual. It should be\nfun, because making stuff is fun, and it helps you make better\nstuff.\n\nThere are many opinions left off of this list! Reasonable people\ncan disagree. But if you find yourself nodding along, [maybe tap\nis for you](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"e3de44331a26fc39bba46e5dfb8f5989d8ef5f20","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-pyU7bpzluFF9rL7J8kzSdhPuWkNoWpv9tQY/bpQJfOl+ySlLBTrHm2PMv1m+26ynGJ6D8noO+8CiPuqxClIecg==","shasum":"b884e5dc43ac58156d9c5e5be8bfc687d5997773","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-20.tgz","fileCount":25,"unpackedSize":75964,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEx8DENWwHIgI+Bk7rZOoHk8Qjqwi/MrOrqQcJaAlK7sAiEAj8EfKdrsj0sH0oOQB3dqWJjTiw00OFZT/PO0bDARuUQ="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-20_1693117078474_0.04138919223050452"},"_hasShrinkwrap":false},"18.0.0-21":{"name":"tap","version":"18.0.0-21","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"type":"module","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16"},"dependencies":{"@tapjs/after":"0.0.0-17","@tapjs/after-each":"0.0.0-17","@tapjs/asserts":"0.0.0-17","@tapjs/before":"0.0.0-17","@tapjs/before-each":"0.0.0-17","@tapjs/core":"0.0.0-17","@tapjs/filter":"0.0.0-17","@tapjs/fixture":"0.0.0-17","@tapjs/intercept":"0.0.0-17","@tapjs/mock":"0.0.0-18","@tapjs/run":"0.0.0-19","@tapjs/snapshot":"0.0.0-17","@tapjs/spawn":"0.0.0-17","@tapjs/stdin":"0.0.0-17","@tapjs/test":"0.0.0-17","@tapjs/typescript":"0.0.0-17","@tapjs/worker":"0.0.0-17"},"keywords":["assert","tap","test","testing"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-21","readme":"# node-tap\n\nA TAP test framework\nfor Node.js.\n\n_Just wanna see some code? [Get\nstarted!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming\nTAP-generating test scripts, and a JavaScript framework for\nwriting such scripts.\n\n\n\n- [Getting started guide](http://www.node-tap.org/basics/)\n- Built-in [test coverage](http://www.node-tap.org/coverage/)\n- Many [reporter formats](http://www.node-tap.org/reporting/)\n- Extensive [API](http://www.node-tap.org/api/) featuring:\n - Great [promise support](http://www.node-tap.org/promises/)\n - Comprehensive [assert\n library](http://www.node-tap.org/asserts/)\n - Other [advanced stuff](http://www.node-tap.org/advanced/)\n - Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n - [Parallel Testing](http://www.node-tap.org/parallel/)\n- [Command-line interface](http://www.node-tap.org/cli/) for\n running tests (whether they use node-tap or not)\n- [Machine-generated API docs](https://tapjs.github.io/tapjs)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for\nrecent updates, or just get started with [the\nbasics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head\nover to [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you\nwhy they're the greatest. This isn't that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design\nchallenge that balances on the intersection of many conflicting\ndemands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a\ntest framework should work, and what it should let you do. I do\n_not_ have any opinion about whether or not you share those\nopinions. If you do share them, you will probably enjoy this test\nlibrary.\n\nHere are the design principles that shape this test framework.\n\n### Test files are \"normal\" programs\n\nAny TAP test can be run directly as a plain old JavaScript\nprogram. Of course, if it's written in TypeScript, you'll\nhave to run it with a TypeScript loader, but otherwise, they\nshould be just like normal programs that run in a normal\nenvironment.\n\nBut there's no runner required to run tests, they don't\nexecute in a special simulated memory space with injected\nglobals, and so on. Because each test runs in its own process,\nthere's no chance of tests becoming dependent on one another's\nleaked globals or causing other confusing situations.\n\n### Tests should help, not get in the way\n\nThe goal of tests is to help you write code. They add reliability\nto your program by adding a layer of \"yes, this does what I think\nit does\". Whether you're doing strict Red-Green-Refactor style\nTDD, or just finger-painting until it feels right and then\nwriting tests to verify what it actually does, writing the tests\nshould feel empowering and straightforward, _reducing_ cognitive\nload rather than increasing it.\n\n### All types must be accurate and complete\n\nThis is simply not reasonable to do with a hand-edited type\ndefinition in `.d.ts` file.\n\nTAP's exported types are built up from its set of plugins and\ninternal classes, assembled into the `Test` class that your test\nprograms interact with. When a plugin is added or removed, the\n`t` in your editor can accurately tell you its new shape.\n\nIf you have to look at the docs too often, that's a bug in my\nopinion. Lean into the beautiful power of code completion.\n\n### TypeScript, ESM, and CommonJS supported out of the box\n\nWith the changes to the module system in Node.js over the\nlast several years, TAP fell down on this requirement in\nversions prior to v18. As of version 18, the entire system has\nbeen rewritten in TypeScript, and built as hybrid ESM/CommonJS\npackages.\n\nYour tests should be written just like your program, with as few\nbarriers as possible. If you can do it in CommonJS, you can do it\nin ESM, and vice versa (at least as far as TAP is concerned).\nWhatever is in your `tsconfig.json` or `package.json`, it should\nJust Work.\n\n### Anything that _can_ be a plugin _is_ a plugin\n\nThe plugin system is leveraged for anything that does not\nabsolutely need to be included in the core.\n\nBasic [TAP](https://testanything.org) generation and flow\ncontrol, error handling, config loading, process management and\nso on, are all included in the core. But TypeScript support,\nmocking, almost all assertion methods, method and property\ninterception and spying, spawning/forking subtests, creating\nfixtures, snapshots, and attaching lifecycle methods (among\nothers) are all relegated to plugins.\n\nThis means that features can be switched on or off or extended\nvery easily.\n\n### Plugins must be powerful and trivial to write correctly\n\nThe plugin interface is extremely simple. Export a `plugin`\nfunction that returns an object. That's it, that's a plugin.\n\nPlugins can also export configuration definitions, which are\nfolded into the set of fields that TAP knows how to parse from\nthe command line or from your `.taprc` file, or export a `loader`\nstring, which will be invoked when spawning test processes.\n\n### High Signal, Low Noise\n\nIt is important to give a lot of information about test failures,\nthrows, and so on, so that you can easily jump straight to the\nappropriate place in the code to fix the problem. And, it's\nusually helpful to see which tests are actually running.\n\nHowever, a screen full of green checkmarks and `100% Covered!`\nisn't very useful. It should be just enough to know what happened\nand easily diagnose any problems, and otherwise fairly quiet.\n\nLow information output has been trimmed down as much as possible\nfrom the default reporters. Coverage information is only shown\nwhen it has something relevant to say. TAP tries to show you\nexactly what you need to see, and nothing else. Stack traces have\nnoisy internals trimmed out, so it's easier to see exactly where\nin _your_ code the problem happened. Source maps are always\nenabled, because you need to know where the actual code is, not\njust which built artifact failed.\n\nIf the default reporter isn't terse enough for your liking, try\n`tap -Rterse`.\n\n### Assertions don't throw (but throws are handled nicely)\n\nI frequently write programs that have many hundreds of assertions\nbased on some list of test cases. If the first failure throws,\nthen I don't know if I've failed 100 tests or 1, without wrapping\neverything in a try-catch. Furthermore, I usually want to see\nsome kind of output or reporting to verify that each one actually\nran.\n\nBasically, it should be your decision whether you want to throw\nor not. The test framework shouldn't force that on you, and\nshould make either case easy.\n\n### Test reporting should be useful, extensible, and accessible\n\nThe [raw test output](https://www.node-tap.org/tap-format/)\nis machine-parseable and human-intelligible, a separate component\nconsumes test output and turns it into a [pretty summarized\nreport](https://www.node-tap.org/reporting/). This means that\ntest data can be stored and parsed later, dug into for additional\ndetails, and so on.\n\nRed and green are the conventional colors meaning \"removed\" and\n\"added\", but they're also exactly the same color for many people.\nAll of the color choices in the reporter are tested rigorously\nagainst simulators for protanopia, deuteranopia, tritanopia, and\nmonochromicity.\n\n### Test coverage is always on\n\nRunning tests with coverage changes the way that you think\nabout your programs, and provides much deeper insight.\nTAP uses V8's internal coverage mechanisms directly, and verifies\nthat tests provide 100% coverage of all lines, branches,\nfunctions, and statements in the system under test. It uses\n[C8](https://npmjs.com/c8) to analyze the V8 coverage data and\ngenerate coverage reports.\n\nMissing coverage means that you are relying on untested code, so\nthis is treated as a test failure. If you have some bit of code\nwhich is actually _impossible_ to test for some reason, wrap it\nin the appropriate `/* c8 ignore start */` / `/* c8 ignore end\n*/` comments to exclude those lines from the analysis. But think\ncarefully about whether that's really the case. Usually, if you\nhave to coverage-ignore something, it's a sign that you need to\neither delete that code or refactor it into a more easily tested\nmodule.\n\n-----\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual. It should be\nfun, because making stuff is fun, and it helps you make better\nstuff.\n\nThere are many opinions left off of this list! Reasonable people\ncan disagree. But if you find yourself nodding along, [maybe tap\nis for you](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"db81e6e1b20006e5d0e710c50cb4b2481ec34c3a","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-dFWkFmadCuri4trkDDDZ34jMJk6Won6VffhXhqtMiGJEouX0SKEwJp7Y73Y0uuxdjRE4ZVw4bzmobhOlPs4TCg==","shasum":"7eb936be4306b9cc3f8a65932211ec3406a39918","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-21.tgz","fileCount":25,"unpackedSize":75964,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFT5VGQkDKlkePXZNzt26jMKc5z7q3YQfpjvqakvi0yZAiAxJo3nU1nKZgbeVsoA7LzlZ7pO+RAqrJ6fpT0dHjLQDA=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-21_1693306140701_0.3374931102605916"},"_hasShrinkwrap":false},"18.0.0-22":{"name":"tap","version":"18.0.0-22","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"type":"module","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16"},"dependencies":{"@tapjs/after":"0.0.0-18","@tapjs/after-each":"0.0.0-18","@tapjs/asserts":"0.0.0-18","@tapjs/before":"0.0.0-18","@tapjs/before-each":"0.0.0-18","@tapjs/core":"0.0.0-18","@tapjs/filter":"0.0.0-18","@tapjs/fixture":"0.0.0-18","@tapjs/intercept":"0.0.0-18","@tapjs/mock":"0.0.0-19","@tapjs/run":"0.0.0-20","@tapjs/snapshot":"0.0.0-18","@tapjs/spawn":"0.0.0-18","@tapjs/stdin":"0.0.0-18","@tapjs/test":"0.0.0-18","@tapjs/typescript":"0.0.0-18","@tapjs/worker":"0.0.0-18"},"keywords":["assert","tap","test","testing"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-22","readme":"# node-tap\n\nA TAP test framework\nfor Node.js.\n\n_Just wanna see some code? [Get\nstarted!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming\nTAP-generating test scripts, and a JavaScript framework for\nwriting such scripts.\n\n\n\n- [Getting started guide](http://www.node-tap.org/basics/)\n- Built-in [test coverage](http://www.node-tap.org/coverage/)\n- Many [reporter formats](http://www.node-tap.org/reporting/)\n- Extensive [API](http://www.node-tap.org/api/) featuring:\n - Great [promise support](http://www.node-tap.org/promises/)\n - Comprehensive [assert\n library](http://www.node-tap.org/asserts/)\n - Other [advanced stuff](http://www.node-tap.org/advanced/)\n - Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n - [Parallel Testing](http://www.node-tap.org/parallel/)\n- [Command-line interface](http://www.node-tap.org/cli/) for\n running tests (whether they use node-tap or not)\n- [Machine-generated API docs](https://tapjs.github.io/tapjs)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for\nrecent updates, or just get started with [the\nbasics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head\nover to [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you\nwhy they're the greatest. This isn't that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design\nchallenge that balances on the intersection of many conflicting\ndemands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a\ntest framework should work, and what it should let you do. I do\n_not_ have any opinion about whether or not you share those\nopinions. If you do share them, you will probably enjoy this test\nlibrary.\n\nHere are the design principles that shape this test framework.\n\n### Test files are \"normal\" programs\n\nAny TAP test can be run directly as a plain old JavaScript\nprogram. Of course, if it's written in TypeScript, you'll\nhave to run it with a TypeScript loader, but otherwise, they\nshould be just like normal programs that run in a normal\nenvironment.\n\nBut there's no runner required to run tests, they don't\nexecute in a special simulated memory space with injected\nglobals, and so on. Because each test runs in its own process,\nthere's no chance of tests becoming dependent on one another's\nleaked globals or causing other confusing situations.\n\n### Tests should help, not get in the way\n\nThe goal of tests is to help you write code. They add reliability\nto your program by adding a layer of \"yes, this does what I think\nit does\". Whether you're doing strict Red-Green-Refactor style\nTDD, or just finger-painting until it feels right and then\nwriting tests to verify what it actually does, writing the tests\nshould feel empowering and straightforward, _reducing_ cognitive\nload rather than increasing it.\n\n### All types must be accurate and complete\n\nThis is simply not reasonable to do with a hand-edited type\ndefinition in `.d.ts` file.\n\nTAP's exported types are built up from its set of plugins and\ninternal classes, assembled into the `Test` class that your test\nprograms interact with. When a plugin is added or removed, the\n`t` in your editor can accurately tell you its new shape.\n\nIf you have to look at the docs too often, that's a bug in my\nopinion. Lean into the beautiful power of code completion.\n\n### TypeScript, ESM, and CommonJS supported out of the box\n\nWith the changes to the module system in Node.js over the\nlast several years, TAP fell down on this requirement in\nversions prior to v18. As of version 18, the entire system has\nbeen rewritten in TypeScript, and built as hybrid ESM/CommonJS\npackages.\n\nYour tests should be written just like your program, with as few\nbarriers as possible. If you can do it in CommonJS, you can do it\nin ESM, and vice versa (at least as far as TAP is concerned).\nWhatever is in your `tsconfig.json` or `package.json`, it should\nJust Work.\n\n### Anything that _can_ be a plugin _is_ a plugin\n\nThe plugin system is leveraged for anything that does not\nabsolutely need to be included in the core.\n\nBasic [TAP](https://testanything.org) generation and flow\ncontrol, error handling, config loading, process management and\nso on, are all included in the core. But TypeScript support,\nmocking, almost all assertion methods, method and property\ninterception and spying, spawning/forking subtests, creating\nfixtures, snapshots, and attaching lifecycle methods (among\nothers) are all relegated to plugins.\n\nThis means that features can be switched on or off or extended\nvery easily.\n\n### Plugins must be powerful and trivial to write correctly\n\nThe plugin interface is extremely simple. Export a `plugin`\nfunction that returns an object. That's it, that's a plugin.\n\nPlugins can also export configuration definitions, which are\nfolded into the set of fields that TAP knows how to parse from\nthe command line or from your `.taprc` file, or export a `loader`\nstring, which will be invoked when spawning test processes.\n\n### High Signal, Low Noise\n\nIt is important to give a lot of information about test failures,\nthrows, and so on, so that you can easily jump straight to the\nappropriate place in the code to fix the problem. And, it's\nusually helpful to see which tests are actually running.\n\nHowever, a screen full of green checkmarks and `100% Covered!`\nisn't very useful. It should be just enough to know what happened\nand easily diagnose any problems, and otherwise fairly quiet.\n\nLow information output has been trimmed down as much as possible\nfrom the default reporters. Coverage information is only shown\nwhen it has something relevant to say. TAP tries to show you\nexactly what you need to see, and nothing else. Stack traces have\nnoisy internals trimmed out, so it's easier to see exactly where\nin _your_ code the problem happened. Source maps are always\nenabled, because you need to know where the actual code is, not\njust which built artifact failed.\n\nIf the default reporter isn't terse enough for your liking, try\n`tap -Rterse`.\n\n### Assertions don't throw (but throws are handled nicely)\n\nI frequently write programs that have many hundreds of assertions\nbased on some list of test cases. If the first failure throws,\nthen I don't know if I've failed 100 tests or 1, without wrapping\neverything in a try-catch. Furthermore, I usually want to see\nsome kind of output or reporting to verify that each one actually\nran.\n\nBasically, it should be your decision whether you want to throw\nor not. The test framework shouldn't force that on you, and\nshould make either case easy.\n\n### Test reporting should be useful, extensible, and accessible\n\nThe [raw test output](https://www.node-tap.org/tap-format/)\nis machine-parseable and human-intelligible, a separate component\nconsumes test output and turns it into a [pretty summarized\nreport](https://www.node-tap.org/reporting/). This means that\ntest data can be stored and parsed later, dug into for additional\ndetails, and so on.\n\nRed and green are the conventional colors meaning \"removed\" and\n\"added\", but they're also exactly the same color for many people.\nAll of the color choices in the reporter are tested rigorously\nagainst simulators for protanopia, deuteranopia, tritanopia, and\nmonochromicity.\n\n### Test coverage is always on\n\nRunning tests with coverage changes the way that you think\nabout your programs, and provides much deeper insight.\nTAP uses V8's internal coverage mechanisms directly, and verifies\nthat tests provide 100% coverage of all lines, branches,\nfunctions, and statements in the system under test. It uses\n[C8](https://npmjs.com/c8) to analyze the V8 coverage data and\ngenerate coverage reports.\n\nMissing coverage means that you are relying on untested code, so\nthis is treated as a test failure. If you have some bit of code\nwhich is actually _impossible_ to test for some reason, wrap it\nin the appropriate `/* c8 ignore start */` / `/* c8 ignore end\n*/` comments to exclude those lines from the analysis. But think\ncarefully about whether that's really the case. Usually, if you\nhave to coverage-ignore something, it's a sign that you need to\neither delete that code or refactor it into a more easily tested\nmodule.\n\n-----\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual. It should be\nfun, because making stuff is fun, and it helps you make better\nstuff.\n\nThere are many opinions left off of this list! Reasonable people\ncan disagree. But if you find yourself nodding along, [maybe tap\nis for you](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"b16fe7cd802e79cbab89d79c9ce78e62b8069f10","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-9nfoSMUDdZ0MHP/g37I0V5oyhdQTJ1Q4xLOC1mamAvtSjKpZO3yhzQneHdLxqZKcGoNyr6sF8GBqb19j2u5z6w==","shasum":"921d450c2f7065a962fc2a3c4774d7537a931e79","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-22.tgz","fileCount":25,"unpackedSize":75964,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDJErDcWOnmvWmf2hpeDzIOY1508rEscJWqRFM4fetRvAIhALc1nBKibyRb36ebyVyf9tqtNUFkeFO1bnQKLZUB+Qns"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-22_1693527558550_0.08727766050530006"},"_hasShrinkwrap":false},"18.0.0-23":{"name":"tap","version":"18.0.0-23","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"type":"module","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16"},"dependencies":{"@tapjs/after":"0.0.0-19","@tapjs/after-each":"0.0.0-19","@tapjs/asserts":"0.0.0-19","@tapjs/before":"0.0.0-19","@tapjs/before-each":"0.0.0-19","@tapjs/core":"0.0.0-19","@tapjs/filter":"0.0.0-19","@tapjs/fixture":"0.0.0-19","@tapjs/intercept":"0.0.0-19","@tapjs/mock":"0.0.0-20","@tapjs/run":"0.0.0-21","@tapjs/snapshot":"0.0.0-19","@tapjs/spawn":"0.0.0-19","@tapjs/stdin":"0.0.0-19","@tapjs/test":"0.0.0-19","@tapjs/typescript":"0.0.0-19","@tapjs/worker":"0.0.0-19"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-23","readme":"# node-tap\n\nA TAP test framework\nfor Node.js.\n\n_Just wanna see some code? [Get\nstarted!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming\nTAP-generating test scripts, and a JavaScript framework for\nwriting such scripts.\n\n\n\n- [Getting started guide](http://www.node-tap.org/basics/)\n- Built-in [test coverage](http://www.node-tap.org/coverage/)\n- Many [reporter formats](http://www.node-tap.org/reporting/)\n- Extensive [API](http://www.node-tap.org/api/) featuring:\n - Great [promise support](http://www.node-tap.org/promises/)\n - Comprehensive [assert\n library](http://www.node-tap.org/asserts/)\n - Other [advanced stuff](http://www.node-tap.org/advanced/)\n - Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n - [Parallel Testing](http://www.node-tap.org/parallel/)\n- [Command-line interface](http://www.node-tap.org/cli/) for\n running tests (whether they use node-tap or not)\n- [Machine-generated API docs](https://tapjs.github.io/tapjs)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for\nrecent updates, or just get started with [the\nbasics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head\nover to [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you\nwhy they're the greatest. This isn't that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design\nchallenge that balances on the intersection of many conflicting\ndemands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a\ntest framework should work, and what it should let you do. I do\n_not_ have any opinion about whether or not you share those\nopinions. If you do share them, you will probably enjoy this test\nlibrary.\n\nHere are the design principles that shape this test framework.\n\n### Test files are \"normal\" programs\n\nAny TAP test can be run directly as a plain old JavaScript\nprogram. Of course, if it's written in TypeScript, you'll\nhave to run it with a TypeScript loader, but otherwise, they\nshould be just like normal programs that run in a normal\nenvironment.\n\nBut there's no runner required to run tests, they don't\nexecute in a special simulated memory space with injected\nglobals, and so on. Because each test runs in its own process,\nthere's no chance of tests becoming dependent on one another's\nleaked globals or causing other confusing situations.\n\n### Tests should help, not get in the way\n\nThe goal of tests is to help you write code. They add reliability\nto your program by adding a layer of \"yes, this does what I think\nit does\". Whether you're doing strict Red-Green-Refactor style\nTDD, or just finger-painting until it feels right and then\nwriting tests to verify what it actually does, writing the tests\nshould feel empowering and straightforward, _reducing_ cognitive\nload rather than increasing it.\n\n### All types must be accurate and complete\n\nThis is simply not reasonable to do with a hand-edited type\ndefinition in `.d.ts` file.\n\nTAP's exported types are built up from its set of plugins and\ninternal classes, assembled into the `Test` class that your test\nprograms interact with. When a plugin is added or removed, the\n`t` in your editor can accurately tell you its new shape.\n\nIf you have to look at the docs too often, that's a bug in my\nopinion. Lean into the beautiful power of code completion.\n\n### TypeScript, ESM, and CommonJS supported out of the box\n\nWith the changes to the module system in Node.js over the\nlast several years, TAP fell down on this requirement in\nversions prior to v18. As of version 18, the entire system has\nbeen rewritten in TypeScript, and built as hybrid ESM/CommonJS\npackages.\n\nYour tests should be written just like your program, with as few\nbarriers as possible. If you can do it in CommonJS, you can do it\nin ESM, and vice versa (at least as far as TAP is concerned).\nWhatever is in your `tsconfig.json` or `package.json`, it should\nJust Work.\n\n### Anything that _can_ be a plugin _is_ a plugin\n\nThe plugin system is leveraged for anything that does not\nabsolutely need to be included in the core.\n\nBasic [TAP](https://testanything.org) generation and flow\ncontrol, error handling, config loading, process management and\nso on, are all included in the core. But TypeScript support,\nmocking, almost all assertion methods, method and property\ninterception and spying, spawning/forking subtests, creating\nfixtures, snapshots, and attaching lifecycle methods (among\nothers) are all relegated to plugins.\n\nThis means that features can be switched on or off or extended\nvery easily.\n\n### Plugins must be powerful and trivial to write correctly\n\nThe plugin interface is extremely simple. Export a `plugin`\nfunction that returns an object. That's it, that's a plugin.\n\nPlugins can also export configuration definitions, which are\nfolded into the set of fields that TAP knows how to parse from\nthe command line or from your `.taprc` file, or export a `loader`\nstring, which will be invoked when spawning test processes.\n\n### High Signal, Low Noise\n\nIt is important to give a lot of information about test failures,\nthrows, and so on, so that you can easily jump straight to the\nappropriate place in the code to fix the problem. And, it's\nusually helpful to see which tests are actually running.\n\nHowever, a screen full of green checkmarks and `100% Covered!`\nisn't very useful. It should be just enough to know what happened\nand easily diagnose any problems, and otherwise fairly quiet.\n\nLow information output has been trimmed down as much as possible\nfrom the default reporters. Coverage information is only shown\nwhen it has something relevant to say. TAP tries to show you\nexactly what you need to see, and nothing else. Stack traces have\nnoisy internals trimmed out, so it's easier to see exactly where\nin _your_ code the problem happened. Source maps are always\nenabled, because you need to know where the actual code is, not\njust which built artifact failed.\n\nIf the default reporter isn't terse enough for your liking, try\n`tap -Rterse`.\n\n### Assertions don't throw (but throws are handled nicely)\n\nI frequently write programs that have many hundreds of assertions\nbased on some list of test cases. If the first failure throws,\nthen I don't know if I've failed 100 tests or 1, without wrapping\neverything in a try-catch. Furthermore, I usually want to see\nsome kind of output or reporting to verify that each one actually\nran.\n\nBasically, it should be your decision whether you want to throw\nor not. The test framework shouldn't force that on you, and\nshould make either case easy.\n\n### Test reporting should be useful, extensible, and accessible\n\nThe [raw test output](https://www.node-tap.org/tap-format/)\nis machine-parseable and human-intelligible, a separate component\nconsumes test output and turns it into a [pretty summarized\nreport](https://www.node-tap.org/reporting/). This means that\ntest data can be stored and parsed later, dug into for additional\ndetails, and so on.\n\nRed and green are the conventional colors meaning \"removed\" and\n\"added\", but they're also exactly the same color for many people.\nAll of the color choices in the reporter are tested rigorously\nagainst simulators for protanopia, deuteranopia, tritanopia, and\nmonochromicity.\n\n### Test coverage is always on\n\nRunning tests with coverage changes the way that you think\nabout your programs, and provides much deeper insight.\nTAP uses V8's internal coverage mechanisms directly, and verifies\nthat tests provide 100% coverage of all lines, branches,\nfunctions, and statements in the system under test. It uses\n[C8](https://npmjs.com/c8) to analyze the V8 coverage data and\ngenerate coverage reports.\n\nMissing coverage means that you are relying on untested code, so\nthis is treated as a test failure. If you have some bit of code\nwhich is actually _impossible_ to test for some reason, wrap it\nin the appropriate `/* c8 ignore start */` / `/* c8 ignore end\n*/` comments to exclude those lines from the analysis. But think\ncarefully about whether that's really the case. Usually, if you\nhave to coverage-ignore something, it's a sign that you need to\neither delete that code or refactor it into a more easily tested\nmodule.\n\n-----\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual. It should be\nfun, because making stuff is fun, and it helps you make better\nstuff.\n\nThere are many opinions left off of this list! Reasonable people\ncan disagree. But if you find yourself nodding along, [maybe tap\nis for you](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"e70ff4da59380670147a265fd8bd4058cba61230","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-CA3tT7WZCJUVDzwYeCXOd12dX2dGkbaDA9bmdKn/cSzgdu2N1ZCGB5Bgld8JuRHBfDjQaaEyWnYicakyBFbyMw==","shasum":"942256727ecdd8d93534c2eb388538e4bb711c1e","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-23.tgz","fileCount":25,"unpackedSize":76025,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGzEfzFGy6RUDuC4IaxsKRNwfIsHZnlHFJ3S2EeHrHllAiEAh8RZ8lx4V+uBrAxh6Bh55vtLQPn2Gfwi//aFZ3Afxys="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-23_1693763398267_0.5700343637236036"},"_hasShrinkwrap":false},"18.0.0-24":{"name":"tap","version":"18.0.0-24","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"type":"module","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16"},"dependencies":{"@tapjs/after":"0.0.0-20","@tapjs/after-each":"0.0.0-20","@tapjs/asserts":"0.0.0-20","@tapjs/before":"0.0.0-20","@tapjs/before-each":"0.0.0-20","@tapjs/core":"0.0.0-20","@tapjs/filter":"0.0.0-20","@tapjs/fixture":"0.0.0-20","@tapjs/intercept":"0.0.0-20","@tapjs/mock":"0.0.0-21","@tapjs/run":"0.0.0-22","@tapjs/snapshot":"0.0.0-20","@tapjs/spawn":"0.0.0-20","@tapjs/stdin":"0.0.0-20","@tapjs/test":"0.0.0-20","@tapjs/typescript":"0.0.0-20","@tapjs/worker":"0.0.0-20"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-24","readme":"# node-tap\n\nA TAP test framework\nfor Node.js.\n\n_Just wanna see some code? [Get\nstarted!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming\nTAP-generating test scripts, and a JavaScript framework for\nwriting such scripts.\n\n\n\n- [Getting started guide](http://www.node-tap.org/basics/)\n- Built-in [test coverage](http://www.node-tap.org/coverage/)\n- Many [reporter formats](http://www.node-tap.org/reporting/)\n- Extensive [API](http://www.node-tap.org/api/) featuring:\n - Great [promise support](http://www.node-tap.org/promises/)\n - Comprehensive [assert\n library](http://www.node-tap.org/asserts/)\n - Other [advanced stuff](http://www.node-tap.org/advanced/)\n - Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n - [Parallel Testing](http://www.node-tap.org/parallel/)\n- [Command-line interface](http://www.node-tap.org/cli/) for\n running tests (whether they use node-tap or not)\n- [Machine-generated API docs](https://tapjs.github.io/tapjs)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for\nrecent updates, or just get started with [the\nbasics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head\nover to [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you\nwhy they're the greatest. This isn't that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design\nchallenge that balances on the intersection of many conflicting\ndemands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a\ntest framework should work, and what it should let you do. I do\n_not_ have any opinion about whether or not you share those\nopinions. If you do share them, you will probably enjoy this test\nlibrary.\n\nHere are the design principles that shape this test framework.\n\n### Test files are \"normal\" programs\n\nAny TAP test can be run directly as a plain old JavaScript\nprogram. Of course, if it's written in TypeScript, you'll\nhave to run it with a TypeScript loader, but otherwise, they\nshould be just like normal programs that run in a normal\nenvironment.\n\nBut there's no runner required to run tests, they don't\nexecute in a special simulated memory space with injected\nglobals, and so on. Because each test runs in its own process,\nthere's no chance of tests becoming dependent on one another's\nleaked globals or causing other confusing situations.\n\n### Tests should help, not get in the way\n\nThe goal of tests is to help you write code. They add reliability\nto your program by adding a layer of \"yes, this does what I think\nit does\". Whether you're doing strict Red-Green-Refactor style\nTDD, or just finger-painting until it feels right and then\nwriting tests to verify what it actually does, writing the tests\nshould feel empowering and straightforward, _reducing_ cognitive\nload rather than increasing it.\n\n### All types must be accurate and complete\n\nThis is simply not reasonable to do with a hand-edited type\ndefinition in `.d.ts` file.\n\nTAP's exported types are built up from its set of plugins and\ninternal classes, assembled into the `Test` class that your test\nprograms interact with. When a plugin is added or removed, the\n`t` in your editor can accurately tell you its new shape.\n\nIf you have to look at the docs too often, that's a bug in my\nopinion. Lean into the beautiful power of code completion.\n\n### TypeScript, ESM, and CommonJS supported out of the box\n\nWith the changes to the module system in Node.js over the\nlast several years, TAP fell down on this requirement in\nversions prior to v18. As of version 18, the entire system has\nbeen rewritten in TypeScript, and built as hybrid ESM/CommonJS\npackages.\n\nYour tests should be written just like your program, with as few\nbarriers as possible. If you can do it in CommonJS, you can do it\nin ESM, and vice versa (at least as far as TAP is concerned).\nWhatever is in your `tsconfig.json` or `package.json`, it should\nJust Work.\n\n### Anything that _can_ be a plugin _is_ a plugin\n\nThe plugin system is leveraged for anything that does not\nabsolutely need to be included in the core.\n\nBasic [TAP](https://testanything.org) generation and flow\ncontrol, error handling, config loading, process management and\nso on, are all included in the core. But TypeScript support,\nmocking, almost all assertion methods, method and property\ninterception and spying, spawning/forking subtests, creating\nfixtures, snapshots, and attaching lifecycle methods (among\nothers) are all relegated to plugins.\n\nThis means that features can be switched on or off or extended\nvery easily.\n\n### Plugins must be powerful and trivial to write correctly\n\nThe plugin interface is extremely simple. Export a `plugin`\nfunction that returns an object. That's it, that's a plugin.\n\nPlugins can also export configuration definitions, which are\nfolded into the set of fields that TAP knows how to parse from\nthe command line or from your `.taprc` file, or export a `loader`\nstring, which will be invoked when spawning test processes.\n\n### High Signal, Low Noise\n\nIt is important to give a lot of information about test failures,\nthrows, and so on, so that you can easily jump straight to the\nappropriate place in the code to fix the problem. And, it's\nusually helpful to see which tests are actually running.\n\nHowever, a screen full of green checkmarks and `100% Covered!`\nisn't very useful. It should be just enough to know what happened\nand easily diagnose any problems, and otherwise fairly quiet.\n\nLow information output has been trimmed down as much as possible\nfrom the default reporters. Coverage information is only shown\nwhen it has something relevant to say. TAP tries to show you\nexactly what you need to see, and nothing else. Stack traces have\nnoisy internals trimmed out, so it's easier to see exactly where\nin _your_ code the problem happened. Source maps are always\nenabled, because you need to know where the actual code is, not\njust which built artifact failed.\n\nIf the default reporter isn't terse enough for your liking, try\n`tap -Rterse`.\n\n### Assertions don't throw (but throws are handled nicely)\n\nI frequently write programs that have many hundreds of assertions\nbased on some list of test cases. If the first failure throws,\nthen I don't know if I've failed 100 tests or 1, without wrapping\neverything in a try-catch. Furthermore, I usually want to see\nsome kind of output or reporting to verify that each one actually\nran.\n\nBasically, it should be your decision whether you want to throw\nor not. The test framework shouldn't force that on you, and\nshould make either case easy.\n\n### Test reporting should be useful, extensible, and accessible\n\nThe [raw test output](https://www.node-tap.org/tap-format/)\nis machine-parseable and human-intelligible, a separate component\nconsumes test output and turns it into a [pretty summarized\nreport](https://www.node-tap.org/reporting/). This means that\ntest data can be stored and parsed later, dug into for additional\ndetails, and so on.\n\nRed and green are the conventional colors meaning \"removed\" and\n\"added\", but they're also exactly the same color for many people.\nAll of the color choices in the reporter are tested rigorously\nagainst simulators for protanopia, deuteranopia, tritanopia, and\nmonochromicity.\n\n### Test coverage is always on\n\nRunning tests with coverage changes the way that you think\nabout your programs, and provides much deeper insight.\nTAP uses V8's internal coverage mechanisms directly, and verifies\nthat tests provide 100% coverage of all lines, branches,\nfunctions, and statements in the system under test. It uses\n[C8](https://npmjs.com/c8) to analyze the V8 coverage data and\ngenerate coverage reports.\n\nMissing coverage means that you are relying on untested code, so\nthis is treated as a test failure. If you have some bit of code\nwhich is actually _impossible_ to test for some reason, wrap it\nin the appropriate `/* c8 ignore start */` / `/* c8 ignore end\n*/` comments to exclude those lines from the analysis. But think\ncarefully about whether that's really the case. Usually, if you\nhave to coverage-ignore something, it's a sign that you need to\neither delete that code or refactor it into a more easily tested\nmodule.\n\n-----\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual. It should be\nfun, because making stuff is fun, and it helps you make better\nstuff.\n\nThere are many opinions left off of this list! Reasonable people\ncan disagree. But if you find yourself nodding along, [maybe tap\nis for you](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"40129df8f95592016e0100b1b96524cd38803b0c","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-JdLNGuMpI4diIOFKxsEWtmdTbuwfBtx9eQO3BF10mlRmiHm88DsbvWS8mPMy4/T/FdKYLFgEQS23OSquvX5WSA==","shasum":"3a72c7113f7b3bd0a8e9a273a60c15edecbf0072","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-24.tgz","fileCount":25,"unpackedSize":76025,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDtVhywMPbNAivwS8H3cdmh4+Ls1n9/OqxeOf84QXNS9AiAqogmkmuWI/2l5zFoXSAnlhjqN2Y+MbAZDWwwFekh7PA=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-24_1693878010114_0.13197374173877097"},"_hasShrinkwrap":false},"18.0.0-25":{"name":"tap","version":"18.0.0-25","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/mjs/run.mjs"},"type":"module","exports":{"./package.json":{"import":"./package.json","require":"./package.json"},".":{"import":{"types":"./dist/mjs/esm.d.mts","default":"./dist/mjs/esm.mjs"},"require":{"types":"./dist/cjs/cjs.d.cts","default":"./dist/cjs/cjs.cjs"}}},"engines":{"node":">=16"},"dependencies":{"@tapjs/after":"0.0.0-21","@tapjs/after-each":"0.0.0-21","@tapjs/asserts":"0.0.0-21","@tapjs/before":"0.0.0-21","@tapjs/before-each":"0.0.0-21","@tapjs/core":"0.0.0-21","@tapjs/filter":"0.0.0-21","@tapjs/fixture":"0.0.0-21","@tapjs/intercept":"0.0.0-21","@tapjs/mock":"0.0.0-22","@tapjs/run":"0.0.0-23","@tapjs/snapshot":"0.0.0-21","@tapjs/spawn":"0.0.0-21","@tapjs/stdin":"0.0.0-21","@tapjs/test":"0.0.0-21","@tapjs/typescript":"0.0.0-21","@tapjs/worker":"0.0.0-21"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tsc -p tsconfig/cjs.json && tsc -p tsconfig/esm.json && bash ./scripts/fixup.sh","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"typecheck":false,"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-25","readme":"# node-tap\n\nA TAP test framework\nfor Node.js.\n\n_Just wanna see some code? [Get\nstarted!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming\nTAP-generating test scripts, and a JavaScript framework for\nwriting such scripts.\n\n\n\n- [Getting started guide](http://www.node-tap.org/basics/)\n- Built-in [test coverage](http://www.node-tap.org/coverage/)\n- Many [reporter formats](http://www.node-tap.org/reporting/)\n- Extensive [API](http://www.node-tap.org/api/) featuring:\n - Great [promise support](http://www.node-tap.org/promises/)\n - Comprehensive [assert\n library](http://www.node-tap.org/asserts/)\n - Other [advanced stuff](http://www.node-tap.org/advanced/)\n - Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n - [Parallel Testing](http://www.node-tap.org/parallel/)\n- [Command-line interface](http://www.node-tap.org/cli/) for\n running tests (whether they use node-tap or not)\n- [Machine-generated API docs](https://tapjs.github.io/tapjs)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for\nrecent updates, or just get started with [the\nbasics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head\nover to [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you\nwhy they're the greatest. This isn't that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design\nchallenge that balances on the intersection of many conflicting\ndemands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a\ntest framework should work, and what it should let you do. I do\n_not_ have any opinion about whether or not you share those\nopinions. If you do share them, you will probably enjoy this test\nlibrary.\n\nHere are the design principles that shape this test framework.\n\n### Test files are \"normal\" programs\n\nAny TAP test can be run directly as a plain old JavaScript\nprogram. Of course, if it's written in TypeScript, you'll\nhave to run it with a TypeScript loader, but otherwise, they\nshould be just like normal programs that run in a normal\nenvironment.\n\nBut there's no runner required to run tests, they don't\nexecute in a special simulated memory space with injected\nglobals, and so on. Because each test runs in its own process,\nthere's no chance of tests becoming dependent on one another's\nleaked globals or causing other confusing situations.\n\n### Tests should help, not get in the way\n\nThe goal of tests is to help you write code. They add reliability\nto your program by adding a layer of \"yes, this does what I think\nit does\". Whether you're doing strict Red-Green-Refactor style\nTDD, or just finger-painting until it feels right and then\nwriting tests to verify what it actually does, writing the tests\nshould feel empowering and straightforward, _reducing_ cognitive\nload rather than increasing it.\n\n### All types must be accurate and complete\n\nThis is simply not reasonable to do with a hand-edited type\ndefinition in `.d.ts` file.\n\nTAP's exported types are built up from its set of plugins and\ninternal classes, assembled into the `Test` class that your test\nprograms interact with. When a plugin is added or removed, the\n`t` in your editor can accurately tell you its new shape.\n\nIf you have to look at the docs too often, that's a bug in my\nopinion. Lean into the beautiful power of code completion.\n\n### TypeScript, ESM, and CommonJS supported out of the box\n\nWith the changes to the module system in Node.js over the\nlast several years, TAP fell down on this requirement in\nversions prior to v18. As of version 18, the entire system has\nbeen rewritten in TypeScript, and built as hybrid ESM/CommonJS\npackages.\n\nYour tests should be written just like your program, with as few\nbarriers as possible. If you can do it in CommonJS, you can do it\nin ESM, and vice versa (at least as far as TAP is concerned).\nWhatever is in your `tsconfig.json` or `package.json`, it should\nJust Work.\n\n### Anything that _can_ be a plugin _is_ a plugin\n\nThe plugin system is leveraged for anything that does not\nabsolutely need to be included in the core.\n\nBasic [TAP](https://testanything.org) generation and flow\ncontrol, error handling, config loading, process management and\nso on, are all included in the core. But TypeScript support,\nmocking, almost all assertion methods, method and property\ninterception and spying, spawning/forking subtests, creating\nfixtures, snapshots, and attaching lifecycle methods (among\nothers) are all relegated to plugins.\n\nThis means that features can be switched on or off or extended\nvery easily.\n\n### Plugins must be powerful and trivial to write correctly\n\nThe plugin interface is extremely simple. Export a `plugin`\nfunction that returns an object. That's it, that's a plugin.\n\nPlugins can also export configuration definitions, which are\nfolded into the set of fields that TAP knows how to parse from\nthe command line or from your `.taprc` file, or export a `loader`\nstring, which will be invoked when spawning test processes.\n\n### High Signal, Low Noise\n\nIt is important to give a lot of information about test failures,\nthrows, and so on, so that you can easily jump straight to the\nappropriate place in the code to fix the problem. And, it's\nusually helpful to see which tests are actually running.\n\nHowever, a screen full of green checkmarks and `100% Covered!`\nisn't very useful. It should be just enough to know what happened\nand easily diagnose any problems, and otherwise fairly quiet.\n\nLow information output has been trimmed down as much as possible\nfrom the default reporters. Coverage information is only shown\nwhen it has something relevant to say. TAP tries to show you\nexactly what you need to see, and nothing else. Stack traces have\nnoisy internals trimmed out, so it's easier to see exactly where\nin _your_ code the problem happened. Source maps are always\nenabled, because you need to know where the actual code is, not\njust which built artifact failed.\n\nIf the default reporter isn't terse enough for your liking, try\n`tap -Rterse`.\n\n### Assertions don't throw (but throws are handled nicely)\n\nI frequently write programs that have many hundreds of assertions\nbased on some list of test cases. If the first failure throws,\nthen I don't know if I've failed 100 tests or 1, without wrapping\neverything in a try-catch. Furthermore, I usually want to see\nsome kind of output or reporting to verify that each one actually\nran.\n\nBasically, it should be your decision whether you want to throw\nor not. The test framework shouldn't force that on you, and\nshould make either case easy.\n\n### Test reporting should be useful, extensible, and accessible\n\nThe [raw test output](https://www.node-tap.org/tap-format/)\nis machine-parseable and human-intelligible, a separate component\nconsumes test output and turns it into a [pretty summarized\nreport](https://www.node-tap.org/reporting/). This means that\ntest data can be stored and parsed later, dug into for additional\ndetails, and so on.\n\nRed and green are the conventional colors meaning \"removed\" and\n\"added\", but they're also exactly the same color for many people.\nAll of the color choices in the reporter are tested rigorously\nagainst simulators for protanopia, deuteranopia, tritanopia, and\nmonochromicity.\n\n### Test coverage is always on\n\nRunning tests with coverage changes the way that you think\nabout your programs, and provides much deeper insight.\nTAP uses V8's internal coverage mechanisms directly, and verifies\nthat tests provide 100% coverage of all lines, branches,\nfunctions, and statements in the system under test. It uses\n[C8](https://npmjs.com/c8) to analyze the V8 coverage data and\ngenerate coverage reports.\n\nMissing coverage means that you are relying on untested code, so\nthis is treated as a test failure. If you have some bit of code\nwhich is actually _impossible_ to test for some reason, wrap it\nin the appropriate `/* c8 ignore start */` / `/* c8 ignore end\n*/` comments to exclude those lines from the analysis. But think\ncarefully about whether that's really the case. Usually, if you\nhave to coverage-ignore something, it's a sign that you need to\neither delete that code or refactor it into a more easily tested\nmodule.\n\n-----\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual. It should be\nfun, because making stuff is fun, and it helps you make better\nstuff.\n\nThere are many opinions left off of this list! Reasonable people\ncan disagree. But if you find yourself nodding along, [maybe tap\nis for you](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"aff25fcf09bb852ce3e2fa988e5a8abecd422ef1","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.6.1","_npmVersion":"9.8.1","dist":{"integrity":"sha512-7+4tOP5fhUx1rzeKz39nD2O0UhgHhiHrQ0am3Q2K2MXeyZP0hgaAoeyP1gIpYI0vs0KKVonA2SP8lvMRXkGE9Q==","shasum":"03bb5d2c0857cdfb993c640124ff9c8e73bb345f","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-25.tgz","fileCount":25,"unpackedSize":76049,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHUYj4Zi3uhxroee6aMEMCXgIXn8VLQJ2T4cGLqab/jPAiEA/3juoTISRqtzk7HdhcTdC9KbUAZqjg6wQsNQvqaHShU="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-25_1694370139548_0.4791108686277985"},"_hasShrinkwrap":false},"18.0.0-26":{"name":"tap","version":"18.0.0-26","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/esm/run.mjs"},"type":"module","tshy":{"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"engines":{"node":">=16"},"dependencies":{"@tapjs/after":"0.0.0-22","@tapjs/after-each":"0.0.0-22","@tapjs/asserts":"0.0.0-22","@tapjs/before":"0.0.0-22","@tapjs/before-each":"0.0.0-22","@tapjs/core":"0.0.0-22","@tapjs/filter":"0.0.0-22","@tapjs/fixture":"0.0.0-22","@tapjs/intercept":"0.0.0-22","@tapjs/mock":"0.0.0-23","@tapjs/run":"0.0.0-24","@tapjs/snapshot":"0.0.0-22","@tapjs/spawn":"0.0.0-22","@tapjs/stdin":"0.0.0-22","@tapjs/test":"0.0.0-22","@tapjs/typescript":"0.0.0-22","@tapjs/worker":"0.0.0-22"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"typecheck":false,"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0-26","readme":"# node-tap\n\nA TAP test framework\nfor Node.js.\n\n_Just wanna see some code? [Get\nstarted!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming\nTAP-generating test scripts, and a JavaScript framework for\nwriting such scripts.\n\n\n\n- [Getting started guide](http://www.node-tap.org/basics/)\n- Built-in [test coverage](http://www.node-tap.org/coverage/)\n- Many [reporter formats](http://www.node-tap.org/reporting/)\n- Extensive [API](http://www.node-tap.org/api/) featuring:\n - Great [promise support](http://www.node-tap.org/promises/)\n - Comprehensive [assert\n library](http://www.node-tap.org/asserts/)\n - Other [advanced stuff](http://www.node-tap.org/advanced/)\n - Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n - [Parallel Testing](http://www.node-tap.org/parallel/)\n- [Command-line interface](http://www.node-tap.org/cli/) for\n running tests (whether they use node-tap or not)\n- [Machine-generated API docs](https://tapjs.github.io/tapjs)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for\nrecent updates, or just get started with [the\nbasics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head\nover to [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you\nwhy they're the greatest. This isn't that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design\nchallenge that balances on the intersection of many conflicting\ndemands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a\ntest framework should work, and what it should let you do. I do\n_not_ have any opinion about whether or not you share those\nopinions. If you do share them, you will probably enjoy this test\nlibrary.\n\nHere are the design principles that shape this test framework.\n\n### Test files are \"normal\" programs\n\nAny TAP test can be run directly as a plain old JavaScript\nprogram. Of course, if it's written in TypeScript, you'll\nhave to run it with a TypeScript loader, but otherwise, they\nshould be just like normal programs that run in a normal\nenvironment.\n\nBut there's no runner required to run tests, they don't\nexecute in a special simulated memory space with injected\nglobals, and so on. Because each test runs in its own process,\nthere's no chance of tests becoming dependent on one another's\nleaked globals or causing other confusing situations.\n\n### Tests should help, not get in the way\n\nThe goal of tests is to help you write code. They add reliability\nto your program by adding a layer of \"yes, this does what I think\nit does\". Whether you're doing strict Red-Green-Refactor style\nTDD, or just finger-painting until it feels right and then\nwriting tests to verify what it actually does, writing the tests\nshould feel empowering and straightforward, _reducing_ cognitive\nload rather than increasing it.\n\n### All types must be accurate and complete\n\nThis is simply not reasonable to do with a hand-edited type\ndefinition in `.d.ts` file.\n\nTAP's exported types are built up from its set of plugins and\ninternal classes, assembled into the `Test` class that your test\nprograms interact with. When a plugin is added or removed, the\n`t` in your editor can accurately tell you its new shape.\n\nIf you have to look at the docs too often, that's a bug in my\nopinion. Lean into the beautiful power of code completion.\n\n### TypeScript, ESM, and CommonJS supported out of the box\n\nWith the changes to the module system in Node.js over the\nlast several years, TAP fell down on this requirement in\nversions prior to v18. As of version 18, the entire system has\nbeen rewritten in TypeScript, and built as hybrid ESM/CommonJS\npackages.\n\nYour tests should be written just like your program, with as few\nbarriers as possible. If you can do it in CommonJS, you can do it\nin ESM, and vice versa (at least as far as TAP is concerned).\nWhatever is in your `tsconfig.json` or `package.json`, it should\nJust Work.\n\n### Anything that _can_ be a plugin _is_ a plugin\n\nThe plugin system is leveraged for anything that does not\nabsolutely need to be included in the core.\n\nBasic [TAP](https://testanything.org) generation and flow\ncontrol, error handling, config loading, process management and\nso on, are all included in the core. But TypeScript support,\nmocking, almost all assertion methods, method and property\ninterception and spying, spawning/forking subtests, creating\nfixtures, snapshots, and attaching lifecycle methods (among\nothers) are all relegated to plugins.\n\nThis means that features can be switched on or off or extended\nvery easily.\n\n### Plugins must be powerful and trivial to write correctly\n\nThe plugin interface is extremely simple. Export a `plugin`\nfunction that returns an object. That's it, that's a plugin.\n\nPlugins can also export configuration definitions, which are\nfolded into the set of fields that TAP knows how to parse from\nthe command line or from your `.taprc` file, or export a `loader`\nstring, which will be invoked when spawning test processes.\n\n### High Signal, Low Noise\n\nIt is important to give a lot of information about test failures,\nthrows, and so on, so that you can easily jump straight to the\nappropriate place in the code to fix the problem. And, it's\nusually helpful to see which tests are actually running.\n\nHowever, a screen full of green checkmarks and `100% Covered!`\nisn't very useful. It should be just enough to know what happened\nand easily diagnose any problems, and otherwise fairly quiet.\n\nLow information output has been trimmed down as much as possible\nfrom the default reporters. Coverage information is only shown\nwhen it has something relevant to say. TAP tries to show you\nexactly what you need to see, and nothing else. Stack traces have\nnoisy internals trimmed out, so it's easier to see exactly where\nin _your_ code the problem happened. Source maps are always\nenabled, because you need to know where the actual code is, not\njust which built artifact failed.\n\nIf the default reporter isn't terse enough for your liking, try\n`tap -Rterse`.\n\n### Assertions don't throw (but throws are handled nicely)\n\nI frequently write programs that have many hundreds of assertions\nbased on some list of test cases. If the first failure throws,\nthen I don't know if I've failed 100 tests or 1, without wrapping\neverything in a try-catch. Furthermore, I usually want to see\nsome kind of output or reporting to verify that each one actually\nran.\n\nBasically, it should be your decision whether you want to throw\nor not. The test framework shouldn't force that on you, and\nshould make either case easy.\n\n### Test reporting should be useful, extensible, and accessible\n\nThe [raw test output](https://www.node-tap.org/tap-format/)\nis machine-parseable and human-intelligible, a separate component\nconsumes test output and turns it into a [pretty summarized\nreport](https://www.node-tap.org/reporting/). This means that\ntest data can be stored and parsed later, dug into for additional\ndetails, and so on.\n\nRed and green are the conventional colors meaning \"removed\" and\n\"added\", but they're also exactly the same color for many people.\nAll of the color choices in the reporter are tested rigorously\nagainst simulators for protanopia, deuteranopia, tritanopia, and\nmonochromicity.\n\n### Test coverage is always on\n\nRunning tests with coverage changes the way that you think\nabout your programs, and provides much deeper insight.\nTAP uses V8's internal coverage mechanisms directly, and verifies\nthat tests provide 100% coverage of all lines, branches,\nfunctions, and statements in the system under test. It uses\n[C8](https://npmjs.com/c8) to analyze the V8 coverage data and\ngenerate coverage reports.\n\nMissing coverage means that you are relying on untested code, so\nthis is treated as a test failure. If you have some bit of code\nwhich is actually _impossible_ to test for some reason, wrap it\nin the appropriate `/* c8 ignore start */` / `/* c8 ignore end\n*/` comments to exclude those lines from the analysis. But think\ncarefully about whether that's really the case. Usually, if you\nhave to coverage-ignore something, it's a sign that you need to\neither delete that code or refactor it into a more easily tested\nmodule.\n\n-----\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual. It should be\nfun, because making stuff is fun, and it helps you make better\nstuff.\n\nThere are many opinions left off of this list! Reasonable people\ncan disagree. But if you find yourself nodding along, [maybe tap\nis for you](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"82f48cd053bb57d17a5146b4e385d588f05d1a22","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-Osy3L6/gcIJ3gpSzkCNUrxk/DwlrAWo3nduieYUsG6OSl+Qb/qV80f/7aNEpnCNKUzVM/izFtZfrM1sp4YRliQ==","shasum":"6208c37a13a9f7d37f14287c3c04165f560feb44","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0-26.tgz","fileCount":25,"unpackedSize":75941,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDpSK7voxbFEWkitYU9itR6MS3e+6zWFUTfVKvCxkaZ1wIhAKJS8Q8Bx5zG7ANrSaGmAegiIYM+ykOgOZ0U2aY9VSLl"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0-26_1694624567584_0.13102933973031927"},"_hasShrinkwrap":false},"18.0.0":{"name":"tap","version":"18.0.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/esm/run.mjs"},"type":"module","tshy":{"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"engines":{"node":">=16"},"dependencies":{"@tapjs/after":"1.0.0","@tapjs/after-each":"1.0.0","@tapjs/asserts":"1.0.0","@tapjs/before":"1.0.0","@tapjs/before-each":"1.0.0","@tapjs/core":"1.0.0","@tapjs/filter":"1.0.0","@tapjs/fixture":"1.0.0","@tapjs/intercept":"1.0.0","@tapjs/mock":"1.0.0","@tapjs/run":"1.0.0","@tapjs/snapshot":"1.0.0","@tapjs/spawn":"1.0.0","@tapjs/stdin":"1.0.0","@tapjs/test":"1.0.0","@tapjs/typescript":"1.0.0","@tapjs/worker":"1.0.0"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"typecheck":false,"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.0","readme":"# node-tap\n\nA TAP test framework\nfor Node.js.\n\n_Just wanna see some code? [Get\nstarted!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming\nTAP-generating test scripts, and a JavaScript framework for\nwriting such scripts.\n\n\n\n- [Getting started guide](http://www.node-tap.org/basics/)\n- Built-in [test coverage](http://www.node-tap.org/coverage/)\n- Many [reporter formats](http://www.node-tap.org/reporting/)\n- Extensive [API](http://www.node-tap.org/api/) featuring:\n - Great [promise support](http://www.node-tap.org/promises/)\n - Comprehensive [assert\n library](http://www.node-tap.org/asserts/)\n - Other [advanced stuff](http://www.node-tap.org/advanced/)\n - Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n - [Parallel Testing](http://www.node-tap.org/parallel/)\n- [Command-line interface](http://www.node-tap.org/cli/) for\n running tests (whether they use node-tap or not)\n- [Machine-generated API docs](https://tapjs.github.io/tapjs)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for\nrecent updates, or just get started with [the\nbasics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head\nover to [the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you\nwhy they're the greatest. This isn't that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design\nchallenge that balances on the intersection of many conflicting\ndemands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a\ntest framework should work, and what it should let you do. I do\n_not_ have any opinion about whether or not you share those\nopinions. If you do share them, you will probably enjoy this test\nlibrary.\n\nHere are the design principles that shape this test framework.\n\n### Test files are \"normal\" programs\n\nAny TAP test can be run directly as a plain old JavaScript\nprogram. Of course, if it's written in TypeScript, you'll\nhave to run it with a TypeScript loader, but otherwise, they\nshould be just like normal programs that run in a normal\nenvironment.\n\nBut there's no runner required to run tests, they don't\nexecute in a special simulated memory space with injected\nglobals, and so on. Because each test runs in its own process,\nthere's no chance of tests becoming dependent on one another's\nleaked globals or causing other confusing situations.\n\n### Tests should help, not get in the way\n\nThe goal of tests is to help you write code. They add reliability\nto your program by adding a layer of \"yes, this does what I think\nit does\". Whether you're doing strict Red-Green-Refactor style\nTDD, or just finger-painting until it feels right and then\nwriting tests to verify what it actually does, writing the tests\nshould feel empowering and straightforward, _reducing_ cognitive\nload rather than increasing it.\n\n### All types must be accurate and complete\n\nThis is simply not reasonable to do with a hand-edited type\ndefinition in `.d.ts` file.\n\nTAP's exported types are built up from its set of plugins and\ninternal classes, assembled into the `Test` class that your test\nprograms interact with. When a plugin is added or removed, the\n`t` in your editor can accurately tell you its new shape.\n\nIf you have to look at the docs too often, that's a bug in my\nopinion. Lean into the beautiful power of code completion.\n\n### TypeScript, ESM, and CommonJS supported out of the box\n\nWith the changes to the module system in Node.js over the\nlast several years, TAP fell down on this requirement in\nversions prior to v18. As of version 18, the entire system has\nbeen rewritten in TypeScript, and built as hybrid ESM/CommonJS\npackages.\n\nYour tests should be written just like your program, with as few\nbarriers as possible. If you can do it in CommonJS, you can do it\nin ESM, and vice versa (at least as far as TAP is concerned).\nWhatever is in your `tsconfig.json` or `package.json`, it should\nJust Work.\n\n### Anything that _can_ be a plugin _is_ a plugin\n\nThe plugin system is leveraged for anything that does not\nabsolutely need to be included in the core.\n\nBasic [TAP](https://testanything.org) generation and flow\ncontrol, error handling, config loading, process management and\nso on, are all included in the core. But TypeScript support,\nmocking, almost all assertion methods, method and property\ninterception and spying, spawning/forking subtests, creating\nfixtures, snapshots, and attaching lifecycle methods (among\nothers) are all relegated to plugins.\n\nThis means that features can be switched on or off or extended\nvery easily.\n\n### Plugins must be powerful and trivial to write correctly\n\nThe plugin interface is extremely simple. Export a `plugin`\nfunction that returns an object. That's it, that's a plugin.\n\nPlugins can also export configuration definitions, which are\nfolded into the set of fields that TAP knows how to parse from\nthe command line or from your `.taprc` file, or export a `loader`\nstring, which will be invoked when spawning test processes.\n\n### High Signal, Low Noise\n\nIt is important to give a lot of information about test failures,\nthrows, and so on, so that you can easily jump straight to the\nappropriate place in the code to fix the problem. And, it's\nusually helpful to see which tests are actually running.\n\nHowever, a screen full of green checkmarks and `100% Covered!`\nisn't very useful. It should be just enough to know what happened\nand easily diagnose any problems, and otherwise fairly quiet.\n\nLow information output has been trimmed down as much as possible\nfrom the default reporters. Coverage information is only shown\nwhen it has something relevant to say. TAP tries to show you\nexactly what you need to see, and nothing else. Stack traces have\nnoisy internals trimmed out, so it's easier to see exactly where\nin _your_ code the problem happened. Source maps are always\nenabled, because you need to know where the actual code is, not\njust which built artifact failed.\n\nIf the default reporter isn't terse enough for your liking, try\n`tap -Rterse`.\n\n### Assertions don't throw (but throws are handled nicely)\n\nI frequently write programs that have many hundreds of assertions\nbased on some list of test cases. If the first failure throws,\nthen I don't know if I've failed 100 tests or 1, without wrapping\neverything in a try-catch. Furthermore, I usually want to see\nsome kind of output or reporting to verify that each one actually\nran.\n\nBasically, it should be your decision whether you want to throw\nor not. The test framework shouldn't force that on you, and\nshould make either case easy.\n\n### Test reporting should be useful, extensible, and accessible\n\nThe [raw test output](https://www.node-tap.org/tap-format/)\nis machine-parseable and human-intelligible, a separate component\nconsumes test output and turns it into a [pretty summarized\nreport](https://www.node-tap.org/reporting/). This means that\ntest data can be stored and parsed later, dug into for additional\ndetails, and so on.\n\nRed and green are the conventional colors meaning \"removed\" and\n\"added\", but they're also exactly the same color for many people.\nAll of the color choices in the reporter are tested rigorously\nagainst simulators for protanopia, deuteranopia, tritanopia, and\nmonochromicity.\n\n### Test coverage is always on\n\nRunning tests with coverage changes the way that you think\nabout your programs, and provides much deeper insight.\nTAP uses V8's internal coverage mechanisms directly, and verifies\nthat tests provide 100% coverage of all lines, branches,\nfunctions, and statements in the system under test. It uses\n[C8](https://npmjs.com/c8) to analyze the V8 coverage data and\ngenerate coverage reports.\n\nMissing coverage means that you are relying on untested code, so\nthis is treated as a test failure. If you have some bit of code\nwhich is actually _impossible_ to test for some reason, wrap it\nin the appropriate `/* c8 ignore start */` / `/* c8 ignore end\n*/` comments to exclude those lines from the analysis. But think\ncarefully about whether that's really the case. Usually, if you\nhave to coverage-ignore something, it's a sign that you need to\neither delete that code or refactor it into a more easily tested\nmodule.\n\n-----\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual. It should be\nfun, because making stuff is fun, and it helps you make better\nstuff.\n\nThere are many opinions left off of this list! Reasonable people\ncan disagree. But if you find yourself nodding along, [maybe tap\nis for you](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"793c1c09f7c1262e9bf0947cf3915b6b13ab9c49","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"18.16.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-0ktZ2hb+B6yTmBeMAT33rMJ+1numqO6qjNUZ32H2FyiPy9aIOZKqIRT5dNbjdeYN0x9zDN5qG4Ocy9OBqKxmRA==","shasum":"70c630d88f60c2252aa841439c26195258957764","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.0.tgz","fileCount":25,"unpackedSize":75859,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCGRHbXXegANBxCqlj/hQrjM2GNywyjibJ5qinw5UDnpQIgXKkps9WY64zaJ+gseThdXOxFcRVIvCFlJw5LXRvxPsk="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.0_1694790303079_0.08021791763539232"},"_hasShrinkwrap":false},"18.0.1":{"name":"tap","version":"18.0.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/esm/run.mjs"},"type":"module","tshy":{"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"engines":{"node":">=16"},"dependencies":{"@tapjs/after":"1.0.1","@tapjs/after-each":"1.0.1","@tapjs/asserts":"1.0.1","@tapjs/before":"1.0.1","@tapjs/before-each":"1.0.1","@tapjs/core":"1.0.1","@tapjs/filter":"1.0.1","@tapjs/fixture":"1.0.1","@tapjs/intercept":"1.0.1","@tapjs/mock":"1.0.1","@tapjs/run":"1.0.1","@tapjs/snapshot":"1.0.1","@tapjs/spawn":"1.0.1","@tapjs/stdin":"1.0.1","@tapjs/test":"1.0.1","@tapjs/typescript":"1.0.1","@tapjs/worker":"1.0.1"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"typecheck":false,"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.1","gitHead":"88223b6d0d2578e74b2f861900eb8f24cdf175c4","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.6.1","_npmVersion":"9.8.1","dist":{"integrity":"sha512-DM5dYjVvAPJh7d4Dz+VFk0f12NNZM4xvG6ce0vHc+F1NG+vYPbBYcGQMoWYfJXDumth6FDuIdJPrK0or+rFwUA==","shasum":"e0668a67b8d64063cd8f51f5f2b2eec7c9b79384","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.1.tgz","fileCount":25,"unpackedSize":75859,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGxxvU8JpNZpg+19lRn0xM81Ad+UMHaMNj6flmdNvz4+AiBbOWzVdZv0OJBF1l8/BNWSPCZ2XikaJtY9LXQ7AhfGJA=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.1_1694805301929_0.22996835368118496"},"_hasShrinkwrap":false},"18.0.2":{"name":"tap","version":"18.0.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/esm/run.mjs"},"type":"module","tshy":{"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"engines":{"node":">=16"},"dependencies":{"@tapjs/after":"1.0.2","@tapjs/after-each":"1.0.2","@tapjs/asserts":"1.0.2","@tapjs/before":"1.0.2","@tapjs/before-each":"1.0.2","@tapjs/core":"1.0.2","@tapjs/filter":"1.0.2","@tapjs/fixture":"1.0.2","@tapjs/intercept":"1.0.2","@tapjs/mock":"1.0.2","@tapjs/run":"1.0.2","@tapjs/snapshot":"1.0.2","@tapjs/spawn":"1.0.2","@tapjs/stdin":"1.0.2","@tapjs/test":"1.0.2","@tapjs/typescript":"1.0.2","@tapjs/worker":"1.0.2"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"typecheck":false,"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.2","gitHead":"455ac978b50f57594361e7dd9efca22f20072623","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.6.1","_npmVersion":"9.8.1","dist":{"integrity":"sha512-hvzH80Y60E7pEvZz4gMXOrUexVBAzI9oiCgZwqzdkLx/WD9xjz7KubbIkMAXzl0CamUl7QiWzJeGf7aUcbszyw==","shasum":"4df11656d36ba37fd457b7670fc3a9dce929b2b1","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.2.tgz","fileCount":25,"unpackedSize":75859,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAQI/R1yl3nHrn3pZrHhSsLjKUabrm18yrGgfUItDXRhAiBWBC2LLUN6UHiEhw5a65e7hWoC4QFuaFF/scc14iIREQ=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.2_1694929878333_0.5808053577041892"},"_hasShrinkwrap":false},"18.0.3":{"name":"tap","version":"18.0.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/esm/run.mjs"},"type":"module","tshy":{"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"engines":{"node":">=16"},"dependencies":{"@tapjs/after":"1.0.2","@tapjs/after-each":"1.0.2","@tapjs/asserts":"1.0.2","@tapjs/before":"1.0.2","@tapjs/before-each":"1.0.2","@tapjs/core":"1.0.2","@tapjs/filter":"1.0.2","@tapjs/fixture":"1.0.2","@tapjs/intercept":"1.0.2","@tapjs/mock":"1.0.3","@tapjs/run":"1.0.3","@tapjs/snapshot":"1.0.2","@tapjs/spawn":"1.0.2","@tapjs/stdin":"1.0.2","@tapjs/test":"1.0.2","@tapjs/typescript":"1.0.2","@tapjs/worker":"1.0.2"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"typecheck":false,"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.3","gitHead":"0e2f68bdc2346c3e9db28544b88f40c4f3f02ac9","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.6.1","_npmVersion":"9.8.1","dist":{"integrity":"sha512-WSadvUZZ2TjGWL+hQY8nl7Y96JoR1MTlZPrSYBdqB728ZRmhulhKLXIV5sidKS3nkTnKwzNRdu+wSAPm++NjeQ==","shasum":"99c969309edfc5557062fe098db8f69ad5e48785","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.3.tgz","fileCount":25,"unpackedSize":75859,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA3x0FOKFiVRQUxMUarviiw2q24F6aLH+C7dahELphQcAiEAn23Frf8D3RLSsIuTC/a01/78IBTLkjeqY1CGFcj/ACE="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.3_1694978053243_0.6214293613986797"},"_hasShrinkwrap":false},"18.0.4":{"name":"tap","version":"18.0.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/esm/run.mjs"},"type":"module","tshy":{"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"engines":{"node":">=16"},"dependencies":{"@tapjs/after":"1.0.3","@tapjs/after-each":"1.0.3","@tapjs/asserts":"1.0.3","@tapjs/before":"1.0.3","@tapjs/before-each":"1.0.3","@tapjs/core":"1.0.3","@tapjs/filter":"1.0.3","@tapjs/fixture":"1.0.3","@tapjs/intercept":"1.0.3","@tapjs/mock":"1.0.4","@tapjs/run":"1.0.4","@tapjs/snapshot":"1.0.3","@tapjs/spawn":"1.0.3","@tapjs/stdin":"1.0.3","@tapjs/test":"1.0.3","@tapjs/typescript":"1.0.3","@tapjs/worker":"1.0.3"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"typecheck":false,"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.0.4","gitHead":"ff9cc676352562d959096f68419e0ab714cfa428","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.6.1","_npmVersion":"9.8.1","dist":{"integrity":"sha512-xnoSSOMlVsKINyFFndjTETuaPg+NPmxqC5HMxW3Bmc/2fw1i7FxjWg3NZACZ2+z1j4/M8xMG8wzKmyHufPl1mA==","shasum":"acf5e25ca9d7b912a5cc581f76955156c9965729","tarball":"https://registry.npmjs.org/tap/-/tap-18.0.4.tgz","fileCount":25,"unpackedSize":75522,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD+pmhukC6dFg6wC6eTNuLqksCbp2FSYHRy+puVZGReQgIgbdvh4Mn6t77Vuy292sqTc/MBQwgwt3VkduunI4veKBo="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.0.4_1695061208004_0.6452647899722832"},"_hasShrinkwrap":false},"18.1.0":{"name":"tap","version":"18.1.0","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/esm/run.mjs"},"type":"module","tshy":{"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"engines":{"node":">=16"},"dependencies":{"@tapjs/after":"1.0.4","@tapjs/after-each":"1.0.4","@tapjs/asserts":"1.0.4","@tapjs/before":"1.0.4","@tapjs/before-each":"1.0.4","@tapjs/core":"1.1.0","@tapjs/filter":"1.1.0","@tapjs/fixture":"1.0.4","@tapjs/intercept":"1.1.0","@tapjs/mock":"1.0.5","@tapjs/run":"1.1.0","@tapjs/snapshot":"1.0.4","@tapjs/spawn":"1.0.4","@tapjs/stdin":"1.0.4","@tapjs/test":"1.1.0","@tapjs/typescript":"1.1.0","@tapjs/worker":"1.0.4"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"typecheck":false,"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.1.0","gitHead":"86e5aaa0aea710e924b42bc4db9cfd93ef08394c","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-fLbKY9O1Lx4RU+5KmBHDkL4+csWjSncKgCauyA0DvZRqvruOPSARZkentrMnAlWNAYEs01clbQMf7+QLKNMsag==","shasum":"ddf0d6cc6cc42dccc59c7c673dca3295a3868309","tarball":"https://registry.npmjs.org/tap/-/tap-18.1.0.tgz","fileCount":25,"unpackedSize":75502,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCiqzVgX0kBRNzY+CRj9AG54uSJ6gsySZK6Amxb8AdsIQIgMtq40xji0P3SrreIBlbJ1VyS0zNpsrdgdPM8lZsKrE0="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.1.0_1695431274453_0.592809631119332"},"_hasShrinkwrap":false},"18.1.1":{"name":"tap","version":"18.1.1","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/esm/run.mjs"},"type":"module","tshy":{"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"engines":{"node":">=16"},"dependencies":{"@tapjs/after":"1.0.4","@tapjs/after-each":"1.0.4","@tapjs/asserts":"1.0.4","@tapjs/before":"1.0.4","@tapjs/before-each":"1.0.4","@tapjs/core":"1.1.0","@tapjs/filter":"1.1.0","@tapjs/fixture":"1.0.4","@tapjs/intercept":"1.1.1","@tapjs/mock":"1.0.5","@tapjs/node-serialize":"1.0.0","@tapjs/run":"1.1.1","@tapjs/snapshot":"1.0.4","@tapjs/spawn":"1.0.4","@tapjs/stdin":"1.0.4","@tapjs/test":"1.1.0","@tapjs/typescript":"1.1.0","@tapjs/worker":"1.0.4"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"typecheck":false,"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.1.1","gitHead":"ccd10e2639aad6878d0be76751b8a32b5d1aa095","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-NB6DSyuGCXzfQmLjUmV82msqfmJCnoAbYY7zxnnRoAAJedSYingIEJQBTmBZmv4HpNH00AN+ZXYNwP+MXSq8bg==","shasum":"1142054d90b274380989a2112953cb9f033c9a74","tarball":"https://registry.npmjs.org/tap/-/tap-18.1.1.tgz","fileCount":25,"unpackedSize":75516,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD4iaScA8G8aaRFMQNTTScILqGWtdSKcnrPC43Ay43XxgIhAJI/AVaPvr59FkCREYQaR4+ue9oP9DYEZixMWgPjhzaw"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.1.1_1695490603153_0.24331338566489702"},"_hasShrinkwrap":false},"18.1.2":{"name":"tap","version":"18.1.2","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/esm/run.mjs"},"type":"module","tshy":{"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"engines":{"node":">=16"},"dependencies":{"@tapjs/after":"1.0.5","@tapjs/after-each":"1.0.5","@tapjs/asserts":"1.0.5","@tapjs/before":"1.0.5","@tapjs/before-each":"1.0.5","@tapjs/core":"1.1.1","@tapjs/filter":"1.1.1","@tapjs/fixture":"1.0.5","@tapjs/intercept":"1.1.2","@tapjs/mock":"1.0.6","@tapjs/node-serialize":"1.0.1","@tapjs/run":"1.1.2","@tapjs/snapshot":"1.0.5","@tapjs/spawn":"1.0.5","@tapjs/stdin":"1.0.5","@tapjs/test":"1.1.1","@tapjs/typescript":"1.1.1","@tapjs/worker":"1.0.5"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"typecheck":false,"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.1.2","gitHead":"6cf797404cc9834b4db0d4f07e2c82b8b519ed21","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-r+kNURdxrw4RV4ARcDBo9VyZWyg9wwVorAiJc8bpri2+y9F3CEKoKzH4l+2x7J/JNZZ3cqfD5g3+jk/95zZTlg==","shasum":"aad3021ba954b144116d0d66b2c139257d9c6c71","tarball":"https://registry.npmjs.org/tap/-/tap-18.1.2.tgz","fileCount":25,"unpackedSize":75516,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD6LO/0CNvgKvTioP9Awlvm8rFpIZnccLEVjGlErlz64QIhAOZmG3H15JQUjtFkf0K8HnQeIZFmWLYA1wKYX04vmMah"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.1.2_1695531386818_0.07770481583679834"},"_hasShrinkwrap":false},"18.1.3":{"name":"tap","version":"18.1.3","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/esm/run.mjs"},"type":"module","tshy":{"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"engines":{"node":">=16"},"dependencies":{"@tapjs/after":"1.0.5","@tapjs/after-each":"1.0.5","@tapjs/asserts":"1.0.5","@tapjs/before":"1.0.5","@tapjs/before-each":"1.0.5","@tapjs/core":"1.1.1","@tapjs/filter":"1.1.1","@tapjs/fixture":"1.0.5","@tapjs/intercept":"1.1.2","@tapjs/mock":"1.0.6","@tapjs/node-serialize":"1.0.1","@tapjs/run":"1.1.3","@tapjs/snapshot":"1.0.5","@tapjs/spawn":"1.0.5","@tapjs/stdin":"1.0.5","@tapjs/test":"1.1.1","@tapjs/typescript":"1.1.1","@tapjs/worker":"1.0.5"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"typecheck":false,"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.1.3","gitHead":"83c1d82c5f029342f6ee3992affcce50eaf9f98c","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-hAQem7LxCCM8rMN9osIOhq802NISxA7HMWygqA+vOVM3jOp8UUc/tuVdb9slioekSvZW9jVHCGQGX722q98Iyw==","shasum":"214973781e5d88335024d04fc28f12a340ecf5ed","tarball":"https://registry.npmjs.org/tap/-/tap-18.1.3.tgz","fileCount":25,"unpackedSize":75516,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICsHHoT5h7Nh+cFiB9P+3kVxANJax/f0R6BLlSRgU1yXAiAaMobjMS2hNW07gS98/MZsSpXEpkxzumwWa1sphgldMw=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.1.3_1695576386975_0.9428841401650259"},"_hasShrinkwrap":false},"18.1.4":{"name":"tap","version":"18.1.4","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/esm/run.mjs"},"type":"module","tshy":{"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"engines":{"node":">=16"},"dependencies":{"@tapjs/after":"1.0.6","@tapjs/after-each":"1.0.6","@tapjs/asserts":"1.0.6","@tapjs/before":"1.0.6","@tapjs/before-each":"1.0.6","@tapjs/core":"1.1.2","@tapjs/filter":"1.1.2","@tapjs/fixture":"1.0.6","@tapjs/intercept":"1.1.3","@tapjs/mock":"1.0.7","@tapjs/node-serialize":"1.0.2","@tapjs/run":"1.1.4","@tapjs/snapshot":"1.0.6","@tapjs/spawn":"1.0.6","@tapjs/stdin":"1.0.6","@tapjs/test":"1.1.2","@tapjs/typescript":"1.1.2","@tapjs/worker":"1.0.6"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"typecheck":false,"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.1.4","gitHead":"95d17a49bbfb77ca4989769360468a0cc64e9ccb","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-kd5YGSf7pjrmQBP+o+/AIjYntS5Oz4dOl5Uc8HPQlyIlWnv4RbsE2qSL8yRoEA6ds059JbNiUrntADa/L0dsuQ==","shasum":"8f480e96af14771c4386ec75dffcbe4db3297319","tarball":"https://registry.npmjs.org/tap/-/tap-18.1.4.tgz","fileCount":25,"unpackedSize":75516,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCune0d2VRv9mIuRfJ3r7cA08NcSSXR/KGFDrhdMn0hmQIhAOFwudZI48L/OWPX8GP4pAHpzCK/Px+RQKY5VepxRTL5"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.1.4_1695578941646_0.8632877834169681"},"_hasShrinkwrap":false},"18.1.5":{"name":"tap","version":"18.1.5","author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"dist/esm/run.mjs"},"type":"module","tshy":{"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"engines":{"node":">=16"},"dependencies":{"@tapjs/after":"1.0.7","@tapjs/after-each":"1.0.7","@tapjs/asserts":"1.0.7","@tapjs/before":"1.0.7","@tapjs/before-each":"1.0.7","@tapjs/core":"1.2.0","@tapjs/filter":"1.1.3","@tapjs/fixture":"1.1.0","@tapjs/intercept":"1.1.4","@tapjs/mock":"1.0.8","@tapjs/node-serialize":"1.0.3","@tapjs/run":"1.2.0","@tapjs/snapshot":"1.1.0","@tapjs/spawn":"1.0.7","@tapjs/stdin":"1.0.7","@tapjs/test":"1.2.0","@tapjs/typescript":"1.1.3","@tapjs/worker":"1.0.7"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"license":"BlueOak-1.0.0","scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"tap":{"typecheck":false,"coverage-map":"map.js"},"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.1.5","gitHead":"e94d8089252294286683e17f7771ffb8b7f509b3","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-5e213WubMZMVaHsoGmUoRXc/lyWKhAFFR7Ldeg27XG5Rul2Uh3rm+6BGh7bHHhbn0bpL9iyQrN4K3b98cIQPMA==","shasum":"4ac2d7d2bd4e213577434e059fb01ead0749cd2a","tarball":"https://registry.npmjs.org/tap/-/tap-18.1.5.tgz","fileCount":25,"unpackedSize":75516,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCsj4m+bFnsBbC9lQyRz2s5muKWs8hQrYEfdEASikxQoAIgbMPbVC37TND8PcJcctuiODLEDAO+e59s4+XokzSt9fw="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.1.5_1695687047268_0.03971397047755043"},"_hasShrinkwrap":false},"16.3.9":{"name":"tap","version":"16.3.9","publishConfig":{"tag":"legacy-v16"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./mocha":"./lib/mocha.js"},"engines":{"node":">=12"},"dependencies":{"@isaacs/import-jsx":"^4.0.1","@types/react":"^17.0.52","chokidar":"^3.3.0","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.2.3","ink":"^3.2.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.3","jackspeak":"^1.4.2","libtap":"^1.4.0","minipass":"^3.3.4","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^17.0.2","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.3","tap-parser":"^11.0.2","tap-yaml":"^1.0.2","tcompare":"^5.0.7","treport":"^3.0.4","which":"^2.0.2"},"devDependencies":{"coveralls":"^3.1.1","eslint":"^7.32.0","flow-remove-types":"^2.193.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"coveralls":"^3.1.1","flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"coveralls":{"optional":true},"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postsnap":"npm run lint:fix","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=legacy-v16","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve","lint":"eslint 'bin/*.js' 'lib/*.js' 'test/**/*.js'","lint:fix":"npm run lint -- --fix"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"_id":"tap@16.3.9","readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n![Build Status](https://github.com/tapjs/node-tap/workflows/ci/badge.svg)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating test\nscripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running tests\n (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates,\nor just get started with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over to\n[the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why they're\nthe greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge that\nbalances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have any\nopinion about whether or not you share those opinions. If you do share\nthem, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run directly.**\n\n That means that it can't require a special runner that puts magic\n functions into a global space. `node test.js` is a perfectly ok way to\n run a test, and it ought to function exactly the same as when it's run\n by the fancy runner with reporting and such. JavaScript tests should be\n JavaScript programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the test file in a\n way that is easy to determine.**\n\n That means not unnecessarily deferring test functions until `nextTick`,\n because that would shift the order of `console.log` output. Synchronous\n tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the test\n as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to doing\n `test-runner test/*.js`. This prevents tests from becoming implicitly\n dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of assertions based\n on some list of test cases. If the first failure throws, then I don't\n know if I've failed 100 tests or 1, without wrapping everything in a\n try-catch. Furthermore, I usually want to see some kind of output or\n reporting to verify that each one actually ran.\n\n Basically, it should be your decision whether you want to throw or not.\n The test framework shouldn't force that on you, and should make either\n case easy.\n\n5. **Test reporting should be separate from the test process, included in\n the framework, and enabled by default for humans.**\n\n The [raw test output](https://www.node-tap.org/tap-format/) should be\n machine-parseable and human-intelligible, and a separate process should\n consume test output and turn it into a [pretty summarized\n report](https://www.node-tap.org/reporting/). This means that test data\n can be stored and parsed later, dug into for additional details, and so\n on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more tests get\n written. That means that there should be a relatively small vocabulary\n of actions that I need to remember as a test author. There is no\n benefit to having a distinction between a \"suite\" and a \"subtest\".\n Fancy DSLs are pretty, but more to remember.\n\n That being said, if you return a Promise, or use a DSL that throws a\n decorated error, then the test framework should Just Work in a way that\n helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no more or\n less.**\n\n Stack traces pointing at JS internals or the guts of the test framework\n itself are not helpful. A test framework is a serious UX challenge, and\n should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about your\n programs, and provides much deeper insight. Node-tap bundles\n [NYC](https://istanbul.js.org/) for this.\n\n It _does_ necessarily change the nature of the environment a little bit.\n But in this case, it's worth it, and NYC has come a long way towards\n maintaining this promise.\n\n Coverage _enforcement_ is not on by default, but I strongly encourage\n it. You can put `\"tap\":{\"check-coverage\":true}` in your package.json,\n or pass [`--100`](https://www.node-tap.org/100/) on the command line.\n In a future version, it will likely be enabled by default.\n\n9. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't require\n compilation, then I think your tests shouldn't either. Tap is extremely\n [promise-aware](https://www.node-tap.org/promises/). JSX, TypeScript,\n Flow, and ES-Modules are\n [built-in](https://www.node-tap.org/using-with/) when tests are run by\n the tap CLI.\n\n10. **Tests should run as fast as possible, given all the prior\n considerations.**\n\n As of version 10, tap supports [parallel\n tests](https://www.node-tap.org/parallel/). As of version 13, the test\n runner defaults to running the same number of parallel tests as there\n are CPUs on the system.\n\n This makes tests significantly faster in almost every case, on any machine\n with multiple cores.\n\nSoftware testing should help you build software. It should be a security\nblanket and a quality ratchet, giving you the support to undertake massive\nrefactoring and fix bugs without worrying. It shouldn't be a purification\nrite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"0e193cbe9aacc66b0820ef88f081b23d1a767818","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-KKmu12hRJhb/kGvVV/UKBOJ90sNoGbcXF0E+VmNqej1DqaCmZHyOXR8R7E66qg2Wor33XhSHGrku5MPYWSRNWw==","shasum":"45e95a0019a4324ad4dccdae1048683fff426523","tarball":"https://registry.npmjs.org/tap/-/tap-16.3.9.tgz","fileCount":3796,"unpackedSize":37885823,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCOvD9CaA0MTNOi1ylsD1qTmzTpQq5OXABkl3TLFO1xbQIhAJqddx/odtNfxHnPcQdqerBT1pRYMW4HwIHsEd1mBmbY"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_16.3.9_1695836560083_0.771055901065236"},"_hasShrinkwrap":false},"18.2.0":{"name":"tap","version":"18.2.0","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.0","@tapjs/after-each":"1.1.0","@tapjs/asserts":"1.1.0","@tapjs/before":"1.1.0","@tapjs/before-each":"1.1.0","@tapjs/core":"1.3.0","@tapjs/filter":"1.2.0","@tapjs/fixture":"1.2.0","@tapjs/intercept":"1.2.0","@tapjs/mock":"1.1.0","@tapjs/node-serialize":"1.1.0","@tapjs/run":"1.3.0","@tapjs/snapshot":"1.2.0","@tapjs/spawn":"1.1.0","@tapjs/stdin":"1.1.0","@tapjs/test":"1.3.0","@tapjs/typescript":"1.2.0","@tapjs/worker":"1.1.0"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":">=16"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.2.0","gitHead":"53043a233ef2238706304b8872a28ce6ef0864f4","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-Y95cywIyBR/DTYnTWt0Yr1aCWAzyVjquy1ejCE6Q1GzaPC9QaJx1BF07VuYwPMRYzKXVRfAUI17mU5VWpaaTYA==","shasum":"f0942ec89d164995b18480df8a072f965ed989b5","tarball":"https://registry.npmjs.org/tap/-/tap-18.2.0.tgz","fileCount":25,"unpackedSize":75613,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC6O6LgnAdIYyZvByvqil6k12n9Mzbunq6LFnH23pnIIwIgF/z2dRwaiCtzXo+b0Md3GmyG14LJTN/jmYAcJPccucA="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.2.0_1695859187553_0.6805869437160463"},"_hasShrinkwrap":false},"18.2.1":{"name":"tap","version":"18.2.1","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.1","@tapjs/after-each":"1.1.1","@tapjs/asserts":"1.1.1","@tapjs/before":"1.1.1","@tapjs/before-each":"1.1.1","@tapjs/core":"1.3.1","@tapjs/filter":"1.2.1","@tapjs/fixture":"1.2.1","@tapjs/intercept":"1.2.1","@tapjs/mock":"1.1.1","@tapjs/node-serialize":"1.1.1","@tapjs/run":"1.3.1","@tapjs/snapshot":"1.2.1","@tapjs/spawn":"1.1.1","@tapjs/stdin":"1.1.1","@tapjs/test":"1.3.1","@tapjs/typescript":"1.2.1","@tapjs/worker":"1.1.1"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":">=16"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.2.1","gitHead":"6aa191714fdad25a71fc9d49e54c6c7a694b6c2a","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-SXSebfX12ns/55L40be8lZzkAX3kuJvoJMEzF9n9Aaelv8+/9qTIEyLQCrTMwnlOqFavBOqZmke8wOx9ikSY3Q==","shasum":"0b67f5e2adcc28b3c56b2d1bc1d2d4e11fdcbd67","tarball":"https://registry.npmjs.org/tap/-/tap-18.2.1.tgz","fileCount":25,"unpackedSize":75613,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGgWqjkHTi8CVd2Qx+AEqcKRr1Ua1pz/HcQVrBLHlFKkAiA126hyDsVrbpFvpZLd8ZmAtXzHWfW6aj8yIy1cX2Ja6w=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.2.1_1695932273589_0.5664112059719981"},"_hasShrinkwrap":false},"18.2.2":{"name":"tap","version":"18.2.2","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.2","@tapjs/after-each":"1.1.2","@tapjs/asserts":"1.1.2","@tapjs/before":"1.1.2","@tapjs/before-each":"1.1.2","@tapjs/core":"1.3.2","@tapjs/filter":"1.2.2","@tapjs/fixture":"1.2.2","@tapjs/intercept":"1.2.2","@tapjs/mock":"1.2.0","@tapjs/node-serialize":"1.1.2","@tapjs/run":"1.3.2","@tapjs/snapshot":"1.2.2","@tapjs/spawn":"1.1.2","@tapjs/stdin":"1.1.2","@tapjs/test":"1.3.2","@tapjs/typescript":"1.2.2","@tapjs/worker":"1.1.2"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":">=16"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.2.2","gitHead":"09506ad13b042d1d181b620ea64b8927d2ca0aeb","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-YYGlh8FbiNssHQMxkJjxXM1bEsFl8wnYimE/ocD3Lb495vZGzusSWFL4ukjlmleCKEyzTZPYhJNe3X0Ke4mH/A==","shasum":"e35fd026ad2c2541f67b650521c987f0d5a8b2e6","tarball":"https://registry.npmjs.org/tap/-/tap-18.2.2.tgz","fileCount":25,"unpackedSize":75613,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEQbnPmxdO962AgUM3riQ7MdB9VKvBZg4jpT4l7hdZolAiEAxjRUuA0lUoadJFP5FRzvpqpts7lR7s3G+ijtnes/NfA="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.2.2_1695935806201_0.9115803417449326"},"_hasShrinkwrap":false},"18.3.0":{"name":"tap","version":"18.3.0","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.2","@tapjs/after-each":"1.1.2","@tapjs/asserts":"1.1.2","@tapjs/before":"1.1.2","@tapjs/before-each":"1.1.2","@tapjs/core":"1.3.2","@tapjs/filter":"1.2.2","@tapjs/fixture":"1.2.2","@tapjs/intercept":"1.2.2","@tapjs/mock":"1.2.0","@tapjs/node-serialize":"1.1.2","@tapjs/run":"1.3.2","@tapjs/snapshot":"1.2.2","@tapjs/spawn":"1.1.2","@tapjs/stdin":"1.1.2","@tapjs/test":"1.3.2","@tapjs/typescript":"1.2.2","@tapjs/worker":"1.1.2"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":">=16"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.3.0","gitHead":"3451d284b3528f37c6f4fee8422428b13258bddb","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-hQ34SYQtybV2mbKj9DAiangQJgxaIMqU+PlC0MtIDPM/TUIF+GR4H22qS4wqoM5ovZ8m8ro5nsfv+8pTt64q9w==","shasum":"eaf328beb2244826c9488f103b69258839a095f0","tarball":"https://registry.npmjs.org/tap/-/tap-18.3.0.tgz","fileCount":25,"unpackedSize":75613,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDHTljucwsHG0ml98WsXNs0HtcxOeEoUEb38zsTN6rihQIhAJMmqyxwFDuJjeXVlL6kZd++LjwnMl7/07mCtpyTSrUa"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.3.0_1695936962919_0.8601152104918577"},"_hasShrinkwrap":false},"18.3.1":{"name":"tap","version":"18.3.1","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.3","@tapjs/after-each":"1.1.3","@tapjs/asserts":"1.1.3","@tapjs/before":"1.1.3","@tapjs/before-each":"1.1.3","@tapjs/core":"1.3.3","@tapjs/filter":"1.2.3","@tapjs/fixture":"1.2.3","@tapjs/intercept":"1.2.3","@tapjs/mock":"1.2.1","@tapjs/node-serialize":"1.1.3","@tapjs/run":"1.3.3","@tapjs/snapshot":"1.2.3","@tapjs/spawn":"1.1.3","@tapjs/stdin":"1.1.3","@tapjs/test":"1.3.3","@tapjs/typescript":"1.2.3","@tapjs/worker":"1.1.3"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":">=16"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.3.1","gitHead":"6e9c607b29f355962f6abbc96bb8d751bf4bd91d","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-7FhNOjcdkmA8YA4/fhLE0xE4jZw30LYDc39dnBJjVP2qVCdHIXfJCNszZy9Uy3tQrlGxD8yw0YWscFcMSp7h7g==","shasum":"8c97e96a44490b8c667fad26f5315d6afe679adb","tarball":"https://registry.npmjs.org/tap/-/tap-18.3.1.tgz","fileCount":25,"unpackedSize":75613,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCruDEzlkU3WgkD0JA85hDyjjZkVlP939Gzkn19or3WMgIhAMPL/DA+sfrzTrqmisUuckocXBgKN4+Gno6rTOLEqfl9"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.3.1_1696004164717_0.39638791677342855"},"_hasShrinkwrap":false},"18.4.0":{"name":"tap","version":"18.4.0","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.4","@tapjs/after-each":"1.1.4","@tapjs/asserts":"1.1.4","@tapjs/before":"1.1.4","@tapjs/before-each":"1.1.4","@tapjs/core":"1.3.4","@tapjs/filter":"1.2.4","@tapjs/fixture":"1.2.4","@tapjs/intercept":"1.2.4","@tapjs/mock":"1.2.2","@tapjs/node-serialize":"1.1.4","@tapjs/run":"1.4.0","@tapjs/snapshot":"1.2.4","@tapjs/spawn":"1.1.4","@tapjs/stdin":"1.1.4","@tapjs/test":"1.3.4","@tapjs/typescript":"1.2.4","@tapjs/worker":"1.1.4"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":">=16"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.4.0","gitHead":"414d146d35f17799fceb31b370f0d1a5b5b2c717","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-42bqz0KpoDg8F6Gs5zrTVOELq5ShaK86rCsRG6C6uJM7nUANCB3GW9Dmvy3BGHRll4wAwr+SA+iM0tvBQtrilg==","shasum":"5fbcd678a5fc49470985db031e66f8e37e5b2363","tarball":"https://registry.npmjs.org/tap/-/tap-18.4.0.tgz","fileCount":25,"unpackedSize":75613,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDvd5oS/gZOEiOM4K+okbwLUS8tQhQibqD0huZeA2rkPgIgZNRRjWRaW/R7+H56McN9AnwLCAVK0aM2ZIbzzwHPngw="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.4.0_1696010991947_0.506123684349129"},"_hasShrinkwrap":false},"18.4.1":{"name":"tap","version":"18.4.1","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.5","@tapjs/after-each":"1.1.5","@tapjs/asserts":"1.1.5","@tapjs/before":"1.1.5","@tapjs/before-each":"1.1.5","@tapjs/core":"1.3.5","@tapjs/filter":"1.2.5","@tapjs/fixture":"1.2.5","@tapjs/intercept":"1.2.5","@tapjs/mock":"1.2.3","@tapjs/node-serialize":"1.1.5","@tapjs/run":"1.4.1","@tapjs/snapshot":"1.2.5","@tapjs/spawn":"1.1.5","@tapjs/stdin":"1.1.5","@tapjs/test":"1.3.5","@tapjs/typescript":"1.2.5","@tapjs/worker":"1.1.5"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":">=16"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.4.1","gitHead":"69c31a863ab37a55c5d31a00de4ff119cef93a97","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-ByTiEzMz8CQK3bBaesQTN0qwxc68M/Iyp3NY3iZOWRCx5avmLPotCdr1CzYjd271yD5pTTeJ6sAObXq9GiGvuA==","shasum":"d09fa7c7f0bd804c53bc44e318d2ae49012001fd","tarball":"https://registry.npmjs.org/tap/-/tap-18.4.1.tgz","fileCount":25,"unpackedSize":75613,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDlB1VzUG2OE8JL5SfuYlrn3qxsUog84nKBC4MxoKVTJAIhAO5zispcAxjS6J0MP7L82Q1OOYjPaSlmhpYGYUbNW+V8"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.4.1_1696196281703_0.3895500425442022"},"_hasShrinkwrap":false},"18.4.2":{"name":"tap","version":"18.4.2","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.6","@tapjs/after-each":"1.1.6","@tapjs/asserts":"1.1.6","@tapjs/before":"1.1.6","@tapjs/before-each":"1.1.6","@tapjs/core":"1.3.6","@tapjs/filter":"1.2.6","@tapjs/fixture":"1.2.6","@tapjs/intercept":"1.2.6","@tapjs/mock":"1.2.4","@tapjs/node-serialize":"1.1.6","@tapjs/run":"1.4.2","@tapjs/snapshot":"1.2.6","@tapjs/spawn":"1.1.6","@tapjs/stdin":"1.1.6","@tapjs/test":"1.3.6","@tapjs/typescript":"1.2.6","@tapjs/worker":"1.1.6"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":">=16"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.4.2","gitHead":"5c114fcb68c2bee81ae43647fea66d06aecdfd71","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-QNl0aZTbyYvXfQMe4LZP8aM2ruzOOPciaVq7TEQn7nooKNWSTmmPw7f3pCKKX1/svyZlqmUyF21BpJB9T7w4OQ==","shasum":"527c942ebfe96a6da4a336183eb9a1b332269dc7","tarball":"https://registry.npmjs.org/tap/-/tap-18.4.2.tgz","fileCount":25,"unpackedSize":75613,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID5V/DJbvCpQR7aNIn00rrwHjkamlJU3rwPABhh5OIU9AiB3kUwtRiKG8lNrKetjjx57IegIkLfHHc1DPKl7a3qb0Q=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.4.2_1696214298031_0.8801883138689564"},"_hasShrinkwrap":false},"18.4.3":{"name":"tap","version":"18.4.3","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.7","@tapjs/after-each":"1.1.7","@tapjs/asserts":"1.1.7","@tapjs/before":"1.1.7","@tapjs/before-each":"1.1.7","@tapjs/core":"1.3.7","@tapjs/filter":"1.2.7","@tapjs/fixture":"1.2.7","@tapjs/intercept":"1.2.7","@tapjs/mock":"1.2.5","@tapjs/node-serialize":"1.1.7","@tapjs/run":"1.4.3","@tapjs/snapshot":"1.2.7","@tapjs/spawn":"1.1.7","@tapjs/stdin":"1.1.7","@tapjs/test":"1.3.7","@tapjs/typescript":"1.2.7","@tapjs/worker":"1.1.7","resolve-import":"1.4.2"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":">=16"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.4.3","gitHead":"dcd5846da60446b8a59fe723c1d10a8c6b12900b","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-7rYNmP4CtHNFA/DHsLXoggU8U4JOuw396blz2248+Sje2wG94TxLIMZTH/JwU2Welj3pkJINYYy1UeA3NFu3kA==","shasum":"850b6f9aa9d28d8d3366f3d7303c7d180df81b54","tarball":"https://registry.npmjs.org/tap/-/tap-18.4.3.tgz","fileCount":33,"unpackedSize":82044,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHKiSm14SSlkRXTCfkSao3Sv6DWbdo0+ZJhDobrwdDIzAiA1G8sKo8fL8gUFxi+WlMCxtd6J2vfehm646KCmHjZ5jQ=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.4.3_1696546884104_0.5295886183551688"},"_hasShrinkwrap":false},"18.4.4":{"name":"tap","version":"18.4.4","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.8","@tapjs/after-each":"1.1.8","@tapjs/asserts":"1.1.8","@tapjs/before":"1.1.8","@tapjs/before-each":"1.1.8","@tapjs/core":"1.3.8","@tapjs/filter":"1.2.8","@tapjs/fixture":"1.2.8","@tapjs/intercept":"1.2.8","@tapjs/mock":"1.2.6","@tapjs/node-serialize":"1.1.8","@tapjs/run":"1.4.4","@tapjs/snapshot":"1.2.8","@tapjs/spawn":"1.1.8","@tapjs/stdin":"1.1.8","@tapjs/test":"1.3.8","@tapjs/typescript":"1.2.8","@tapjs/worker":"1.1.8","resolve-import":"^1.4.4"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":">=16"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.4.4","gitHead":"5cfde0ea2e4655ed72135592888e17f41e72eb38","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-RbyOzm437slQHAWY9C65Odp3sZVa6geRuqQM6/GlDSPAg7MhhMOcqL+0AeGRY3zsbybowzlXgKrUBa8dwrYNFQ==","shasum":"901b752388adaa587ef4db0d14f85ca177dfed7a","tarball":"https://registry.npmjs.org/tap/-/tap-18.4.4.tgz","fileCount":33,"unpackedSize":82045,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC3uJHxpf31YgbHPHkrFhFmwAE0FnAxii0Kfe2pG0nRNgIgBLDpGO5f8XsC2naQBDQCmN+eH6k0xJGd6tc74I8bhko="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.4.4_1696806831844_0.7033001785732929"},"_hasShrinkwrap":false},"18.4.5":{"name":"tap","version":"18.4.5","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.9","@tapjs/after-each":"1.1.9","@tapjs/asserts":"1.1.9","@tapjs/before":"1.1.9","@tapjs/before-each":"1.1.9","@tapjs/core":"1.3.9","@tapjs/filter":"1.2.9","@tapjs/fixture":"1.2.9","@tapjs/intercept":"1.2.9","@tapjs/mock":"1.2.7","@tapjs/node-serialize":"1.1.9","@tapjs/run":"1.4.5","@tapjs/snapshot":"1.2.9","@tapjs/spawn":"1.1.9","@tapjs/stdin":"1.1.9","@tapjs/test":"1.3.9","@tapjs/typescript":"1.2.9","@tapjs/worker":"1.1.9","resolve-import":"^1.4.4"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":">=16"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.4.5","gitHead":"029ec987684c79b9c42caa8e2c1628930744dd80","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.7.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-qVLodpiP0uXduLsrJnfmqP8i//HtUBHnXX4F1JTQMqZsYY+5XKt1F2z2ky7EBIzsI7mcwvH+9tqtluHZsGExRA==","shasum":"d1a27897210a7f3819771e0ebfed10cabdc110f8","tarball":"https://registry.npmjs.org/tap/-/tap-18.4.5.tgz","fileCount":33,"unpackedSize":82045,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCMUaKyRhB/c1FUXE6y3NM6RyNoSwlsEUOoVAT6Y8n2iwIhAKCCrEifLHXDouTat2aONcBoWTZV+kF9hzOZi92UPVl4"}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.4.5_1696834748172_0.6110295594407484"},"_hasShrinkwrap":false},"18.4.6":{"name":"tap","version":"18.4.6","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.10","@tapjs/after-each":"1.1.10","@tapjs/asserts":"1.1.10","@tapjs/before":"1.1.10","@tapjs/before-each":"1.1.10","@tapjs/core":"1.3.10","@tapjs/filter":"1.2.10","@tapjs/fixture":"1.2.10","@tapjs/intercept":"1.2.10","@tapjs/mock":"1.2.8","@tapjs/node-serialize":"1.1.10","@tapjs/run":"1.4.6","@tapjs/snapshot":"1.2.10","@tapjs/spawn":"1.1.10","@tapjs/stdin":"1.1.10","@tapjs/test":"1.3.10","@tapjs/typescript":"1.2.10","@tapjs/worker":"1.1.10","resolve-import":"^1.4.4"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":">=16"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.4.6","gitHead":"6495cd7fdeb4f6e32f0aac87468cf1b8061c47c2","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-g25fjOM8uxtR4T/M2GBoq7uG4qd4k2yKm0F2L1lq3zEiDrjxwh36h5v3AL+X4KQE353Sn7ybwAwXG4Bw9lXLqg==","shasum":"03bcad2c8fa30601a0fc93c50f6536ee505eea39","tarball":"https://registry.npmjs.org/tap/-/tap-18.4.6.tgz","fileCount":33,"unpackedSize":82059,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDPkoDmlyi/VuluhmSBdAiOXnfU/vWdsy0VVNKgx2TvBAiEAsd8vGVy/QyZ/Rh+HiwrfgIrJobsC76YDBm9G4Z/K/GA="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.4.6_1696953556411_0.03467228762570551"},"_hasShrinkwrap":false},"18.5.0":{"name":"tap","version":"18.5.0","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.11","@tapjs/after-each":"1.1.11","@tapjs/asserts":"1.1.11","@tapjs/before":"1.1.11","@tapjs/before-each":"1.1.11","@tapjs/core":"1.4.0","@tapjs/filter":"1.2.11","@tapjs/fixture":"1.2.11","@tapjs/intercept":"1.2.11","@tapjs/mock":"1.2.9","@tapjs/node-serialize":"1.2.0","@tapjs/run":"1.4.7","@tapjs/snapshot":"1.2.11","@tapjs/spawn":"1.1.11","@tapjs/stdin":"1.1.11","@tapjs/test":"1.3.11","@tapjs/typescript":"1.3.0","@tapjs/worker":"1.1.11","resolve-import":"^1.4.4"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":">=16"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.5.0","gitHead":"264f9cf3f64fd0f4415f69acbb636744ef17f7e6","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-qUZVbSPKABe2GVNvUtv39jUechyvaOn0tcPOuoWYi6386kYaBds0/VKd8F5D3fcQsFEkDXTrTpbITiMulsvHXQ==","shasum":"b4726279114d939e578b497b31a6a25cd4916147","tarball":"https://registry.npmjs.org/tap/-/tap-18.5.0.tgz","fileCount":33,"unpackedSize":82056,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCU7YknnVFcfFRbeYC1GGpaBBNCzTKIN0HqrWK7Wp6HpgIgMH8jLTAlYHsBspkZeLxjjXaRwqWk3hT0+EneV1kdwWE="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.5.0_1696999748713_0.3495024526548456"},"_hasShrinkwrap":false},"18.5.1":{"name":"tap","version":"18.5.1","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.12","@tapjs/after-each":"1.1.12","@tapjs/asserts":"1.1.12","@tapjs/before":"1.1.12","@tapjs/before-each":"1.1.12","@tapjs/core":"1.4.1","@tapjs/filter":"1.2.12","@tapjs/fixture":"1.2.12","@tapjs/intercept":"1.2.12","@tapjs/mock":"1.2.10","@tapjs/node-serialize":"1.2.1","@tapjs/run":"1.4.8","@tapjs/snapshot":"1.2.12","@tapjs/spawn":"1.1.12","@tapjs/stdin":"1.1.12","@tapjs/test":"1.3.12","@tapjs/typescript":"1.3.1","@tapjs/worker":"1.1.12","resolve-import":"^1.4.4"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":">=16"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.5.1","gitHead":"3dbd11396e628dea99cdcd75e06f83e81fa3ebbf","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-PdryPwDpb7LK4ApRLkCCkzQXyZA+A/FmOtWiFoiYI3HV0fBdM9aotyOZ1bYrVWQ9rccNpH2f0xrJQBlGDMdweg==","shasum":"835ca3b3e45d6b0264b6748f9f8e9ffa25284cfc","tarball":"https://registry.npmjs.org/tap/-/tap-18.5.1.tgz","fileCount":33,"unpackedSize":82057,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDxdDg0SdZmCw5BdeWc9QnxgN7n5U6yhRDg4nWIVxkWvAIgWPqjL7GXgpV4OdKSce540OZVZcr8fGza3im2kwH7uVQ="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.5.1_1697399193043_0.5836604093644204"},"_hasShrinkwrap":false},"18.5.2":{"name":"tap","version":"18.5.2","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.13","@tapjs/after-each":"1.1.13","@tapjs/asserts":"1.1.13","@tapjs/before":"1.1.13","@tapjs/before-each":"1.1.13","@tapjs/core":"1.4.2","@tapjs/filter":"1.2.13","@tapjs/fixture":"1.2.13","@tapjs/intercept":"1.2.13","@tapjs/mock":"1.2.11","@tapjs/node-serialize":"1.2.2","@tapjs/run":"1.4.9","@tapjs/snapshot":"1.2.13","@tapjs/spawn":"1.1.13","@tapjs/stdin":"1.1.13","@tapjs/test":"1.3.13","@tapjs/typescript":"1.3.2","@tapjs/worker":"1.1.13","resolve-import":"^1.4.4"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":">=16"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.5.2","gitHead":"4551d7fa803a00decdac6cca3afdb39254a95725","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-Fd8JN1fwA5+CNwKxLf6zhBgMMJZKYWxBwi6551Y4uGU/IFrKvEsK/hYEbBsw+Ae335wkW96+gmnu2lHJh26CPw==","shasum":"3c57bc95d4f9c9538dc1844cf50f19ca48b80b01","tarball":"https://registry.npmjs.org/tap/-/tap-18.5.2.tgz","fileCount":33,"unpackedSize":82057,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIASaIFMUHSuXhxHq5iN+cKUEcIzym5rYGG2xUJFoxiW1AiEAp+q18YTOGIylRmTW8IaxpqszFoDN2QL8RKflccGQq4o="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.5.2_1697495014852_0.6195818518036391"},"_hasShrinkwrap":false},"18.5.3":{"name":"tap","version":"18.5.3","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.13","@tapjs/after-each":"1.1.13","@tapjs/asserts":"1.1.13","@tapjs/before":"1.1.13","@tapjs/before-each":"1.1.13","@tapjs/core":"1.4.2","@tapjs/filter":"1.2.13","@tapjs/fixture":"1.2.13","@tapjs/intercept":"1.2.13","@tapjs/mock":"1.2.11","@tapjs/node-serialize":"1.2.2","@tapjs/run":"1.4.10","@tapjs/snapshot":"1.2.13","@tapjs/spawn":"1.1.13","@tapjs/stdin":"1.1.13","@tapjs/test":"1.3.13","@tapjs/typescript":"1.3.2","@tapjs/worker":"1.1.13","resolve-import":"^1.4.4"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":">=16"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.5.3","gitHead":"c92ed7a976a1e199532526fed96996ad8a379009","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-TrcgwuQp0siTg/2MGJiZ1T5f3N+JZAOpPq+VR66+j6x9dCxw+1CuaUzWGW34ebCTxy8efT0akZ6dbGlbJVBhRA==","shasum":"9a3400f265046dc48c6faacdf2fc473ad7a08262","tarball":"https://registry.npmjs.org/tap/-/tap-18.5.3.tgz","fileCount":33,"unpackedSize":82058,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDcGx4BDDP5ZL3L5B6tEkWxtCXJnqzdoHUhXkUrSH/KYgIgSzAUg+oSoJMbJ2XEVkI5pbjalk7T22lgnFdt2ditezc="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.5.3_1698470129148_0.2084519453639717"},"_hasShrinkwrap":false},"18.5.4":{"name":"tap","version":"18.5.4","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.14","@tapjs/after-each":"1.1.14","@tapjs/asserts":"1.1.14","@tapjs/before":"1.1.14","@tapjs/before-each":"1.1.14","@tapjs/core":"1.4.3","@tapjs/filter":"1.2.14","@tapjs/fixture":"1.2.14","@tapjs/intercept":"1.2.14","@tapjs/mock":"1.2.12","@tapjs/node-serialize":"1.2.3","@tapjs/run":"1.4.11","@tapjs/snapshot":"1.2.14","@tapjs/spawn":"1.1.14","@tapjs/stdin":"1.1.14","@tapjs/test":"1.3.14","@tapjs/typescript":"1.3.3","@tapjs/worker":"1.1.14","resolve-import":"^1.4.5"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":"16 >=16.17.0 || 18 >= 18.6.0 || >=20"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.5.4","gitHead":"08387d9848c6c64dad8b50733c00bcbcb9fc091d","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-k4zVl72nivcxdUiGNnulU0eJj0V7l3Ad5ZPKG4iuq14zbI4f/TI7AmHMvkfB3Znu4B55769OpGBtQq683whN5Q==","shasum":"b868a98db1213dba29d6cebeb74d6d32856fc8d1","tarball":"https://registry.npmjs.org/tap/-/tap-18.5.4.tgz","fileCount":33,"unpackedSize":82090,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDrpFPZmZZyS8Dl1LKSUBohpwKjYLGvZCgGCFJTAOxeRQIgeEV3kE9UNGYSltSteRGy1EVZmhC896Fw87L62cwJnT0="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.5.4_1698789833183_0.22247290621800175"},"_hasShrinkwrap":false},"18.5.5":{"name":"tap","version":"18.5.5","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.15","@tapjs/after-each":"1.1.15","@tapjs/asserts":"1.1.15","@tapjs/before":"1.1.15","@tapjs/before-each":"1.1.15","@tapjs/core":"1.4.4","@tapjs/filter":"1.2.15","@tapjs/fixture":"1.2.15","@tapjs/intercept":"1.2.15","@tapjs/mock":"1.2.13","@tapjs/node-serialize":"1.2.4","@tapjs/run":"1.4.12","@tapjs/snapshot":"1.2.15","@tapjs/spawn":"1.1.15","@tapjs/stdin":"1.1.15","@tapjs/test":"1.3.15","@tapjs/typescript":"1.3.4","@tapjs/worker":"1.1.15","resolve-import":"^1.4.5"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":"16 >=16.17.0 || 18 >= 18.6.0 || >=20"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.5.5","gitHead":"c6cd71e9ab88ecdda1c72bd511934332765e84e9","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-h0b+Z3YumIDuqzc3QZEzJM48ZItyH8rUT5Yn+ODdu7tEUg+yRVI1yYHUHhfndStBVal5SJvyVVEKqKRWRvPgjw==","shasum":"5c54526aeacad237e4059942bc61c1638ed4d655","tarball":"https://registry.npmjs.org/tap/-/tap-18.5.5.tgz","fileCount":33,"unpackedSize":82090,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICG8HuI0Q8N5ZgNQX9o+R5KvSq4j6XHMEXx3OaFvvel3AiBOGHJVlp4KzkcxzYwrBTrKvwlFiSf5rVxZRyMEA7C6Kg=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.5.5_1698996621905_0.3439016703239508"},"_hasShrinkwrap":false},"18.5.6":{"name":"tap","version":"18.5.6","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.16","@tapjs/after-each":"1.1.16","@tapjs/asserts":"1.1.16","@tapjs/before":"1.1.16","@tapjs/before-each":"1.1.16","@tapjs/core":"1.4.5","@tapjs/filter":"1.2.16","@tapjs/fixture":"1.2.16","@tapjs/intercept":"1.2.16","@tapjs/mock":"1.2.14","@tapjs/node-serialize":"1.2.5","@tapjs/run":"1.4.13","@tapjs/snapshot":"1.2.16","@tapjs/spawn":"1.1.16","@tapjs/stdin":"1.1.16","@tapjs/test":"1.3.16","@tapjs/typescript":"1.3.5","@tapjs/worker":"1.1.16","resolve-import":"^1.4.5"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":"16 >=16.17.0 || 18 >= 18.6.0 || >=20"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.5.6","gitHead":"13a7a1e586b9374d39ea20b6954583b26df172b5","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-8g1hb//MXTUgEpkXI5gQlqgfX42dQH9PKs0lkpQOUOZ2sSQva/RNmvxgxAULp2KvIdkyEt5+75e1PBhIj4Xu1w==","shasum":"9fedc479767bc1309bc9ae3ffa60ce9f0e461f12","tarball":"https://registry.npmjs.org/tap/-/tap-18.5.6.tgz","fileCount":33,"unpackedSize":82090,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCtcptcKapoqTvbWvJ8ePWGZ3tWdqQwLPRi3OR032JvnQIgCbpNy9cYkoZOezEY2GKubw5FCdRu54I4Vg4ZRgw0UTo="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.5.6_1699022461626_0.31526845437563167"},"_hasShrinkwrap":false},"18.5.7":{"name":"tap","version":"18.5.7","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.16","@tapjs/after-each":"1.1.16","@tapjs/asserts":"1.1.16","@tapjs/before":"1.1.16","@tapjs/before-each":"1.1.16","@tapjs/core":"1.4.5","@tapjs/filter":"1.2.16","@tapjs/fixture":"1.2.16","@tapjs/intercept":"1.2.16","@tapjs/mock":"1.2.14","@tapjs/node-serialize":"1.2.5","@tapjs/run":"1.4.14","@tapjs/snapshot":"1.2.16","@tapjs/spawn":"1.1.16","@tapjs/stdin":"1.1.16","@tapjs/test":"1.3.16","@tapjs/typescript":"1.3.5","@tapjs/worker":"1.1.16","resolve-import":"^1.4.5"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":"16 >=16.17.0 || 18 >= 18.6.0 || >=20"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.5.7","gitHead":"05342c4cb82a564de176d37ac204e9e032fee5fd","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-H2QstHSCmEQAriaPZw5j5DzfASpf15fPVn3a2Vc2TxJ0sahTJo5L7KIihInO6MsrEwGHpQU53u1lB7u8F6QZwg==","shasum":"a145e8a8cc380912466ea43017a35297dd014564","tarball":"https://registry.npmjs.org/tap/-/tap-18.5.7.tgz","fileCount":33,"unpackedSize":82090,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF5m8tLffq1BUBM7sQr1tqbBZuPoq5GYl2d7rj5W0Bt5AiAoxkld0LR0i+tP6K53kaEeHkKMBiL5mmVzqqBY1fc9SQ=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.5.7_1699063444439_0.9820898664292483"},"_hasShrinkwrap":false},"18.5.8":{"name":"tap","version":"18.5.8","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.16","@tapjs/after-each":"1.1.16","@tapjs/asserts":"1.1.16","@tapjs/before":"1.1.16","@tapjs/before-each":"1.1.16","@tapjs/core":"1.4.5","@tapjs/filter":"1.2.16","@tapjs/fixture":"1.2.16","@tapjs/intercept":"1.2.16","@tapjs/mock":"1.2.14","@tapjs/node-serialize":"1.2.5","@tapjs/run":"1.4.15","@tapjs/snapshot":"1.2.16","@tapjs/spawn":"1.1.16","@tapjs/stdin":"1.1.16","@tapjs/test":"1.3.16","@tapjs/typescript":"1.3.5","@tapjs/worker":"1.1.16","resolve-import":"^1.4.5"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":"16 >=16.17.0 || 18 >= 18.6.0 || >=20"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.5.8","gitHead":"788d93a39f4ed2518eeb33b9e4829a864af8a3f6","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.8.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-lTJXogAU/SQZVeCjHG8ozQSESRO7aD0THbA5G8El/OHv+ifFR8U0UdU5cZY8uMD6r8TYBt09tlb/gsXNVnrOXw==","shasum":"c59483d904a0c6289f1712aaefb7a6ec70bc2025","tarball":"https://registry.npmjs.org/tap/-/tap-18.5.8.tgz","fileCount":33,"unpackedSize":82090,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDHGjdw7ZbfQ8Vk6CAwWhX24TGgd0/3QM0QihXJRxratgIgRbZoFFYs7q2PByA1VAFv6TvPXeGMi3R0+wJAvkn6deM="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.5.8_1699911442659_0.019389923991548708"},"_hasShrinkwrap":false},"18.6.0":{"name":"tap","version":"18.6.0","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.16","@tapjs/after-each":"1.1.16","@tapjs/asserts":"1.1.16","@tapjs/before":"1.1.16","@tapjs/before-each":"1.1.16","@tapjs/core":"1.4.5","@tapjs/filter":"1.2.16","@tapjs/fixture":"1.2.16","@tapjs/intercept":"1.2.16","@tapjs/mock":"1.2.14","@tapjs/node-serialize":"1.2.5","@tapjs/run":"1.4.15","@tapjs/snapshot":"1.2.16","@tapjs/spawn":"1.1.16","@tapjs/stdin":"1.1.16","@tapjs/test":"1.3.16","@tapjs/typescript":"1.3.5","@tapjs/worker":"1.1.16","resolve-import":"^1.4.5"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":"16 >=16.17.0 || 18 >= 18.6.0 || >=20"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.6.0","gitHead":"099545ad0264e00b30b42039cca90015d9cf3d86","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-/U2EeUD2s2LlPq34YWiZU2Yrk5dGyHyY5aFtcSxZb4xzFqAKTFFnl92SmondF7bO0pcEjLPxnGVqo5D+kv0ABw==","shasum":"440195662a833679824d17ad05129c0bc7d8b587","tarball":"https://registry.npmjs.org/tap/-/tap-18.6.0.tgz","fileCount":33,"unpackedSize":82090,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBoXbJ4IlzFMc5Cr2kEUBLo4xNAETMU3ATrxvKDu6qxpAiEA6d045ItU+x3lm3yIvBroFFRh+OOnWDzHX5peMtr4trg="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.6.0_1700160711647_0.41271816640511716"},"_hasShrinkwrap":false},"18.6.1":{"name":"tap","version":"18.6.1","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.17","@tapjs/after-each":"1.1.17","@tapjs/asserts":"1.1.17","@tapjs/before":"1.1.17","@tapjs/before-each":"1.1.17","@tapjs/core":"1.4.6","@tapjs/filter":"1.2.17","@tapjs/fixture":"1.2.17","@tapjs/intercept":"1.2.17","@tapjs/mock":"1.2.15","@tapjs/node-serialize":"1.2.6","@tapjs/run":"1.4.16","@tapjs/snapshot":"1.2.17","@tapjs/spawn":"1.1.17","@tapjs/stdin":"1.1.17","@tapjs/test":"1.3.17","@tapjs/typescript":"1.3.6","@tapjs/worker":"1.1.17","resolve-import":"^1.4.5"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":"16 >=16.17.0 || 18 >= 18.6.0 || >=20"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.6.1","gitHead":"511019b2ac0fa014370154c3a341a0e632f50b19","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-5cBQhJ1gdbsrTR3tA5kZZTts0HyOML6bcM7pEF7GF8d6y1ajfRMjbInS1Ty7/x2Ip0ko3cY1dYjPJ9JFNPsm7w==","shasum":"7c79c813967bf511dcd3e27b85dcb5a3979c62ee","tarball":"https://registry.npmjs.org/tap/-/tap-18.6.1.tgz","fileCount":33,"unpackedSize":82090,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBXfo15xKzKpxr0KURc14Y5ueKICm4rZf9hC4S3zKqaLAiEAkmSDd5Ltv3h7BZGfO4obqD3wpUaDT/ljDB9VdEgMqxE="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.6.1_1700160963806_0.7529525728969009"},"_hasShrinkwrap":false},"16.3.10":{"name":"tap","version":"16.3.10","publishConfig":{"tag":"legacy-v16"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"http://blog.izs.me"},"description":"A Test-Anything-Protocol library for JavaScript","homepage":"http://www.node-tap.org/","bin":{"tap":"bin/run.js"},"main":"lib/tap.js","exports":{".":{"import":"./lib/tap.mjs","default":"./lib/tap.js"},"./*":"./*","./mocha":"./lib/mocha.js"},"engines":{"node":">=12"},"dependencies":{"@isaacs/import-jsx":"^4.0.1","@types/react":"^17.0.52","chokidar":"^3.3.0","findit":"^2.0.0","foreground-child":"^2.0.0","fs-exists-cached":"^1.0.0","glob":"^7.2.3","ink":"^3.2.0","isexe":"^2.0.0","istanbul-lib-processinfo":"^2.0.3","jackspeak":"^1.4.2","libtap":"^1.4.0","minipass":"^3.3.4","mkdirp":"^1.0.4","nyc":"^15.1.0","opener":"^1.5.1","react":"^17.0.2","rimraf":"^3.0.0","signal-exit":"^3.0.6","source-map-support":"^0.5.16","tap-mocha-reporter":"^5.0.3","tap-parser":"^11.0.2","tap-yaml":"^1.0.2","tcompare":"^5.0.7","treport":"^3.0.4","which":"^2.0.2"},"devDependencies":{"coveralls":"^3.1.1","eslint":"^7.32.0","flow-remove-types":"^2.193.0","node-preload":"^0.2.1","process-on-spawn":"^1.0.0","ts-node":"^8.5.2","typescript":"^3.7.2"},"peerDependencies":{"coveralls":"^3.1.1","flow-remove-types":">=2.112.0","ts-node":">=8.5.2","typescript":">=3.7.2"},"peerDependenciesMeta":{"coveralls":{"optional":true},"flow-remove-types":{"optional":true},"ts-node":{"optional":true},"typescript":{"optional":true}},"keywords":["assert","tap","test","testing"],"license":"ISC","repository":{"type":"git","url":"git+https://github.com/tapjs/node-tap.git"},"scripts":{"snap":"node bin/run.js -M coverage-map.js","test":"node bin/run.js -M coverage-map.js","unit":"bash scripts/unit.sh","posttest":"rm -rf cli-tests-*","postsnap":"npm run lint:fix","postunit":"npm run posttest","t":"node bin/run.js -J -sfails.txt","preversion":"npm test","postversion":"npm publish --tag=legacy-v16","postpublish":"bash postpublish.sh","www:build":"cd docs; npm ci; npm run build","www:develop":"cd docs; npm run develop","start":"npm run www:develop","www:serve":"cd docs; npm run serve","lint":"eslint 'bin/*.js' 'lib/*.js' 'test/**/*.js'","lint:fix":"npm run lint -- --fix"},"tap":{"test-regex":"^test/.*\\.js$","check-coverage":true},"nyc":{"include":["bin/run.js","bin/jsx.js","lib/*.js","bin/jack.js"]},"bundleDependencies":["ink","treport","@types/react","@isaacs/import-jsx","react"],"funding":{"url":"https://github.com/sponsors/isaacs"},"readme":"# node-tap\n\nA TAP test framework for\nNode.js.\n\n![Build Status](https://github.com/tapjs/node-tap/workflows/ci/badge.svg)\n\n_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming TAP-generating test\nscripts, and a JavaScript framework for writing such scripts.\n\n* [Getting started guide](http://www.node-tap.org/basics/)\n* Built-in [test coverage](http://www.node-tap.org/coverage/)\n* Many [reporter formats](http://www.node-tap.org/reporting/)\n* Extensive [API](http://www.node-tap.org/api/) featuring:\n * Great [promise support](http://www.node-tap.org/promises/)\n * Comprehensive [assert library](http://www.node-tap.org/asserts/)\n * Other [advanced stuff](http://www.node-tap.org/advanced/)\n * Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/)\n * [Parallel Testing](http://www.node-tap.org/parallel/)\n* [Command-line interface](http://www.node-tap.org/cli/) for running tests\n (whether they use node-tap or not)\n\nSee [the changelog](http://www.node-tap.org/changelog/) for recent updates,\nor just get started with [the basics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head over to\n[the website](http://www.node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you why they're\nthe greatest. I'm not going to do that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design challenge that\nbalances on the intersection of many conflicting demands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a test\nframework should work, and what it should let you do. I do _not_ have any\nopinion about whether or not you share those opinions. If you do share\nthem, you will probably enjoy this test library.\n\n1. **Test files should be \"normal\" programs that can be run directly.**\n\n That means that it can't require a special runner that puts magic\n functions into a global space. `node test.js` is a perfectly ok way to\n run a test, and it ought to function exactly the same as when it's run\n by the fancy runner with reporting and such. JavaScript tests should be\n JavaScript programs; not english-language poems with weird punctuation.\n\n2. **Test output should be connected to the structure of the test file in a\n way that is easy to determine.**\n\n That means not unnecessarily deferring test functions until `nextTick`,\n because that would shift the order of `console.log` output. Synchronous\n tests should be synchronous.\n\n3. **Test files should be run in separate processes.**\n\n That means that it can't use `require()` to load test files. Doing\n `node ./test.js` must be the exact same sort of environment for the test\n as doing `test-runner ./test.js`. Doing `node test/1.js; node\n test/2.js` should be equivalent (from the test's point of view) to doing\n `test-runner test/*.js`. This prevents tests from becoming implicitly\n dependent on one anothers' globals.\n\n4. **Assertions should not normally throw (but throws MUST be handled\n nicely).**\n\n I frequently write programs that have many hundreds of assertions based\n on some list of test cases. If the first failure throws, then I don't\n know if I've failed 100 tests or 1, without wrapping everything in a\n try-catch. Furthermore, I usually want to see some kind of output or\n reporting to verify that each one actually ran.\n\n Basically, it should be your decision whether you want to throw or not.\n The test framework shouldn't force that on you, and should make either\n case easy.\n\n5. **Test reporting should be separate from the test process, included in\n the framework, and enabled by default for humans.**\n\n The [raw test output](https://www.node-tap.org/tap-format/) should be\n machine-parseable and human-intelligible, and a separate process should\n consume test output and turn it into a [pretty summarized\n report](https://www.node-tap.org/reporting/). This means that test data\n can be stored and parsed later, dug into for additional details, and so\n on. Also: nyan cat.\n\n6. **Writing tests should be easy, maybe even fun.**\n\n The lower the barrier to entry for writing new tests, the more tests get\n written. That means that there should be a relatively small vocabulary\n of actions that I need to remember as a test author. There is no\n benefit to having a distinction between a \"suite\" and a \"subtest\".\n Fancy DSLs are pretty, but more to remember.\n\n That being said, if you return a Promise, or use a DSL that throws a\n decorated error, then the test framework should Just Work in a way that\n helps a human being understand the situation.\n\n7. **Tests should output enough data to diagnose a failure, and no more or\n less.**\n\n Stack traces pointing at JS internals or the guts of the test framework\n itself are not helpful. A test framework is a serious UX challenge, and\n should be treated with care.\n\n8. **Test coverage should be included.**\n\n Running tests with coverage changes the way that you think about your\n programs, and provides much deeper insight. Node-tap bundles\n [NYC](https://istanbul.js.org/) for this.\n\n It _does_ necessarily change the nature of the environment a little bit.\n But in this case, it's worth it, and NYC has come a long way towards\n maintaining this promise.\n\n Coverage _enforcement_ is not on by default, but I strongly encourage\n it. You can put `\"tap\":{\"check-coverage\":true}` in your package.json,\n or pass [`--100`](https://www.node-tap.org/100/) on the command line.\n In a future version, it will likely be enabled by default.\n\n9. **Tests should not require more building than your code.**\n\n Babel and Webpack are lovely and fine. But if your code doesn't require\n compilation, then I think your tests shouldn't either. Tap is extremely\n [promise-aware](https://www.node-tap.org/promises/). JSX, TypeScript,\n Flow, and ES-Modules are\n [built-in](https://www.node-tap.org/using-with/) when tests are run by\n the tap CLI.\n\n10. **Tests should run as fast as possible, given all the prior\n considerations.**\n\n As of version 10, tap supports [parallel\n tests](https://www.node-tap.org/parallel/). As of version 13, the test\n runner defaults to running the same number of parallel tests as there\n are CPUs on the system.\n\n This makes tests significantly faster in almost every case, on any machine\n with multiple cores.\n\nSoftware testing should help you build software. It should be a security\nblanket and a quality ratchet, giving you the support to undertake massive\nrefactoring and fix bugs without worrying. It shouldn't be a purification\nrite or a hazing ritual.\n\nThere are many opinions left off of this list! Reasonable people can\ndisagree. But if you find yourself nodding along, [maybe tap is for\nyou](https://www.node-tap.org/basics/).\n","readmeFilename":"README.md","gitHead":"05a1927b963c5130195d274bfb4a722ab65fbeb2","bugs":{"url":"https://github.com/tapjs/node-tap/issues"},"_id":"tap@16.3.10","_nodeVersion":"16.20.2","_npmVersion":"8.19.4","dist":{"integrity":"sha512-q5Am+PpGHS6JSjk/Zn4bCRBihmZVM15v/MYXUy60wenw5HDe7pVrevLCEoMEz7tuw6jaPOJJqni1y8apN23IGw==","shasum":"cf246b56af02d34bdfffa576636a9e34b55aaa5f","tarball":"https://registry.npmjs.org/tap/-/tap-16.3.10.tgz","fileCount":3723,"unpackedSize":35956522,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEYo/MX7raUzF9xO9+RKNjtSqKdKPEfOj5GaD7hlqCsFAiA1RFaAbdP8TLzZNwEiRT3WjUCAf4GJsk2hcaMn2m7afw=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_16.3.10_1702672980519_0.004971944938407136"},"_hasShrinkwrap":false},"18.7.0":{"name":"tap","version":"18.7.0","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.18","@tapjs/after-each":"1.1.18","@tapjs/asserts":"1.1.18","@tapjs/before":"1.1.18","@tapjs/before-each":"1.1.18","@tapjs/core":"1.5.0","@tapjs/filter":"1.2.18","@tapjs/fixture":"1.2.18","@tapjs/intercept":"1.2.18","@tapjs/mock":"1.3.0","@tapjs/node-serialize":"1.3.0","@tapjs/run":"1.5.0","@tapjs/snapshot":"1.2.18","@tapjs/spawn":"1.1.18","@tapjs/stdin":"1.1.18","@tapjs/test":"1.4.0","@tapjs/typescript":"1.4.0","@tapjs/worker":"1.1.18","resolve-import":"^1.4.5"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":"16 >=16.17.0 || 18 >= 18.6.0 || >=20"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.7.0","gitHead":"5187113fd380c0e028c2b3a4ee54509f622b84c1","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-bL/0krlx8k3fY9mjI9CMfVoAGclZegl+vm5pEJpF/USxam5eNhp5wLk5UH0ST3gWEJkW0PDdFHTOStE+mYurrQ==","shasum":"11ed2cb9af29bec8734f73af91bb26925dd6ca63","tarball":"https://registry.npmjs.org/tap/-/tap-18.7.0.tgz","fileCount":33,"unpackedSize":82115,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCMacJTEx+VT+pds9WeRVSwHyuVbhaI3gYuipqkhLPNNgIgafUFXuo53bo1w1MAYgEcOE5mruXSvpoAhc9M/zYEK+0="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.7.0_1706219203841_0.17753568415493937"},"_hasShrinkwrap":false},"18.7.1":{"name":"tap","version":"18.7.1","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.19","@tapjs/after-each":"1.1.19","@tapjs/asserts":"1.1.19","@tapjs/before":"1.1.19","@tapjs/before-each":"1.1.19","@tapjs/core":"1.5.1","@tapjs/filter":"1.2.19","@tapjs/fixture":"1.2.19","@tapjs/intercept":"1.2.19","@tapjs/mock":"1.3.1","@tapjs/node-serialize":"1.3.1","@tapjs/run":"1.5.1","@tapjs/snapshot":"1.2.19","@tapjs/spawn":"1.1.19","@tapjs/stdin":"1.1.19","@tapjs/test":"1.4.1","@tapjs/typescript":"1.4.1","@tapjs/worker":"1.1.19","resolve-import":"^1.4.5"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":"16 >=16.17.0 || 18 >= 18.6.0 || >=20"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.7.1","gitHead":"3d1598677ab1e4fdeaf872ec59ae1e4435db97ac","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.11.0","_npmVersion":"10.5.0","dist":{"integrity":"sha512-QFRQlVHkCTqtbvt1Lsxq74eNb7PTfAuVJPKr3x8Pua8jG09VkupVAKmSFV1RLH3uk8JUxyZWkU/EmVdNhW+quA==","shasum":"42ab297e28b3be85b22357031d9fa85b96dc3c1d","tarball":"https://registry.npmjs.org/tap/-/tap-18.7.1.tgz","fileCount":33,"unpackedSize":82127,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICuU4SwPO8lcfNX33Qz0rFyCRTeO2IfZNF7HwoUuIKMvAiBYxDRPxuwFIaSeKYObejGlbYTp85DX+aoGpBicKxse0A=="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.7.1_1709920469917_0.021980083269255823"},"_hasShrinkwrap":false},"18.7.2":{"name":"tap","version":"18.7.2","description":"A Test-Anything-Protocol library for JavaScript","tshy":{"main":true,"exports":{"./package.json":"./package.json",".":"./src/index.ts"}},"type":"module","bin":{"tap":"dist/esm/run.mjs"},"main":"./dist/commonjs/index.js","types":"./dist/commonjs/index.d.ts","exports":{"./package.json":"./package.json",".":{"import":{"types":"./dist/esm/index.d.ts","default":"./dist/esm/index.js"},"require":{"types":"./dist/commonjs/index.d.ts","default":"./dist/commonjs/index.js"}}},"scripts":{"prepare":"tshy","pretest":"npm run prepare","presnap":"npm run prepare","test":"tap","snap":"tap","format":"prettier --write . --loglevel warn --ignore-path ../../.prettierignore --cache","typedoc":"typedoc --tsconfig tsconfig/esm.json ./src/*.ts"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"license":"BlueOak-1.0.0","dependencies":{"@tapjs/after":"1.1.20","@tapjs/after-each":"1.1.20","@tapjs/asserts":"1.1.20","@tapjs/before":"1.1.20","@tapjs/before-each":"1.1.20","@tapjs/core":"1.5.2","@tapjs/filter":"1.2.20","@tapjs/fixture":"1.2.20","@tapjs/intercept":"1.2.20","@tapjs/mock":"1.3.2","@tapjs/node-serialize":"1.3.2","@tapjs/run":"1.5.2","@tapjs/snapshot":"1.2.20","@tapjs/spawn":"1.1.20","@tapjs/stdin":"1.1.20","@tapjs/test":"1.4.2","@tapjs/typescript":"1.4.2","@tapjs/worker":"1.1.20","resolve-import":"^1.4.5"},"tap":{"typecheck":false,"coverage-map":"map.js"},"homepage":"http://www.node-tap.org/","engines":{"node":"16 >=16.17.0 || 18 >= 18.6.0 || >=20"},"keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"funding":{"url":"https://github.com/sponsors/isaacs"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"_id":"tap@18.7.2","gitHead":"bf457f241276af8b39d10c1076929574473ed098","bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"_nodeVersion":"20.11.0","_npmVersion":"10.5.0","dist":{"integrity":"sha512-cGrB6laenHPOj3VaExITM54VjM9bR6fd0DK6Co9cm0/eJBog8XL05MX8TLxVPZSJtCu3nUESGjFhpATE8obxcw==","shasum":"0556bca476393fe5f44a2d357371b8ae1f5aea98","tarball":"https://registry.npmjs.org/tap/-/tap-18.7.2.tgz","fileCount":33,"unpackedSize":82145,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDIKdyvIic14bxxi0ftzR3j5EEmCxTcZZDULy3JIYgDaQIgTPX6PAvhrjXPxPUUii4ll8x2OvtkblVEm14mnDC8ews="}]},"_npmUser":{"name":"isaacs","email":"i@izs.me"},"directories":{},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/tap_18.7.2_1711495651190_0.44592658066760293"},"_hasShrinkwrap":false}},"maintainers":[{"name":"isaacs","email":"i@izs.me"}],"time":{"modified":"2024-03-26T23:27:31.797Z","created":"2011-04-21T07:10:43.641Z","0.0.1":"2011-12-07T00:43:11.747Z","0.0.2":"2011-12-07T00:43:11.747Z","0.0.3":"2011-12-07T00:43:11.747Z","0.0.4":"2011-12-07T00:43:11.747Z","0.0.5":"2011-12-07T00:43:11.747Z","0.0.6":"2011-12-07T00:43:11.747Z","0.0.7":"2011-12-07T00:43:11.747Z","0.0.8":"2011-12-07T00:43:11.747Z","0.0.9":"2011-12-07T00:43:11.747Z","0.0.10":"2011-10-05T16:27:33.077Z","0.0.11":"2011-10-12T17:24:00.166Z","0.0.12":"2011-10-25T01:16:31.213Z","0.0.13":"2011-11-09T18:17:44.426Z","0.0.14":"2011-11-15T21:44:41.812Z","0.1.0":"2011-11-21T23:12:20.309Z","0.1.1":"2011-12-07T00:43:11.747Z","0.1.2":"2011-12-07T01:02:22.675Z","0.1.3":"2011-12-12T16:45:15.464Z","0.1.4":"2012-01-06T07:33:09.449Z","0.2.0":"2012-01-08T09:01:42.732Z","0.2.1":"2012-02-21T22:36:39.686Z","0.2.2":"2012-02-22T18:38:05.208Z","0.2.3":"2012-02-23T04:42:21.738Z","0.2.4":"2012-03-18T22:51:57.167Z","0.2.5":"2012-05-11T14:55:41.125Z","0.2.6":"2012-07-24T08:17:49.554Z","0.3.0":"2012-07-31T16:42:54.501Z","0.3.1":"2012-08-27T17:38:19.286Z","0.3.2":"2012-11-06T17:28:05.592Z","0.3.3":"2012-11-29T17:41:43.052Z","0.4.0":"2013-01-22T19:33:23.342Z","0.4.1":"2013-03-25T18:08:33.634Z","0.4.2":"2013-04-29T15:56:38.588Z","0.4.3":"2013-05-16T14:33:13.636Z","0.4.4":"2013-08-12T15:22:55.540Z","0.4.5":"2013-11-19T04:40:57.700Z","0.4.6":"2013-11-19T05:01:17.956Z","0.4.7":"2014-01-07T17:10:38.346Z","0.4.8":"2014-01-08T03:02:50.706Z","0.4.9":"2014-04-28T17:53:03.516Z","0.4.11":"2014-06-09T01:41:53.412Z","0.4.12":"2014-07-23T21:22:27.476Z","0.4.13":"2014-09-30T20:39:43.768Z","0.5.0":"2015-01-14T23:34:42.557Z","0.6.0":"2015-02-13T01:12:07.856Z","0.7.0":"2015-02-26T01:22:54.728Z","0.7.1":"2015-02-27T00:41:39.706Z","1.0.0-beta.0":"2015-04-29T21:59:59.574Z","1.0.0-beta.1":"2015-04-30T05:53:15.664Z","1.0.0-beta.2":"2015-05-02T18:08:14.260Z","1.0.0-beta.3":"2015-05-03T03:40:50.994Z","1.0.0-beta.4":"2015-05-03T18:11:18.989Z","1.0.0-beta.5":"2015-05-06T18:51:52.590Z","1.0.0":"2015-05-07T00:24:43.814Z","1.0.1":"2015-05-08T01:02:56.624Z","1.0.2":"2015-05-08T19:09:13.493Z","1.0.3":"2015-05-12T18:58:40.966Z","1.0.4":"2015-05-12T19:07:16.776Z","1.0.5":"2015-05-18T01:45:34.516Z","1.0.6":"2015-05-18T20:38:07.557Z","1.0.7":"2015-05-18T21:05:26.892Z","1.0.8":"2015-05-18T23:32:20.629Z","1.0.10":"2015-05-19T23:24:48.836Z","1.1.0":"2015-05-20T22:51:26.911Z","1.1.3":"2015-05-26T02:18:30.577Z","1.1.4":"2015-05-26T05:52:44.919Z","1.2.0":"2015-05-26T18:47:30.888Z","1.2.1":"2015-06-19T21:38:11.011Z","1.3.0":"2015-06-23T21:02:34.333Z","1.3.1":"2015-06-25T00:35:12.396Z","1.3.2":"2015-07-31T18:27:17.259Z","1.3.3":"2015-08-28T22:19:39.959Z","1.3.4":"2015-08-29T21:11:22.318Z","1.4.0":"2015-09-02T23:29:23.971Z","1.4.1":"2015-09-08T23:19:11.883Z","2.0.0":"2015-09-27T18:35:57.626Z","2.0.1":"2015-10-06T23:08:34.885Z","2.1.0":"2015-10-07T00:07:17.918Z","2.1.1":"2015-10-08T18:09:05.957Z","2.2.0":"2015-10-23T23:22:14.717Z","2.2.1":"2015-11-12T21:53:39.627Z","2.3.0":"2015-11-18T18:08:47.775Z","2.3.1":"2015-11-20T23:45:16.188Z","2.3.2":"2015-12-15T21:49:37.563Z","2.3.3":"2015-12-18T06:50:10.449Z","2.3.4":"2015-12-22T19:22:19.458Z","2.3.5":"2015-12-25T03:20:57.452Z","3.0.0":"2015-12-30T02:08:35.584Z","3.1.0":"2015-12-30T07:59:59.842Z","3.1.1":"2015-12-30T08:17:31.944Z","3.1.2":"2015-12-30T08:27:14.765Z","4.0.0":"2015-12-31T01:05:07.215Z","5.0.0":"2016-01-04T07:57:34.811Z","5.0.1":"2016-01-10T01:18:07.289Z","5.1.0":"2016-01-17T06:52:10.982Z","5.1.1":"2016-01-17T06:58:35.769Z","5.1.2":"2016-01-25T07:06:39.915Z","5.2.0":"2016-01-27T06:26:15.941Z","5.3.0":"2016-01-31T08:11:41.802Z","5.4.0":"2016-01-31T08:34:40.815Z","5.4.1":"2016-01-31T18:46:41.359Z","5.4.2":"2016-02-01T04:07:19.921Z","5.4.3":"2016-02-09T01:08:16.142Z","5.4.4":"2016-02-13T06:14:33.805Z","5.4.5":"2016-02-16T02:21:29.480Z","5.5.0":"2016-02-16T06:31:54.673Z","5.6.0":"2016-02-18T06:44:59.724Z","5.7.0":"2016-02-22T19:23:31.954Z","5.7.1":"2016-04-08T12:18:52.859Z","5.7.2":"2016-05-23T22:22:50.531Z","5.7.3":"2016-06-21T00:12:25.485Z","5.8.0":"2016-06-24T17:53:46.753Z","6.0.0":"2016-07-01T01:56:41.853Z","6.1.0":"2016-07-01T07:52:14.383Z","6.1.1":"2016-07-01T17:08:45.562Z","6.2.0":"2016-07-15T15:52:45.740Z","6.3.0":"2016-07-31T00:05:33.099Z","6.3.1":"2016-08-11T17:37:58.528Z","6.3.2":"2016-08-11T18:00:56.847Z","7.0.0":"2016-08-27T07:34:10.077Z","7.0.1":"2016-09-06T06:49:24.462Z","7.1.0":"2016-09-07T06:15:48.150Z","7.1.1":"2016-09-08T18:34:59.697Z","7.1.2":"2016-09-09T22:34:16.239Z","8.0.0":"2016-10-25T17:02:00.844Z","8.0.1":"2016-11-17T22:50:46.026Z","9.0.0":"2017-01-08T07:14:26.811Z","9.0.1":"2017-01-08T07:45:16.646Z","9.0.2":"2017-01-09T07:51:21.438Z","9.0.3":"2017-01-09T23:14:34.103Z","10.0.0":"2017-01-28T09:43:10.024Z","10.0.1":"2017-02-02T06:25:36.192Z","10.0.2":"2017-02-02T23:32:13.217Z","10.1.0":"2017-02-07T23:33:58.858Z","10.1.1":"2017-02-14T19:24:26.311Z","10.1.2":"2017-02-18T02:11:41.119Z","10.2.0":"2017-02-19T01:17:23.261Z","10.2.1":"2017-02-23T04:05:34.295Z","10.2.2":"2017-02-27T07:59:56.879Z","10.3.0":"2017-03-02T03:47:57.522Z","10.3.1":"2017-03-29T18:02:43.854Z","10.3.2":"2017-04-09T06:45:20.550Z","10.3.3":"2017-06-02T23:36:59.577Z","10.3.4":"2017-06-16T17:01:54.724Z","10.4.0":"2017-06-18T15:07:06.113Z","10.5.0":"2017-06-20T16:20:59.378Z","10.5.1":"2017-06-20T17:13:23.854Z","10.5.2":"2017-06-22T18:03:10.207Z","10.6.0":"2017-06-24T00:01:10.692Z","10.7.0":"2017-06-25T06:52:43.501Z","10.7.1":"2017-08-01T18:10:54.064Z","10.7.2":"2017-08-12T20:09:07.394Z","10.7.3":"2017-11-07T20:38:12.370Z","11.0.0-rc.0":"2017-11-20T14:32:52.250Z","11.0.0-rc.1":"2017-11-20T14:44:35.989Z","11.0.0-rc.2":"2017-11-20T22:24:03.894Z","11.0.0-rc.3":"2017-11-21T00:37:54.561Z","11.0.0":"2017-11-26T00:37:26.591Z","11.0.1":"2017-12-21T22:00:39.004Z","11.1.0":"2018-01-30T18:04:24.149Z","11.1.1":"2018-02-19T23:21:04.340Z","11.1.2":"2018-03-07T21:14:11.123Z","11.1.3":"2018-03-20T16:21:35.848Z","11.1.4":"2018-04-13T22:26:07.096Z","11.1.5":"2018-05-09T00:03:40.635Z","12.0.0":"2018-05-17T16:52:05.580Z","12.0.1":"2018-05-17T21:19:23.829Z","12.0.2":"2018-11-12T20:14:09.799Z","12.1.0":"2018-11-13T00:35:25.695Z","12.1.1":"2018-12-12T07:35:16.807Z","12.1.2":"2019-01-21T07:35:55.952Z","12.1.3":"2019-01-22T19:12:03.808Z","12.1.4":"2019-01-22T23:59:42.942Z","12.2.0":"2019-01-23T06:00:08.818Z","12.2.1":"2019-01-23T06:15:03.919Z","12.3.0":"2019-01-23T07:41:11.483Z","12.4.0":"2019-01-23T08:08:35.495Z","12.4.1":"2019-01-30T05:37:42.342Z","12.5.0":"2019-01-30T05:46:45.936Z","12.5.1":"2019-02-01T05:02:44.028Z","12.5.2":"2019-02-08T05:26:21.465Z","12.5.3":"2019-02-15T22:19:47.479Z","12.6.0":"2019-03-07T01:33:11.566Z","13.0.0-rc.0":"2019-03-11T05:00:37.953Z","13.0.0-rc.1":"2019-03-11T06:02:12.603Z","13.0.0-rc.2":"2019-03-13T06:36:25.694Z","13.0.0-rc.3":"2019-03-13T20:39:42.717Z","13.0.0-rc.4":"2019-03-16T19:03:30.068Z","13.0.0-rc.5":"2019-03-16T20:00:08.081Z","13.0.0-rc.6":"2019-03-17T22:53:26.719Z","13.0.0-rc.7":"2019-03-17T23:08:30.800Z","13.0.0-rc.8":"2019-03-18T00:59:02.866Z","13.0.0-rc.9":"2019-03-18T03:29:35.711Z","13.0.0-rc.10":"2019-03-18T06:02:51.939Z","13.0.0-rc.11":"2019-03-20T05:15:58.997Z","13.0.0-rc.12":"2019-03-21T06:16:11.920Z","13.0.0-rc.13":"2019-03-22T19:41:50.688Z","12.6.1":"2019-03-22T20:25:41.253Z","13.0.0-rc.14":"2019-03-22T20:58:08.215Z","13.0.0-rc.15":"2019-03-25T07:39:13.348Z","13.0.0-rc.16":"2019-03-25T16:52:03.029Z","13.0.0-rc.17":"2019-03-26T00:14:48.498Z","13.0.0-rc.18":"2019-03-26T00:29:01.435Z","13.0.0-rc.19":"2019-03-29T20:59:07.070Z","13.0.0-rc.20":"2019-03-31T07:58:04.154Z","13.0.0-rc.21":"2019-04-06T07:10:24.781Z","13.0.0-rc.22":"2019-04-06T19:21:56.761Z","13.0.0-rc.23":"2019-04-06T21:47:54.166Z","13.0.0-rc.24":"2019-04-17T07:06:01.820Z","12.6.2":"2019-04-17T07:12:36.455Z","13.0.0-rc.25":"2019-04-20T23:46:29.991Z","12.6.3":"2019-04-22T18:54:38.534Z","13.0.0-rc.26":"2019-04-24T05:16:36.284Z","13.0.0-rc.27":"2019-04-24T06:00:43.556Z","13.0.0-rc.28":"2019-04-24T07:35:05.627Z","12.6.4":"2019-04-24T17:45:45.675Z","13.0.0-rc.29":"2019-04-24T17:47:06.044Z","13.0.0-rc.30":"2019-04-24T17:52:51.047Z","12.6.5":"2019-04-24T17:55:07.270Z","13.0.0":"2019-04-26T00:25:40.735Z","13.0.1":"2019-04-26T13:37:06.429Z","12.6.6":"2019-04-26T15:59:37.558Z","13.0.3":"2019-04-26T18:39:12.415Z","13.0.4":"2019-04-27T16:53:41.665Z","13.1.0":"2019-04-28T16:39:50.669Z","12.7.0":"2019-04-28T22:45:31.385Z","13.1.1":"2019-04-29T16:43:23.543Z","13.1.2":"2019-05-01T18:57:45.169Z","13.1.3":"2019-05-08T00:12:18.057Z","13.1.4":"2019-05-08T23:28:27.662Z","13.1.5":"2019-05-08T23:33:15.870Z","13.1.6":"2019-05-09T00:03:28.556Z","13.1.7":"2019-05-10T17:46:09.523Z","13.1.8":"2019-05-11T05:39:21.495Z","13.1.9":"2019-05-14T17:16:31.931Z","13.1.10":"2019-05-17T00:26:04.576Z","13.1.11":"2019-05-17T18:50:03.823Z","14.0.0":"2019-05-18T00:32:33.761Z","14.1.0":"2019-05-20T18:35:14.543Z","14.1.1":"2019-05-20T23:27:42.703Z","14.1.2":"2019-05-21T19:39:20.647Z","14.1.3":"2019-05-21T23:41:04.124Z","14.1.4":"2019-05-22T16:10:02.236Z","14.1.5":"2019-05-22T16:13:27.271Z","14.1.6":"2019-05-22T16:21:00.537Z","14.1.7":"2019-05-22T18:38:10.089Z","14.1.8":"2019-05-23T19:09:26.635Z","14.1.9":"2019-05-23T19:18:09.460Z","14.1.10":"2019-05-23T20:35:05.851Z","14.1.11":"2019-05-24T19:24:08.152Z","14.2.0":"2019-05-28T07:01:35.785Z","14.2.1":"2019-06-04T20:26:44.592Z","14.2.2":"2019-06-05T19:13:22.620Z","14.2.3":"2019-06-14T22:01:56.352Z","14.2.4":"2019-06-19T19:17:45.429Z","14.2.5":"2019-06-22T03:24:23.369Z","14.3.0":"2019-06-25T07:46:30.641Z","14.3.1":"2019-06-25T16:55:21.759Z","14.4.0":"2019-07-02T19:24:09.456Z","14.4.1":"2019-07-03T22:49:23.599Z","14.4.2":"2019-07-17T00:06:28.003Z","14.4.3":"2019-07-22T18:21:38.340Z","14.5.0":"2019-07-28T22:05:19.780Z","14.6.0":"2019-08-04T05:23:18.176Z","14.6.1":"2019-08-04T06:23:03.127Z","14.6.2":"2019-09-10T21:03:02.489Z","14.6.3":"2019-09-15T17:42:03.265Z","14.6.4":"2019-09-15T17:52:29.555Z","14.6.5":"2019-09-23T18:59:52.816Z","14.6.6":"2019-09-29T18:15:04.676Z","14.6.7":"2019-09-29T20:05:34.822Z","14.6.8":"2019-09-30T20:29:53.786Z","14.6.9":"2019-09-30T20:35:57.072Z","14.7.0":"2019-10-14T05:54:42.003Z","14.7.1":"2019-10-16T00:58:53.962Z","14.7.2":"2019-10-18T02:39:21.561Z","14.7.3":"2019-10-20T23:57:53.461Z","14.8.0":"2019-10-21T00:00:47.432Z","14.8.1":"2019-10-22T15:16:02.028Z","14.8.2":"2019-10-22T17:42:18.404Z","14.8.3":"2019-10-30T18:18:35.937Z","14.9.0":"2019-10-30T21:23:52.285Z","14.9.1":"2019-10-30T22:07:05.366Z","14.9.2":"2019-11-06T22:06:56.941Z","14.10.0":"2019-11-21T07:05:52.820Z","14.10.1":"2019-11-21T19:11:42.253Z","14.10.2":"2019-11-25T23:57:27.937Z","14.10.2-unbundled":"2019-11-26T00:02:08.255Z","14.10.2-totally-bundled":"2019-11-27T00:50:26.168Z","14.10.2-totally-bundled.1":"2019-11-27T01:02:14.610Z","14.10.3":"2019-12-16T21:21:04.156Z","14.10.4":"2019-12-16T21:41:18.693Z","14.10.5":"2019-12-18T00:45:15.740Z","14.10.6":"2020-01-14T02:16:45.040Z","14.10.7":"2020-03-20T03:53:47.705Z","14.10.8":"2020-07-21T22:50:05.972Z","14.11.0":"2020-11-16T23:56:05.974Z","15.0.0-0":"2021-02-17T18:45:37.871Z","15.0.0-1":"2021-02-18T17:41:52.485Z","15.0.0-2":"2021-02-23T00:16:36.238Z","15.0.0-3":"2021-03-26T03:55:39.868Z","15.0.0":"2021-03-31T05:00:22.851Z","15.0.1":"2021-04-01T03:29:40.170Z","15.0.2":"2021-04-05T17:44:08.368Z","15.0.3":"2021-04-20T00:04:48.354Z","15.0.4":"2021-04-20T18:04:02.992Z","15.0.5":"2021-04-24T00:16:24.024Z","15.0.6":"2021-04-29T17:05:20.476Z","15.0.7":"2021-05-06T23:42:20.539Z","15.0.8":"2021-05-07T00:02:46.909Z","15.0.9":"2021-05-07T00:17:02.728Z","15.0.10":"2021-09-21T23:29:04.674Z","15.1.0":"2021-11-16T21:45:15.486Z","15.1.1":"2021-11-17T00:47:06.662Z","15.1.2":"2021-11-18T16:58:52.365Z","15.1.3":"2021-11-26T16:23:30.833Z","15.1.4":"2021-11-26T16:26:30.569Z","15.1.5":"2021-11-26T19:58:04.932Z","15.1.6":"2022-01-04T00:31:18.170Z","15.2.0":"2022-03-05T03:06:48.861Z","15.2.1":"2022-03-05T05:34:47.728Z","15.2.2":"2022-03-05T06:47:54.165Z","15.2.3":"2022-03-05T20:15:55.706Z","16.0.0":"2022-03-05T21:05:23.570Z","16.0.1":"2022-03-22T23:26:39.812Z","16.1.0":"2022-04-25T04:53:39.754Z","16.2.0":"2022-05-04T16:50:24.245Z","16.3.0":"2022-06-17T06:21:42.518Z","16.3.1":"2022-11-13T16:45:07.388Z","16.3.2":"2022-11-16T18:51:52.596Z","16.3.3":"2023-01-09T06:52:22.994Z","16.3.4":"2023-01-16T04:56:22.612Z","16.3.5":"2023-06-04T20:30:04.824Z","16.3.6":"2023-06-04T20:32:04.554Z","16.3.7":"2023-06-22T19:56:36.049Z","16.3.8":"2023-07-30T04:13:50.872Z","18.0.0-1":"2023-08-04T16:16:14.091Z","18.0.0-2":"2023-08-04T16:43:26.931Z","18.0.0-3":"2023-08-04T17:05:03.759Z","18.0.0-4":"2023-08-04T23:47:35.764Z","18.0.0-5":"2023-08-06T05:01:51.812Z","18.0.0-6":"2023-08-06T05:18:33.756Z","18.0.0-7":"2023-08-07T03:37:49.445Z","18.0.0-8":"2023-08-07T16:42:55.643Z","18.0.0-9":"2023-08-07T17:45:45.400Z","18.0.0-10":"2023-08-07T18:05:58.226Z","18.0.0-11":"2023-08-07T18:20:32.657Z","18.0.0-12":"2023-08-07T23:51:25.665Z","18.0.0-13":"2023-08-09T19:56:17.699Z","18.0.0-14":"2023-08-12T19:10:43.510Z","18.0.0-15":"2023-08-15T06:16:16.789Z","18.0.0-16":"2023-08-17T20:36:04.226Z","18.0.0-17":"2023-08-18T00:54:33.209Z","18.0.0-18":"2023-08-20T06:32:39.813Z","18.0.0-19":"2023-08-21T20:20:11.385Z","18.0.0-20":"2023-08-27T06:17:58.652Z","18.0.0-21":"2023-08-29T10:49:01.006Z","18.0.0-22":"2023-09-01T00:19:18.736Z","18.0.0-23":"2023-09-03T17:49:58.513Z","18.0.0-24":"2023-09-05T01:40:10.351Z","18.0.0-25":"2023-09-10T18:22:19.731Z","18.0.0-26":"2023-09-13T17:02:47.808Z","18.0.0":"2023-09-15T15:05:03.307Z","18.0.1":"2023-09-15T19:15:02.205Z","18.0.2":"2023-09-17T05:51:18.529Z","18.0.3":"2023-09-17T19:14:13.545Z","18.0.4":"2023-09-18T18:20:08.232Z","18.1.0":"2023-09-23T01:07:54.642Z","18.1.1":"2023-09-23T17:36:43.353Z","18.1.2":"2023-09-24T04:56:27.068Z","18.1.3":"2023-09-24T17:26:27.197Z","18.1.4":"2023-09-24T18:09:01.846Z","18.1.5":"2023-09-26T00:10:47.538Z","16.3.9":"2023-09-27T17:42:40.848Z","18.2.0":"2023-09-27T23:59:47.883Z","18.2.1":"2023-09-28T20:17:53.786Z","18.2.2":"2023-09-28T21:16:46.416Z","18.3.0":"2023-09-28T21:36:03.112Z","18.3.1":"2023-09-29T16:16:04.914Z","18.4.0":"2023-09-29T18:09:52.197Z","18.4.1":"2023-10-01T21:38:01.864Z","18.4.2":"2023-10-02T02:38:18.188Z","18.4.3":"2023-10-05T23:01:24.254Z","18.4.4":"2023-10-08T23:13:52.059Z","18.4.5":"2023-10-09T06:59:08.364Z","18.4.6":"2023-10-10T15:59:16.616Z","18.5.0":"2023-10-11T04:49:08.865Z","18.5.1":"2023-10-15T19:46:33.278Z","18.5.2":"2023-10-16T22:23:35.138Z","18.5.3":"2023-10-28T05:15:29.407Z","18.5.4":"2023-10-31T22:03:53.471Z","18.5.5":"2023-11-03T07:30:22.135Z","18.5.6":"2023-11-03T14:41:01.814Z","18.5.7":"2023-11-04T02:04:04.639Z","18.5.8":"2023-11-13T21:37:22.896Z","18.6.0":"2023-11-16T18:51:51.817Z","18.6.1":"2023-11-16T18:56:04.076Z","16.3.10":"2023-12-15T20:43:00.982Z","18.7.0":"2024-01-25T21:46:44.000Z","18.7.1":"2024-03-08T17:54:30.065Z","18.7.2":"2024-03-26T23:27:31.346Z"},"author":{"name":"Isaac Z. Schlueter","email":"i@izs.me","url":"https://blog.izs.me"},"repository":{"type":"git","url":"git+https://github.com/tapjs/tapjs.git"},"users":{"fgribreau":true,"tokuhirom":true,"dshaw":true,"michaelnisi":true,"hij1nx":true,"luk":true,"kevinohara80":true,"isao":true,"kesla":true,"mk":true,"conradz":true,"brianloveswords":true,"morishitter":true,"inancgumus":true,"kewah":true,"scull7":true,"oroce":true,"awaterma":true,"nickleefly":true,"markthethomas":true,"program247365":true,"wenbing":true,"makenova":true,"n370":true,"ckross01":true,"bsnote":true,"tfentonz":true,"hal9zillion":true,"tylerm":true,"stany":true,"xieranmaya":true,"keberox":true,"gr2m":true,"eerne":true,"max_devjs":true,"nomemires":true,"travm":true,"jerrywu":true,"jmwlsn":true,"leodutra":true,"erikvold":true,"backnight":true,"micnic":true,"rogeruiz":true,"grantcarthew":true,"xueboren":true,"seangenabe":true,"brainpoint":true,"rsp":true,"dralc":true,"vassiliy.pimkin":true,"grandsong":true,"rogerta":true,"gher":true,"nikolay":true,"neomorphic":true,"michalskuza":true,"jarvis-npm":true,"larrychen":true,"sasquatch":true,"kodekracker":true,"shriharishastry":true,"shujianbu":true,"agrcrobles":true,"knksmith57":true,"jag82":true,"gordey4doronin":true,"soph2k":true,"liunian":true,"flumpus-dev":true,"bcowgi11":true},"readme":"# node-tap\n\nA TAP test framework\nfor Node.js.\n\n_Just wanna see some code? [Get\nstarted!](http://www.node-tap.org/basics/)_\n\nIt includes a command line test runner for consuming\nTAP-generating test scripts, and a JavaScript framework for\nwriting such scripts.\n\n\n\n- [Getting started guide](http://node-tap.org/basics/)\n- Built-in [test coverage](http://node-tap.org/coverage/)\n- Many [reporter formats](http://node-tap.org/reporter/)\n- Extensive [API](http://node-tap.org/api/)\n- [Command-line interface](http://node-tap.org/cli/) for\n running tests (whether they use node-tap or not)\n- [Machine-generated API docs](https://tapjs.github.io/tapjs)\n\nSee [the changelog](http://node-tap.org/changelog/) for recent\nupdates, or just get started with [the\nbasics](http://www.node-tap.org/basics/).\n\nAll this is too much to manage in a single README file, so head\nover to [the website](http://node-tap.org/) to learn more.\n\n## Why TAP?\n\nWhy should you use this thing!? **LET ME TELL YOU!**\n\nJust kidding.\n\nMost frameworks spend a lot of their documentation telling you\nwhy they're the greatest. This isn't that.\n\n### tutti i gusti sono gusti\n\nSoftware testing is a software and user experience design\nchallenge that balances on the intersection of many conflicting\ndemands.\n\nNode-tap is based on [my](http://izs.me) opinions about how a\ntest framework should work, and what it should let you do. I do\n_not_ have any opinion about whether or not you share those\nopinions. If you do share them, you will probably enjoy this test\nlibrary.\n\nHere are the design principles that shape this test framework.\n\n### Test files are \"normal\" programs\n\nAny TAP test can be run directly as a plain old JavaScript\nprogram. Of course, if it's written in TypeScript, you'll\nhave to run it with a TypeScript loader, but otherwise, they\nshould be just like normal programs that run in a normal\nenvironment.\n\nBut there's no runner required to run tests, they don't\nexecute in a special simulated memory space with injected\nglobals, and so on. Because each test runs in its own process,\nthere's no chance of tests becoming dependent on one another's\nleaked globals or causing other confusing situations.\n\n### Tests should help, not get in the way\n\nThe goal of tests is to help you write code. They add reliability\nto your program by adding a layer of \"yes, this does what I think\nit does\". Whether you're doing strict Red-Green-Refactor style\nTDD, or just finger-painting until it feels right and then\nwriting tests to verify what it actually does, writing the tests\nshould feel empowering and straightforward, _reducing_ cognitive\nload rather than increasing it.\n\n### All types must be accurate and complete\n\nThis is simply not reasonable to do with a hand-edited type\ndefinition in `.d.ts` file.\n\nTAP's exported types are built up from its set of plugins and\ninternal classes, assembled into the `Test` class that your test\nprograms interact with. When a plugin is added or removed, the\n`t` in your editor can accurately tell you its new shape.\n\nIf you have to look at the docs too often, that's a bug in my\nopinion. Lean into the beautiful power of code completion.\n\n### TypeScript, ESM, and CommonJS supported out of the box\n\nWith the changes to the module system in Node.js over the\nlast several years, TAP fell down on this requirement in\nversions prior to v18. As of version 18, the entire system has\nbeen rewritten in TypeScript, and built as hybrid ESM/CommonJS\npackages.\n\nYour tests should be written just like your program, with as few\nbarriers as possible. If you can do it in CommonJS, you can do it\nin ESM, and vice versa (at least as far as TAP is concerned).\nWhatever is in your `tsconfig.json` or `package.json`, it should\nJust Work.\n\n### Anything that _can_ be a plugin _is_ a plugin\n\nThe plugin system is leveraged for anything that does not\nabsolutely need to be included in the core.\n\nBasic [TAP](https://testanything.org) generation and flow\ncontrol, error handling, config loading, process management and\nso on, are all included in the core. But TypeScript support,\nmocking, almost all assertion methods, method and property\ninterception and spying, spawning/forking subtests, creating\nfixtures, snapshots, and attaching lifecycle methods (among\nothers) are all relegated to plugins.\n\nThis means that features can be switched on or off or extended\nvery easily.\n\n### Plugins must be powerful and trivial to write correctly\n\nThe plugin interface is extremely simple. Export a `plugin`\nfunction that returns an object. That's it, that's a plugin.\n\nPlugins can also export configuration definitions, which are\nfolded into the set of fields that TAP knows how to parse from\nthe command line or from your `.taprc` file, or export a `loader`\nstring, which will be invoked when spawning test processes.\n\n### High Signal, Low Noise\n\nIt is important to give a lot of information about test failures,\nthrows, and so on, so that you can easily jump straight to the\nappropriate place in the code to fix the problem. And, it's\nusually helpful to see which tests are actually running.\n\nHowever, a screen full of green checkmarks and `100% Covered!`\nisn't very useful. It should be just enough to know what happened\nand easily diagnose any problems, and otherwise fairly quiet.\n\nLow information output has been trimmed down as much as possible\nfrom the default reporters. Coverage information is only shown\nwhen it has something relevant to say. TAP tries to show you\nexactly what you need to see, and nothing else. Stack traces have\nnoisy internals trimmed out, so it's easier to see exactly where\nin _your_ code the problem happened. Source maps are always\nenabled, because you need to know where the actual code is, not\njust which built artifact failed.\n\nIf the default reporter isn't terse enough for your liking, try\n`tap -Rterse`.\n\n### Assertions don't throw (but throws are handled nicely)\n\nI frequently write programs that have many hundreds of assertions\nbased on some list of test cases. If the first failure throws,\nthen I don't know if I've failed 100 tests or 1, without wrapping\neverything in a try-catch. Furthermore, I usually want to see\nsome kind of output or reporting to verify that each one actually\nran.\n\nBasically, it should be your decision whether you want to throw\nor not. The test framework shouldn't force that on you, and\nshould make either case easy.\n\n### Test reporting should be useful, extensible, and accessible\n\nThe [raw test output](https://www.node-tap.org/tap-format/)\nis machine-parseable and human-intelligible, a separate component\nconsumes test output and turns it into a [pretty summarized\nreport](https://www.node-tap.org/reporting/). This means that\ntest data can be stored and parsed later, dug into for additional\ndetails, and so on.\n\nRed and green are the conventional colors meaning \"removed\" and\n\"added\", but they're also exactly the same color for many people.\nAll of the color choices in the reporter are tested rigorously\nagainst simulators for protanopia, deuteranopia, tritanopia, and\nmonochromicity.\n\n### Test coverage is always on\n\nRunning tests with coverage changes the way that you think\nabout your programs, and provides much deeper insight.\nTAP uses V8's internal coverage mechanisms directly, and verifies\nthat tests provide 100% coverage of all lines, branches,\nfunctions, and statements in the system under test. It uses\n[C8](https://npmjs.com/c8) to analyze the V8 coverage data and\ngenerate coverage reports.\n\nMissing coverage means that you are relying on untested code, so\nthis is treated as a test failure. If you have some bit of code\nwhich is actually _impossible_ to test for some reason, wrap it\nin the appropriate `/* c8 ignore start */` / `/* c8 ignore end\n*/` comments to exclude those lines from the analysis. But think\ncarefully about whether that's really the case. Usually, if you\nhave to coverage-ignore something, it's a sign that you need to\neither delete that code or refactor it into a more easily tested\nmodule.\n\n---\n\nSoftware testing should help you build software. It should be a\nsecurity blanket and a quality ratchet, giving you the support to\nundertake massive refactoring and fix bugs without worrying. It\nshouldn't be a purification rite or a hazing ritual. It should be\nfun, because making stuff is fun, and it helps you make better\nstuff.\n\nThere are many opinions left off of this list! Reasonable people\ncan disagree. But if you find yourself nodding along, [maybe tap\nis for you](https://www.node-tap.org/basics/).\n","homepage":"http://www.node-tap.org/","keywords":["assert","tap","test","testing","framework","cli","tapjs","tapjs plugin"],"bugs":{"url":"https://github.com/tapjs/tapjs/issues"},"license":"BlueOak-1.0.0","readmeFilename":"README.md"}