Note: this is a fork of https://github.com/mxweaver/lock-diff, but it operates on Git commit ranges rather than on files.
Install diff-lockfiles globally:
npm install -g diff-lockfilesTry it out:
diff-lockfiles --color origin/main dependabot/branch
diff-lockfiles --color HEAD~1 HEAD
diff-lockfiles --help
Usage: diff-lockfiles [options] <from> <to>
diff all changed package-lock.json files in repo
Options:
-V, --version output the version number
-f, --format <format> changes the output format (default: "table")
-m, --max-buffer maximum read buffer size
-c, --color colorizes certain output formats (default: false)
-s, --shallow only include direct dependencies of the project (default: false)
-d, --fail-on-downgrade exit 2 if any package version is decremented (default: false)
-h, --help display help for command
By default diff-lockfiles always exits 0 on success, regardless of what it
finds. Pass --fail-on-downgrade to turn a downgrade into a distinct exit code
so a script or CI job can gate on it:
| Exit code | Meaning |
|---|---|
0 |
Success, and no package version was decremented |
2 |
At least one package version was decremented |
1 |
Error (e.g. an invalid git ref or unreadable lockfile) |
Output is unchanged â the downgrade is already visible in the diff â so this flag only adds the exit code. A downgrade means both the old and new values are valid semver and the new one is lower; added, removed, and non-semver entries never count.
This is useful for auto-merging Dependabot PRs only when the lockfile moves strictly forward. When PR A is merged before PR B, B's lockfile can show a mix of upgrades and downgrades; catch that and ask Dependabot to rebase instead:
diff-lockfiles origin/main "$PR_BRANCH" --fail-on-downgrade
case $? in
0) gh pr merge --auto "$PR" ;;
2) gh pr comment "$PR" --body "@dependabot rebase" ;;
*) echo "diff-lockfiles failed" >&2; exit 1 ;;
esac$ diff-lockfiles HEAD~1 HEAD
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ€ââââââââââââââ€ââââââââââââââ
â package-lock.json â â â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â package â old version â new version â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/@jest/console â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/@jest/core â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/@jest/environment â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/@jest/expect â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/@jest/expect-utils â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/@jest/fake-timers â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/@jest/globals â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/@jest/reporters â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/@jest/schemas â 29.6.0 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/@jest/source-map â 29.6.0 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/@jest/test-result â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/@jest/test-sequencer â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/@jest/transform â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/@jest/types â 29.6.1 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/@types/babel__core â 7.20.0 â 7.20.1 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/@types/babel__traverse â 7.18.2 â 7.20.1 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/babel-jest â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/babel-plugin-jest-hoist â 29.5.0 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/babel-preset-jest â 29.5.0 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/dedent â 1.3.0 â 1.5.1 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/diff-sequences â 29.4.3 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/expect â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/fsevents â 2.3.2 â 2.3.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/is-core-module â 2.12.1 â 2.13.0 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-changed-files â 29.5.0 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-circus â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-cli â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-config â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-diff â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-docblock â 29.4.3 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-each â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-environment-node â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-get-type â 29.4.3 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-haste-map â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-leak-detector â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-matcher-utils â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-message-util â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-mock â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-regex-util â 29.4.3 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-resolve â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-resolve-dependencies â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-runner â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-runtime â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-snapshot â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-util â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-validate â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-watcher â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/jest-worker â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/pretty-format â 29.6.2 â 29.6.3 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/resolve â 1.22.2 â 1.22.4 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââŒââââââââââââââŒââââââââââââââ¢
â node_modules/@jest/reporters/node_modules/istanbul-lib-instrument â null â 6.0.0 â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ§ââââââââââââââ§ââââââââââââââ
diff-lockfiles --format json HEAD~1 HEAD
{
"node_modules/@jest/console": [
"29.6.2",
"29.6.3"
],
"node_modules/@jest/core": [
"29.6.2",
"29.6.3"
],
"node_modules/@jest/environment": [
"29.6.2",
"29.6.3"
],
"node_modules/@jest/expect": [
"29.6.2",
"29.6.3"
],
"node_modules/@jest/expect-utils": [
"29.6.2",
"29.6.3"
],
"node_modules/@jest/fake-timers": [
"29.6.2",
"29.6.3"
],
"node_modules/@jest/globals": [
"29.6.2",
"29.6.3"
],
"node_modules/@jest/reporters": [
"29.6.2",
"29.6.3"
],
"node_modules/@jest/schemas": [
"29.6.0",
"29.6.3"
],
"node_modules/@jest/source-map": [
"29.6.0",
"29.6.3"
],
"node_modules/@jest/test-result": [
"29.6.2",
"29.6.3"
],
"node_modules/@jest/test-sequencer": [
"29.6.2",
"29.6.3"
],
"node_modules/@jest/transform": [
"29.6.2",
"29.6.3"
],
"node_modules/@jest/types": [
"29.6.1",
"29.6.3"
],
"node_modules/@types/babel__core": [
"7.20.0",
"7.20.1"
],
"node_modules/@types/babel__traverse": [
"7.18.2",
"7.20.1"
],
"node_modules/babel-jest": [
"29.6.2",
"29.6.3"
],
"node_modules/babel-plugin-jest-hoist": [
"29.5.0",
"29.6.3"
],
"node_modules/babel-preset-jest": [
"29.5.0",
"29.6.3"
],
"node_modules/dedent": [
"1.3.0",
"1.5.1"
],
"node_modules/diff-sequences": [
"29.4.3",
"29.6.3"
],
"node_modules/expect": [
"29.6.2",
"29.6.3"
],
"node_modules/fsevents": [
"2.3.2",
"2.3.3"
],
"node_modules/is-core-module": [
"2.12.1",
"2.13.0"
],
"node_modules/jest": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-changed-files": [
"29.5.0",
"29.6.3"
],
"node_modules/jest-circus": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-cli": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-config": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-diff": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-docblock": [
"29.4.3",
"29.6.3"
],
"node_modules/jest-each": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-environment-node": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-get-type": [
"29.4.3",
"29.6.3"
],
"node_modules/jest-haste-map": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-leak-detector": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-matcher-utils": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-message-util": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-mock": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-regex-util": [
"29.4.3",
"29.6.3"
],
"node_modules/jest-resolve": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-resolve-dependencies": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-runner": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-runtime": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-snapshot": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-util": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-validate": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-watcher": [
"29.6.2",
"29.6.3"
],
"node_modules/jest-worker": [
"29.6.2",
"29.6.3"
],
"node_modules/pretty-format": [
"29.6.2",
"29.6.3"
],
"node_modules/resolve": [
"1.22.2",
"1.22.4"
],
"node_modules/@jest/reporters/node_modules/istanbul-lib-instrument": [
null,
"6.0.0"
]
}$ diff-lockfiles --format text HEAD~1 HEAD
node_modules/@jest/console 29.6.2 -> 29.6.3
node_modules/@jest/core 29.6.2 -> 29.6.3
node_modules/@jest/environment 29.6.2 -> 29.6.3
node_modules/@jest/expect 29.6.2 -> 29.6.3
node_modules/@jest/expect-utils 29.6.2 -> 29.6.3
node_modules/@jest/fake-timers 29.6.2 -> 29.6.3
node_modules/@jest/globals 29.6.2 -> 29.6.3
node_modules/@jest/reporters 29.6.2 -> 29.6.3
node_modules/@jest/schemas 29.6.0 -> 29.6.3
node_modules/@jest/source-map 29.6.0 -> 29.6.3
node_modules/@jest/test-result 29.6.2 -> 29.6.3
node_modules/@jest/test-sequencer 29.6.2 -> 29.6.3
node_modules/@jest/transform 29.6.2 -> 29.6.3
node_modules/@jest/types 29.6.1 -> 29.6.3
node_modules/@types/babel__core 7.20.0 -> 7.20.1
node_modules/@types/babel__traverse 7.18.2 -> 7.20.1
node_modules/babel-jest 29.6.2 -> 29.6.3
node_modules/babel-plugin-jest-hoist 29.5.0 -> 29.6.3
node_modules/babel-preset-jest 29.5.0 -> 29.6.3
node_modules/dedent 1.3.0 -> 1.5.1
node_modules/diff-sequences 29.4.3 -> 29.6.3
node_modules/expect 29.6.2 -> 29.6.3
node_modules/fsevents 2.3.2 -> 2.3.3
node_modules/is-core-module 2.12.1 -> 2.13.0
node_modules/jest 29.6.2 -> 29.6.3
node_modules/jest-changed-files 29.5.0 -> 29.6.3
node_modules/jest-circus 29.6.2 -> 29.6.3
node_modules/jest-cli 29.6.2 -> 29.6.3
node_modules/jest-config 29.6.2 -> 29.6.3
node_modules/jest-diff 29.6.2 -> 29.6.3
node_modules/jest-docblock 29.4.3 -> 29.6.3
node_modules/jest-each 29.6.2 -> 29.6.3
node_modules/jest-environment-node 29.6.2 -> 29.6.3
node_modules/jest-get-type 29.4.3 -> 29.6.3
node_modules/jest-haste-map 29.6.2 -> 29.6.3
node_modules/jest-leak-detector 29.6.2 -> 29.6.3
node_modules/jest-matcher-utils 29.6.2 -> 29.6.3
node_modules/jest-message-util 29.6.2 -> 29.6.3
node_modules/jest-mock 29.6.2 -> 29.6.3
node_modules/jest-regex-util 29.4.3 -> 29.6.3
node_modules/jest-resolve 29.6.2 -> 29.6.3
node_modules/jest-resolve-dependencies 29.6.2 -> 29.6.3
node_modules/jest-runner 29.6.2 -> 29.6.3
node_modules/jest-runtime 29.6.2 -> 29.6.3
node_modules/jest-snapshot 29.6.2 -> 29.6.3
node_modules/jest-util 29.6.2 -> 29.6.3
node_modules/jest-validate 29.6.2 -> 29.6.3
node_modules/jest-watcher 29.6.2 -> 29.6.3
node_modules/jest-worker 29.6.2 -> 29.6.3
node_modules/pretty-format 29.6.2 -> 29.6.3
node_modules/resolve 1.22.2 -> 1.22.4
node_modules/@jest/reporters/node_modules/istanbul-lib-instrument added
$ diff-lockfiles --format markdown HEAD~1 HEAD| package | old version | new version |
|---|---|---|
| node_modules/@jest/console | 29.6.2 | 29.6.3 |
| node_modules/@jest/core | 29.6.2 | 29.6.3 |
| node_modules/@jest/environment | 29.6.2 | 29.6.3 |
| node_modules/@jest/expect | 29.6.2 | 29.6.3 |
| node_modules/@jest/expect-utils | 29.6.2 | 29.6.3 |
| node_modules/@jest/fake-timers | 29.6.2 | 29.6.3 |
| node_modules/@jest/globals | 29.6.2 | 29.6.3 |
| node_modules/@jest/reporters | 29.6.2 | 29.6.3 |
| node_modules/@jest/schemas | 29.6.0 | 29.6.3 |
| node_modules/@jest/source-map | 29.6.0 | 29.6.3 |
| node_modules/@jest/test-result | 29.6.2 | 29.6.3 |
| node_modules/@jest/test-sequencer | 29.6.2 | 29.6.3 |
| node_modules/@jest/transform | 29.6.2 | 29.6.3 |
| node_modules/@jest/types | 29.6.1 | 29.6.3 |
| node_modules/@types/babel__core | 7.20.0 | 7.20.1 |
| node_modules/@types/babel__traverse | 7.18.2 | 7.20.1 |
| node_modules/babel-jest | 29.6.2 | 29.6.3 |
| node_modules/babel-plugin-jest-hoist | 29.5.0 | 29.6.3 |
| node_modules/babel-preset-jest | 29.5.0 | 29.6.3 |
| node_modules/dedent | 1.3.0 | 1.5.1 |
| node_modules/diff-sequences | 29.4.3 | 29.6.3 |
| node_modules/expect | 29.6.2 | 29.6.3 |
| node_modules/fsevents | 2.3.2 | 2.3.3 |
| node_modules/is-core-module | 2.12.1 | 2.13.0 |
| node_modules/jest | 29.6.2 | 29.6.3 |
| node_modules/jest-changed-files | 29.5.0 | 29.6.3 |
| node_modules/jest-circus | 29.6.2 | 29.6.3 |
| node_modules/jest-cli | 29.6.2 | 29.6.3 |
| node_modules/jest-config | 29.6.2 | 29.6.3 |
| node_modules/jest-diff | 29.6.2 | 29.6.3 |
| node_modules/jest-docblock | 29.4.3 | 29.6.3 |
| node_modules/jest-each | 29.6.2 | 29.6.3 |
| node_modules/jest-environment-node | 29.6.2 | 29.6.3 |
| node_modules/jest-get-type | 29.4.3 | 29.6.3 |
| node_modules/jest-haste-map | 29.6.2 | 29.6.3 |
| node_modules/jest-leak-detector | 29.6.2 | 29.6.3 |
| node_modules/jest-matcher-utils | 29.6.2 | 29.6.3 |
| node_modules/jest-message-util | 29.6.2 | 29.6.3 |
| node_modules/jest-mock | 29.6.2 | 29.6.3 |
| node_modules/jest-regex-util | 29.4.3 | 29.6.3 |
| node_modules/jest-resolve | 29.6.2 | 29.6.3 |
| node_modules/jest-resolve-dependencies | 29.6.2 | 29.6.3 |
| node_modules/jest-runner | 29.6.2 | 29.6.3 |
| node_modules/jest-runtime | 29.6.2 | 29.6.3 |
| node_modules/jest-snapshot | 29.6.2 | 29.6.3 |
| node_modules/jest-util | 29.6.2 | 29.6.3 |
| node_modules/jest-validate | 29.6.2 | 29.6.3 |
| node_modules/jest-watcher | 29.6.2 | 29.6.3 |
| node_modules/jest-worker | 29.6.2 | 29.6.3 |
| node_modules/pretty-format | 29.6.2 | 29.6.3 |
| node_modules/resolve | 1.22.2 | 1.22.4 |
| node_modules/@jest/reporters/node_modules/istanbul-lib-instrument | 6.0.0 |
NODE_OPTIONS=--experimental-vm-modules npm test