Comparing version 16.3.7 to 18.5.0
181
package.json
{ | ||
"name": "tap", | ||
"version": "16.3.7", | ||
"author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me)", | ||
"version": "18.5.0", | ||
"description": "A Test-Anything-Protocol library for JavaScript", | ||
"homepage": "http://www.node-tap.org/", | ||
"tshy": { | ||
"main": true, | ||
"exports": { | ||
"./package.json": "./package.json", | ||
".": "./src/index.ts" | ||
} | ||
}, | ||
"type": "module", | ||
"bin": { | ||
"tap": "bin/run.js" | ||
"tap": "dist/esm/run.mjs" | ||
}, | ||
"main": "lib/tap.js", | ||
"main": "./dist/commonjs/index.js", | ||
"types": "./dist/commonjs/index.d.ts", | ||
"exports": { | ||
"./package.json": "./package.json", | ||
".": { | ||
"import": "./lib/tap.mjs", | ||
"default": "./lib/tap.js" | ||
}, | ||
"./*": "./*", | ||
"./mocha": "./lib/mocha.js" | ||
"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": ">=12" | ||
"files": [ | ||
"dist" | ||
], | ||
"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": "Isaac Z. Schlueter <i@izs.me> (https://blog.izs.me)", | ||
"license": "BlueOak-1.0.0", | ||
"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" | ||
"@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" | ||
}, | ||
"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" | ||
"tap": { | ||
"typecheck": false, | ||
"coverage-map": "map.js" | ||
}, | ||
"peerDependencies": { | ||
"coveralls": "^3.1.1", | ||
"flow-remove-types": ">=2.112.0", | ||
"ts-node": ">=8.5.2", | ||
"typescript": ">=3.7.2" | ||
"homepage": "http://www.node-tap.org/", | ||
"engines": { | ||
"node": ">=16" | ||
}, | ||
"peerDependenciesMeta": { | ||
"coveralls": { | ||
"optional": true | ||
}, | ||
"flow-remove-types": { | ||
"optional": true | ||
}, | ||
"ts-node": { | ||
"optional": true | ||
}, | ||
"typescript": { | ||
"optional": true | ||
} | ||
}, | ||
"keywords": [ | ||
@@ -83,53 +78,15 @@ "assert", | ||
"test", | ||
"testing" | ||
"testing", | ||
"framework", | ||
"cli", | ||
"tapjs", | ||
"tapjs plugin" | ||
], | ||
"license": "ISC", | ||
"repository": "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" | ||
] | ||
}, | ||
"files": [ | ||
"settings.js", | ||
"bin/run.js", | ||
"bin/jsx.js", | ||
"bin/jack.js", | ||
"lib" | ||
], | ||
"bundleDependencies": [ | ||
"ink", | ||
"treport", | ||
"@types/react", | ||
"@isaacs/import-jsx", | ||
"react" | ||
], | ||
"funding": { | ||
"url": "https://github.com/sponsors/isaacs" | ||
}, | ||
"repository": { | ||
"type": "git", | ||
"url": "git+https://github.com/tapjs/tapjs.git" | ||
} | ||
} |
280
README.md
# node-tap | ||
A <abbr title="Test Anything Protocol">TAP</abbr> test framework for | ||
Node.js. | ||
A <abbr title="Test Anything Protocol">TAP</abbr> test framework | ||
for Node.js. | ||
![Build Status](https://github.com/tapjs/node-tap/workflows/ci/badge.svg) | ||
_Just wanna see some code? [Get | ||
started!](http://www.node-tap.org/basics/)_ | ||
_Just wanna see some code? [Get started!](http://www.node-tap.org/basics/)_ | ||
It includes a command line test runner for consuming | ||
TAP-generating test scripts, and a JavaScript framework for | ||
writing such scripts. | ||
It includes a command line test runner for consuming TAP-generating test | ||
scripts, and a JavaScript framework for writing such scripts. | ||
<!-- TODO: update with new website docs links --> | ||
* [Getting started guide](http://www.node-tap.org/basics/) | ||
* Built-in [test coverage](http://www.node-tap.org/coverage/) | ||
* Many [reporter formats](http://www.node-tap.org/reporting/) | ||
* Extensive [API](http://www.node-tap.org/api/) featuring: | ||
* Great [promise support](http://www.node-tap.org/promises/) | ||
* Comprehensive [assert library](http://www.node-tap.org/asserts/) | ||
* Other [advanced stuff](http://www.node-tap.org/advanced/) | ||
* Mocha-like [BDD DSL](http://www.node-tap.org/mochalike/) | ||
* [Parallel Testing](http://www.node-tap.org/parallel/) | ||
* [Command-line interface](http://www.node-tap.org/cli/) for running tests | ||
(whether they use node-tap or not) | ||
- [Getting started guide](http://node-tap.org/basics/) | ||
- Built-in [test coverage](http://node-tap.org/coverage/) | ||
- Many [reporter formats](http://node-tap.org/reporter/) | ||
- Extensive [API](http://node-tap.org/api/) | ||
- [Command-line interface](http://node-tap.org/cli/) for | ||
running tests (whether they use node-tap or not) | ||
- [Machine-generated API docs](https://tapjs.github.io/tapjs) | ||
See [the changelog](http://www.node-tap.org/changelog/) for recent updates, | ||
or just get started with [the basics](http://www.node-tap.org/basics/). | ||
See [the changelog](http://node-tap.org/changelog/) for recent | ||
updates, or just get started with [the | ||
basics](http://www.node-tap.org/basics/). | ||
All this is too much to manage in a single README file, so head over to | ||
[the website](http://www.node-tap.org/) to learn more. | ||
All this is too much to manage in a single README file, so head | ||
over to [the website](http://node-tap.org/) to learn more. | ||
## Why TAP? | ||
Why should you use this thing!? **LET ME TELL YOU!** | ||
Why should you use this thing!? **LET ME TELL YOU!** | ||
Just kidding. | ||
Most frameworks spend a lot of their documentation telling you why they're | ||
the greatest. I'm not going to do that. | ||
Most frameworks spend a lot of their documentation telling you | ||
why they're the greatest. This isn't that. | ||
### <i lang="it" title="all tastes are tastes">tutti i gusti sono gusti</i> | ||
Software testing is a software and user experience design challenge that | ||
balances on the intersection of many conflicting demands. | ||
Software testing is a software and user experience design | ||
challenge that balances on the intersection of many conflicting | ||
demands. | ||
Node-tap is based on [my](http://izs.me) opinions about how a test | ||
framework should work, and what it should let you do. I do _not_ have any | ||
opinion about whether or not you share those opinions. If you do share | ||
them, you will probably enjoy this test library. | ||
Node-tap is based on [my](http://izs.me) opinions about how a | ||
test framework should work, and what it should let you do. I do | ||
_not_ have any opinion about whether or not you share those | ||
opinions. If you do share them, you will probably enjoy this test | ||
library. | ||
1. **Test files should be "normal" programs that can be run directly.** | ||
Here are the design principles that shape this test framework. | ||
That means that it can't require a special runner that puts magic | ||
functions into a global space. `node test.js` is a perfectly ok way to | ||
run a test, and it ought to function exactly the same as when it's run | ||
by the fancy runner with reporting and such. JavaScript tests should be | ||
JavaScript programs; not english-language poems with weird punctuation. | ||
### Test files are "normal" programs | ||
2. **Test output should be connected to the structure of the test file in a | ||
way that is easy to determine.** | ||
Any TAP test can be run directly as a plain old JavaScript | ||
program. Of course, if it's written in TypeScript, you'll | ||
have to run it with a TypeScript loader, but otherwise, they | ||
should be just like normal programs that run in a normal | ||
environment. | ||
That means not unnecessarily deferring test functions until `nextTick`, | ||
because that would shift the order of `console.log` output. Synchronous | ||
tests should be synchronous. | ||
But there's no runner required to run tests, they don't | ||
execute in a special simulated memory space with injected | ||
globals, and so on. Because each test runs in its own process, | ||
there's no chance of tests becoming dependent on one another's | ||
leaked globals or causing other confusing situations. | ||
3. **Test files should be run in separate processes.** | ||
### Tests should help, not get in the way | ||
That means that it can't use `require()` to load test files. Doing | ||
`node ./test.js` must be the exact same sort of environment for the test | ||
as doing `test-runner ./test.js`. Doing `node test/1.js; node | ||
test/2.js` should be equivalent (from the test's point of view) to doing | ||
`test-runner test/*.js`. This prevents tests from becoming implicitly | ||
dependent on one anothers' globals. | ||
The goal of tests is to help you write code. They add reliability | ||
to your program by adding a layer of "yes, this does what I think | ||
it does". Whether you're doing strict Red-Green-Refactor style | ||
TDD, or just finger-painting until it feels right and then | ||
writing tests to verify what it actually does, writing the tests | ||
should feel empowering and straightforward, _reducing_ cognitive | ||
load rather than increasing it. | ||
4. **Assertions should not normally throw (but throws MUST be handled | ||
nicely).** | ||
### All types must be accurate and complete | ||
I frequently write programs that have many hundreds of assertions based | ||
on some list of test cases. If the first failure throws, then I don't | ||
know if I've failed 100 tests or 1, without wrapping everything in a | ||
try-catch. Furthermore, I usually want to see some kind of output or | ||
reporting to verify that each one actually ran. | ||
This is simply not reasonable to do with a hand-edited type | ||
definition in `.d.ts` file. | ||
Basically, it should be your decision whether you want to throw or not. | ||
The test framework shouldn't force that on you, and should make either | ||
case easy. | ||
TAP's exported types are built up from its set of plugins and | ||
internal classes, assembled into the `Test` class that your test | ||
programs interact with. When a plugin is added or removed, the | ||
`t` in your editor can accurately tell you its new shape. | ||
5. **Test reporting should be separate from the test process, included in | ||
the framework, and enabled by default for humans.** | ||
If you have to look at the docs too often, that's a bug in my | ||
opinion. Lean into the beautiful power of code completion. | ||
The [raw test output](https://www.node-tap.org/tap-format/) should be | ||
machine-parseable and human-intelligible, and a separate process should | ||
consume test output and turn it into a [pretty summarized | ||
report](https://www.node-tap.org/reporting/). This means that test data | ||
can be stored and parsed later, dug into for additional details, and so | ||
on. Also: nyan cat. | ||
### TypeScript, ESM, and CommonJS supported out of the box | ||
6. **Writing tests should be easy, maybe even fun.** | ||
With the changes to the module system in Node.js over the | ||
last several years, TAP fell down on this requirement in | ||
versions prior to v18. As of version 18, the entire system has | ||
been rewritten in TypeScript, and built as hybrid ESM/CommonJS | ||
packages. | ||
The lower the barrier to entry for writing new tests, the more tests get | ||
written. That means that there should be a relatively small vocabulary | ||
of actions that I need to remember as a test author. There is no | ||
benefit to having a distinction between a "suite" and a "subtest". | ||
Fancy DSLs are pretty, but more to remember. | ||
Your tests should be written just like your program, with as few | ||
barriers as possible. If you can do it in CommonJS, you can do it | ||
in ESM, and vice versa (at least as far as TAP is concerned). | ||
Whatever is in your `tsconfig.json` or `package.json`, it should | ||
Just Work. | ||
That being said, if you return a Promise, or use a DSL that throws a | ||
decorated error, then the test framework should Just Work in a way that | ||
helps a human being understand the situation. | ||
### Anything that _can_ be a plugin _is_ a plugin | ||
7. **Tests should output enough data to diagnose a failure, and no more or | ||
less.** | ||
The plugin system is leveraged for anything that does not | ||
absolutely need to be included in the core. | ||
Stack traces pointing at JS internals or the guts of the test framework | ||
itself are not helpful. A test framework is a serious UX challenge, and | ||
should be treated with care. | ||
Basic [TAP](https://testanything.org) generation and flow | ||
control, error handling, config loading, process management and | ||
so on, are all included in the core. But TypeScript support, | ||
mocking, almost all assertion methods, method and property | ||
interception and spying, spawning/forking subtests, creating | ||
fixtures, snapshots, and attaching lifecycle methods (among | ||
others) are all relegated to plugins. | ||
8. **Test coverage should be included.** | ||
This means that features can be switched on or off or extended | ||
very easily. | ||
Running tests with coverage changes the way that you think about your | ||
programs, and provides much deeper insight. Node-tap bundles | ||
[NYC](https://istanbul.js.org/) for this. | ||
### Plugins must be powerful and trivial to write correctly | ||
It _does_ necessarily change the nature of the environment a little bit. | ||
But in this case, it's worth it, and NYC has come a long way towards | ||
maintaining this promise. | ||
The plugin interface is extremely simple. Export a `plugin` | ||
function that returns an object. That's it, that's a plugin. | ||
Coverage _enforcement_ is not on by default, but I strongly encourage | ||
it. You can put `"tap":{"check-coverage":true}` in your package.json, | ||
or pass [`--100`](https://www.node-tap.org/100/) on the command line. | ||
In a future version, it will likely be enabled by default. | ||
Plugins can also export configuration definitions, which are | ||
folded into the set of fields that TAP knows how to parse from | ||
the command line or from your `.taprc` file, or export a `loader` | ||
string, which will be invoked when spawning test processes. | ||
9. **Tests should not require more building than your code.** | ||
### High Signal, Low Noise | ||
Babel and Webpack are lovely and fine. But if your code doesn't require | ||
compilation, then I think your tests shouldn't either. Tap is extremely | ||
[promise-aware](https://www.node-tap.org/promises/). JSX, TypeScript, | ||
Flow, and ES-Modules are | ||
[built-in](https://www.node-tap.org/using-with/) when tests are run by | ||
the tap CLI. | ||
It is important to give a lot of information about test failures, | ||
throws, and so on, so that you can easily jump straight to the | ||
appropriate place in the code to fix the problem. And, it's | ||
usually helpful to see which tests are actually running. | ||
10. **Tests should run as fast as possible, given all the prior | ||
considerations.** | ||
However, a screen full of green checkmarks and `100% Covered!` | ||
isn't very useful. It should be just enough to know what happened | ||
and easily diagnose any problems, and otherwise fairly quiet. | ||
As of version 10, tap supports [parallel | ||
tests](https://www.node-tap.org/parallel/). As of version 13, the test | ||
runner defaults to running the same number of parallel tests as there | ||
are CPUs on the system. | ||
Low information output has been trimmed down as much as possible | ||
from the default reporters. Coverage information is only shown | ||
when it has something relevant to say. TAP tries to show you | ||
exactly what you need to see, and nothing else. Stack traces have | ||
noisy internals trimmed out, so it's easier to see exactly where | ||
in _your_ code the problem happened. Source maps are always | ||
enabled, because you need to know where the actual code is, not | ||
just which built artifact failed. | ||
This makes tests significantly faster in almost every case, on any machine | ||
with multiple cores. | ||
If the default reporter isn't terse enough for your liking, try | ||
`tap -Rterse`. | ||
Software testing should help you build software. It should be a security | ||
blanket and a quality ratchet, giving you the support to undertake massive | ||
refactoring and fix bugs without worrying. It shouldn't be a purification | ||
rite or a hazing ritual. | ||
### Assertions don't throw (but throws are handled nicely) | ||
There are many opinions left off of this list! Reasonable people can | ||
disagree. But if you find yourself nodding along, [maybe tap is for | ||
you](https://www.node-tap.org/basics/). | ||
I frequently write programs that have many hundreds of assertions | ||
based on some list of test cases. If the first failure throws, | ||
then I don't know if I've failed 100 tests or 1, without wrapping | ||
everything in a try-catch. Furthermore, I usually want to see | ||
some kind of output or reporting to verify that each one actually | ||
ran. | ||
Basically, it should be your decision whether you want to throw | ||
or not. The test framework shouldn't force that on you, and | ||
should make either case easy. | ||
### Test reporting should be useful, extensible, and accessible | ||
The [raw test output](https://www.node-tap.org/tap-format/) | ||
is machine-parseable and human-intelligible, a separate component | ||
consumes test output and turns it into a [pretty summarized | ||
report](https://www.node-tap.org/reporting/). This means that | ||
test data can be stored and parsed later, dug into for additional | ||
details, and so on. | ||
Red and green are the conventional colors meaning "removed" and | ||
"added", but they're also exactly the same color for many people. | ||
All of the color choices in the reporter are tested rigorously | ||
against simulators for protanopia, deuteranopia, tritanopia, and | ||
monochromicity. | ||
### Test coverage is always on | ||
Running tests with coverage changes the way that you think | ||
about your programs, and provides much deeper insight. | ||
TAP uses V8's internal coverage mechanisms directly, and verifies | ||
that tests provide 100% coverage of all lines, branches, | ||
functions, and statements in the system under test. It uses | ||
[C8](https://npmjs.com/c8) to analyze the V8 coverage data and | ||
generate coverage reports. | ||
Missing coverage means that you are relying on untested code, so | ||
this is treated as a test failure. If you have some bit of code | ||
which is actually _impossible_ to test for some reason, wrap it | ||
in the appropriate `/* c8 ignore start */` / `/* c8 ignore end | ||
*/` comments to exclude those lines from the analysis. But think | ||
carefully about whether that's really the case. Usually, if you | ||
have to coverage-ignore something, it's a sign that you need to | ||
either delete that code or refactor it into a more easily tested | ||
module. | ||
--- | ||
Software testing should help you build software. It should be a | ||
security blanket and a quality ratchet, giving you the support to | ||
undertake massive refactoring and fix bugs without worrying. It | ||
shouldn't be a purification rite or a hazing ritual. It should be | ||
fun, because making stuff is fun, and it helps you make better | ||
stuff. | ||
There are many opinions left off of this list! Reasonable people | ||
can disagree. But if you find yourself nodding along, [maybe tap | ||
is for you](https://www.node-tap.org/basics/). |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Network access
Supply chain riskThis module accesses the network.
Found 5 instances in 1 package
Shell access
Supply chain riskThis module accesses the system shell. Accessing the system shell increases the risk of executing arbitrary code.
Found 1 instance in 1 package
Uses eval
Supply chain riskPackage uses eval() which is a dangerous function. This prevents the code from running in certain environments and increases the risk that the code may contain exploits or malicious behavior.
Found 1 instance in 1 package
Debug access
Supply chain riskUses debug, reflection and dynamic code execution features.
Found 4 instances in 1 package
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
Environment variable access
Supply chain riskPackage accesses environment variables, which may be a sign of credential stuffing or data theft.
Found 38 instances in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 3 instances in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
Found 2 instances in 1 package
Mixed license
License(Experimental) Package contains multiple licenses.
Found 1 instance in 1 package
No repository
Supply chain riskPackage does not have a linked source code repository. Without this field, a package will have no reference to the location of the source code use to generate the package.
Found 1 instance in 1 package
Non-permissive License
License(Experimental) A license not known to be considered permissive was found.
Found 1 instance in 1 package
19
0
0
100
0
213
0
0
Yes
82056
33
574
+ Added@tapjs/after@1.1.11
+ Added@tapjs/after-each@1.1.11
+ Added@tapjs/asserts@1.1.11
+ Added@tapjs/before@1.1.11
+ Added@tapjs/before-each@1.1.11
+ Added@tapjs/core@1.4.0
+ Added@tapjs/filter@1.2.11
+ Added@tapjs/fixture@1.2.11
+ Added@tapjs/intercept@1.2.11
+ Added@tapjs/mock@1.2.9
+ Added@tapjs/node-serialize@1.2.0
+ Added@tapjs/run@1.4.7
+ Added@tapjs/snapshot@1.2.11
+ Added@tapjs/spawn@1.1.11
+ Added@tapjs/stdin@1.1.11
+ Added@tapjs/test@1.3.11
+ Added@tapjs/typescript@1.3.0
+ Added@tapjs/worker@1.1.11
+ Addedresolve-import@^1.4.4
+ Added@alcalzone/ansi-tokenize@0.1.3(transitive)
+ Added@base2/pretty-print-object@1.0.1(transitive)
+ Added@bcoe/v8-coverage@0.2.3(transitive)
+ Added@isaacs/cliui@8.0.2(transitive)
+ Added@isaacs/ts-node-temp-fork-for-pr-2009@10.9.7(transitive)
+ Added@npmcli/agent@2.2.2(transitive)
+ Added@npmcli/fs@3.1.1(transitive)
+ Added@npmcli/git@5.0.8(transitive)
+ Added@npmcli/installed-package-contents@2.1.0(transitive)
+ Added@npmcli/node-gyp@3.0.0(transitive)
+ Added@npmcli/package-json@5.2.1(transitive)
+ Added@npmcli/promise-spawn@7.0.2(transitive)
+ Added@npmcli/redact@1.1.0(transitive)
+ Added@npmcli/run-script@7.0.4(transitive)
+ Added@pkgjs/parseargs@0.11.0(transitive)
+ Added@sigstore/bundle@2.3.2(transitive)
+ Added@sigstore/core@1.1.0(transitive)
+ Added@sigstore/protobuf-specs@0.3.2(transitive)
+ Added@sigstore/sign@2.3.2(transitive)
+ Added@sigstore/tuf@2.3.4(transitive)
+ Added@sigstore/verify@1.2.1(transitive)
+ Added@tapjs/after@1.1.11(transitive)
+ Added@tapjs/after-each@1.1.11(transitive)
+ Added@tapjs/asserts@1.1.11(transitive)
+ Added@tapjs/before@1.1.11(transitive)
+ Added@tapjs/before-each@1.1.11(transitive)
+ Added@tapjs/config@2.4.7(transitive)
+ Added@tapjs/core@1.4.0(transitive)
+ Added@tapjs/error-serdes@1.2.0(transitive)
+ Added@tapjs/filter@1.2.11(transitive)
+ Added@tapjs/fixture@1.2.11(transitive)
+ Added@tapjs/intercept@1.2.11(transitive)
+ Added@tapjs/mock@1.2.9(transitive)
+ Added@tapjs/node-serialize@1.2.0(transitive)
+ Added@tapjs/processinfo@3.1.8(transitive)
+ Added@tapjs/reporter@1.3.7(transitive)
+ Added@tapjs/run@1.4.7(transitive)
+ Added@tapjs/snapshot@1.2.11(transitive)
+ Added@tapjs/spawn@1.1.11(transitive)
+ Added@tapjs/stack@1.2.5(transitive)
+ Added@tapjs/stdin@1.1.11(transitive)
+ Added@tapjs/test@1.3.11(transitive)
+ Added@tapjs/typescript@1.3.0(transitive)
+ Added@tapjs/worker@1.1.11(transitive)
+ Added@tsconfig/node14@14.1.2(transitive)
+ Added@tsconfig/node16@16.1.3(transitive)
+ Added@tsconfig/node18@18.2.4(transitive)
+ Added@tsconfig/node20@20.1.4(transitive)
+ Added@tufjs/canonical-json@2.0.0(transitive)
+ Added@tufjs/models@2.0.1(transitive)
+ Added@types/istanbul-lib-coverage@2.0.6(transitive)
+ Addedabbrev@2.0.0(transitive)
+ Addedagent-base@7.1.1(transitive)
+ Addedansi-escapes@6.2.1(transitive)
+ Addedansi-regex@6.1.0(transitive)
+ Addedansi-styles@6.2.1(transitive)
+ Addedasync-hook-domain@4.0.1(transitive)
+ Addedauto-bind@5.0.1(transitive)
+ Addedbrace-expansion@2.0.1(transitive)
+ Addedc8@8.0.1(transitive)
+ Addedcacache@18.0.4(transitive)
+ Addedchalk@5.3.0(transitive)
+ Addedchownr@2.0.0(transitive)
+ Addedci-info@3.9.0(transitive)
+ Addedcli-boxes@3.0.0(transitive)
+ Addedcli-cursor@4.0.0(transitive)
+ Addedcli-truncate@3.1.0(transitive)
+ Addedcliui@8.0.1(transitive)
+ Addedcode-excerpt@4.0.0(transitive)
+ Addedconvert-to-spaces@2.0.1(transitive)
+ Addeddiff@5.2.0(transitive)
+ Addedeastasianwidth@0.2.0(transitive)
+ Addedemoji-regex@9.2.2(transitive)
+ Addedencoding@0.1.13(transitive)
+ Addedenv-paths@2.2.1(transitive)
+ Addederr-code@2.0.3(transitive)
+ Addedevents-to-array@2.0.3(transitive)
+ Addedexponential-backoff@3.1.1(transitive)
+ Addedfind-up@5.0.0(transitive)
+ Addedforeground-child@3.3.0(transitive)
+ Addedfs-minipass@2.1.03.0.3(transitive)
+ Addedfunction-loop@4.0.0(transitive)
+ Addedglob@10.4.5(transitive)
+ Addedhosted-git-info@7.0.2(transitive)
+ Addedhttp-cache-semantics@4.1.1(transitive)
+ Addedhttp-proxy-agent@7.0.2(transitive)
+ Addedhttps-proxy-agent@7.0.5(transitive)
+ Addediconv-lite@0.6.3(transitive)
+ Addedignore-walk@6.0.5(transitive)
+ Addedindent-string@5.0.0(transitive)
+ Addedini@4.1.3(transitive)
+ Addedink@4.4.1(transitive)
+ Addedip-address@9.0.5(transitive)
+ Addedis-actual-promise@1.0.2(transitive)
+ Addedis-ci@3.0.1(transitive)
+ Addedis-fullwidth-code-point@4.0.0(transitive)
+ Addedis-lambda@1.0.1(transitive)
+ Addedis-lower-case@2.0.2(transitive)
+ Addedis-plain-object@5.0.0(transitive)
+ Addedis-upper-case@2.0.2(transitive)
+ Addedisexe@3.1.1(transitive)
+ Addedjackspeak@2.3.63.4.3(transitive)
+ Addedjsbn@1.1.0(transitive)
+ Addedjson-parse-even-better-errors@3.0.2(transitive)
+ Addedjsonparse@1.3.1(transitive)
+ Addedlocate-path@6.0.0(transitive)
+ Addedlodash@4.17.21(transitive)
+ Addedloose-envify@1.4.0(transitive)
+ Addedlru-cache@10.4.3(transitive)
+ Addedmake-fetch-happen@13.0.1(transitive)
+ Addedmimic-fn@2.1.0(transitive)
+ Addedminimatch@9.0.5(transitive)
+ Addedminipass@5.0.07.1.2(transitive)
+ Addedminipass-collect@2.0.1(transitive)
+ Addedminipass-fetch@3.0.5(transitive)
+ Addedminipass-flush@1.0.5(transitive)
+ Addedminipass-json-stream@1.0.2(transitive)
+ Addedminipass-pipeline@1.2.4(transitive)
+ Addedminipass-sized@1.0.3(transitive)
+ Addedminizlib@2.1.2(transitive)
+ Addedmkdirp@3.0.1(transitive)
+ Addednegotiator@0.6.3(transitive)
+ Addednode-gyp@10.2.0(transitive)
+ Addednopt@7.2.1(transitive)
+ Addednormalize-package-data@6.0.2(transitive)
+ Addednpm-bundled@3.0.1(transitive)
+ Addednpm-install-checks@6.3.0(transitive)
+ Addednpm-normalize-package-bin@3.0.1(transitive)
+ Addednpm-package-arg@11.0.3(transitive)
+ Addednpm-packlist@8.0.2(transitive)
+ Addednpm-pick-manifest@9.1.0(transitive)
+ Addednpm-registry-fetch@16.2.1(transitive)
+ Addedonetime@5.1.2(transitive)
+ Addedp-limit@3.1.0(transitive)
+ Addedp-locate@5.0.0(transitive)
+ Addedp-map@4.0.0(transitive)
+ Addedpackage-json-from-dist@1.0.0(transitive)
+ Addedpacote@17.0.7(transitive)
+ Addedpatch-console@2.0.0(transitive)
+ Addedpath-scurry@1.11.1(transitive)
+ Addedpirates@4.0.6(transitive)
+ Addedpolite-json@4.0.15.0.0(transitive)
+ Addedprismjs@1.29.0(transitive)
+ Addedprismjs-terminal@1.2.3(transitive)
+ Addedproc-log@4.2.0(transitive)
+ Addedpromise-inflight@1.0.1(transitive)
+ Addedpromise-retry@2.0.1(transitive)
+ Addedreact@18.3.1(transitive)
+ Addedreact-dom@18.3.1(transitive)
+ Addedreact-element-to-jsx-string@15.0.0(transitive)
+ Addedreact-is@18.1.0(transitive)
+ Addedreact-reconciler@0.29.2(transitive)
+ Addedread-package-json@7.0.1(transitive)
+ Addedread-package-json-fast@3.0.2(transitive)
+ Addedresolve-import@1.4.6(transitive)
+ Addedrestore-cursor@4.0.0(transitive)
+ Addedretry@0.12.0(transitive)
+ Addedrimraf@5.0.10(transitive)
+ Addedscheduler@0.23.2(transitive)
+ Addedsignal-exit@4.1.0(transitive)
+ Addedsigstore@2.3.1(transitive)
+ Addedslice-ansi@5.0.06.0.0(transitive)
+ Addedsmart-buffer@4.2.0(transitive)
+ Addedsocks@2.8.3(transitive)
+ Addedsocks-proxy-agent@8.0.4(transitive)
+ Addedspdx-correct@3.2.0(transitive)
+ Addedspdx-exceptions@2.5.0(transitive)
+ Addedspdx-expression-parse@3.0.1(transitive)
+ Addedspdx-license-ids@3.0.20(transitive)
+ Addedsprintf-js@1.1.3(transitive)
+ Addedssri@10.0.6(transitive)
+ Addedstring-length@6.0.0(transitive)
+ Addedstring-width@5.1.2(transitive)
+ Addedstrip-ansi@7.1.0(transitive)
+ Addedsync-content@1.0.2(transitive)
+ Addedtap-parser@15.3.0(transitive)
+ Addedtap-yaml@2.2.0(transitive)
+ Addedtar@6.2.1(transitive)
+ Addedtcompare@6.4.3(transitive)
+ Addedtrivial-deferred@2.0.0(transitive)
+ Addedtshy@1.18.0(transitive)
+ Addedtslib@2.7.0(transitive)
+ Addedtuf-js@2.2.1(transitive)
+ Addedtype-fest@0.12.0(transitive)
+ Addedtypescript@5.2.2(transitive)
+ Addedunique-filename@3.0.0(transitive)
+ Addedunique-slug@4.0.0(transitive)
+ Addedv8-to-istanbul@9.3.0(transitive)
+ Addedvalidate-npm-package-license@3.0.4(transitive)
+ Addedvalidate-npm-package-name@5.0.1(transitive)
+ Addedwalk-up-path@3.0.1(transitive)
+ Addedwhich@4.0.0(transitive)
+ Addedwidest-line@4.0.1(transitive)
+ Addedwrap-ansi@8.1.0(transitive)
+ Addedws@8.18.0(transitive)
+ Addedy18n@5.0.8(transitive)
+ Addedyaml@2.5.1(transitive)
+ Addedyaml-types@0.3.0(transitive)
+ Addedyargs@17.7.2(transitive)
+ Addedyargs-parser@21.1.1(transitive)
+ Addedyocto-queue@0.1.0(transitive)
+ Addedyoga-wasm-web@0.3.3(transitive)
- Removed@isaacs/import-jsx@^4.0.1
- Removed@types/react@^17.0.52
- Removedchokidar@^3.3.0
- Removedfindit@^2.0.0
- Removedforeground-child@^2.0.0
- Removedfs-exists-cached@^1.0.0
- Removedglob@^7.2.3
- Removedink@^3.2.0
- Removedisexe@^2.0.0
- Removedistanbul-lib-processinfo@^2.0.3
- Removedjackspeak@^1.4.2
- Removedlibtap@^1.4.0
- Removedminipass@^3.3.4
- Removedmkdirp@^1.0.4
- Removednyc@^15.1.0
- Removedopener@^1.5.1
- Removedreact@^17.0.2
- Removedrimraf@^3.0.0
- Removedsignal-exit@^3.0.6
- Removedsource-map-support@^0.5.16
- Removedtap-mocha-reporter@^5.0.3
- Removedtap-parser@^11.0.2
- Removedtap-yaml@^1.0.2
- Removedtcompare@^5.0.7
- Removedtreport@^3.0.4
- Removedwhich@^2.0.2
- Removed@ampproject/remapping@2.3.0(transitive)
- Removed@babel/code-frame@7.24.7(transitive)
- Removed@babel/compat-data@7.25.4(transitive)
- Removed@babel/core@7.25.2(transitive)
- Removed@babel/generator@7.25.6(transitive)
- Removed@babel/helper-compilation-targets@7.25.2(transitive)
- Removed@babel/helper-module-imports@7.24.7(transitive)
- Removed@babel/helper-module-transforms@7.25.2(transitive)
- Removed@babel/helper-simple-access@7.24.7(transitive)
- Removed@babel/helper-string-parser@7.24.8(transitive)
- Removed@babel/helper-validator-identifier@7.24.7(transitive)
- Removed@babel/helper-validator-option@7.24.8(transitive)
- Removed@babel/helpers@7.25.6(transitive)
- Removed@babel/highlight@7.24.7(transitive)
- Removed@babel/parser@7.25.6(transitive)
- Removed@babel/template@7.25.0(transitive)
- Removed@babel/traverse@7.25.6(transitive)
- Removed@babel/types@7.25.6(transitive)
- Removed@istanbuljs/load-nyc-config@1.1.0(transitive)
- Removed@jridgewell/gen-mapping@0.3.5(transitive)
- Removed@jridgewell/set-array@1.2.1(transitive)
- Removed@tsconfig/node10@1.0.11(transitive)
- Removed@tsconfig/node12@1.0.11(transitive)
- Removed@tsconfig/node14@1.0.3(transitive)
- Removed@tsconfig/node16@1.0.4(transitive)
- Removedajv@6.12.6(transitive)
- Removedansi-styles@3.2.1(transitive)
- Removedappend-transform@2.0.0(transitive)
- Removedarchy@1.0.0(transitive)
- Removedargparse@1.0.10(transitive)
- Removedasn1@0.2.6(transitive)
- Removedassert-plus@1.0.0(transitive)
- Removedasync-hook-domain@2.0.4(transitive)
- Removedasynckit@0.4.0(transitive)
- Removedaws-sign2@0.7.0(transitive)
- Removedaws4@1.13.2(transitive)
- Removedbcrypt-pbkdf@1.0.2(transitive)
- Removedbind-obj-methods@3.0.0(transitive)
- Removedbrowserslist@4.23.3(transitive)
- Removedbuffer-from@1.1.2(transitive)
- Removedcaching-transform@4.0.0(transitive)
- Removedcamelcase@5.3.1(transitive)
- Removedcaniuse-lite@1.0.30001662(transitive)
- Removedcaseless@0.12.0(transitive)
- Removedchalk@2.4.2(transitive)
- Removedcliui@6.0.07.0.4(transitive)
- Removedcolor-convert@1.9.3(transitive)
- Removedcolor-name@1.1.3(transitive)
- Removedcolor-support@1.1.3(transitive)
- Removedcombined-stream@1.0.8(transitive)
- Removedcommondir@1.0.1(transitive)
- Removedconvert-source-map@1.9.0(transitive)
- Removedcore-util-is@1.0.2(transitive)
- Removedcoveralls@3.1.1(transitive)
- Removedcreate-require@1.1.1(transitive)
- Removeddashdash@1.14.1(transitive)
- Removeddecamelize@1.2.0(transitive)
- Removeddefault-require-extensions@3.0.1(transitive)
- Removeddelayed-stream@1.0.0(transitive)
- Removedecc-jsbn@0.1.2(transitive)
- Removedelectron-to-chromium@1.5.26(transitive)
- Removedes6-error@4.1.1(transitive)
- Removedescape-string-regexp@1.0.5(transitive)
- Removedesprima@4.0.1(transitive)
- Removedevents-to-array@1.1.2(transitive)
- Removedextend@3.0.2(transitive)
- Removedextsprintf@1.3.0(transitive)
- Removedfast-deep-equal@3.1.3(transitive)
- Removedfast-json-stable-stringify@2.1.0(transitive)
- Removedfind-cache-dir@3.3.2(transitive)
- Removedfind-up@4.1.0(transitive)
- Removedfindit@2.0.0(transitive)
- Removedflow-remove-types@2.246.0(transitive)
- Removedforever-agent@0.6.1(transitive)
- Removedform-data@2.3.3(transitive)
- Removedfs-exists-cached@1.0.0(transitive)
- Removedfunction-loop@2.0.1(transitive)
- Removedgensync@1.0.0-beta.2(transitive)
- Removedget-package-type@0.1.0(transitive)
- Removedgetpass@0.1.7(transitive)
- Removedglobals@11.12.0(transitive)
- Removedhar-schema@2.0.0(transitive)
- Removedhar-validator@5.1.5(transitive)
- Removedhas-flag@3.0.0(transitive)
- Removedhasha@5.2.2(transitive)
- Removedhermes-estree@0.23.1(transitive)
- Removedhermes-parser@0.23.1(transitive)
- Removedhttp-signature@1.2.0(transitive)
- Removedis-stream@2.0.1(transitive)
- Removedis-typedarray@1.0.0(transitive)
- Removedis-windows@1.0.2(transitive)
- Removedisstream@0.1.2(transitive)
- Removedistanbul-lib-hook@3.0.0(transitive)
- Removedistanbul-lib-instrument@4.0.3(transitive)
- Removedistanbul-lib-processinfo@2.0.3(transitive)
- Removedistanbul-lib-source-maps@4.0.1(transitive)
- Removedjackspeak@1.4.2(transitive)
- Removedjs-yaml@3.14.1(transitive)
- Removedjsbn@0.1.1(transitive)
- Removedjsesc@2.5.2(transitive)
- Removedjson-schema@0.4.0(transitive)
- Removedjson-schema-traverse@0.4.1(transitive)
- Removedjson-stringify-safe@5.0.1(transitive)
- Removedjson5@2.2.3(transitive)
- Removedjsprim@1.4.2(transitive)
- Removedlcov-parse@1.0.0(transitive)
- Removedlibtap@1.4.1(transitive)
- Removedlocate-path@5.0.0(transitive)
- Removedlodash.flattendeep@4.4.0(transitive)
- Removedlog-driver@1.2.7(transitive)
- Removedlru-cache@5.1.1(transitive)
- Removedmake-dir@3.1.0(transitive)
- Removedmime-db@1.52.0(transitive)
- Removedmime-types@2.1.35(transitive)
- Removedminimist@1.2.8(transitive)
- Removednode-modules-regexp@1.0.0(transitive)
- Removednode-preload@0.2.1(transitive)
- Removednode-releases@2.0.18(transitive)
- Removednyc@15.1.0(transitive)
- Removedoauth-sign@0.9.0(transitive)
- Removedown-or@1.0.0(transitive)
- Removedown-or-env@1.0.2(transitive)
- Removedp-limit@2.3.0(transitive)
- Removedp-locate@4.1.0(transitive)
- Removedp-map@3.0.0(transitive)
- Removedp-try@2.2.0(transitive)
- Removedpackage-hash@4.0.0(transitive)
- Removedperformance-now@2.1.0(transitive)
- Removedpicocolors@1.1.0(transitive)
- Removedpirates@3.0.2(transitive)
- Removedpkg-dir@4.2.0(transitive)
- Removedpsl@1.9.0(transitive)
- Removedpunycode@2.3.1(transitive)
- Removedqs@6.5.3(transitive)
- Removedrelease-zalgo@1.0.0(transitive)
- Removedrequest@2.88.2(transitive)
- Removedrequire-main-filename@2.0.0(transitive)
- Removedresolve-from@5.0.0(transitive)
- Removedsafe-buffer@5.2.1(transitive)
- Removedsemver@6.3.1(transitive)
- Removedset-blocking@2.0.0(transitive)
- Removedsource-map@0.6.1(transitive)
- Removedsource-map-support@0.5.21(transitive)
- Removedspawn-wrap@2.0.0(transitive)
- Removedsprintf-js@1.0.3(transitive)
- Removedsshpk@1.18.0(transitive)
- Removedstrip-bom@4.0.0(transitive)
- Removedsupports-color@5.5.0(transitive)
- Removedtap-mocha-reporter@5.0.4(transitive)
- Removedtap-parser@11.0.2(transitive)
- Removedtap-yaml@1.0.2(transitive)
- Removedtcompare@5.0.7(transitive)
- Removedto-fast-properties@2.0.0(transitive)
- Removedtough-cookie@2.5.0(transitive)
- Removedtrivial-deferred@1.1.2(transitive)
- Removedts-node@10.9.2(transitive)
- Removedtunnel-agent@0.6.0(transitive)
- Removedtweetnacl@0.14.5(transitive)
- Removedtype-fest@0.8.1(transitive)
- Removedtypedarray-to-buffer@3.1.5(transitive)
- Removedtypescript@5.6.2(transitive)
- Removedunicode-length@2.1.0(transitive)
- Removedupdate-browserslist-db@1.1.0(transitive)
- Removeduri-js@4.4.1(transitive)
- Removeduuid@3.4.0(transitive)
- Removedverror@1.10.0(transitive)
- Removedvlq@0.2.3(transitive)
- Removedwhich-module@2.0.1(transitive)
- Removedwrap-ansi@6.2.0(transitive)
- Removedwrite-file-atomic@3.0.3(transitive)
- Removedy18n@4.0.3(transitive)
- Removedyallist@3.1.1(transitive)
- Removedyaml@1.10.2(transitive)
- Removedyargs@15.4.1(transitive)
- Removedyargs-parser@18.1.3(transitive)
- Removedyn@3.1.1(transitive)